1 // SPDX-License-Identifier: BSD-3-Clause
5 #include <dt-bindings/gpio/gpio.h>
6 #include <dt-bindings/sound/qcom,q6asm.h>
7 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
11 #include "pm6150.dtsi"
12 #include "pm6150l.dtsi"
14 /delete-node/ &tz_mem;
15 /delete-node/ &ipa_fw_mem;
18 model = "Acer Aspire 1";
19 compatible = "acer,aspire1", "qcom,sc7180";
20 chassis-type = "laptop";
23 bluetooth0 = &bluetooth;
30 stdout-path = "serial0:115200n8";
34 zap_mem: zap-shader@80840000 {
35 reg = <0x0 0x80840000 0 0x2000>;
39 venus_mem: venus@85b00000 {
40 reg = <0x0 0x85b00000 0 0x500000>;
44 mpss_mem: mpss@86000000 {
45 reg = <0x0 0x86000000 0x0 0x2000000>;
49 adsp_mem: adsp@8e400000 {
50 reg = <0x0 0x8e400000 0x0 0x2800000>;
54 wlan_mem: wlan@93900000 {
55 reg = <0x0 0x93900000 0x0 0x200000>;
60 max98357a: audio-codec {
61 compatible = "maxim,max98357a";
62 sdmode-gpios = <&tlmm 23 GPIO_ACTIVE_HIGH>;
64 pinctrl-0 = <&_sd_mode_default>;
65 pinctrl-names = "default";
67 #sound-dai-cells = <0>;
70 backlight: backlight {
71 compatible = "pwm-backlight";
72 pwms = <&sn65dsi86_bridge 1000000>;
73 enable-gpios = <&tlmm 10 GPIO_ACTIVE_HIGH>;
75 pinctrl-0 = <&soc_bkoff_default>;
76 pinctrl-names = "default";
79 reg_brij_1p2: bridge-1p2-regulator {
80 compatible = "regulator-fixed";
81 regulator-name = "brij_1p2";
82 regulator-min-microvolt = <1200000>;
83 regulator-max-microvolt = <1200000>;
85 gpio = <&tlmm 19 GPIO_ACTIVE_HIGH>;
88 pinctrl-0 = <®_edp_1p2_en_default>;
89 pinctrl-names = "default";
92 reg_brij_1p8: bridge-regulator {
93 compatible = "regulator-fixed";
94 regulator-name = "brij_1p8";
95 regulator-min-microvolt = <1800000>;
96 regulator-max-microvolt = <1800000>;
98 vin-supply = <&vreg_l8c_1p8>;
100 gpio = <&tlmm 20 GPIO_ACTIVE_HIGH>;
103 pinctrl-0 = <®_edp_1p8_en_default>;
104 pinctrl-names = "default";
107 reg_codec_3p3: codec-regulator {
108 compatible = "regulator-fixed";
109 regulator-name = "codec_3p3";
110 regulator-min-microvolt = <3300000>;
111 regulator-max-microvolt = <3300000>;
113 gpio = <&tlmm 83 GPIO_ACTIVE_HIGH>;
116 pinctrl-0 = <®_audio_en_default>;
117 pinctrl-names = "default";
120 reg_lcm_3p3: panel-regulator {
121 compatible = "regulator-fixed";
122 regulator-name = "lcm_3p3";
123 regulator-min-microvolt = <3300000>;
124 regulator-max-microvolt = <3300000>;
126 gpio = <&tlmm 26 GPIO_ACTIVE_HIGH>;
129 pinctrl-0 = <®_lcm_en_default>;
130 pinctrl-names = "default";
134 compatible = "qcom,sc7180-qdsp6-sndcard";
135 pinctrl-0 = <&pri_mi2s_active>, <&pri_mi2s_mclk_active>, <&ter_mi2s_active>;
136 pinctrl-names = "default";
137 model = "Acer-Aspire-1";
140 "Headphone Jack", "HPOL",
141 "Headphone Jack", "HPOR";
143 multimedia1-dai-link {
144 link-name = "MultiMedia1";
147 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA1>;
151 multimedia2-dai-link {
152 link-name = "MultiMedia2";
155 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA2>;
159 multimedia3-dai-link {
160 link-name = "MultiMedia3";
163 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA3>;
167 multimedia4-dai-link {
168 link-name = "MultiMedia4";
171 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA4>;
175 primary-rx-dai-link {
176 link-name = "Primary MI2S Playback";
179 sound-dai = <&q6afedai PRIMARY_MI2S_RX>;
183 sound-dai = <&q6routing>;
187 sound-dai = <&alc5682 0>;
191 primary-tx-dai-link {
192 link-name = "Primary MI2S Capture";
195 sound-dai = <&q6afedai PRIMARY_MI2S_TX>;
199 sound-dai = <&q6routing>;
203 sound-dai = <&alc5682 0>;
207 tertiary-rx-dai-link {
208 link-name = "Tertiary MI2S Playback";
211 sound-dai = <&q6afedai TERTIARY_MI2S_RX>;
215 sound-dai = <&q6routing>;
219 sound-dai = <&max98357a>;
223 displayport-rx-dai-link {
224 link-name = "DisplayPort Playback";
227 sound-dai = <&q6afedai DISPLAY_PORT_RX>;
231 sound-dai = <&q6routing>;
235 sound-dai = <&mdss_dp>;
240 reg_tp_3p3: touchpad-regulator {
241 compatible = "regulator-fixed";
242 regulator-name = "tp_3p3";
243 regulator-min-microvolt = <3300000>;
244 regulator-max-microvolt = <3300000>;
246 gpio = <&tlmm 25 GPIO_ACTIVE_HIGH>;
249 pinctrl-0 = <®_tp_en_default>;
250 pinctrl-names = "default";
255 clock-frequency = <400000>;
258 /* embedded-controller@76 */
262 clock-frequency = <400000>;
266 * NOTE: DSDT defines two possible touchpads, other one is
269 * hid-descr-addr = <0x1>;
273 compatible = "hid-over-i2c";
275 hid-descr-addr = <0x20>;
277 vdd-supply = <®_tp_3p3>;
279 interrupts-extended = <&tlmm 94 IRQ_TYPE_LEVEL_LOW>;
281 pinctrl-0 = <&hid_touchpad_default>;
282 pinctrl-names = "default";
288 compatible = "hid-over-i2c";
290 hid-descr-addr = <0x1>;
292 interrupts-extended = <&tlmm 33 IRQ_TYPE_LEVEL_LOW>;
294 pinctrl-0 = <&hid_keyboard_default>;
295 pinctrl-names = "default";
302 clock-frequency = <400000>;
306 compatible = "realtek,rt5682i";
309 #sound-dai-cells = <1>;
311 interrupt-parent = <&tlmm>;
312 interrupts = <28 IRQ_TYPE_EDGE_BOTH>;
314 pinctrl-0 = <&codec_irq_default>;
315 pinctrl-names = "default";
317 AVDD-supply = <&vreg_l15a_1p8>;
318 MICVDD-supply = <®_codec_3p3>;
319 VBAT-supply = <®_codec_3p3>;
320 DBVDD-supply = <&vreg_l15a_1p8>;
321 LDO1-IN-supply = <&vreg_l15a_1p8>;
324 * NOTE: The board has a path from this codec to the
325 * DMIC microphones in the lid, however some of the option
326 * resistors are absent and the microphones are connected
327 * to the SoC instead.
329 * If the resistors were to be changed by the user to
330 * connect the codec, the following could be used:
332 * realtek,dmic1-data-pin = <1>;
333 * realtek,dmic1-clk-pin = <1>;
336 realtek,jd-src = <1>;
341 clock-frequency = <400000>;
344 sn65dsi86_bridge: bridge@2c {
345 compatible = "ti,sn65dsi86";
351 interrupt-parent = <&tlmm>;
352 interrupts = <11 IRQ_TYPE_LEVEL_HIGH>;
354 enable-gpios = <&tlmm 51 GPIO_ACTIVE_HIGH>;
355 suspend-gpios = <&tlmm 22 GPIO_ACTIVE_LOW>;
357 pinctrl-0 = <&bridge_en_default>,
358 <&edp_bridge_irq_default>,
359 <&bridge_suspend_default>;
360 pinctrl-names = "default";
362 vpll-supply = <®_brij_1p8>;
363 vccio-supply = <®_brij_1p8>;
364 vcca-supply = <®_brij_1p2>;
365 vcc-supply = <®_brij_1p2>;
367 clocks = <&rpmhcc RPMH_LN_BB_CLK3>;
368 clock-names = "refclk";
371 #address-cells = <1>;
377 sn65dsi86_in: endpoint {
378 remote-endpoint = <&mdss_dsi0_out>;
385 sn65dsi86_out: endpoint {
387 remote-endpoint = <&panel_in_edp>;
394 compatible = "edp-panel";
395 power-supply = <®_lcm_3p3>;
396 backlight = <&backlight>;
397 hpd-absent-delay-ms = <200>;
400 panel_in_edp: endpoint {
401 remote-endpoint = <&sn65dsi86_out>;
413 memory-region = <&zap_mem>;
414 firmware-name = "qcom/sc7180/acer/aspire1/qcdxkmsuc7180.mbn";
423 vdda-supply = <&vreg_l3c_1p2>;
428 remote-endpoint = <&sn65dsi86_in>;
429 data-lanes = <0 1 2 3>;
433 vdds-supply = <&vreg_l4a_0p8>;
439 reg = <ADC5_AMUX_THM2_100K_PU>;
441 qcom,hw-settle-time = <200>;
442 label = "thermistor";
446 reg = <ADC5_AMUX_THM3_100K_PU>;
448 qcom,hw-settle-time = <200>;
449 label = "charger_thermistor";
456 charger-thermistor@0 {
458 io-channels = <&pm6150_adc ADC5_AMUX_THM3_100K_PU>;
460 qcom,hw-settle-time-us = <200>;
465 io-channels = <&pm6150_adc ADC5_AMUX_THM2_100K_PU>;
467 qcom,hw-settle-time-us = <200>;
481 reg = <PRIMARY_MI2S_RX>;
486 reg = <PRIMARY_MI2S_TX>;
491 reg = <TERTIARY_MI2S_RX>;
496 reg = <DISPLAY_PORT_RX>;
527 memory-region = <&adsp_mem>;
528 firmware-name = "qcom/sc7180/acer/aspire1/qcadsp7180.mbn";
533 firmware-name = "qcom/sc7180/acer/aspire1/qcmpss7180_nm.mbn";
538 pinctrl-0 = <&sdc1_default>;
539 pinctrl-1 = <&sdc1_sleep>;
540 pinctrl-names = "default", "sleep";
541 vmmc-supply = <&vreg_l19a_2p9>;
542 vqmmc-supply = <&vreg_l12a_1p8>;
548 /delete-property/interrupts;
549 interrupts-extended = <&intc GIC_SPI 604 IRQ_TYPE_LEVEL_HIGH>,
550 <&tlmm 41 IRQ_TYPE_EDGE_FALLING>;
552 pinctrl-1 = <&qup_uart3_sleep>;
553 pinctrl-names = "default", "sleep";
557 bluetooth: bluetooth {
558 compatible = "qcom,wcn3991-bt";
559 vddio-supply = <&vreg_l10a_1p8>;
560 vddxo-supply = <&vreg_l1c_1p8>;
561 vddrf-supply = <&vreg_l2c_1p3>;
562 vddch0-supply = <&vreg_l10c_3p3>;
563 max-speed = <3200000>;
577 #address-cells = <1>;
581 compatible = "usbbda,5411";
583 peer-hub = <&usb_hub_3_x>;
587 compatible = "usbbda,411";
589 peer-hub = <&usb_hub_2_x>;
594 vdd-supply = <&vreg_l4a_0p8>;
595 vdda-pll-supply = <&vreg_l11a_1p8>;
596 vdda-phy-dpdm-supply = <&vreg_l17a_3p0>;
597 qcom,imp-res-offset-value = <8>;
598 qcom,preemphasis-level = <QUSB2_V2_PREEMPHASIS_15_PERCENT>;
599 qcom,preemphasis-width = <QUSB2_V2_PREEMPHASIS_WIDTH_HALF_BIT>;
600 qcom,bias-ctrl-value = <0x22>;
601 qcom,charge-ctrl-value = <3>;
602 qcom,hsdisc-trim-value = <0>;
608 vdda-phy-supply = <&vreg_l3c_1p2>;
609 vdda-pll-supply = <&vreg_l4a_0p8>;
615 firmware-name = "qcom/sc7180/acer/aspire1/qcvss7180.mbn";
619 vdd-0.8-cx-mx-supply = <&vreg_l9a_0p6>;
620 vdd-1.8-xo-supply = <&vreg_l1c_1p8>;
621 vdd-1.3-rfa-supply = <&vreg_l2c_1p3>;
622 vdd-3.3-ch0-supply = <&vreg_l10c_3p3>;
623 vdd-3.3-ch1-supply = <&vreg_l11c_3p3>;
630 compatible = "qcom,pm6150-rpmh-regulators";
633 vreg_s1a_1p1: smps1 {
634 regulator-min-microvolt = <1128000>;
635 regulator-max-microvolt = <1128000>;
639 regulator-min-microvolt = <824000>;
640 regulator-max-microvolt = <928000>;
641 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
645 regulator-min-microvolt = <488000>;
646 regulator-max-microvolt = <800000>;
647 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
650 vreg_l10a_1p8: ldo10 {
651 regulator-min-microvolt = <1800000>;
652 regulator-max-microvolt = <1800000>;
653 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
658 vreg_l11a_1p8: ldo11 {
659 regulator-min-microvolt = <1800000>;
660 regulator-max-microvolt = <1800000>;
661 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
664 vreg_l12a_1p8: ldo12 {
665 regulator-min-microvolt = <1800000>;
666 regulator-max-microvolt = <1800000>;
667 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
670 vreg_l13a_1p8: ldo13 {
671 regulator-min-microvolt = <1800000>;
672 regulator-max-microvolt = <1800000>;
673 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
676 vreg_l14a_1p8: ldo14 {
677 regulator-min-microvolt = <1800000>;
678 regulator-max-microvolt = <1800000>;
679 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
682 vreg_l15a_1p8: ldo15 {
683 regulator-min-microvolt = <1800000>;
684 regulator-max-microvolt = <1800000>;
685 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
688 vreg_l16a_2p7: ldo16 {
689 regulator-min-microvolt = <2496000>;
690 regulator-max-microvolt = <3304000>;
691 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
694 vreg_l17a_3p0: ldo17 {
695 regulator-min-microvolt = <2920000>;
696 regulator-max-microvolt = <3232000>;
697 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
700 vreg_l18a_2p8: ldo18 {
701 regulator-min-microvolt = <2496000>;
702 regulator-max-microvolt = <3304000>;
703 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
706 vreg_l19a_2p9: ldo19 {
707 regulator-min-microvolt = <2960000>;
708 regulator-max-microvolt = <2960000>;
709 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
714 compatible = "qcom,pm6150l-rpmh-regulators";
717 vreg_s8c_1p3: smps8 {
718 regulator-min-microvolt = <1120000>;
719 regulator-max-microvolt = <1408000>;
723 regulator-min-microvolt = <1616000>;
724 regulator-max-microvolt = <1984000>;
725 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
729 regulator-min-microvolt = <1168000>;
730 regulator-max-microvolt = <1304000>;
731 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
735 regulator-min-microvolt = <1144000>;
736 regulator-max-microvolt = <1304000>;
737 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
741 regulator-min-microvolt = <1648000>;
742 regulator-max-microvolt = <3304000>;
743 regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
747 regulator-min-microvolt = <1648000>;
748 regulator-max-microvolt = <3304000>;
749 regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
753 regulator-min-microvolt = <1800000>;
754 regulator-max-microvolt = <2950000>;
755 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
759 regulator-min-microvolt = <3000000>;
760 regulator-max-microvolt = <3312000>;
761 regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
765 regulator-min-microvolt = <1800000>;
766 regulator-max-microvolt = <1800000>;
767 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
771 regulator-min-microvolt = <2952000>;
772 regulator-max-microvolt = <2952000>;
773 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
776 vreg_l10c_3p3: ldo10 {
777 regulator-min-microvolt = <3000000>;
778 regulator-max-microvolt = <3400000>;
779 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
782 vreg_l11c_3p3: ldo11 {
783 regulator-min-microvolt = <3000000>;
784 regulator-max-microvolt = <3400000>;
785 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
789 regulator-min-microvolt = <3008000>;
790 regulator-max-microvolt = <3960000>;
791 regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
797 drive-strength = <2>;
799 /* Has external pullup */
804 drive-strength = <2>;
806 /* Has external pullup */
811 drive-strength = <2>;
813 /* Has external pullup */
818 drive-strength = <2>;
820 /* Has external pullup */
826 * The TZ seem to protect those because some boards can have
827 * fingerprint sensor connected to this range. Not connected
830 gpio-reserved-ranges = <58 5>;
832 amp_sd_mode_default: amp-sd-mode-deault-state {
835 drive-strength = <16>;
839 bridge_en_default: bridge-en-default-state {
842 drive-strength = <16>;
846 bridge_suspend_default: bridge-suspend-default-state {
849 drive-strength = <16>;
853 codec_irq_default: codec-irq-deault-state {
856 drive-strength = <2>;
860 edp_bridge_irq_default: edp-bridge-irq-default-state {
863 drive-strength = <2>;
867 hid_keyboard_default: hid-keyboard-default-state {
870 drive-strength = <2>;
874 hid_touchpad_default: hid-touchpad-default-state {
877 drive-strength = <2>;
881 qup_uart3_sleep: qup-uart3-sleep-state {
884 * Configure a pull-down on CTS to match the pull of
885 * the Bluetooth module.
894 * Configure pull-down on RTS. As RTS is active low
895 * signal, pull it low to indicate the BT SoC that it
896 * can wakeup the system anytime from suspend state by
897 * pulling RX low (by sending wakeup bytes).
906 * Configure pull-up on TX when it isn't actively driven
907 * to prevent BT SoC from receiving garbage during sleep.
916 * Configure a pull-up on RX. This is needed to avoid
917 * garbage data when the TX pin of the Bluetooth module
918 * is floating which may cause spurious wakeups.
926 reg_edp_1p2_en_default: reg-edp-1p2-en-deault-state {
929 drive-strength = <16>;
933 reg_edp_1p8_en_default: reg-edp-1p8-en-deault-state {
936 drive-strength = <16>;
940 reg_lcm_en_default: reg-lcm-en-deault-state {
943 drive-strength = <16>;
947 reg_audio_en_default: reg-audio-en-deault-state {
950 drive-strength = <2>;
954 reg_tp_en_default: reg-tp-en-deault-state {
957 drive-strength = <2>;
961 soc_bkoff_default: soc-bkoff-deault-state {
964 drive-strength = <16>;
968 sdc1_default: sdc1-default-state {
971 drive-strength = <16>;
977 drive-strength = <16>;
983 drive-strength = <16>;
993 sdc1_sleep: sdc1-sleep-state {
996 drive-strength = <2>;
1002 drive-strength = <2>;
1008 drive-strength = <2>;