aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinaro CI <ci_notify@linaro.org>2023-04-05 14:49:28 +0000
committerLinaro CI <ci_notify@linaro.org>2023-04-05 14:49:28 +0000
commitb4a606f1030efa61a4330bc3f8a649307d14f48c (patch)
tree0cc5bf8e616a30ea24760d7cb8fa2516a8805730
parenta3343148f0cda5ebba0eedce7b9512768e3d3723 (diff)
parent028c6e749fd890e68e710ca1d6d941dc5a77b8c5 (diff)
Merge remote-tracking branch 'sm8450-dts/tracking-qcomlt-sm8450-dts' into integration-linux-qcomlt
-rw-r--r--Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml1
-rw-r--r--Documentation/devicetree/bindings/pci/qcom,pcie.yaml16
-rw-r--r--arch/arm64/boot/dts/qcom/sm8450-hdk.dts118
-rw-r--r--arch/arm64/boot/dts/qcom/sm8450-qrd.dts87
-rw-r--r--arch/arm64/boot/dts/qcom/sm8450.dtsi11
5 files changed, 216 insertions, 17 deletions
diff --git a/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml b/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml
index adf88245c409..256340f5ccb1 100644
--- a/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml
+++ b/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml
@@ -56,6 +56,7 @@ properties:
- qcom,pm8350
- qcom,pm8350b
- qcom,pm8350c
+ - qcom,pm8450
- qcom,pm8550
- qcom,pm8550b
- qcom,pm8550ve
diff --git a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml
index fb32c43dd12d..65496b2367ba 100644
--- a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml
+++ b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml
@@ -116,18 +116,28 @@ properties:
description: GPIO controlled connection to WAKE# signal
maxItems: 1
+ msi-map: true
+
+ msi-map-mask: true
+
required:
- compatible
- reg
- reg-names
- - interrupts
- - interrupt-names
- - "#interrupt-cells"
- interrupt-map-mask
- interrupt-map
- clocks
- clock-names
+oneOf:
+ - required:
+ - interrupts
+ - interrupt-names
+ - "#interrupt-cells"
+ - required:
+ - msi-map
+ - msi-map-mask
+
allOf:
- $ref: /schemas/pci/pci-bus.yaml#
- if:
diff --git a/arch/arm64/boot/dts/qcom/sm8450-hdk.dts b/arch/arm64/boot/dts/qcom/sm8450-hdk.dts
index feef3837e4cd..d86712bd96e5 100644
--- a/arch/arm64/boot/dts/qcom/sm8450-hdk.dts
+++ b/arch/arm64/boot/dts/qcom/sm8450-hdk.dts
@@ -22,10 +22,11 @@
aliases {
serial0 = &uart7;
+ serial1 = &uart20;
};
wcd938x: audio-codec {
- compatible = "qcom,wcd9380-codec";
+ compatible = "qcom,wcd9385-codec";
pinctrl-names = "default";
pinctrl-0 = <&wcd_default>;
@@ -87,6 +88,31 @@
enable-active-high;
};
+ pmic-glink {
+ compatible = "qcom,sm8450-pmic-glink", "qcom,pmic-glink";
+
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ connector@0 {
+ compatible = "usb-c-connector";
+ reg = <0>;
+ power-role = "dual";
+ data-role = "dual";
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ port@0 {
+ reg = <0>;
+ pmic_glink_dwc3_in: endpoint {
+ remote-endpoint = <&usb_1_dwc3_out>;
+ };
+ };
+ };
+ };
+ };
+
vph_pwr: vph-pwr-regulator {
compatible = "regulator-fixed";
regulator-name = "vph_pwr";
@@ -96,6 +122,24 @@
regulator-always-on;
regulator-boot-on;
};
+
+ wcn6856: wcn6856 {
+ compatible = "qcom,wcn6855";
+ #power-domain-cells = <0>;
+
+ vddaon-supply = <&vreg_s11b_0p95>;
+ vddcx-supply = <&vreg_s11b_0p95>;
+ vddmx-supply = <&vreg_s2e_0p85>;
+ vddrfa1-supply = <&vreg_s1c_1p86>;
+ vddrfa2-supply = <&vreg_s12b_1p25>;
+ vddio-supply = <&vreg_s10b_1p8>;
+
+ pinctrl-names = "default";
+ pinctrl-0 = <&wlan_en_state &xo_clk_state>;
+
+ xo-clk-gpios = <&tlmm 204 GPIO_ACTIVE_HIGH>;
+ wlan-en-gpios = <&tlmm 80 GPIO_ACTIVE_HIGH>;
+ };
};
&apps_rsc {
@@ -215,7 +259,7 @@
vreg_s1c_1p86: smps1 {
regulator-name = "vreg_s1c_1p86";
- regulator-min-microvolt = <1800000>;
+ regulator-min-microvolt = <1900000>;
regulator-max-microvolt = <2024000>;
};
@@ -368,7 +412,7 @@
vreg_s2e_0p85: smps2 {
regulator-name = "vreg_s2e_0p85";
- regulator-min-microvolt = <500000>;
+ regulator-min-microvolt = <1012000>;
regulator-max-microvolt = <1040000>;
};
@@ -493,6 +537,8 @@
status = "okay";
vdda-phy-supply = <&vreg_l5b_0p88>;
vdda-pll-supply = <&vreg_l6b_1p2>;
+
+ power-domains = <&wcn6856>;
};
&pcie1 {
@@ -533,6 +579,10 @@
status = "okay";
};
+&qupv3_id_2 {
+ status = "okay";
+};
+
&sdhc_2 {
cd-gpios = <&tlmm 92 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default", "sleep";
@@ -677,6 +727,17 @@
&tlmm {
gpio-reserved-ranges = <28 4>, <36 4>;
+ bt_en_state: bt-default-state {
+ bt-en {
+ pins = "gpio81";
+ function = "gpio";
+
+ drive-strength = <16>;
+ output-low;
+ bias-pull-up;
+ };
+ };
+
lt9611_irq_pin: lt9611-irq-state {
pins = "gpio44";
function = "gpio";
@@ -695,12 +756,46 @@
drive-strength = <2>;
bias-pull-up;
};
+
+ xo_clk_state: xo_clk_state {
+ pinconf {
+ pins = "gpio204";
+ function = "gpio";
+
+ drive-strength = <16>;
+ output-low;
+ bias-pull-down;
+ };
+ };
+
+ wlan_en_state: wlan_en_state {
+ pinconf {
+ pins = "gpio80";
+ function = "gpio";
+
+ drive-strength = <16>;
+ output-low;
+ bias-pull-down;
+ };
+ };
};
&uart7 {
status = "okay";
};
+&uart20 {
+ status = "okay";
+ bluetooth {
+ /* a little lie */
+ compatible = "qcom,wcn6855-bt";
+ pinctrl-names = "default";
+ pinctrl-0 = <&bt_en_state>;
+ power-domains = <&wcn6856>;
+ enable-gpios = <&tlmm 81 GPIO_ACTIVE_HIGH>;
+ };
+};
+
&ufs_mem_hc {
status = "okay";
@@ -724,7 +819,14 @@
};
&usb_1_dwc3 {
- dr_mode = "peripheral";
+ dr_mode = "otg";
+ usb-role-switch;
+
+ port {
+ usb_1_dwc3_out: endpoint {
+ remote-endpoint = <&pmic_glink_dwc3_in>;
+ };
+ };
};
&usb_1_hsphy {
@@ -755,7 +857,7 @@
spkr_1_sd_n_active: spkr-1-sd-n-active-state {
pins = "gpio1";
function = "gpio";
- drive-strength = <4>;
+ drive-strength = <16>;
bias-disable;
output-low;
};
@@ -763,14 +865,16 @@
spkr_2_sd_n_active: spkr-2-sd-n-active-state {
pins = "gpio89";
function = "gpio";
- drive-strength = <4>;
+ drive-strength = <16>;
bias-disable;
output-low;
};
- wcd_default: wcd-default-state {
+ wcd_default: wcd-reset-n-active-state {
pins = "gpio43";
function = "gpio";
+ drive-strength = <16>;
bias-disable;
+ output-low;
};
};
diff --git a/arch/arm64/boot/dts/qcom/sm8450-qrd.dts b/arch/arm64/boot/dts/qcom/sm8450-qrd.dts
index f7592946c783..57fa3565a7d1 100644
--- a/arch/arm64/boot/dts/qcom/sm8450-qrd.dts
+++ b/arch/arm64/boot/dts/qcom/sm8450-qrd.dts
@@ -21,6 +21,7 @@
aliases {
serial0 = &uart7;
+ serial1 = &uart20;
};
chosen {
@@ -36,6 +37,24 @@
regulator-always-on;
regulator-boot-on;
};
+
+ wcn6856: wcn6856 {
+ compatible = "qcom,wcn6855";
+ #power-domain-cells = <0>;
+
+ vddaon-supply = <&vreg_s11b_0p95>;
+ vddcx-supply = <&vreg_s11b_0p95>;
+ vddmx-supply = <&vreg_s2e_0p85>;
+ vddrfa1-supply = <&vreg_s1c_1p86>;
+ vddrfa2-supply = <&vreg_s12b_1p25>;
+ vddio-supply = <&vreg_s10b_1p8>;
+
+ pinctrl-names = "default";
+ pinctrl-0 = <&wlan_en_state &xo_clk_state>;
+
+ xo-clk-gpios = <&tlmm 204 GPIO_ACTIVE_HIGH>;
+ wlan-en-gpios = <&tlmm 80 GPIO_ACTIVE_HIGH>;
+ };
};
&apps_rsc {
@@ -70,13 +89,13 @@
vreg_s11b_0p95: smps11 {
regulator-name = "vreg_s11b_0p95";
- regulator-min-microvolt = <848000>;
+ regulator-min-microvolt = <966000>;
regulator-max-microvolt = <1104000>;
};
vreg_s12b_1p25: smps12 {
regulator-name = "vreg_s12b_1p25";
- regulator-min-microvolt = <1224000>;
+ regulator-min-microvolt = <1350000>;
regulator-max-microvolt = <1400000>;
};
@@ -154,7 +173,7 @@
vreg_s1c_1p86: smps1 {
regulator-name = "vreg_s1c_1p86";
- regulator-min-microvolt = <1800000>;
+ regulator-min-microvolt = <1900000>;
regulator-max-microvolt = <2024000>;
};
@@ -307,8 +326,8 @@
vreg_s2e_0p85: smps2 {
regulator-name = "vreg_s2e_0p85";
- regulator-min-microvolt = <500000>;
- regulator-max-microvolt = <1040000>;
+ regulator-min-microvolt = <1012000>;
+ regulator-max-microvolt = <1012000>;
};
vreg_l1e_0p8: ldo1 {
@@ -346,17 +365,26 @@
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
};
+
+ vreg_l7e_2p8: ldo7 {
+ regulator-name = "vreg_l7e_2p8";
+ regulator-min-microvolt = <2800000>;
+ regulator-max-microvolt = <2800000>;
+ };
};
};
&pcie0 {
status = "okay";
+ max-link-speed = <2>;
};
&pcie0_phy {
status = "okay";
vdda-phy-supply = <&vreg_l5b_0p88>;
vdda-pll-supply = <&vreg_l6b_1p2>;
+
+ power-domains = <&wcn6856>;
};
&gpi_dma0 {
@@ -375,6 +403,10 @@
status = "okay";
};
+&qupv3_id_2 {
+ status = "okay";
+};
+
&remoteproc_adsp {
status = "okay";
firmware-name = "qcom/sm8450/adsp.mbn";
@@ -422,18 +454,63 @@
&tlmm {
gpio-reserved-ranges = <28 4>, <36 4>;
+ bt_en_state: bt-default-state {
+ bt-en {
+ pins = "gpio81";
+ function = "gpio";
+
+ drive-strength = <16>;
+ output-low;
+ bias-pull-up;
+ };
+ };
+
sdc2_card_det_n: sd-card-det-n-state {
pins = "gpio92";
function = "gpio";
drive-strength = <2>;
bias-pull-up;
};
+
+ xo_clk_state: xo_clk_state {
+ pinconf {
+ pins = "gpio204";
+ function = "gpio";
+
+ drive-strength = <16>;
+ output-low;
+ bias-pull-down;
+ };
+ };
+
+ wlan_en_state: wlan_en_state {
+ pinconf {
+ pins = "gpio80";
+ function = "gpio";
+
+ drive-strength = <16>;
+ output-low;
+ bias-pull-down;
+ };
+ };
};
&uart7 {
status = "okay";
};
+&uart20 {
+ status = "okay";
+ bluetooth {
+ /* a little lie */
+ compatible = "qcom,wcn6855-bt";
+ pinctrl-names = "default";
+ pinctrl-0 = <&bt_en_state>;
+ power-domains = <&wcn6856>;
+ enable-gpios = <&tlmm 81 GPIO_ACTIVE_HIGH>;
+ };
+};
+
&ufs_mem_hc {
status = "okay";
diff --git a/arch/arm64/boot/dts/qcom/sm8450.dtsi b/arch/arm64/boot/dts/qcom/sm8450.dtsi
index b285b1530c10..6c2703d127c0 100644
--- a/arch/arm64/boot/dts/qcom/sm8450.dtsi
+++ b/arch/arm64/boot/dts/qcom/sm8450.dtsi
@@ -1756,8 +1756,15 @@
msi-map = <0x0 &gic_its 0x5981 0x1>,
<0x100 &gic_its 0x5980 0x1>;
msi-map-mask = <0xff00>;
- interrupts = <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>;
- interrupt-names = "msi";
+ interrupts = <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "msi0", "msi1", "msi2", "msi3", "msi4", "msi5", "msi6", "msi7";
#interrupt-cells = <1>;
interrupt-map-mask = <0 0 0 0x7>;
interrupt-map = <0 0 0 1 &intc 0 0 0 149 IRQ_TYPE_LEVEL_HIGH>, /* int_a */