1f6231a2eSJérôme de Bretagne// SPDX-License-Identifier: BSD-3-Clause 2f6231a2eSJérôme de Bretagne/* 3f6231a2eSJérôme de Bretagne * Copyright (c) 2024, Jérôme de Bretagne <jerome.debretagne@gmail.com> 4f6231a2eSJérôme de Bretagne */ 5f6231a2eSJérôme de Bretagne 6f6231a2eSJérôme de Bretagne/dts-v1/; 7f6231a2eSJérôme de Bretagne 8f6231a2eSJérôme de Bretagne#include <dt-bindings/gpio/gpio.h> 9f6231a2eSJérôme de Bretagne#include <dt-bindings/regulator/qcom,rpmh-regulator.h> 10f6231a2eSJérôme de Bretagne 11f6231a2eSJérôme de Bretagne#include "sc8280xp.dtsi" 12f6231a2eSJérôme de Bretagne#include "sc8280xp-pmics.dtsi" 13f6231a2eSJérôme de Bretagne 14f6231a2eSJérôme de Bretagne/ { 15f6231a2eSJérôme de Bretagne model = "Microsoft Surface Pro 9 5G"; 16f6231a2eSJérôme de Bretagne compatible = "microsoft,arcata", "qcom,sc8280xp"; 17f6231a2eSJérôme de Bretagne 18f6231a2eSJérôme de Bretagne aliases { 19f6231a2eSJérôme de Bretagne serial0 = &uart18; 20f6231a2eSJérôme de Bretagne serial1 = &uart2; 21f6231a2eSJérôme de Bretagne }; 22f6231a2eSJérôme de Bretagne 23f6231a2eSJérôme de Bretagne wcd938x: audio-codec { 24f6231a2eSJérôme de Bretagne compatible = "qcom,wcd9380-codec"; 25f6231a2eSJérôme de Bretagne 26f6231a2eSJérôme de Bretagne pinctrl-0 = <&wcd_default>; 27f6231a2eSJérôme de Bretagne pinctrl-names = "default"; 28f6231a2eSJérôme de Bretagne 29f6231a2eSJérôme de Bretagne reset-gpios = <&tlmm 106 GPIO_ACTIVE_LOW>; 30f6231a2eSJérôme de Bretagne 31f6231a2eSJérôme de Bretagne vdd-buck-supply = <&vreg_s10b>; 32f6231a2eSJérôme de Bretagne vdd-rxtx-supply = <&vreg_s10b>; 33f6231a2eSJérôme de Bretagne vdd-io-supply = <&vreg_s10b>; 34f6231a2eSJérôme de Bretagne vdd-mic-bias-supply = <&vreg_bob>; 35f6231a2eSJérôme de Bretagne 36f6231a2eSJérôme de Bretagne qcom,micbias1-microvolt = <1800000>; 37f6231a2eSJérôme de Bretagne qcom,micbias2-microvolt = <1800000>; 38f6231a2eSJérôme de Bretagne qcom,micbias3-microvolt = <1800000>; 39f6231a2eSJérôme de Bretagne qcom,micbias4-microvolt = <1800000>; 40f6231a2eSJérôme de Bretagne qcom,mbhc-buttons-vthreshold-microvolt = <75000 150000 237000 500000 500000 500000 500000 500000>; 41f6231a2eSJérôme de Bretagne qcom,mbhc-headset-vthreshold-microvolt = <1700000>; 42f6231a2eSJérôme de Bretagne qcom,mbhc-headphone-vthreshold-microvolt = <50000>; 43f6231a2eSJérôme de Bretagne qcom,rx-device = <&wcd_rx>; 44f6231a2eSJérôme de Bretagne qcom,tx-device = <&wcd_tx>; 45f6231a2eSJérôme de Bretagne 46f6231a2eSJérôme de Bretagne #sound-dai-cells = <1>; 47f6231a2eSJérôme de Bretagne }; 48f6231a2eSJérôme de Bretagne 49f6231a2eSJérôme de Bretagne pmic-glink { 50f6231a2eSJérôme de Bretagne compatible = "qcom,sc8280xp-pmic-glink", "qcom,pmic-glink"; 51f6231a2eSJérôme de Bretagne 52f6231a2eSJérôme de Bretagne #address-cells = <1>; 53f6231a2eSJérôme de Bretagne #size-cells = <0>; 54f6231a2eSJérôme de Bretagne 55f6231a2eSJérôme de Bretagne /* Left-side top port */ 56f6231a2eSJérôme de Bretagne connector@0 { 57f6231a2eSJérôme de Bretagne compatible = "usb-c-connector"; 58f6231a2eSJérôme de Bretagne reg = <0>; 59f6231a2eSJérôme de Bretagne power-role = "dual"; 60f6231a2eSJérôme de Bretagne data-role = "dual"; 61f6231a2eSJérôme de Bretagne 62f6231a2eSJérôme de Bretagne ports { 63f6231a2eSJérôme de Bretagne #address-cells = <1>; 64f6231a2eSJérôme de Bretagne #size-cells = <0>; 65f6231a2eSJérôme de Bretagne 66f6231a2eSJérôme de Bretagne port@0 { 67f6231a2eSJérôme de Bretagne reg = <0>; 68f6231a2eSJérôme de Bretagne 69f6231a2eSJérôme de Bretagne pmic_glink_con0_hs: endpoint { 70f6231a2eSJérôme de Bretagne remote-endpoint = <&usb_0_dwc3_hs>; 71f6231a2eSJérôme de Bretagne }; 72f6231a2eSJérôme de Bretagne }; 73f6231a2eSJérôme de Bretagne 74f6231a2eSJérôme de Bretagne port@1 { 75f6231a2eSJérôme de Bretagne reg = <1>; 76f6231a2eSJérôme de Bretagne 77f6231a2eSJérôme de Bretagne pmic_glink_con0_ss: endpoint { 78f6231a2eSJérôme de Bretagne remote-endpoint = <&usb_0_qmpphy_out>; 79f6231a2eSJérôme de Bretagne }; 80f6231a2eSJérôme de Bretagne }; 81f6231a2eSJérôme de Bretagne 82f6231a2eSJérôme de Bretagne port@2 { 83f6231a2eSJérôme de Bretagne reg = <2>; 84f6231a2eSJérôme de Bretagne 85f6231a2eSJérôme de Bretagne pmic_glink_con0_sbu: endpoint { 86f6231a2eSJérôme de Bretagne remote-endpoint = <&usb0_sbu_mux>; 87f6231a2eSJérôme de Bretagne }; 88f6231a2eSJérôme de Bretagne }; 89f6231a2eSJérôme de Bretagne }; 90f6231a2eSJérôme de Bretagne }; 91f6231a2eSJérôme de Bretagne 92f6231a2eSJérôme de Bretagne /* Left-side bottom port */ 93f6231a2eSJérôme de Bretagne connector@1 { 94f6231a2eSJérôme de Bretagne compatible = "usb-c-connector"; 95f6231a2eSJérôme de Bretagne reg = <1>; 96f6231a2eSJérôme de Bretagne power-role = "dual"; 97f6231a2eSJérôme de Bretagne data-role = "dual"; 98f6231a2eSJérôme de Bretagne 99f6231a2eSJérôme de Bretagne ports { 100f6231a2eSJérôme de Bretagne #address-cells = <1>; 101f6231a2eSJérôme de Bretagne #size-cells = <0>; 102f6231a2eSJérôme de Bretagne 103f6231a2eSJérôme de Bretagne port@0 { 104f6231a2eSJérôme de Bretagne reg = <0>; 105f6231a2eSJérôme de Bretagne 106f6231a2eSJérôme de Bretagne pmic_glink_con1_hs: endpoint { 107f6231a2eSJérôme de Bretagne remote-endpoint = <&usb_1_dwc3_hs>; 108f6231a2eSJérôme de Bretagne }; 109f6231a2eSJérôme de Bretagne }; 110f6231a2eSJérôme de Bretagne 111f6231a2eSJérôme de Bretagne port@1 { 112f6231a2eSJérôme de Bretagne reg = <1>; 113f6231a2eSJérôme de Bretagne 114f6231a2eSJérôme de Bretagne pmic_glink_con1_ss: endpoint { 115f6231a2eSJérôme de Bretagne remote-endpoint = <&usb_1_qmpphy_out>; 116f6231a2eSJérôme de Bretagne }; 117f6231a2eSJérôme de Bretagne }; 118f6231a2eSJérôme de Bretagne 119f6231a2eSJérôme de Bretagne port@2 { 120f6231a2eSJérôme de Bretagne reg = <2>; 121f6231a2eSJérôme de Bretagne 122f6231a2eSJérôme de Bretagne pmic_glink_con1_sbu: endpoint { 123f6231a2eSJérôme de Bretagne remote-endpoint = <&usb1_sbu_mux>; 124f6231a2eSJérôme de Bretagne }; 125f6231a2eSJérôme de Bretagne }; 126f6231a2eSJérôme de Bretagne }; 127f6231a2eSJérôme de Bretagne }; 128f6231a2eSJérôme de Bretagne }; 129f6231a2eSJérôme de Bretagne 130f6231a2eSJérôme de Bretagne vreg_nvme: regulator-nvme { 131f6231a2eSJérôme de Bretagne compatible = "regulator-fixed"; 132f6231a2eSJérôme de Bretagne 133f6231a2eSJérôme de Bretagne regulator-name = "VCC3_SSD"; 134f6231a2eSJérôme de Bretagne regulator-min-microvolt = <3300000>; 135f6231a2eSJérôme de Bretagne regulator-max-microvolt = <3300000>; 136f6231a2eSJérôme de Bretagne 137f6231a2eSJérôme de Bretagne gpio = <&tlmm 135 GPIO_ACTIVE_HIGH>; 138f6231a2eSJérôme de Bretagne enable-active-high; 139f6231a2eSJérôme de Bretagne 140f6231a2eSJérôme de Bretagne pinctrl-0 = <&nvme_reg_en>; 141f6231a2eSJérôme de Bretagne pinctrl-names = "default"; 142f6231a2eSJérôme de Bretagne 143f6231a2eSJérôme de Bretagne regulator-boot-on; 144f6231a2eSJérôme de Bretagne }; 145f6231a2eSJérôme de Bretagne 146f6231a2eSJérôme de Bretagne vreg_vph_pwr: regulator-vph-pwr { 147f6231a2eSJérôme de Bretagne compatible = "regulator-fixed"; 148f6231a2eSJérôme de Bretagne 149f6231a2eSJérôme de Bretagne regulator-name = "VPH_VCC3R9"; 150f6231a2eSJérôme de Bretagne regulator-min-microvolt = <3900000>; 151f6231a2eSJérôme de Bretagne regulator-max-microvolt = <3900000>; 152f6231a2eSJérôme de Bretagne 153f6231a2eSJérôme de Bretagne regulator-always-on; 154f6231a2eSJérôme de Bretagne }; 155f6231a2eSJérôme de Bretagne 156f6231a2eSJérôme de Bretagne vreg_wlan: regulator-wlan { 157f6231a2eSJérôme de Bretagne compatible = "regulator-fixed"; 158f6231a2eSJérôme de Bretagne 159f6231a2eSJérôme de Bretagne regulator-name = "VCC_WLAN_3R9"; 160f6231a2eSJérôme de Bretagne regulator-min-microvolt = <3900000>; 161f6231a2eSJérôme de Bretagne regulator-max-microvolt = <3900000>; 162f6231a2eSJérôme de Bretagne 163f6231a2eSJérôme de Bretagne gpio = <&pmr735a_gpios 1 GPIO_ACTIVE_HIGH>; 164f6231a2eSJérôme de Bretagne enable-active-high; 165f6231a2eSJérôme de Bretagne 166f6231a2eSJérôme de Bretagne pinctrl-0 = <&hastings_reg_en>; 167f6231a2eSJérôme de Bretagne pinctrl-names = "default"; 168f6231a2eSJérôme de Bretagne 169f6231a2eSJérôme de Bretagne regulator-boot-on; 170f6231a2eSJérôme de Bretagne }; 171f6231a2eSJérôme de Bretagne 172f6231a2eSJérôme de Bretagne vreg_wwan: regulator-wwan { 173f6231a2eSJérôme de Bretagne compatible = "regulator-fixed"; 174f6231a2eSJérôme de Bretagne 175f6231a2eSJérôme de Bretagne regulator-name = "VCC3B_WAN"; 176f6231a2eSJérôme de Bretagne regulator-min-microvolt = <3300000>; 177f6231a2eSJérôme de Bretagne regulator-max-microvolt = <3300000>; 178f6231a2eSJérôme de Bretagne 179f6231a2eSJérôme de Bretagne gpio = <&pmc8280_2_gpios 1 GPIO_ACTIVE_HIGH>; 180f6231a2eSJérôme de Bretagne enable-active-high; 181f6231a2eSJérôme de Bretagne 182f6231a2eSJérôme de Bretagne pinctrl-0 = <&wwan_sw_en>; 183f6231a2eSJérôme de Bretagne pinctrl-names = "default"; 184f6231a2eSJérôme de Bretagne 185f6231a2eSJérôme de Bretagne regulator-boot-on; 186f6231a2eSJérôme de Bretagne }; 187f6231a2eSJérôme de Bretagne 188f6231a2eSJérôme de Bretagne reserved-memory { 189f6231a2eSJérôme de Bretagne gpu_mem: gpu-mem@8bf00000 { 190f6231a2eSJérôme de Bretagne reg = <0 0x8bf00000 0 0x2000>; 191f6231a2eSJérôme de Bretagne no-map; 192f6231a2eSJérôme de Bretagne }; 193f6231a2eSJérôme de Bretagne 194f6231a2eSJérôme de Bretagne linux,cma { 195f6231a2eSJérôme de Bretagne compatible = "shared-dma-pool"; 196f6231a2eSJérôme de Bretagne size = <0x0 0x8000000>; 197f6231a2eSJérôme de Bretagne reusable; 198f6231a2eSJérôme de Bretagne linux,cma-default; 199f6231a2eSJérôme de Bretagne }; 200f6231a2eSJérôme de Bretagne }; 201f6231a2eSJérôme de Bretagne 202f6231a2eSJérôme de Bretagne thermal-zones { 203f6231a2eSJérôme de Bretagne skin-temp-thermal { 204f6231a2eSJérôme de Bretagne polling-delay-passive = <250>; 205f6231a2eSJérôme de Bretagne 206f6231a2eSJérôme de Bretagne thermal-sensors = <&pmk8280_adc_tm 5>; 207f6231a2eSJérôme de Bretagne 208f6231a2eSJérôme de Bretagne trips { 209f6231a2eSJérôme de Bretagne skin_temp_alert0: trip-point0 { 210f6231a2eSJérôme de Bretagne temperature = <55000>; 211f6231a2eSJérôme de Bretagne hysteresis = <1000>; 212f6231a2eSJérôme de Bretagne type = "passive"; 213f6231a2eSJérôme de Bretagne }; 214f6231a2eSJérôme de Bretagne 215f6231a2eSJérôme de Bretagne skin_temp_alert1: trip-point1 { 216f6231a2eSJérôme de Bretagne temperature = <58000>; 217f6231a2eSJérôme de Bretagne hysteresis = <1000>; 218f6231a2eSJérôme de Bretagne type = "passive"; 219f6231a2eSJérôme de Bretagne }; 220f6231a2eSJérôme de Bretagne 221f6231a2eSJérôme de Bretagne skin-temp-crit { 222f6231a2eSJérôme de Bretagne temperature = <73000>; 223f6231a2eSJérôme de Bretagne hysteresis = <1000>; 224f6231a2eSJérôme de Bretagne type = "critical"; 225f6231a2eSJérôme de Bretagne }; 226f6231a2eSJérôme de Bretagne }; 227f6231a2eSJérôme de Bretagne 228f6231a2eSJérôme de Bretagne cooling-maps { 229f6231a2eSJérôme de Bretagne map0 { 230f6231a2eSJérôme de Bretagne trip = <&skin_temp_alert0>; 231183c7c04SKrzysztof Kozlowski cooling-device = <&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 232183c7c04SKrzysztof Kozlowski <&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 233183c7c04SKrzysztof Kozlowski <&cpu6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 234183c7c04SKrzysztof Kozlowski <&cpu7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 235f6231a2eSJérôme de Bretagne }; 236f6231a2eSJérôme de Bretagne 237f6231a2eSJérôme de Bretagne map1 { 238f6231a2eSJérôme de Bretagne trip = <&skin_temp_alert1>; 239183c7c04SKrzysztof Kozlowski cooling-device = <&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 240183c7c04SKrzysztof Kozlowski <&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 241183c7c04SKrzysztof Kozlowski <&cpu6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 242183c7c04SKrzysztof Kozlowski <&cpu7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 243f6231a2eSJérôme de Bretagne }; 244f6231a2eSJérôme de Bretagne }; 245f6231a2eSJérôme de Bretagne }; 246f6231a2eSJérôme de Bretagne }; 247f6231a2eSJérôme de Bretagne 248f6231a2eSJérôme de Bretagne usb0-sbu-mux { 249f6231a2eSJérôme de Bretagne compatible = "pericom,pi3usb102", "gpio-sbu-mux"; 250f6231a2eSJérôme de Bretagne 251f6231a2eSJérôme de Bretagne enable-gpios = <&tlmm 101 GPIO_ACTIVE_LOW>; 252f6231a2eSJérôme de Bretagne select-gpios = <&tlmm 164 GPIO_ACTIVE_HIGH>; 253f6231a2eSJérôme de Bretagne 254f6231a2eSJérôme de Bretagne pinctrl-0 = <&usb0_sbu_default>; 255f6231a2eSJérôme de Bretagne pinctrl-names = "default"; 256f6231a2eSJérôme de Bretagne 257f6231a2eSJérôme de Bretagne mode-switch; 258f6231a2eSJérôme de Bretagne orientation-switch; 259f6231a2eSJérôme de Bretagne 260f6231a2eSJérôme de Bretagne port { 261f6231a2eSJérôme de Bretagne usb0_sbu_mux: endpoint { 262f6231a2eSJérôme de Bretagne remote-endpoint = <&pmic_glink_con0_sbu>; 263f6231a2eSJérôme de Bretagne }; 264f6231a2eSJérôme de Bretagne }; 265f6231a2eSJérôme de Bretagne }; 266f6231a2eSJérôme de Bretagne 267f6231a2eSJérôme de Bretagne usb1-sbu-mux { 268f6231a2eSJérôme de Bretagne compatible = "pericom,pi3usb102", "gpio-sbu-mux"; 269f6231a2eSJérôme de Bretagne 270f6231a2eSJérôme de Bretagne enable-gpios = <&tlmm 48 GPIO_ACTIVE_LOW>; 271f6231a2eSJérôme de Bretagne select-gpios = <&tlmm 47 GPIO_ACTIVE_HIGH>; 272f6231a2eSJérôme de Bretagne 273f6231a2eSJérôme de Bretagne pinctrl-0 = <&usb1_sbu_default>; 274f6231a2eSJérôme de Bretagne pinctrl-names = "default"; 275f6231a2eSJérôme de Bretagne 276f6231a2eSJérôme de Bretagne mode-switch; 277f6231a2eSJérôme de Bretagne orientation-switch; 278f6231a2eSJérôme de Bretagne 279f6231a2eSJérôme de Bretagne port { 280f6231a2eSJérôme de Bretagne usb1_sbu_mux: endpoint { 281f6231a2eSJérôme de Bretagne remote-endpoint = <&pmic_glink_con1_sbu>; 282f6231a2eSJérôme de Bretagne }; 283f6231a2eSJérôme de Bretagne }; 284f6231a2eSJérôme de Bretagne }; 285f6231a2eSJérôme de Bretagne}; 286f6231a2eSJérôme de Bretagne 287f6231a2eSJérôme de Bretagne&apps_rsc { 288f6231a2eSJérôme de Bretagne regulators-0 { 289f6231a2eSJérôme de Bretagne compatible = "qcom,pm8350-rpmh-regulators"; 290f6231a2eSJérôme de Bretagne qcom,pmic-id = "b"; 291f6231a2eSJérôme de Bretagne 292f6231a2eSJérôme de Bretagne vdd-l1-l4-supply = <&vreg_s12b>; 293f6231a2eSJérôme de Bretagne vdd-l2-l7-supply = <&vreg_bob>; 294f6231a2eSJérôme de Bretagne vdd-l3-l5-supply = <&vreg_s11b>; 295f6231a2eSJérôme de Bretagne vdd-l6-l9-l10-supply = <&vreg_s12b>; 296f6231a2eSJérôme de Bretagne vdd-l8-supply = <&vreg_s12b>; 297f6231a2eSJérôme de Bretagne 298f6231a2eSJérôme de Bretagne vreg_s10b: smps10 { 299f6231a2eSJérôme de Bretagne regulator-name = "vreg_s10b"; 300f6231a2eSJérôme de Bretagne regulator-min-microvolt = <1800000>; 301f6231a2eSJérôme de Bretagne regulator-max-microvolt = <1800000>; 302f6231a2eSJérôme de Bretagne regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 303f6231a2eSJérôme de Bretagne regulator-always-on; 304f6231a2eSJérôme de Bretagne }; 305f6231a2eSJérôme de Bretagne 306f6231a2eSJérôme de Bretagne vreg_s11b: smps11 { 307f6231a2eSJérôme de Bretagne regulator-name = "vreg_s11b"; 308f6231a2eSJérôme de Bretagne regulator-min-microvolt = <1272000>; 309f6231a2eSJérôme de Bretagne regulator-max-microvolt = <1272000>; 310f6231a2eSJérôme de Bretagne regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 311f6231a2eSJérôme de Bretagne regulator-always-on; 312f6231a2eSJérôme de Bretagne }; 313f6231a2eSJérôme de Bretagne 314f6231a2eSJérôme de Bretagne vreg_s12b: smps12 { 315f6231a2eSJérôme de Bretagne regulator-name = "vreg_s12b"; 316f6231a2eSJérôme de Bretagne regulator-min-microvolt = <984000>; 317f6231a2eSJérôme de Bretagne regulator-max-microvolt = <984000>; 318f6231a2eSJérôme de Bretagne regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 319f6231a2eSJérôme de Bretagne regulator-always-on; 320f6231a2eSJérôme de Bretagne }; 321f6231a2eSJérôme de Bretagne 322f6231a2eSJérôme de Bretagne vreg_l3b: ldo3 { 323f6231a2eSJérôme de Bretagne regulator-name = "vreg_l3b"; 324f6231a2eSJérôme de Bretagne regulator-min-microvolt = <1200000>; 325f6231a2eSJérôme de Bretagne regulator-max-microvolt = <1200000>; 326f6231a2eSJérôme de Bretagne regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 327f6231a2eSJérôme de Bretagne regulator-boot-on; 328f6231a2eSJérôme de Bretagne }; 329f6231a2eSJérôme de Bretagne 330f6231a2eSJérôme de Bretagne vreg_l4b: ldo4 { 331f6231a2eSJérôme de Bretagne regulator-name = "vreg_l4b"; 332f6231a2eSJérôme de Bretagne regulator-min-microvolt = <912000>; 333f6231a2eSJérôme de Bretagne regulator-max-microvolt = <912000>; 334f6231a2eSJérôme de Bretagne regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 335f6231a2eSJérôme de Bretagne }; 336f6231a2eSJérôme de Bretagne 337f6231a2eSJérôme de Bretagne vreg_l6b: ldo6 { 338f6231a2eSJérôme de Bretagne regulator-name = "vreg_l6b"; 339f6231a2eSJérôme de Bretagne regulator-min-microvolt = <880000>; 340f6231a2eSJérôme de Bretagne regulator-max-microvolt = <880000>; 341f6231a2eSJérôme de Bretagne regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 342f6231a2eSJérôme de Bretagne regulator-boot-on; 343f6231a2eSJérôme de Bretagne regulator-always-on; // FIXME: VDD_A_EDP_0_0P9 344f6231a2eSJérôme de Bretagne }; 345f6231a2eSJérôme de Bretagne }; 346f6231a2eSJérôme de Bretagne 347f6231a2eSJérôme de Bretagne regulators-1 { 348f6231a2eSJérôme de Bretagne compatible = "qcom,pm8350c-rpmh-regulators"; 349f6231a2eSJérôme de Bretagne qcom,pmic-id = "c"; 350f6231a2eSJérôme de Bretagne 351f6231a2eSJérôme de Bretagne vdd-bob-supply = <&vreg_vph_pwr>; 352f6231a2eSJérôme de Bretagne vdd-l1-l12-supply = <&vreg_s1c>; 353f6231a2eSJérôme de Bretagne vdd-l2-l8-supply = <&vreg_s1c>; 354f6231a2eSJérôme de Bretagne vdd-l3-l4-l5-l7-l13-supply = <&vreg_bob>; 355f6231a2eSJérôme de Bretagne vdd-l6-l9-l11-supply = <&vreg_bob>; 356f6231a2eSJérôme de Bretagne vdd-l10-supply = <&vreg_s11b>; 357f6231a2eSJérôme de Bretagne 358f6231a2eSJérôme de Bretagne vreg_s1c: smps1 { 359f6231a2eSJérôme de Bretagne regulator-name = "vreg_s1c"; 360f6231a2eSJérôme de Bretagne regulator-min-microvolt = <1880000>; 361f6231a2eSJérôme de Bretagne regulator-max-microvolt = <1900000>; 362f6231a2eSJérôme de Bretagne regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 363f6231a2eSJérôme de Bretagne regulator-always-on; 364f6231a2eSJérôme de Bretagne }; 365f6231a2eSJérôme de Bretagne 366f6231a2eSJérôme de Bretagne vreg_l1c: ldo1 { 367f6231a2eSJérôme de Bretagne regulator-name = "vreg_l1c"; 368f6231a2eSJérôme de Bretagne regulator-min-microvolt = <1800000>; 369f6231a2eSJérôme de Bretagne regulator-max-microvolt = <1800000>; 370f6231a2eSJérôme de Bretagne regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 371f6231a2eSJérôme de Bretagne }; 372f6231a2eSJérôme de Bretagne 373f6231a2eSJérôme de Bretagne vreg_l12c: ldo12 { 374f6231a2eSJérôme de Bretagne regulator-name = "vreg_l12c"; 375f6231a2eSJérôme de Bretagne regulator-min-microvolt = <1800000>; 376f6231a2eSJérôme de Bretagne regulator-max-microvolt = <1800000>; 377f6231a2eSJérôme de Bretagne regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 378f6231a2eSJérôme de Bretagne }; 379f6231a2eSJérôme de Bretagne 380f6231a2eSJérôme de Bretagne vreg_l13c: ldo13 { 381f6231a2eSJérôme de Bretagne regulator-name = "vreg_l13c"; 382f6231a2eSJérôme de Bretagne regulator-min-microvolt = <3072000>; 383f6231a2eSJérôme de Bretagne regulator-max-microvolt = <3072000>; 384f6231a2eSJérôme de Bretagne regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 385f6231a2eSJérôme de Bretagne }; 386f6231a2eSJérôme de Bretagne 387f6231a2eSJérôme de Bretagne vreg_bob: bob { 388f6231a2eSJérôme de Bretagne regulator-name = "vreg_bob"; 389f6231a2eSJérôme de Bretagne regulator-min-microvolt = <3008000>; 390f6231a2eSJérôme de Bretagne regulator-max-microvolt = <3960000>; 391f6231a2eSJérôme de Bretagne regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>; 392f6231a2eSJérôme de Bretagne regulator-always-on; 393f6231a2eSJérôme de Bretagne }; 394f6231a2eSJérôme de Bretagne }; 395f6231a2eSJérôme de Bretagne 396f6231a2eSJérôme de Bretagne regulators-2 { 397f6231a2eSJérôme de Bretagne compatible = "qcom,pm8350-rpmh-regulators"; 398f6231a2eSJérôme de Bretagne qcom,pmic-id = "d"; 399f6231a2eSJérôme de Bretagne 400f6231a2eSJérôme de Bretagne vdd-l1-l4-supply = <&vreg_s11b>; 401f6231a2eSJérôme de Bretagne vdd-l2-l7-supply = <&vreg_bob>; 402f6231a2eSJérôme de Bretagne vdd-l3-l5-supply = <&vreg_s11b>; 403f6231a2eSJérôme de Bretagne vdd-l6-l9-l10-supply = <&vreg_s12b>; 404f6231a2eSJérôme de Bretagne vdd-l8-supply = <&vreg_s12b>; 405f6231a2eSJérôme de Bretagne 406f6231a2eSJérôme de Bretagne vreg_l3d: ldo3 { 407f6231a2eSJérôme de Bretagne regulator-name = "vreg_l3d"; 408f6231a2eSJérôme de Bretagne regulator-min-microvolt = <1200000>; 409f6231a2eSJérôme de Bretagne regulator-max-microvolt = <1200000>; 410f6231a2eSJérôme de Bretagne regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 411f6231a2eSJérôme de Bretagne }; 412f6231a2eSJérôme de Bretagne 413f6231a2eSJérôme de Bretagne vreg_l4d: ldo4 { 414f6231a2eSJérôme de Bretagne regulator-name = "vreg_l4d"; 415f6231a2eSJérôme de Bretagne regulator-min-microvolt = <1200000>; 416f6231a2eSJérôme de Bretagne regulator-max-microvolt = <1200000>; 417f6231a2eSJérôme de Bretagne regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 418f6231a2eSJérôme de Bretagne }; 419f6231a2eSJérôme de Bretagne 420f6231a2eSJérôme de Bretagne vreg_l6d: ldo6 { 421f6231a2eSJérôme de Bretagne regulator-name = "vreg_l6d"; 422f6231a2eSJérôme de Bretagne regulator-min-microvolt = <880000>; 423f6231a2eSJérôme de Bretagne regulator-max-microvolt = <880000>; 424f6231a2eSJérôme de Bretagne regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 425f6231a2eSJérôme de Bretagne }; 426f6231a2eSJérôme de Bretagne 427f6231a2eSJérôme de Bretagne vreg_l7d: ldo7 { 428f6231a2eSJérôme de Bretagne regulator-name = "vreg_l7d"; 429f6231a2eSJérôme de Bretagne regulator-min-microvolt = <3072000>; 430f6231a2eSJérôme de Bretagne regulator-max-microvolt = <3072000>; 431f6231a2eSJérôme de Bretagne regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 432f6231a2eSJérôme de Bretagne }; 433f6231a2eSJérôme de Bretagne 434f6231a2eSJérôme de Bretagne vreg_l9d: ldo9 { 435f6231a2eSJérôme de Bretagne regulator-name = "vreg_l9d"; 436f6231a2eSJérôme de Bretagne regulator-min-microvolt = <912000>; 437f6231a2eSJérôme de Bretagne regulator-max-microvolt = <912000>; 438f6231a2eSJérôme de Bretagne regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 439f6231a2eSJérôme de Bretagne }; 440f6231a2eSJérôme de Bretagne }; 441f6231a2eSJérôme de Bretagne}; 442f6231a2eSJérôme de Bretagne 443f6231a2eSJérôme de Bretagne&dispcc0 { 444f6231a2eSJérôme de Bretagne status = "okay"; 445f6231a2eSJérôme de Bretagne}; 446f6231a2eSJérôme de Bretagne 447f6231a2eSJérôme de Bretagne&dispcc1 { 448f6231a2eSJérôme de Bretagne status = "okay"; 449f6231a2eSJérôme de Bretagne}; 450f6231a2eSJérôme de Bretagne 451f6231a2eSJérôme de Bretagne&gpu { 452f6231a2eSJérôme de Bretagne status = "okay"; 453f6231a2eSJérôme de Bretagne 454f6231a2eSJérôme de Bretagne zap-shader { 455f6231a2eSJérôme de Bretagne memory-region = <&gpu_mem>; 456f6231a2eSJérôme de Bretagne firmware-name = "qcom/sc8280xp/MICROSOFT/SurfacePro9/qcdxkmsuc8280.mbn"; 457f6231a2eSJérôme de Bretagne }; 458f6231a2eSJérôme de Bretagne}; 459f6231a2eSJérôme de Bretagne 460f6231a2eSJérôme de Bretagne&mdss0 { 461f6231a2eSJérôme de Bretagne status = "okay"; 462f6231a2eSJérôme de Bretagne}; 463f6231a2eSJérôme de Bretagne 464f6231a2eSJérôme de Bretagne&mdss0_dp0 { 465f6231a2eSJérôme de Bretagne status = "okay"; 466f6231a2eSJérôme de Bretagne}; 467f6231a2eSJérôme de Bretagne 468f6231a2eSJérôme de Bretagne&mdss0_dp0_out { 469f6231a2eSJérôme de Bretagne data-lanes = <0 1>; 470f6231a2eSJérôme de Bretagne remote-endpoint = <&usb_0_qmpphy_dp_in>; 471f6231a2eSJérôme de Bretagne}; 472f6231a2eSJérôme de Bretagne 473f6231a2eSJérôme de Bretagne&mdss0_dp1 { 474f6231a2eSJérôme de Bretagne status = "okay"; 475f6231a2eSJérôme de Bretagne}; 476f6231a2eSJérôme de Bretagne 477f6231a2eSJérôme de Bretagne&mdss0_dp1_out { 478f6231a2eSJérôme de Bretagne data-lanes = <0 1>; 479f6231a2eSJérôme de Bretagne remote-endpoint = <&usb_1_qmpphy_dp_in>; 480f6231a2eSJérôme de Bretagne}; 481f6231a2eSJérôme de Bretagne 482f6231a2eSJérôme de Bretagne&pcie2a { 483f6231a2eSJérôme de Bretagne perst-gpios = <&tlmm 143 GPIO_ACTIVE_LOW>; 484f6231a2eSJérôme de Bretagne wake-gpios = <&tlmm 145 GPIO_ACTIVE_LOW>; 485f6231a2eSJérôme de Bretagne 486f6231a2eSJérôme de Bretagne vddpe-3v3-supply = <&vreg_nvme>; 487f6231a2eSJérôme de Bretagne 488f6231a2eSJérôme de Bretagne pinctrl-0 = <&pcie2a_default>; 489f6231a2eSJérôme de Bretagne pinctrl-names = "default"; 490f6231a2eSJérôme de Bretagne 491f6231a2eSJérôme de Bretagne status = "okay"; 492f6231a2eSJérôme de Bretagne}; 493f6231a2eSJérôme de Bretagne 494f6231a2eSJérôme de Bretagne&pcie2a_phy { 495f6231a2eSJérôme de Bretagne vdda-phy-supply = <&vreg_l6d>; 496f6231a2eSJérôme de Bretagne vdda-pll-supply = <&vreg_l4d>; 497f6231a2eSJérôme de Bretagne 498f6231a2eSJérôme de Bretagne status = "okay"; 499f6231a2eSJérôme de Bretagne}; 500f6231a2eSJérôme de Bretagne 501f6231a2eSJérôme de Bretagne&pcie3a { 502f6231a2eSJérôme de Bretagne perst-gpios = <&tlmm 151 GPIO_ACTIVE_LOW>; 503f6231a2eSJérôme de Bretagne wake-gpios = <&tlmm 148 GPIO_ACTIVE_LOW>; 504f6231a2eSJérôme de Bretagne 505f6231a2eSJérôme de Bretagne vddpe-3v3-supply = <&vreg_wwan>; 506f6231a2eSJérôme de Bretagne 507f6231a2eSJérôme de Bretagne pinctrl-0 = <&pcie3a_default>; 508f6231a2eSJérôme de Bretagne pinctrl-names = "default"; 509f6231a2eSJérôme de Bretagne 510f6231a2eSJérôme de Bretagne status = "okay"; 511f6231a2eSJérôme de Bretagne}; 512f6231a2eSJérôme de Bretagne 513f6231a2eSJérôme de Bretagne&pcie3a_phy { 514f6231a2eSJérôme de Bretagne vdda-phy-supply = <&vreg_l6d>; 515f6231a2eSJérôme de Bretagne vdda-pll-supply = <&vreg_l4d>; 516f6231a2eSJérôme de Bretagne 517f6231a2eSJérôme de Bretagne status = "okay"; 518f6231a2eSJérôme de Bretagne}; 519f6231a2eSJérôme de Bretagne 520f6231a2eSJérôme de Bretagne&pcie4 { 521f6231a2eSJérôme de Bretagne max-link-speed = <2>; 522f6231a2eSJérôme de Bretagne 523f6231a2eSJérôme de Bretagne perst-gpios = <&tlmm 141 GPIO_ACTIVE_LOW>; 524f6231a2eSJérôme de Bretagne wake-gpios = <&tlmm 139 GPIO_ACTIVE_LOW>; 525f6231a2eSJérôme de Bretagne 526f6231a2eSJérôme de Bretagne vddpe-3v3-supply = <&vreg_wlan>; 527f6231a2eSJérôme de Bretagne 528f6231a2eSJérôme de Bretagne pinctrl-0 = <&pcie4_default>; 529f6231a2eSJérôme de Bretagne pinctrl-names = "default"; 530f6231a2eSJérôme de Bretagne 531f6231a2eSJérôme de Bretagne status = "okay"; 532f6231a2eSJérôme de Bretagne}; 533f6231a2eSJérôme de Bretagne 534f6231a2eSJérôme de Bretagne&pcie4_port0 { 535f6231a2eSJérôme de Bretagne wifi@0 { 536f6231a2eSJérôme de Bretagne compatible = "pci17cb,1103"; 537f6231a2eSJérôme de Bretagne reg = <0x10000 0x0 0x0 0x0 0x0>; 538f6231a2eSJérôme de Bretagne 539*d12ce84cSKrzysztof Kozlowski qcom,calibration-variant = "MS_SP9_5G"; 540f6231a2eSJérôme de Bretagne }; 541f6231a2eSJérôme de Bretagne}; 542f6231a2eSJérôme de Bretagne 543f6231a2eSJérôme de Bretagne&pcie4_phy { 544f6231a2eSJérôme de Bretagne vdda-phy-supply = <&vreg_l6d>; 545f6231a2eSJérôme de Bretagne vdda-pll-supply = <&vreg_l4d>; 546f6231a2eSJérôme de Bretagne 547f6231a2eSJérôme de Bretagne status = "okay"; 548f6231a2eSJérôme de Bretagne}; 549f6231a2eSJérôme de Bretagne 550f6231a2eSJérôme de Bretagne&pmk8280_pon_pwrkey { 551f6231a2eSJérôme de Bretagne status = "okay"; 552f6231a2eSJérôme de Bretagne}; 553f6231a2eSJérôme de Bretagne 554f6231a2eSJérôme de Bretagne&pmk8280_pon_resin { 555f6231a2eSJérôme de Bretagne status = "okay"; 556f6231a2eSJérôme de Bretagne}; 557f6231a2eSJérôme de Bretagne 558f6231a2eSJérôme de Bretagne&pmk8280_rtc { 559f6231a2eSJérôme de Bretagne nvmem-cells = <&rtc_offset>; 560f6231a2eSJérôme de Bretagne nvmem-cell-names = "offset"; 561f6231a2eSJérôme de Bretagne 562f6231a2eSJérôme de Bretagne status = "okay"; 563f6231a2eSJérôme de Bretagne}; 564f6231a2eSJérôme de Bretagne 565f6231a2eSJérôme de Bretagne&pmk8280_sdam_6 { 566f6231a2eSJérôme de Bretagne status = "okay"; 567f6231a2eSJérôme de Bretagne 568f6231a2eSJérôme de Bretagne rtc_offset: rtc-offset@bc { 569f6231a2eSJérôme de Bretagne reg = <0xbc 0x4>; 570f6231a2eSJérôme de Bretagne }; 571f6231a2eSJérôme de Bretagne}; 572f6231a2eSJérôme de Bretagne 573f6231a2eSJérôme de Bretagne&qup0 { 574f6231a2eSJérôme de Bretagne status = "okay"; 575f6231a2eSJérôme de Bretagne}; 576f6231a2eSJérôme de Bretagne 577f6231a2eSJérôme de Bretagne&qup1 { 578f6231a2eSJérôme de Bretagne status = "okay"; 579f6231a2eSJérôme de Bretagne}; 580f6231a2eSJérôme de Bretagne 581f6231a2eSJérôme de Bretagne&qup2 { 582f6231a2eSJérôme de Bretagne status = "okay"; 583f6231a2eSJérôme de Bretagne}; 584f6231a2eSJérôme de Bretagne 585f6231a2eSJérôme de Bretagne&remoteproc_adsp { 586f6231a2eSJérôme de Bretagne firmware-name = "qcom/sc8280xp/MICROSOFT/SurfacePro9/qcadsp8280.mbn"; 587f6231a2eSJérôme de Bretagne 588f6231a2eSJérôme de Bretagne status = "okay"; 589f6231a2eSJérôme de Bretagne}; 590f6231a2eSJérôme de Bretagne 591f6231a2eSJérôme de Bretagne&remoteproc_nsp0 { 592f6231a2eSJérôme de Bretagne firmware-name = "qcom/sc8280xp/MICROSOFT/SurfacePro9/qccdsp8280.mbn"; 593f6231a2eSJérôme de Bretagne 594f6231a2eSJérôme de Bretagne status = "okay"; 595f6231a2eSJérôme de Bretagne}; 596f6231a2eSJérôme de Bretagne 597f6231a2eSJérôme de Bretagne&rxmacro { 598f6231a2eSJérôme de Bretagne status = "okay"; 599f6231a2eSJérôme de Bretagne}; 600f6231a2eSJérôme de Bretagne 601f6231a2eSJérôme de Bretagne&sound { 602f6231a2eSJérôme de Bretagne compatible = "qcom,sc8280xp-sndcard"; 603f6231a2eSJérôme de Bretagne model = "SC8280XP-MICROSOFT-SURFACE-PRO-9-5G"; 604f6231a2eSJérôme de Bretagne audio-routing = "SpkrLeft IN", "WSA_SPK1 OUT", 605f6231a2eSJérôme de Bretagne "SpkrRight IN", "WSA_SPK2 OUT", 606f6231a2eSJérôme de Bretagne "IN1_HPHL", "HPHL_OUT", 607f6231a2eSJérôme de Bretagne "IN2_HPHR", "HPHR_OUT", 608f6231a2eSJérôme de Bretagne "AMIC2", "MIC BIAS2", 609f6231a2eSJérôme de Bretagne "VA DMIC0", "MIC BIAS1", 610f6231a2eSJérôme de Bretagne "VA DMIC1", "MIC BIAS1", 611f6231a2eSJérôme de Bretagne "VA DMIC2", "MIC BIAS3", 612f6231a2eSJérôme de Bretagne "VA DMIC0", "VA MIC BIAS1", 613f6231a2eSJérôme de Bretagne "VA DMIC1", "VA MIC BIAS1", 614f6231a2eSJérôme de Bretagne "VA DMIC2", "VA MIC BIAS3", 615f6231a2eSJérôme de Bretagne "TX SWR_ADC1", "ADC2_OUTPUT"; 616f6231a2eSJérôme de Bretagne 617f6231a2eSJérôme de Bretagne wcd-playback-dai-link { 618f6231a2eSJérôme de Bretagne link-name = "WCD Playback"; 619f6231a2eSJérôme de Bretagne 620f6231a2eSJérôme de Bretagne cpu { 621f6231a2eSJérôme de Bretagne sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>; 622f6231a2eSJérôme de Bretagne }; 623f6231a2eSJérôme de Bretagne 624f6231a2eSJérôme de Bretagne codec { 625f6231a2eSJérôme de Bretagne sound-dai = <&wcd938x 0>, <&swr1 0>, <&rxmacro 0>; 626f6231a2eSJérôme de Bretagne }; 627f6231a2eSJérôme de Bretagne 628f6231a2eSJérôme de Bretagne platform { 629f6231a2eSJérôme de Bretagne sound-dai = <&q6apm>; 630f6231a2eSJérôme de Bretagne }; 631f6231a2eSJérôme de Bretagne }; 632f6231a2eSJérôme de Bretagne 633f6231a2eSJérôme de Bretagne wcd-capture-dai-link { 634f6231a2eSJérôme de Bretagne link-name = "WCD Capture"; 635f6231a2eSJérôme de Bretagne 636f6231a2eSJérôme de Bretagne cpu { 637f6231a2eSJérôme de Bretagne sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>; 638f6231a2eSJérôme de Bretagne }; 639f6231a2eSJérôme de Bretagne 640f6231a2eSJérôme de Bretagne codec { 641f6231a2eSJérôme de Bretagne sound-dai = <&wcd938x 1>, <&swr2 0>, <&txmacro 0>; 642f6231a2eSJérôme de Bretagne }; 643f6231a2eSJérôme de Bretagne 644f6231a2eSJérôme de Bretagne platform { 645f6231a2eSJérôme de Bretagne sound-dai = <&q6apm>; 646f6231a2eSJérôme de Bretagne }; 647f6231a2eSJérôme de Bretagne }; 648f6231a2eSJérôme de Bretagne 649f6231a2eSJérôme de Bretagne wsa-dai-link { 650f6231a2eSJérôme de Bretagne link-name = "WSA Playback"; 651f6231a2eSJérôme de Bretagne 652f6231a2eSJérôme de Bretagne cpu { 653f6231a2eSJérôme de Bretagne sound-dai = <&q6apmbedai WSA_CODEC_DMA_RX_0>; 654f6231a2eSJérôme de Bretagne }; 655f6231a2eSJérôme de Bretagne 656f6231a2eSJérôme de Bretagne codec { 657f6231a2eSJérôme de Bretagne sound-dai = <&swr0 0>, <&wsamacro 0>; 658f6231a2eSJérôme de Bretagne }; 659f6231a2eSJérôme de Bretagne 660f6231a2eSJérôme de Bretagne platform { 661f6231a2eSJérôme de Bretagne sound-dai = <&q6apm>; 662f6231a2eSJérôme de Bretagne }; 663f6231a2eSJérôme de Bretagne }; 664f6231a2eSJérôme de Bretagne 665f6231a2eSJérôme de Bretagne va-dai-link { 666f6231a2eSJérôme de Bretagne link-name = "VA Capture"; 667f6231a2eSJérôme de Bretagne 668f6231a2eSJérôme de Bretagne cpu { 669f6231a2eSJérôme de Bretagne sound-dai = <&q6apmbedai VA_CODEC_DMA_TX_0>; 670f6231a2eSJérôme de Bretagne }; 671f6231a2eSJérôme de Bretagne 672f6231a2eSJérôme de Bretagne platform { 673f6231a2eSJérôme de Bretagne sound-dai = <&q6apm>; 674f6231a2eSJérôme de Bretagne }; 675f6231a2eSJérôme de Bretagne 676f6231a2eSJérôme de Bretagne codec { 677f6231a2eSJérôme de Bretagne sound-dai = <&vamacro 0>; 678f6231a2eSJérôme de Bretagne }; 679f6231a2eSJérôme de Bretagne }; 680f6231a2eSJérôme de Bretagne}; 681f6231a2eSJérôme de Bretagne 682f6231a2eSJérôme de Bretagne&swr0 { 683f6231a2eSJérôme de Bretagne status = "okay"; 684f6231a2eSJérôme de Bretagne}; 685f6231a2eSJérôme de Bretagne 686f6231a2eSJérôme de Bretagne&swr1 { 687f6231a2eSJérôme de Bretagne status = "okay"; 688f6231a2eSJérôme de Bretagne 689f6231a2eSJérôme de Bretagne wcd_rx: codec@0,4 { 690f6231a2eSJérôme de Bretagne compatible = "sdw20217010d00"; 691f6231a2eSJérôme de Bretagne reg = <0 4>; 692f6231a2eSJérôme de Bretagne qcom,rx-port-mapping = <1 2 3 4 5>; 693f6231a2eSJérôme de Bretagne }; 694f6231a2eSJérôme de Bretagne}; 695f6231a2eSJérôme de Bretagne 696f6231a2eSJérôme de Bretagne&swr2 { 697f6231a2eSJérôme de Bretagne status = "okay"; 698f6231a2eSJérôme de Bretagne 699f6231a2eSJérôme de Bretagne wcd_tx: codec@0,3 { 700f6231a2eSJérôme de Bretagne compatible = "sdw20217010d00"; 701f6231a2eSJérôme de Bretagne reg = <0 3>; 702f6231a2eSJérôme de Bretagne qcom,tx-port-mapping = <1 1 2 3>; 703f6231a2eSJérôme de Bretagne }; 704f6231a2eSJérôme de Bretagne}; 705f6231a2eSJérôme de Bretagne 706f6231a2eSJérôme de Bretagne&txmacro { 707f6231a2eSJérôme de Bretagne status = "okay"; 708f6231a2eSJérôme de Bretagne}; 709f6231a2eSJérôme de Bretagne 710f6231a2eSJérôme de Bretagne&uart2 { 711f6231a2eSJérôme de Bretagne pinctrl-0 = <&uart2_default>; 712f6231a2eSJérôme de Bretagne pinctrl-names = "default"; 713f6231a2eSJérôme de Bretagne 714f6231a2eSJérôme de Bretagne status = "okay"; 715f6231a2eSJérôme de Bretagne 716f6231a2eSJérôme de Bretagne bluetooth { 717f6231a2eSJérôme de Bretagne compatible = "qcom,wcn6855-bt"; 718f6231a2eSJérôme de Bretagne 719f6231a2eSJérôme de Bretagne vddio-supply = <&vreg_s10b>; 720f6231a2eSJérôme de Bretagne vddbtcxmx-supply = <&vreg_s12b>; 721f6231a2eSJérôme de Bretagne vddrfacmn-supply = <&vreg_s12b>; 722f6231a2eSJérôme de Bretagne vddrfa0p8-supply = <&vreg_s12b>; 723f6231a2eSJérôme de Bretagne vddrfa1p2-supply = <&vreg_s11b>; 724f6231a2eSJérôme de Bretagne vddrfa1p7-supply = <&vreg_s1c>; 725f6231a2eSJérôme de Bretagne 726f6231a2eSJérôme de Bretagne max-speed = <3200000>; 727f6231a2eSJérôme de Bretagne 728f6231a2eSJérôme de Bretagne enable-gpios = <&tlmm 133 GPIO_ACTIVE_HIGH>; 729f6231a2eSJérôme de Bretagne swctrl-gpios = <&tlmm 132 GPIO_ACTIVE_HIGH>; 730f6231a2eSJérôme de Bretagne 731f6231a2eSJérôme de Bretagne pinctrl-0 = <&bt_default>; 732f6231a2eSJérôme de Bretagne pinctrl-names = "default"; 733f6231a2eSJérôme de Bretagne }; 734f6231a2eSJérôme de Bretagne}; 735f6231a2eSJérôme de Bretagne 736f6231a2eSJérôme de Bretagne&uart18 { 737f6231a2eSJérôme de Bretagne status = "okay"; 738f6231a2eSJérôme de Bretagne 739f6231a2eSJérôme de Bretagne embedded-controller { 740f6231a2eSJérôme de Bretagne compatible = "microsoft,surface-sam"; 741f6231a2eSJérôme de Bretagne 742f6231a2eSJérôme de Bretagne interrupts-extended = <&tlmm 85 IRQ_TYPE_EDGE_RISING>; 743f6231a2eSJérôme de Bretagne 744f6231a2eSJérôme de Bretagne current-speed = <4000000>; 745f6231a2eSJérôme de Bretagne 746f6231a2eSJérôme de Bretagne pinctrl-0 = <&ssam_state>; 747f6231a2eSJérôme de Bretagne pinctrl-names = "default"; 748f6231a2eSJérôme de Bretagne }; 749f6231a2eSJérôme de Bretagne}; 750f6231a2eSJérôme de Bretagne 751f6231a2eSJérôme de Bretagne&usb_0 { 752f6231a2eSJérôme de Bretagne status = "okay"; 753f6231a2eSJérôme de Bretagne}; 754f6231a2eSJérôme de Bretagne 755f6231a2eSJérôme de Bretagne&usb_0_dwc3 { 756f6231a2eSJérôme de Bretagne dr_mode = "host"; 757f6231a2eSJérôme de Bretagne}; 758f6231a2eSJérôme de Bretagne 759f6231a2eSJérôme de Bretagne&usb_0_dwc3_hs { 760f6231a2eSJérôme de Bretagne remote-endpoint = <&pmic_glink_con0_hs>; 761f6231a2eSJérôme de Bretagne}; 762f6231a2eSJérôme de Bretagne 763f6231a2eSJérôme de Bretagne&usb_0_hsphy { 764f6231a2eSJérôme de Bretagne vdda-pll-supply = <&vreg_l9d>; 765f6231a2eSJérôme de Bretagne vdda18-supply = <&vreg_l1c>; 766f6231a2eSJérôme de Bretagne vdda33-supply = <&vreg_l7d>; 767f6231a2eSJérôme de Bretagne 768f6231a2eSJérôme de Bretagne status = "okay"; 769f6231a2eSJérôme de Bretagne}; 770f6231a2eSJérôme de Bretagne 771f6231a2eSJérôme de Bretagne&usb_0_qmpphy { 772f6231a2eSJérôme de Bretagne vdda-phy-supply = <&vreg_l9d>; 773f6231a2eSJérôme de Bretagne vdda-pll-supply = <&vreg_l4d>; 774f6231a2eSJérôme de Bretagne 775f6231a2eSJérôme de Bretagne orientation-switch; 776f6231a2eSJérôme de Bretagne 777f6231a2eSJérôme de Bretagne status = "okay"; 778f6231a2eSJérôme de Bretagne}; 779f6231a2eSJérôme de Bretagne 780f6231a2eSJérôme de Bretagne&usb_0_qmpphy_dp_in { 781f6231a2eSJérôme de Bretagne remote-endpoint = <&mdss0_dp0_out>; 782f6231a2eSJérôme de Bretagne}; 783f6231a2eSJérôme de Bretagne 784f6231a2eSJérôme de Bretagne&usb_0_qmpphy_out { 785f6231a2eSJérôme de Bretagne remote-endpoint = <&pmic_glink_con0_ss>; 786f6231a2eSJérôme de Bretagne}; 787f6231a2eSJérôme de Bretagne 788f6231a2eSJérôme de Bretagne&usb_1 { 789f6231a2eSJérôme de Bretagne status = "okay"; 790f6231a2eSJérôme de Bretagne}; 791f6231a2eSJérôme de Bretagne 792f6231a2eSJérôme de Bretagne&usb_1_dwc3 { 793f6231a2eSJérôme de Bretagne dr_mode = "host"; 794f6231a2eSJérôme de Bretagne}; 795f6231a2eSJérôme de Bretagne 796f6231a2eSJérôme de Bretagne&usb_1_dwc3_hs { 797f6231a2eSJérôme de Bretagne remote-endpoint = <&pmic_glink_con1_hs>; 798f6231a2eSJérôme de Bretagne}; 799f6231a2eSJérôme de Bretagne 800f6231a2eSJérôme de Bretagne&usb_1_hsphy { 801f6231a2eSJérôme de Bretagne vdda-pll-supply = <&vreg_l4b>; 802f6231a2eSJérôme de Bretagne vdda18-supply = <&vreg_l1c>; 803f6231a2eSJérôme de Bretagne vdda33-supply = <&vreg_l13c>; 804f6231a2eSJérôme de Bretagne 805f6231a2eSJérôme de Bretagne status = "okay"; 806f6231a2eSJérôme de Bretagne}; 807f6231a2eSJérôme de Bretagne 808f6231a2eSJérôme de Bretagne&usb_1_qmpphy { 809f6231a2eSJérôme de Bretagne vdda-phy-supply = <&vreg_l4b>; 810f6231a2eSJérôme de Bretagne vdda-pll-supply = <&vreg_l3b>; 811f6231a2eSJérôme de Bretagne 812f6231a2eSJérôme de Bretagne orientation-switch; 813f6231a2eSJérôme de Bretagne 814f6231a2eSJérôme de Bretagne status = "okay"; 815f6231a2eSJérôme de Bretagne}; 816f6231a2eSJérôme de Bretagne 817f6231a2eSJérôme de Bretagne&usb_1_qmpphy_dp_in { 818f6231a2eSJérôme de Bretagne remote-endpoint = <&mdss0_dp1_out>; 819f6231a2eSJérôme de Bretagne}; 820f6231a2eSJérôme de Bretagne 821f6231a2eSJérôme de Bretagne&usb_1_qmpphy_out { 822f6231a2eSJérôme de Bretagne remote-endpoint = <&pmic_glink_con1_ss>; 823f6231a2eSJérôme de Bretagne}; 824f6231a2eSJérôme de Bretagne 825f6231a2eSJérôme de Bretagne&vamacro { 826f6231a2eSJérôme de Bretagne pinctrl-0 = <&dmic01_default>, <&dmic23_default>; 827f6231a2eSJérôme de Bretagne pinctrl-names = "default"; 828f6231a2eSJérôme de Bretagne 829f6231a2eSJérôme de Bretagne vdd-micb-supply = <&vreg_s10b>; 830f6231a2eSJérôme de Bretagne 831f6231a2eSJérôme de Bretagne qcom,dmic-sample-rate = <4800000>; 832f6231a2eSJérôme de Bretagne 833f6231a2eSJérôme de Bretagne status = "okay"; 834f6231a2eSJérôme de Bretagne}; 835f6231a2eSJérôme de Bretagne 836f6231a2eSJérôme de Bretagne&wsamacro { 837f6231a2eSJérôme de Bretagne status = "okay"; 838f6231a2eSJérôme de Bretagne}; 839f6231a2eSJérôme de Bretagne 840f6231a2eSJérôme de Bretagne&xo_board_clk { 841f6231a2eSJérôme de Bretagne clock-frequency = <38400000>; 842f6231a2eSJérôme de Bretagne}; 843f6231a2eSJérôme de Bretagne 844f6231a2eSJérôme de Bretagne/* PINCTRL */ 845f6231a2eSJérôme de Bretagne 846f6231a2eSJérôme de Bretagne&lpass_tlmm { 847f6231a2eSJérôme de Bretagne status = "okay"; 848f6231a2eSJérôme de Bretagne}; 849f6231a2eSJérôme de Bretagne 850f6231a2eSJérôme de Bretagne&pmc8280_2_gpios { 851f6231a2eSJérôme de Bretagne wwan_sw_en: wwan-sw-en-state { 852f6231a2eSJérôme de Bretagne pins = "gpio1"; 853f6231a2eSJérôme de Bretagne function = "normal"; 854f6231a2eSJérôme de Bretagne }; 855f6231a2eSJérôme de Bretagne}; 856f6231a2eSJérôme de Bretagne 857f6231a2eSJérôme de Bretagne&pmr735a_gpios { 858f6231a2eSJérôme de Bretagne hastings_reg_en: hastings-reg-en-state { 859f6231a2eSJérôme de Bretagne pins = "gpio1"; 860f6231a2eSJérôme de Bretagne function = "normal"; 861f6231a2eSJérôme de Bretagne }; 862f6231a2eSJérôme de Bretagne}; 863f6231a2eSJérôme de Bretagne 864f6231a2eSJérôme de Bretagne&tlmm { 865f6231a2eSJérôme de Bretagne bt_default: bt-default-state { 866f6231a2eSJérôme de Bretagne hstp-bt-en-pins { 867f6231a2eSJérôme de Bretagne pins = "gpio133"; 868f6231a2eSJérôme de Bretagne function = "gpio"; 869f6231a2eSJérôme de Bretagne drive-strength = <16>; 870f6231a2eSJérôme de Bretagne bias-disable; 871f6231a2eSJérôme de Bretagne }; 872f6231a2eSJérôme de Bretagne 873f6231a2eSJérôme de Bretagne hstp-sw-ctrl-pins { 874f6231a2eSJérôme de Bretagne pins = "gpio132"; 875f6231a2eSJérôme de Bretagne function = "gpio"; 876f6231a2eSJérôme de Bretagne bias-pull-down; 877f6231a2eSJérôme de Bretagne }; 878f6231a2eSJérôme de Bretagne }; 879f6231a2eSJérôme de Bretagne 880f6231a2eSJérôme de Bretagne nvme_reg_en: nvme-reg-en-state { 881f6231a2eSJérôme de Bretagne pins = "gpio135"; 882f6231a2eSJérôme de Bretagne function = "gpio"; 883f6231a2eSJérôme de Bretagne drive-strength = <2>; 884f6231a2eSJérôme de Bretagne bias-disable; 885f6231a2eSJérôme de Bretagne }; 886f6231a2eSJérôme de Bretagne 887f6231a2eSJérôme de Bretagne pcie2a_default: pcie2a-default-state { 888f6231a2eSJérôme de Bretagne clkreq-n-pins { 889f6231a2eSJérôme de Bretagne pins = "gpio142"; 890f6231a2eSJérôme de Bretagne function = "pcie2a_clkreq"; 891f6231a2eSJérôme de Bretagne drive-strength = <2>; 892f6231a2eSJérôme de Bretagne bias-pull-up; 893f6231a2eSJérôme de Bretagne }; 894f6231a2eSJérôme de Bretagne 895f6231a2eSJérôme de Bretagne perst-n-pins { 896f6231a2eSJérôme de Bretagne pins = "gpio143"; 897f6231a2eSJérôme de Bretagne function = "gpio"; 898f6231a2eSJérôme de Bretagne drive-strength = <2>; 899f6231a2eSJérôme de Bretagne bias-disable; 900f6231a2eSJérôme de Bretagne }; 901f6231a2eSJérôme de Bretagne 902f6231a2eSJérôme de Bretagne wake-n-pins { 903f6231a2eSJérôme de Bretagne pins = "gpio145"; 904f6231a2eSJérôme de Bretagne function = "gpio"; 905f6231a2eSJérôme de Bretagne drive-strength = <2>; 906f6231a2eSJérôme de Bretagne bias-pull-up; 907f6231a2eSJérôme de Bretagne }; 908f6231a2eSJérôme de Bretagne }; 909f6231a2eSJérôme de Bretagne 910f6231a2eSJérôme de Bretagne pcie3a_default: pcie3a-default-state { 911f6231a2eSJérôme de Bretagne clkreq-n-pins { 912f6231a2eSJérôme de Bretagne pins = "gpio150"; 913f6231a2eSJérôme de Bretagne function = "pcie3a_clkreq"; 914f6231a2eSJérôme de Bretagne drive-strength = <2>; 915f6231a2eSJérôme de Bretagne bias-pull-up; 916f6231a2eSJérôme de Bretagne }; 917f6231a2eSJérôme de Bretagne 918f6231a2eSJérôme de Bretagne perst-n-pins { 919f6231a2eSJérôme de Bretagne pins = "gpio151"; 920f6231a2eSJérôme de Bretagne function = "gpio"; 921f6231a2eSJérôme de Bretagne drive-strength = <2>; 922f6231a2eSJérôme de Bretagne bias-disable; 923f6231a2eSJérôme de Bretagne }; 924f6231a2eSJérôme de Bretagne 925f6231a2eSJérôme de Bretagne wake-n-pins { 926f6231a2eSJérôme de Bretagne pins = "gpio148"; 927f6231a2eSJérôme de Bretagne function = "gpio"; 928f6231a2eSJérôme de Bretagne drive-strength = <2>; 929f6231a2eSJérôme de Bretagne bias-pull-up; 930f6231a2eSJérôme de Bretagne }; 931f6231a2eSJérôme de Bretagne }; 932f6231a2eSJérôme de Bretagne 933f6231a2eSJérôme de Bretagne pcie4_default: pcie4-default-state { 934f6231a2eSJérôme de Bretagne clkreq-n-pins { 935f6231a2eSJérôme de Bretagne pins = "gpio140"; 936f6231a2eSJérôme de Bretagne function = "pcie4_clkreq"; 937f6231a2eSJérôme de Bretagne drive-strength = <2>; 938f6231a2eSJérôme de Bretagne bias-pull-up; 939f6231a2eSJérôme de Bretagne }; 940f6231a2eSJérôme de Bretagne 941f6231a2eSJérôme de Bretagne perst-n-pins { 942f6231a2eSJérôme de Bretagne pins = "gpio141"; 943f6231a2eSJérôme de Bretagne function = "gpio"; 944f6231a2eSJérôme de Bretagne drive-strength = <2>; 945f6231a2eSJérôme de Bretagne bias-disable; 946f6231a2eSJérôme de Bretagne }; 947f6231a2eSJérôme de Bretagne 948f6231a2eSJérôme de Bretagne wake-n-pins { 949f6231a2eSJérôme de Bretagne pins = "gpio139"; 950f6231a2eSJérôme de Bretagne function = "gpio"; 951f6231a2eSJérôme de Bretagne drive-strength = <2>; 952f6231a2eSJérôme de Bretagne bias-pull-up; 953f6231a2eSJérôme de Bretagne }; 954f6231a2eSJérôme de Bretagne }; 955f6231a2eSJérôme de Bretagne 956f6231a2eSJérôme de Bretagne 957f6231a2eSJérôme de Bretagne ssam_state: ssam-state-state { 958f6231a2eSJérôme de Bretagne pins = "gpio85"; 959f6231a2eSJérôme de Bretagne function = "gpio"; 960f6231a2eSJérôme de Bretagne bias-disable; 961f6231a2eSJérôme de Bretagne }; 962f6231a2eSJérôme de Bretagne 963f6231a2eSJérôme de Bretagne uart2_default: uart2-default-state { 964f6231a2eSJérôme de Bretagne cts-pins { 965f6231a2eSJérôme de Bretagne pins = "gpio121"; 966f6231a2eSJérôme de Bretagne function = "qup2"; 967f6231a2eSJérôme de Bretagne bias-bus-hold; 968f6231a2eSJérôme de Bretagne }; 969f6231a2eSJérôme de Bretagne 970f6231a2eSJérôme de Bretagne rts-pins { 971f6231a2eSJérôme de Bretagne pins = "gpio122"; 972f6231a2eSJérôme de Bretagne function = "qup2"; 973f6231a2eSJérôme de Bretagne drive-strength = <2>; 974f6231a2eSJérôme de Bretagne bias-disable; 975f6231a2eSJérôme de Bretagne }; 976f6231a2eSJérôme de Bretagne 977f6231a2eSJérôme de Bretagne rx-pins { 978f6231a2eSJérôme de Bretagne pins = "gpio124"; 979f6231a2eSJérôme de Bretagne function = "qup2"; 980f6231a2eSJérôme de Bretagne bias-pull-up; 981f6231a2eSJérôme de Bretagne }; 982f6231a2eSJérôme de Bretagne 983f6231a2eSJérôme de Bretagne tx-pins { 984f6231a2eSJérôme de Bretagne pins = "gpio123"; 985f6231a2eSJérôme de Bretagne function = "qup2"; 986f6231a2eSJérôme de Bretagne drive-strength = <2>; 987f6231a2eSJérôme de Bretagne bias-disable; 988f6231a2eSJérôme de Bretagne }; 989f6231a2eSJérôme de Bretagne }; 990f6231a2eSJérôme de Bretagne 991f6231a2eSJérôme de Bretagne usb0_sbu_default: usb0-sbu-state { 992f6231a2eSJérôme de Bretagne oe-n-pins { 993f6231a2eSJérôme de Bretagne pins = "gpio101"; 994f6231a2eSJérôme de Bretagne function = "gpio"; 995f6231a2eSJérôme de Bretagne bias-disable; 996f6231a2eSJérôme de Bretagne drive-strength = <16>; 997f6231a2eSJérôme de Bretagne output-high; 998f6231a2eSJérôme de Bretagne }; 999f6231a2eSJérôme de Bretagne 1000f6231a2eSJérôme de Bretagne sel-pins { 1001f6231a2eSJérôme de Bretagne pins = "gpio164"; 1002f6231a2eSJérôme de Bretagne function = "gpio"; 1003f6231a2eSJérôme de Bretagne bias-disable; 1004f6231a2eSJérôme de Bretagne drive-strength = <16>; 1005f6231a2eSJérôme de Bretagne }; 1006f6231a2eSJérôme de Bretagne }; 1007f6231a2eSJérôme de Bretagne 1008f6231a2eSJérôme de Bretagne usb1_sbu_default: usb1-sbu-state { 1009f6231a2eSJérôme de Bretagne oe-n-pins { 1010f6231a2eSJérôme de Bretagne pins = "gpio48"; 1011f6231a2eSJérôme de Bretagne function = "gpio"; 1012f6231a2eSJérôme de Bretagne bias-disable; 1013f6231a2eSJérôme de Bretagne drive-strength = <16>; 1014f6231a2eSJérôme de Bretagne output-high; 1015f6231a2eSJérôme de Bretagne }; 1016f6231a2eSJérôme de Bretagne 1017f6231a2eSJérôme de Bretagne sel-pins { 1018f6231a2eSJérôme de Bretagne pins = "gpio47"; 1019f6231a2eSJérôme de Bretagne function = "gpio"; 1020f6231a2eSJérôme de Bretagne bias-disable; 1021f6231a2eSJérôme de Bretagne drive-strength = <16>; 1022f6231a2eSJérôme de Bretagne }; 1023f6231a2eSJérôme de Bretagne }; 1024f6231a2eSJérôme de Bretagne 1025f6231a2eSJérôme de Bretagne wcd_default: wcd-default-state { 1026f6231a2eSJérôme de Bretagne reset-pins { 1027f6231a2eSJérôme de Bretagne pins = "gpio106"; 1028f6231a2eSJérôme de Bretagne function = "gpio"; 1029f6231a2eSJérôme de Bretagne bias-disable; 1030f6231a2eSJérôme de Bretagne }; 1031f6231a2eSJérôme de Bretagne }; 1032f6231a2eSJérôme de Bretagne}; 1033