More Qualcomm ARM32 DTS updates for 6.3

This adds backlight, notification LED, vibrator, volume keys and hall
sensor to the OnePlus One, and provides a range of Devicetree validation
fixes across various platforms.

* tag 'qcom-dts-for-6.3-2' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (22 commits)
  ARM: dts: qcom: align OPP table names with DT schema
  ARM: dts: qcom: msm8974-oneplus-bacon: Add notification LED
  ARM: dts: qcom: msm8974-oneplus-bacon: Add backlight
  ARM: dts: qcom: msm8974-oneplus-bacon: Add volume keys and hall sensor
  ARM: dts: qcom: msm8974-oneplus-bacon: Add vibrator
  ARM: dts: qcom: pm8941: Add vibrator node
  ARM: dts: qcom: sdx55: correct TLMM gpio-ranges
  dt-bindings: arm: qcom: add the sa8775p-ride board
  ARM: dts: qcom: apq8064: add second DSI host and PHY
  ARM: dts: qcom: apq8060-dragonboard: align MPP pin node names with DT schema
  dt-bindings: arm: qcom: Add Xiaomi Mi Pad 5 Pro (xiaomi-elish)
  ARM: dts: qcom-sdx65: align RPMh regulator nodes with bindings
  ARM: dts: qcom-sdx55: align RPMh regulator nodes with bindings
  ARM: dts: qcom: use "okay" for status
  ARM: dts: qcom: sdx65: Add Qcom SMMU-500 as the fallback for IOMMU node
  ARM: dts: qcom: sdx55: Add Qcom SMMU-500 as the fallback for IOMMU node
  ARM: dts: qcom: apq8064: use hdmi_phy for the MMCC's hdmipll clock
  ARM: dts: qcom: apq8064: add #clock-cells to the HDMI PHY node
  ARM: dts: qcom: ipq8064: move reg-less nodes outside soc node
  dt-bindings: qcom: Document msm8916-thwc-uf896 and ufi001c
  ...

Link: https://lore.kernel.org/r/20230210185846.2032601-1-andersson@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
Arnd Bergmann
2023-02-13 15:44:37 +01:00
15 changed files with 234 additions and 41 deletions

View File

@@ -49,6 +49,7 @@ description: |
qru1000
sa8155p
sa8540p
sa8775p
sc7180
sc7280
sc8180x
@@ -89,6 +90,7 @@ description: |
liquid
mtp
qrd
ride
sbc
x100
@@ -221,6 +223,8 @@ properties:
- samsung,j5
- samsung,j5x
- samsung,serranove
- thwc,uf896
- thwc,ufi001c
- wingtech,wt88047
- const: qcom,msm8916
@@ -652,6 +656,12 @@ properties:
- const: google,hoglin
- const: qcom,sc7280
- description: Qualcomm Technologies, Inc. sc7280 CRD Pro platform (newest rev)
items:
- const: google,zoglin-sku1536
- const: google,hoglin-sku1536
- const: qcom,sc7280
- description: Qualcomm Technologies, Inc. sc7280 IDP SKU1 platform
items:
- const: qcom,sc7280-idp
@@ -805,6 +815,11 @@ properties:
- qcom,sa8540p-ride
- const: qcom,sa8540p
- items:
- enum:
- qcom,sa8775p-ride
- const: qcom,sa8775p
- items:
- enum:
- google,cheza
@@ -875,6 +890,7 @@ properties:
- qcom,sm8250-mtp
- sony,pdx203-generic
- sony,pdx206-generic
- xiaomi,elish
- const: qcom,sm8250
- items:

View File

@@ -1333,6 +1333,8 @@ patternProperties:
description: thingy.jp
"^thundercomm,.*":
description: Thundercomm Technology Co., Ltd.
"^thwc,.*":
description: Shenzhen Tong Heng Wei Chuang Technology Co., Ltd.
"^ti,.*":
description: Texas Instruments
"^tianma,.*":

View File

@@ -435,15 +435,13 @@ &pm8058_led133 {
&pm8058_mpps {
dragon_cm3605_mpps: cm3605-mpps-state {
mpp5 {
pins = "mpp5";
function = "analog";
input-enable;
bias-high-impedance;
/* Let's use channel 5 */
qcom,amux-route = <PMIC_MPP_AMUX_ROUTE_CH5>;
power-source = <PM8058_GPIO_S3>;
};
pins = "mpp5";
function = "analog";
input-enable;
bias-high-impedance;
/* Let's use channel 5 */
qcom,amux-route = <PMIC_MPP_AMUX_ROUTE_CH5>;
power-source = <PM8058_GPIO_S3>;
};
};

View File

@@ -865,9 +865,9 @@ mmcc: clock-controller@4000000 {
<&gcc PLL8_VOTE>,
<&dsi0_phy 1>,
<&dsi0_phy 0>,
<0>,
<0>,
<0>;
<&dsi1_phy 1>,
<&dsi1_phy 0>,
<&hdmi_phy>;
clock-names = "pxo",
"pll3",
"pll8_vote",
@@ -1342,6 +1342,80 @@ dsi0_phy: phy@4700200 {
status = "disabled";
};
dsi1: dsi@5800000 {
compatible = "qcom,mdss-dsi-ctrl";
interrupts = <GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>;
reg = <0x05800000 0x200>;
reg-names = "dsi_ctrl";
clocks = <&mmcc DSI2_M_AHB_CLK>,
<&mmcc DSI2_S_AHB_CLK>,
<&mmcc AMP_AHB_CLK>,
<&mmcc DSI2_CLK>,
<&mmcc DSI2_BYTE_CLK>,
<&mmcc DSI2_PIXEL_CLK>,
<&mmcc DSI2_ESC_CLK>;
clock-names = "iface",
"bus",
"core_mmss",
"src",
"byte",
"pixel",
"core";
assigned-clocks = <&mmcc DSI2_BYTE_SRC>,
<&mmcc DSI2_ESC_SRC>,
<&mmcc DSI2_SRC>,
<&mmcc DSI2_PIXEL_SRC>;
assigned-clock-parents = <&dsi1_phy 0>,
<&dsi1_phy 0>,
<&dsi1_phy 1>,
<&dsi1_phy 1>;
syscon-sfpb = <&mmss_sfpb>;
phys = <&dsi1_phy>;
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
dsi1_in: endpoint {
};
};
port@1 {
reg = <1>;
dsi1_out: endpoint {
};
};
};
};
dsi1_phy: dsi-phy@5800200 {
compatible = "qcom,dsi-phy-28nm-8960";
reg = <0x05800200 0x100>,
<0x05800300 0x200>,
<0x05800500 0x5c>;
reg-names = "dsi_pll",
"dsi_phy",
"dsi_phy_regulator";
clock-names = "iface",
"ref";
clocks = <&mmcc DSI2_M_AHB_CLK>,
<&pxo_board>;
#clock-cells = <1>;
#phy-cells = <0>;
status = "disabled";
};
mdp_port0: iommu@7500000 {
compatible = "qcom,apq8064-iommu";
@@ -1489,6 +1563,7 @@ hdmi_phy: phy@4a00400 {
clocks = <&mmcc HDMI_S_AHB_CLK>;
clock-names = "slave_iface";
#phy-cells = <0>;
#clock-cells = <0>;
status = "disabled";
};

View File

@@ -106,7 +106,7 @@ L2: l2-cache {
};
};
cpu0_opp_table: opp_table0 {
cpu0_opp_table: opp-table {
compatible = "operating-points-v2";
opp-shared;

View File

@@ -326,26 +326,26 @@ scm {
};
};
stmmac_axi_setup: stmmac-axi-config {
snps,wr_osr_lmt = <7>;
snps,rd_osr_lmt = <7>;
snps,blen = <16 0 0 0 0 0 0>;
};
vsdcc_fixed: vsdcc-regulator {
compatible = "regulator-fixed";
regulator-name = "SDCC Power";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
soc: soc {
#address-cells = <1>;
#size-cells = <1>;
ranges;
compatible = "simple-bus";
stmmac_axi_setup: stmmac-axi-config {
snps,wr_osr_lmt = <7>;
snps,rd_osr_lmt = <7>;
snps,blen = <16 0 0 0 0 0 0>;
};
vsdcc_fixed: vsdcc-regulator {
compatible = "regulator-fixed";
regulator-name = "SDCC Power";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
rpm: rpm@108000 {
compatible = "qcom,rpm-ipq8064";
reg = <0x00108000 0x1000>;

View File

@@ -20,5 +20,5 @@ chosen {
};
&blsp1_uart3 {
status = "ok";
status = "okay";
};

View File

@@ -19,6 +19,38 @@ aliases {
chosen {
stdout-path = "serial0:115200n8";
};
gpio-keys {
compatible = "gpio-keys";
pinctrl-0 = <&gpio_keys_default>, <&gpio_hall_sensor_default>;
pinctrl-names = "default";
key-volume-down {
label = "Volume Down";
gpios = <&pm8941_gpios 2 GPIO_ACTIVE_LOW>;
linux,code = <KEY_VOLUMEDOWN>;
wakeup-source;
debounce-interval = <15>;
};
key-volume-up {
label = "Volume Up";
gpios = <&pm8941_gpios 5 GPIO_ACTIVE_LOW>;
linux,code = <KEY_VOLUMEUP>;
wakeup-source;
debounce-interval = <15>;
};
event-hall-sensor {
label = "Hall Effect Sensor";
gpios = <&tlmm 68 GPIO_ACTIVE_LOW>;
linux,input-type = <EV_SW>;
linux,code = <SW_LID>;
linux,can-disable;
debounce-interval = <150>;
};
};
};
&blsp1_i2c1 {
@@ -67,6 +99,49 @@ rmi4-f12@12 {
syna,clip-y-high = <1920>;
};
};
led-controller@36 {
compatible = "ti,lm3630a";
reg = <0x36>;
#address-cells = <1>;
#size-cells = <0>;
led@0 {
reg = <0>;
led-sources = <0 1>;
label = "lcd-backlight";
default-brightness = <80>;
};
};
led-controller@68 {
compatible = "si-en,sn3193";
reg = <0x68>;
shutdown-gpios = <&tlmm 45 GPIO_ACTIVE_HIGH>;
#address-cells = <1>;
#size-cells = <0>;
led@1 {
reg = <1>;
label = "red:status";
led-max-microamp = <17500>;
};
led@2 {
reg = <2>;
label = "green:status";
led-max-microamp = <17500>;
};
led@3 {
reg = <3>;
label = "blue:status";
led-max-microamp = <17500>;
};
};
};
&blsp1_i2c6 {
@@ -95,6 +170,20 @@ &pm8941_coincell {
status = "okay";
};
&pm8941_gpios {
gpio_keys_default: gpio-keys-active-state {
pins = "gpio2", "gpio5";
function = "normal";
input-enable;
bias-disable;
power-source = <PM8941_GPIO_S3>;
};
};
&pm8941_vib {
status = "okay";
};
&pronto {
vddmx-supply = <&pm8841_s1>;
vddcx-supply = <&pm8841_s2>;
@@ -345,6 +434,13 @@ &sdhc_1 {
};
&tlmm {
gpio_hall_sensor_default: gpio-hall-sensor-default-state {
pins = "gpio68";
function = "gpio";
drive-strength = <8>;
bias-pull-up;
};
sdc1_on: sdc1-on-state {
clk-pins {
pins = "sdc1_clk";

View File

@@ -161,6 +161,12 @@ pm8941_lpg: pwm {
status = "disabled";
};
pm8941_vib: vibrator@c000 {
compatible = "qcom,pm8916-vib";
reg = <0xc000>;
status = "disabled";
};
pm8941_wled: wled@d800 {
compatible = "qcom,pm8941-wled";
reg = <0xd800>;

View File

@@ -75,7 +75,7 @@ vreg_s7e_mx_0p752: pmx55-s7e {
};
&apps_rsc {
pmx55-rpmh-regulators {
regulators-0 {
compatible = "qcom,pmx55-rpmh-regulators";
qcom,pmic-id = "e";

View File

@@ -98,7 +98,7 @@ vreg_vddpx_2: vddpx-2 {
};
&apps_rsc {
pmx55-rpmh-regulators {
regulators-0 {
compatible = "qcom,pmx55-rpmh-regulators";
qcom,pmic-id = "e";
@@ -233,7 +233,7 @@ ldo16 {
};
&blsp1_uart3 {
status = "ok";
status = "okay";
};
&ipa {
@@ -243,11 +243,11 @@ &ipa {
};
&qpic_bam {
status = "ok";
status = "okay";
};
&qpic_nand {
status = "ok";
status = "okay";
nand@0 {
reg = <0>;

View File

@@ -98,7 +98,7 @@ vreg_vddpx_2: vddpx-2 {
};
&apps_rsc {
pmx55-rpmh-regulators {
regulators-0 {
compatible = "qcom,pmx55-rpmh-regulators";
qcom,pmic-id = "e";
@@ -233,7 +233,7 @@ ldo16 {
};
&blsp1_uart3 {
status = "ok";
status = "okay";
};
&ipa {
@@ -258,11 +258,11 @@ &pcie_ep {
};
&qpic_bam {
status = "ok";
status = "okay";
};
&qpic_nand {
status = "ok";
status = "okay";
nand@0 {
reg = <0>;

View File

@@ -560,7 +560,7 @@ tlmm: pinctrl@f100000 {
#gpio-cells = <2>;
interrupt-controller;
#interrupt-cells = <2>;
gpio-ranges = <&tlmm 0 0 109>;
gpio-ranges = <&tlmm 0 0 108>;
};
sram@1468f000 {
@@ -579,7 +579,7 @@ pil-reloc@94c {
};
apps_smmu: iommu@15000000 {
compatible = "qcom,sdx55-smmu-500", "arm,mmu-500";
compatible = "qcom,sdx55-smmu-500", "qcom,smmu-500", "arm,mmu-500";
reg = <0x15000000 0x20000>;
#iommu-cells = <2>;
#global-interrupts = <1>;

View File

@@ -65,7 +65,7 @@ vreg_bob_3p3: pmx65_bob {
};
&apps_rsc {
pmx65-rpmh-regulators {
regulators-0 {
compatible = "qcom,pmx65-rpmh-regulators";
qcom,pmic-id = "b";

View File

@@ -456,7 +456,7 @@ pil-reloc@94c {
};
apps_smmu: iommu@15000000 {
compatible = "qcom,sdx65-smmu-500", "arm,mmu-500";
compatible = "qcom,sdx65-smmu-500", "qcom,smmu-500", "arm,mmu-500";
reg = <0x15000000 0x40000>;
#iommu-cells = <2>;
#global-interrupts = <1>;