| // SPDX-License-Identifier: BSD-3-Clause |
| /* |
| * Copyright (c) 2025 Radxa Computer (Shenzhen) Co., Ltd. |
| */ |
| |
| /dts-v1/; |
| |
| /* PM7250B is configured to use SID8/9 */ |
| #define PM7250B_SID 8 |
| #define PM7250B_SID1 9 |
| |
| #include <dt-bindings/iio/qcom,spmi-adc7-pmk8350.h> |
| #include <dt-bindings/iio/qcom,spmi-adc7-pm7325.h> |
| #include <dt-bindings/leds/common.h> |
| #include <dt-bindings/pinctrl/qcom,pmic-gpio.h> |
| #include <dt-bindings/regulator/qcom,rpmh-regulator.h> |
| #include "kodiak.dtsi" |
| #include "pm7250b.dtsi" |
| #include "pm7325.dtsi" |
| #include "pm8350c.dtsi" /* PM7350C */ |
| #include "pmk8350.dtsi" /* PMK7325 */ |
| #include "qcs6490-audioreach.dtsi" |
| |
| /delete-node/ &adsp_mem; |
| /delete-node/ &cdsp_mem; |
| /delete-node/ &ipa_fw_mem; |
| /delete-node/ &mpss_mem; |
| /delete-node/ &remoteproc_mpss; |
| /delete-node/ &remoteproc_wpss; |
| /delete-node/ &rmtfs_mem; |
| /delete-node/ &video_mem; |
| /delete-node/ &wifi; |
| /delete-node/ &wlan_ce_mem; |
| /delete-node/ &wlan_fw_mem; |
| /delete-node/ &wpss_mem; |
| /delete-node/ &xbl_mem; |
| |
| / { |
| model = "Radxa Dragon Q6A"; |
| compatible = "radxa,dragon-q6a", "qcom,qcm6490"; |
| chassis-type = "embedded"; |
| |
| aliases { |
| mmc0 = &sdhc_1; |
| mmc1 = &sdhc_2; |
| serial0 = &uart5; |
| }; |
| |
| wcd938x: audio-codec { |
| compatible = "qcom,wcd9380-codec"; |
| |
| pinctrl-0 = <&wcd_default>; |
| pinctrl-names = "default"; |
| |
| reset-gpios = <&tlmm 83 GPIO_ACTIVE_LOW>; |
| |
| vdd-rxtx-supply = <&vreg_l18b_1p8>; |
| vdd-io-supply = <&vreg_l18b_1p8>; |
| vdd-buck-supply = <&vreg_l17b_1p8>; |
| vdd-mic-bias-supply = <&vreg_bob_3p296>; |
| |
| qcom,micbias1-microvolt = <1800000>; |
| qcom,micbias2-microvolt = <1800000>; |
| qcom,micbias3-microvolt = <1800000>; |
| qcom,micbias4-microvolt = <1800000>; |
| qcom,mbhc-buttons-vthreshold-microvolt = <75000 150000 237000 500000 500000 500000 500000 500000>; |
| qcom,mbhc-headset-vthreshold-microvolt = <1700000>; |
| qcom,mbhc-headphone-vthreshold-microvolt = <50000>; |
| qcom,rx-device = <&wcd_rx>; |
| qcom,tx-device = <&wcd_tx>; |
| |
| qcom,hphl-jack-type-normally-closed; |
| |
| #sound-dai-cells = <1>; |
| }; |
| |
| chosen { |
| stdout-path = "serial0:115200n8"; |
| }; |
| |
| usb2_1_con: connector-0 { |
| compatible = "usb-a-connector"; |
| vbus-supply = <&vcc_5v_peri>; |
| |
| port { |
| usb2_1_connector: endpoint { |
| remote-endpoint = <&usb_hub_2_1>; |
| }; |
| }; |
| }; |
| |
| usb2_2_con: connector-1 { |
| compatible = "usb-a-connector"; |
| vbus-supply = <&vcc_5v_peri>; |
| |
| port { |
| usb2_2_connector: endpoint { |
| remote-endpoint = <&usb_hub_2_2>; |
| }; |
| }; |
| }; |
| |
| usb2_3_con: connector-2 { |
| compatible = "usb-a-connector"; |
| vbus-supply = <&vcc_5v_peri>; |
| |
| port { |
| usb2_3_connector: endpoint { |
| remote-endpoint = <&usb_hub_2_3>; |
| }; |
| }; |
| }; |
| |
| leds { |
| compatible = "gpio-leds"; |
| |
| pinctrl-0 = <&user_led>; |
| pinctrl-names = "default"; |
| |
| user-led { |
| color = <LED_COLOR_ID_BLUE>; |
| function = LED_FUNCTION_INDICATOR; |
| gpios = <&tlmm 42 GPIO_ACTIVE_HIGH>; |
| linux,default-trigger = "none"; |
| default-state = "off"; |
| panic-indicator; |
| }; |
| }; |
| |
| reserved-memory { |
| xbl_mem: xbl@80700000 { |
| reg = <0x0 0x80700000 0x0 0x100000>; |
| no-map; |
| }; |
| |
| cdsp_secure_heap_mem: cdsp-secure-heap@81800000 { |
| reg = <0x0 0x81800000 0x0 0x1e00000>; |
| no-map; |
| }; |
| |
| camera_mem: camera@84300000 { |
| reg = <0x0 0x84300000 0x0 0x500000>; |
| no-map; |
| }; |
| |
| adsp_mem: adsp@84800000 { |
| reg = <0x0 0x84800000 0x0 0x2800000>; |
| no-map; |
| }; |
| |
| cdsp_mem: cdsp@87000000 { |
| reg = <0x0 0x87000000 0x0 0x1e00000>; |
| no-map; |
| }; |
| |
| video_mem: video@88e00000 { |
| reg = <0x0 0x88e00000 0x0 0x700000>; |
| no-map; |
| }; |
| |
| cvp_mem: cvp@89500000 { |
| reg = <0x0 0x89500000 0x0 0x500000>; |
| no-map; |
| }; |
| |
| gpu_microcode_mem: gpu-microcode@89a00000 { |
| reg = <0x0 0x89a00000 0x0 0x2000>; |
| no-map; |
| }; |
| |
| tz_stat_mem: tz-stat@c0000000 { |
| reg = <0x0 0xc0000000 0x0 0x100000>; |
| no-map; |
| }; |
| |
| tags_mem: tags@c0100000 { |
| reg = <0x0 0xc0100000 0x0 0x1200000>; |
| no-map; |
| }; |
| |
| qtee_mem: qtee@c1300000 { |
| reg = <0x0 0xc1300000 0x0 0x500000>; |
| no-map; |
| }; |
| |
| trusted_apps_mem: trusted-apps@c1800000 { |
| reg = <0x0 0xc1800000 0x0 0x1c00000>; |
| no-map; |
| }; |
| |
| debug_vm_mem: debug-vm@d0600000 { |
| reg = <0x0 0xd0600000 0x0 0x100000>; |
| no-map; |
| }; |
| }; |
| |
| thermal-zones { |
| msm-skin-thermal { |
| polling-delay-passive = <0>; |
| thermal-sensors = <&pmk8350_adc_tm 2>; |
| }; |
| |
| quiet-thermal { |
| polling-delay-passive = <0>; |
| thermal-sensors = <&pmk8350_adc_tm 1>; |
| }; |
| |
| ufs-thermal { |
| polling-delay-passive = <0>; |
| thermal-sensors = <&pmk8350_adc_tm 3>; |
| }; |
| |
| xo-thermal { |
| polling-delay-passive = <0>; |
| thermal-sensors = <&pmk8350_adc_tm 0>; |
| }; |
| }; |
| |
| vcc_1v8: regulator-vcc-1v8 { |
| compatible = "regulator-fixed"; |
| regulator-name = "vcc_1v8"; |
| regulator-min-microvolt = <1800000>; |
| regulator-max-microvolt = <1800000>; |
| vin-supply = <&vcc_5v_peri>; |
| |
| regulator-boot-on; |
| regulator-always-on; |
| }; |
| |
| vcc_3v3: regulator-vcc-3v3 { |
| compatible = "regulator-fixed"; |
| regulator-name = "vcc_3v3"; |
| regulator-min-microvolt = <3300000>; |
| regulator-max-microvolt = <3300000>; |
| vin-supply = <&vcc_5v_peri>; |
| |
| regulator-boot-on; |
| regulator-always-on; |
| }; |
| |
| vcc_5v_peri: regulator-vcc-5v-peri { |
| compatible = "regulator-fixed"; |
| regulator-name = "vcc_5v_peri"; |
| regulator-min-microvolt = <5000000>; |
| regulator-max-microvolt = <5000000>; |
| vin-supply = <&vph_pwr>; |
| |
| regulator-boot-on; |
| regulator-always-on; |
| }; |
| |
| vph_pwr: regulator-vph-pwr { |
| compatible = "regulator-fixed"; |
| regulator-name = "vph_pwr"; |
| regulator-min-microvolt = <3700000>; |
| regulator-max-microvolt = <3700000>; |
| |
| regulator-boot-on; |
| regulator-always-on; |
| }; |
| }; |
| |
| &apps_rsc { |
| regulators-0 { |
| compatible = "qcom,pm7325-rpmh-regulators"; |
| qcom,pmic-id = "b"; |
| |
| vdd-s1-supply = <&vph_pwr>; |
| vdd-s2-supply = <&vph_pwr>; |
| vdd-s3-supply = <&vph_pwr>; |
| vdd-s4-supply = <&vph_pwr>; |
| vdd-s5-supply = <&vph_pwr>; |
| vdd-s6-supply = <&vph_pwr>; |
| vdd-s7-supply = <&vph_pwr>; |
| vdd-s8-supply = <&vph_pwr>; |
| vdd-l1-l4-l12-l15-supply = <&vreg_s7b_0p536>; |
| vdd-l2-l7-supply = <&vreg_bob_3p296>; |
| vdd-l6-l9-l10-supply = <&vreg_s8b_1p2>; |
| vdd-l11-l17-l18-l19-supply = <&vreg_s1b_1p84>; |
| |
| vreg_s1b_1p84: smps1 { |
| regulator-name = "vreg_s1b_1p84"; |
| regulator-min-microvolt = <1840000>; |
| regulator-max-microvolt = <2040000>; |
| }; |
| |
| vreg_s7b_0p536: smps7 { |
| regulator-name = "vreg_s7b_0p536"; |
| regulator-min-microvolt = <536000>; |
| regulator-max-microvolt = <1120000>; |
| }; |
| |
| vreg_s8b_1p2: smps8 { |
| regulator-name = "vreg_s8b_1p2"; |
| regulator-min-microvolt = <1200000>; |
| regulator-max-microvolt = <1496000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_RET>; |
| }; |
| |
| vreg_l1b_0p912: ldo1 { |
| regulator-name = "vreg_l1b_0p912"; |
| regulator-min-microvolt = <832000>; |
| regulator-max-microvolt = <920000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; |
| regulator-allow-set-load; |
| regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM |
| RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_l2b_3p072: ldo2 { |
| regulator-name = "vreg_l2b_3p072"; |
| regulator-min-microvolt = <2704000>; |
| regulator-max-microvolt = <3544000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; |
| regulator-allow-set-load; |
| regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM |
| RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_l6b_1p2: ldo6 { |
| regulator-name = "vreg_l6b_1p2"; |
| regulator-min-microvolt = <1200000>; |
| regulator-max-microvolt = <1256000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; |
| regulator-allow-set-load; |
| regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM |
| RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_l7b_2p96: ldo7 { |
| regulator-name = "vreg_l7b_2p96"; |
| regulator-min-microvolt = <2960000>; |
| regulator-max-microvolt = <2960000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; |
| regulator-allow-set-load; |
| regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM |
| RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_l9b_1p2: ldo9 { |
| regulator-name = "vreg_l9b_1p2"; |
| regulator-min-microvolt = <1200000>; |
| regulator-max-microvolt = <1304000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; |
| regulator-allow-set-load; |
| regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM |
| RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_l17b_1p8: ldo17 { |
| regulator-name = "vreg_l17b_1p8"; |
| regulator-min-microvolt = <1800000>; |
| regulator-max-microvolt = <1896000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_l18b_1p8: ldo18 { |
| regulator-name = "vreg_l18b_1p8"; |
| regulator-min-microvolt = <1800000>; |
| regulator-max-microvolt = <2000000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; |
| regulator-always-on; |
| }; |
| |
| vreg_l19b_1p8: ldo19 { |
| regulator-name = "vreg_l19b_1p8"; |
| regulator-min-microvolt = <1800000>; |
| regulator-max-microvolt = <2000000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; |
| regulator-allow-set-load; |
| regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM |
| RPMH_REGULATOR_MODE_HPM>; |
| }; |
| }; |
| |
| regulators-1 { |
| compatible = "qcom,pm8350c-rpmh-regulators"; |
| qcom,pmic-id = "c"; |
| |
| vdd-s1-supply = <&vph_pwr>; |
| vdd-s2-supply = <&vph_pwr>; |
| vdd-s3-supply = <&vph_pwr>; |
| vdd-s4-supply = <&vph_pwr>; |
| vdd-s5-supply = <&vph_pwr>; |
| vdd-s6-supply = <&vph_pwr>; |
| vdd-s7-supply = <&vph_pwr>; |
| vdd-s8-supply = <&vph_pwr>; |
| vdd-s9-supply = <&vph_pwr>; |
| vdd-s10-supply = <&vph_pwr>; |
| vdd-l1-l12-supply = <&vreg_s1b_1p84>; |
| vdd-l6-l9-l11-supply = <&vreg_bob_3p296>; |
| vdd-l10-supply = <&vreg_s7b_0p536>; |
| vdd-bob-supply = <&vph_pwr>; |
| |
| vreg_l1c_1p8: ldo1 { |
| regulator-name = "vreg_l1c_1p8"; |
| regulator-min-microvolt = <1800000>; |
| regulator-max-microvolt = <1976000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; |
| regulator-allow-set-load; |
| regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM |
| RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_l6c_2p96: ldo6 { |
| regulator-name = "vreg_l6c_2p96"; |
| regulator-min-microvolt = <1650000>; |
| regulator-max-microvolt = <3544000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; |
| regulator-allow-set-load; |
| regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM |
| RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_l9c_2p96: ldo9 { |
| regulator-name = "vreg_l9c_2p96"; |
| regulator-min-microvolt = <2704000>; |
| regulator-max-microvolt = <3544000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; |
| regulator-allow-set-load; |
| regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM |
| RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_l10c_0p88: ldo10 { |
| regulator-name = "vreg_l10c_0p88"; |
| regulator-min-microvolt = <720000>; |
| regulator-max-microvolt = <1048000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; |
| regulator-allow-set-load; |
| regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM |
| RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_bob_3p296: bob { |
| regulator-name = "vreg_bob_3p296"; |
| regulator-min-microvolt = <3032000>; |
| regulator-max-microvolt = <3960000>; |
| }; |
| }; |
| }; |
| |
| &gcc { |
| protected-clocks = <GCC_CFG_NOC_LPASS_CLK>, |
| <GCC_MSS_CFG_AHB_CLK>, |
| <GCC_MSS_GPLL0_MAIN_DIV_CLK_SRC>, |
| <GCC_MSS_OFFLINE_AXI_CLK>, |
| <GCC_MSS_Q6SS_BOOT_CLK_SRC>, |
| <GCC_MSS_Q6_MEMNOC_AXI_CLK>, |
| <GCC_MSS_SNOC_AXI_CLK>, |
| <GCC_SEC_CTRL_CLK_SRC>, |
| <GCC_WPSS_AHB_BDG_MST_CLK>, |
| <GCC_WPSS_AHB_CLK>, |
| <GCC_WPSS_RSCP_CLK>; |
| }; |
| |
| &gpi_dma0 { |
| status = "okay"; |
| }; |
| |
| &gpi_dma1 { |
| status = "okay"; |
| }; |
| |
| &gpu { |
| status = "okay"; |
| }; |
| |
| &gpu_zap_shader { |
| firmware-name = "qcom/qcs6490/a660_zap.mbn"; |
| }; |
| |
| /* Pin 13, 15 in GPIO header */ |
| &i2c0 { |
| qcom,enable-gsi-dma; |
| status = "okay"; |
| }; |
| |
| /* Pin 27, 28 in GPIO header */ |
| &i2c2 { |
| qcom,enable-gsi-dma; |
| status = "okay"; |
| }; |
| |
| /* Pin 3, 5 in GPIO header */ |
| &i2c6 { |
| qcom,enable-gsi-dma; |
| status = "okay"; |
| }; |
| |
| &i2c10 { |
| qcom,enable-gsi-dma; |
| status = "okay"; |
| |
| rtc: rtc@68 { |
| compatible = "st,m41t11"; |
| reg = <0x68>; |
| }; |
| }; |
| |
| /* External touchscreen */ |
| &i2c13 { |
| qcom,enable-gsi-dma; |
| status = "okay"; |
| }; |
| |
| &lpass_audiocc { |
| compatible = "qcom,qcm6490-lpassaudiocc"; |
| /delete-property/ power-domains; |
| }; |
| |
| &lpass_rx_macro { |
| status = "okay"; |
| }; |
| |
| &lpass_tx_macro { |
| status = "okay"; |
| }; |
| |
| &lpass_va_macro { |
| status = "okay"; |
| }; |
| |
| &pcie0 { |
| perst-gpios = <&tlmm 87 GPIO_ACTIVE_LOW>; |
| wake-gpios = <&tlmm 89 GPIO_ACTIVE_HIGH>; |
| |
| pinctrl-0 = <&pcie0_clkreq_n>, <&pcie0_reset_n>, <&pcie0_wake_n>; |
| pinctrl-names = "default"; |
| |
| status = "okay"; |
| }; |
| |
| &pcie0_phy { |
| vdda-phy-supply = <&vreg_l10c_0p88>; |
| vdda-pll-supply = <&vreg_l6b_1p2>; |
| |
| status = "okay"; |
| }; |
| |
| &pcie1 { |
| perst-gpios = <&tlmm 2 GPIO_ACTIVE_LOW>; |
| wake-gpios = <&tlmm 3 GPIO_ACTIVE_HIGH>; |
| |
| pinctrl-0 = <&pcie1_clkreq_n>, <&pcie1_reset_n>, <&pcie1_wake_n>; |
| pinctrl-names = "default"; |
| |
| /* Support for QPS615 PCIe switch */ |
| iommu-map = <0x0 &apps_smmu 0x1c80 0x1>, |
| <0x100 &apps_smmu 0x1c81 0x1>, |
| <0x208 &apps_smmu 0x1c84 0x1>, |
| <0x210 &apps_smmu 0x1c85 0x1>, |
| <0x218 &apps_smmu 0x1c86 0x1>, |
| <0x300 &apps_smmu 0x1c87 0x1>, |
| <0x400 &apps_smmu 0x1c88 0x1>, |
| <0x500 &apps_smmu 0x1c89 0x1>, |
| <0x501 &apps_smmu 0x1c90 0x1>; |
| |
| status = "okay"; |
| }; |
| |
| &pcie1_phy { |
| vdda-phy-supply = <&vreg_l10c_0p88>; |
| vdda-pll-supply = <&vreg_l6b_1p2>; |
| |
| status = "okay"; |
| }; |
| |
| &pm7325_gpios { |
| pm7325_adc_default: adc-default-state { |
| pins = "gpio2"; |
| function = PMIC_GPIO_FUNC_NORMAL; |
| bias-high-impedance; |
| }; |
| }; |
| |
| &pm7325_temp_alarm { |
| io-channels = <&pmk8350_vadc PM7325_ADC7_DIE_TEMP>; |
| io-channel-names = "thermal"; |
| }; |
| |
| &pmk8350_adc_tm { |
| status = "okay"; |
| |
| xo-therm@0 { |
| reg = <0>; |
| io-channels = <&pmk8350_vadc PMK8350_ADC7_AMUX_THM1_100K_PU>; |
| qcom,ratiometric; |
| qcom,hw-settle-time-us = <200>; |
| }; |
| |
| quiet-therm@1 { |
| reg = <1>; |
| io-channels = <&pmk8350_vadc PM7325_ADC7_AMUX_THM1_100K_PU>; |
| qcom,ratiometric; |
| qcom,hw-settle-time-us = <200>; |
| }; |
| |
| msm-skin-therm@2 { |
| reg = <2>; |
| io-channels = <&pmk8350_vadc PM7325_ADC7_AMUX_THM3_100K_PU>; |
| qcom,ratiometric; |
| qcom,hw-settle-time-us = <200>; |
| }; |
| |
| ufs-therm@3 { |
| reg = <3>; |
| io-channels = <&pmk8350_vadc PM7325_ADC7_GPIO1_100K_PU>; |
| qcom,ratiometric; |
| qcom,hw-settle-time-us = <200>; |
| }; |
| }; |
| |
| &pmk8350_vadc { |
| pinctrl-0 = <&pm7325_adc_default>; |
| pinctrl-names = "default"; |
| |
| channel@3 { |
| reg = <PMK8350_ADC7_DIE_TEMP>; |
| label = "pmk7325_die_temp"; |
| qcom,pre-scaling = <1 1>; |
| }; |
| |
| channel@44 { |
| reg = <PMK8350_ADC7_AMUX_THM1_100K_PU>; |
| label = "xo_therm"; |
| qcom,hw-settle-time = <200>; |
| qcom,pre-scaling = <1 1>; |
| qcom,ratiometric; |
| }; |
| |
| channel@103 { |
| reg = <PM7325_ADC7_DIE_TEMP>; |
| label = "pm7325_die_temp"; |
| qcom,pre-scaling = <1 1>; |
| }; |
| |
| channel@144 { |
| reg = <PM7325_ADC7_AMUX_THM1_100K_PU>; |
| qcom,ratiometric; |
| qcom,hw-settle-time = <200>; |
| qcom,pre-scaling = <1 1>; |
| label = "quiet_therm"; |
| }; |
| |
| channel@146 { |
| reg = <PM7325_ADC7_AMUX_THM3_100K_PU>; |
| qcom,ratiometric; |
| qcom,hw-settle-time = <200>; |
| qcom,pre-scaling = <1 1>; |
| label = "msm_skin_therm"; |
| }; |
| |
| channel@14a { |
| /* According to datasheet, 0x4a = AMUX1_GPIO = GPIO_02 */ |
| reg = <PM7325_ADC7_GPIO1_100K_PU>; |
| qcom,ratiometric; |
| qcom,hw-settle-time = <200>; |
| qcom,pre-scaling = <1 1>; |
| label = "ufs_therm"; |
| }; |
| }; |
| |
| &pon_pwrkey { |
| status = "okay"; |
| }; |
| |
| &qspi { |
| /* It's not possible to use QSPI with iommu */ |
| /* due to an error in qcom_smmu_write_s2cr */ |
| /delete-property/ iommus; |
| |
| pinctrl-0 = <&qspi_clk>, <&qspi_cs0>, <&qspi_data0>, |
| <&qspi_data1>, <&qspi_data23>; |
| pinctrl-1 = <&qspi_sleep>; |
| pinctrl-names = "default", "sleep"; |
| |
| status = "okay"; |
| |
| spi_flash: flash@0 { |
| compatible = "winbond,w25q256", "jedec,spi-nor"; |
| reg = <0>; |
| |
| spi-max-frequency = <104000000>; |
| spi-tx-bus-width = <4>; |
| spi-rx-bus-width = <4>; |
| }; |
| }; |
| |
| &qupv3_id_0 { |
| firmware-name = "qcom/qcm6490/qupv3fw.elf"; |
| status = "okay"; |
| }; |
| |
| &qupv3_id_1 { |
| firmware-name = "qcom/qcm6490/qupv3fw.elf"; |
| status = "okay"; |
| }; |
| |
| &remoteproc_adsp { |
| firmware-name = "qcom/qcs6490/radxa/dragon-q6a/adsp.mbn"; |
| status = "okay"; |
| }; |
| |
| &remoteproc_cdsp { |
| firmware-name = "qcom/qcs6490/cdsp.mbn"; |
| status = "okay"; |
| }; |
| |
| &sdhc_1 { |
| non-removable; |
| no-sd; |
| no-sdio; |
| |
| vmmc-supply = <&vreg_l7b_2p96>; |
| vqmmc-supply = <&vreg_l19b_1p8>; |
| |
| status = "okay"; |
| }; |
| |
| &sdhc_2 { |
| pinctrl-0 = <&sdc2_clk>, <&sdc2_cmd>, <&sdc2_data>, <&sd_cd>; |
| pinctrl-1 = <&sdc2_clk_sleep>, <&sdc2_cmd_sleep>, <&sdc2_data_sleep>, <&sd_cd>; |
| |
| vmmc-supply = <&vreg_l9c_2p96>; |
| vqmmc-supply = <&vreg_l6c_2p96>; |
| |
| cd-gpios = <&tlmm 91 GPIO_ACTIVE_LOW>; |
| status = "okay"; |
| }; |
| |
| &sound { |
| compatible = "qcom,qcs6490-rb3gen2-sndcard"; |
| model = "QCS6490-Radxa-Dragon-Q6A"; |
| |
| audio-routing = "IN1_HPHL", "HPHL_OUT", |
| "IN2_HPHR", "HPHR_OUT", |
| "AMIC2", "MIC BIAS2", |
| "TX SWR_ADC1", "ADC2_OUTPUT"; |
| |
| wcd-playback-dai-link { |
| link-name = "WCD Playback"; |
| |
| codec { |
| sound-dai = <&wcd938x 0>, <&swr0 0>, <&lpass_rx_macro 0>; |
| }; |
| |
| cpu { |
| sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>; |
| }; |
| |
| platform { |
| sound-dai = <&q6apm>; |
| }; |
| }; |
| |
| wcd-capture-dai-link { |
| link-name = "WCD Capture"; |
| |
| codec { |
| sound-dai = <&wcd938x 1>, <&swr1 0>, <&lpass_tx_macro 0>; |
| }; |
| |
| cpu { |
| sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>; |
| }; |
| |
| platform { |
| sound-dai = <&q6apm>; |
| }; |
| }; |
| }; |
| |
| /* Pin 11, 29, 31, 32 in GPIO header */ |
| &spi7 { |
| qcom,enable-gsi-dma; |
| status = "okay"; |
| }; |
| |
| /* Pin 19, 21, 23, 24, 26 in GPIO header */ |
| &spi12 { |
| qcom,enable-gsi-dma; |
| status = "okay"; |
| }; |
| |
| /* Pin 22, 33, 36, 37 in GPIO header */ |
| &spi14 { |
| qcom,enable-gsi-dma; |
| status = "okay"; |
| }; |
| |
| &swr0 { |
| status = "okay"; |
| |
| wcd_rx: codec@0,4 { |
| compatible = "sdw20217010d00"; |
| reg = <0 4>; |
| qcom,rx-port-mapping = <1 2 3 4 5>; |
| }; |
| }; |
| |
| &swr1 { |
| status = "okay"; |
| |
| wcd_tx: codec@0,3 { |
| compatible = "sdw20217010d00"; |
| reg = <0 3>; |
| qcom,tx-port-mapping = <1 1 2 3>; |
| }; |
| }; |
| |
| &tlmm { |
| gpio-line-names = |
| /* GPIO_0 ~ GPIO_3 */ |
| "PIN_13", "PIN_15", "", "", |
| /* GPIO_4 ~ GPIO_7 */ |
| "", "", "", "", |
| /* GPIO_8 ~ GPIO_11 */ |
| "PIN_27", "PIN_28", "", "", |
| /* GPIO_12 ~ GPIO_15 */ |
| "", "", "", "", |
| /* GPIO_16 ~ GPIO_19 */ |
| "", "", "", "", |
| /* GPIO_20 ~ GPIO_23 */ |
| "", "", "PIN_8", "PIN_10", |
| /* GPIO_24 ~ GPIO_27 */ |
| "PIN_3", "PIN_5", "PIN_16", "PIN_27", |
| /* GPIO_28 ~ GPIO_31 */ |
| "PIN_31", "PIN_11", "PIN_32", "PIN_29", |
| /* GPIO_32 ~ GPIO_35 */ |
| "", "", "", "", |
| /* GPIO_36 ~ GPIO_39 */ |
| "", "", "", "", |
| /* GPIO_40 ~ GPIO_43 */ |
| "", "", "", "", |
| /* GPIO_44 ~ GPIO_47 */ |
| "", "", "", "", |
| /* GPIO_48 ~ GPIO_51 */ |
| "PIN_21", "PIN_19", "PIN_23", "PIN_24", |
| /* GPIO_52 ~ GPIO_55 */ |
| "", "", "", "PIN_26", |
| /* GPIO_56 ~ GPIO_59 */ |
| "PIN_33", "PIN_22", "PIN_37", "PIN_36", |
| /* GPIO_60 ~ GPIO_63 */ |
| "", "", "", "", |
| /* GPIO_64 ~ GPIO_67 */ |
| "", "", "", "", |
| /* GPIO_68 ~ GPIO_71 */ |
| "", "", "", "", |
| /* GPIO_72 ~ GPIO_75 */ |
| "", "", "", "", |
| /* GPIO_76 ~ GPIO_79 */ |
| "", "", "", "", |
| /* GPIO_80 ~ GPIO_83 */ |
| "", "", "", "", |
| /* GPIO_84 ~ GPIO_87 */ |
| "", "", "", "", |
| /* GPIO_88 ~ GPIO_91 */ |
| "", "", "", "", |
| /* GPIO_92 ~ GPIO_95 */ |
| "", "", "", "", |
| /* GPIO_96 ~ GPIO_99 */ |
| "PIN_7", "PIN_12", "PIN_38", "PIN_40", |
| /* GPIO_100 ~ GPIO_103 */ |
| "PIN_35", "", "", "", |
| /* GPIO_104 ~ GPIO_107 */ |
| "", "", "", "", |
| /* GPIO_108 ~ GPIO_111 */ |
| "", "", "", "", |
| /* GPIO_112 ~ GPIO_115 */ |
| "", "", "", "", |
| /* GPIO_116 ~ GPIO_119 */ |
| "", "", "", "", |
| /* GPIO_120 ~ GPIO_123 */ |
| "", "", "", "", |
| /* GPIO_124 ~ GPIO_127 */ |
| "", "", "", "", |
| /* GPIO_128 ~ GPIO_131 */ |
| "", "", "", "", |
| /* GPIO_132 ~ GPIO_135 */ |
| "", "", "", "", |
| /* GPIO_136 ~ GPIO_139 */ |
| "", "", "", "", |
| /* GPIO_140 ~ GPIO_143 */ |
| "", "", "", "", |
| /* GPIO_144 ~ GPIO_147 */ |
| "", "", "", "", |
| /* GPIO_148 ~ GPIO_151 */ |
| "", "", "", "", |
| /* GPIO_152 ~ GPIO_155 */ |
| "", "", "", "", |
| /* GPIO_156 ~ GPIO_159 */ |
| "", "", "", "", |
| /* GPIO_160 ~ GPIO_163 */ |
| "", "", "", "", |
| /* GPIO_164 ~ GPIO_167 */ |
| "", "", "", "", |
| /* GPIO_168 ~ GPIO_171 */ |
| "", "", "", "", |
| /* GPIO_172 ~ GPIO_174 */ |
| "", "", ""; |
| |
| pcie0_reset_n: pcie0-reset-n-state { |
| pins = "gpio87"; |
| function = "gpio"; |
| drive-strength = <2>; |
| bias-disable; |
| }; |
| |
| pcie0_wake_n: pcie0-wake-n-state { |
| pins = "gpio89"; |
| function = "gpio"; |
| drive-strength = <2>; |
| bias-pull-up; |
| }; |
| |
| pcie1_reset_n: pcie1-reset-n-state { |
| pins = "gpio2"; |
| function = "gpio"; |
| drive-strength = <2>; |
| bias-disable; |
| }; |
| |
| pcie1_wake_n: pcie1-wake-n-state { |
| pins = "gpio3"; |
| function = "gpio"; |
| drive-strength = <2>; |
| bias-pull-up; |
| }; |
| |
| qspi_sleep: qspi-sleep-state { |
| pins = "gpio12", "gpio13", "gpio14", "gpio15", "gpio16", "gpio17"; |
| function = "gpio"; |
| output-disable; |
| }; |
| |
| sd_cd: sd-cd-state { |
| pins = "gpio91"; |
| function = "gpio"; |
| bias-pull-up; |
| }; |
| |
| user_led: user-led-state { |
| pins = "gpio42"; |
| function = "gpio"; |
| bias-pull-up; |
| }; |
| |
| wcd_default: wcd-reset-n-active-state { |
| pins = "gpio83"; |
| function = "gpio"; |
| drive-strength = <16>; |
| bias-disable; |
| output-low; |
| }; |
| }; |
| |
| &uart5 { |
| status = "okay"; |
| }; |
| |
| &usb_2 { |
| dr_mode = "host"; |
| |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| status = "okay"; |
| |
| /* Onboard USB 2.0 hub */ |
| usb_hub_2_x: hub@1 { |
| compatible = "usb1a40,0101"; |
| reg = <1>; |
| vdd-supply = <&vcc_5v_peri>; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| ports { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| port@1 { |
| reg = <1>; |
| |
| usb_hub_2_1: endpoint { |
| remote-endpoint = <&usb2_1_connector>; |
| }; |
| }; |
| |
| port@2 { |
| reg = <2>; |
| |
| usb_hub_2_2: endpoint { |
| remote-endpoint = <&usb2_2_connector>; |
| }; |
| }; |
| |
| port@3 { |
| reg = <3>; |
| |
| usb_hub_2_3: endpoint { |
| remote-endpoint = <&usb2_3_connector>; |
| }; |
| }; |
| }; |
| |
| /* FCU760K Wi-Fi & Bluetooth module */ |
| wifi@4 { |
| compatible = "usba69c,8d80"; |
| reg = <4>; |
| }; |
| }; |
| }; |
| |
| &usb_2_hsphy { |
| vdda-pll-supply = <&vreg_l10c_0p88>; |
| vdda33-supply = <&vreg_l2b_3p072>; |
| vdda18-supply = <&vreg_l1c_1p8>; |
| |
| status = "okay"; |
| }; |
| |
| &venus { |
| status = "okay"; |
| }; |
| |
| /* PINCTRL - additions to nodes defined in sc7280.dtsi */ |
| &pcie0_clkreq_n { |
| bias-pull-up; |
| drive-strength = <2>; |
| }; |
| |
| &pcie1_clkreq_n { |
| bias-pull-up; |
| drive-strength = <2>; |
| }; |
| |
| &qspi_clk { |
| bias-disable; |
| drive-strength = <16>; |
| }; |
| |
| &qspi_cs0 { |
| bias-disable; |
| drive-strength = <8>; |
| }; |
| |
| &qspi_data0 { |
| bias-disable; |
| drive-strength = <8>; |
| }; |
| |
| &qspi_data1 { |
| bias-disable; |
| drive-strength = <8>; |
| }; |
| |
| &qspi_data23 { |
| bias-disable; |
| drive-strength = <8>; |
| }; |
| |
| &sdc1_clk { |
| bias-disable; |
| drive-strength = <16>; |
| }; |
| |
| &sdc1_cmd { |
| bias-pull-up; |
| drive-strength = <10>; |
| }; |
| |
| &sdc1_data { |
| bias-pull-up; |
| drive-strength = <10>; |
| }; |
| |
| &sdc1_rclk { |
| bias-pull-down; |
| }; |
| |
| &sdc2_clk { |
| bias-disable; |
| drive-strength = <16>; |
| }; |
| |
| &sdc2_cmd { |
| bias-pull-up; |
| drive-strength = <10>; |
| }; |
| |
| &sdc2_data { |
| bias-pull-up; |
| drive-strength = <10>; |
| }; |