123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611 |
- // SPDX-License-Identifier: BSD-3-Clause
- /*
- * Copyright (c) 2021, Linaro Limited
- */
- /dts-v1/;
- #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
- #include <dt-bindings/gpio/gpio.h>
- #include "sm8150.dtsi"
- #include "pmm8155au_1.dtsi"
- #include "pmm8155au_2.dtsi"
- / {
- model = "Qualcomm Technologies, Inc. SA8155P ADP";
- compatible = "qcom,sa8155p-adp", "qcom,sa8155p";
- aliases {
- serial0 = &uart2;
- };
- chosen {
- stdout-path = "serial0:115200n8";
- };
- vreg_3p3: vreg_3p3_regulator {
- compatible = "regulator-fixed";
- regulator-name = "vreg_3p3";
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <3300000>;
- };
- /*
- * S4A is always on and not controllable through RPMh.
- * So model it as a fixed regulator.
- */
- vreg_s4a_1p8: smps4 {
- compatible = "regulator-fixed";
- regulator-name = "vreg_s4a_1p8";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- regulator-boot-on;
- vin-supply = <&vreg_3p3>;
- };
- mtl_rx_setup: rx-queues-config {
- snps,rx-queues-to-use = <1>;
- snps,rx-sched-sp;
- queue0 {
- snps,dcb-algorithm;
- snps,map-to-dma-channel = <0x0>;
- snps,route-up;
- snps,priority = <0x1>;
- };
- };
- mtl_tx_setup: tx-queues-config {
- snps,tx-queues-to-use = <1>;
- snps,tx-sched-wrr;
- queue0 {
- snps,weight = <0x10>;
- snps,dcb-algorithm;
- snps,priority = <0x0>;
- };
- };
- };
- &apps_rsc {
- pmm8155au-1-rpmh-regulators {
- compatible = "qcom,pmm8155au-rpmh-regulators";
- qcom,pmic-id = "a";
- vdd-s1-supply = <&vreg_3p3>;
- vdd-s2-supply = <&vreg_3p3>;
- vdd-s3-supply = <&vreg_3p3>;
- vdd-s4-supply = <&vreg_3p3>;
- vdd-s5-supply = <&vreg_3p3>;
- vdd-s6-supply = <&vreg_3p3>;
- vdd-s7-supply = <&vreg_3p3>;
- vdd-s8-supply = <&vreg_3p3>;
- vdd-s9-supply = <&vreg_3p3>;
- vdd-s10-supply = <&vreg_3p3>;
- vdd-l1-l8-l11-supply = <&vreg_s6a_0p92>;
- vdd-l2-l10-supply = <&vreg_3p3>;
- vdd-l3-l4-l5-l18-supply = <&vreg_s6a_0p92>;
- vdd-l6-l9-supply = <&vreg_s6a_0p92>;
- vdd-l7-l12-l14-l15-supply = <&vreg_s5a_2p04>;
- vdd-l13-l16-l17-supply = <&vreg_3p3>;
- vreg_s5a_2p04: smps5 {
- regulator-name = "vreg_s5a_2p04";
- regulator-min-microvolt = <1904000>;
- regulator-max-microvolt = <2000000>;
- };
- vreg_s6a_0p92: smps6 {
- regulator-name = "vreg_s6a_0p92";
- regulator-min-microvolt = <920000>;
- regulator-max-microvolt = <1128000>;
- };
- vreg_l1a_0p752: ldo1 {
- regulator-name = "vreg_l1a_0p752";
- regulator-min-microvolt = <752000>;
- regulator-max-microvolt = <752000>;
- regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
- };
- vdda_usb_hs_3p1:
- vreg_l2a_3p072: ldo2 {
- regulator-name = "vreg_l2a_3p072";
- regulator-min-microvolt = <3072000>;
- regulator-max-microvolt = <3072000>;
- regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
- };
- vreg_l3a_0p8: ldo3 {
- regulator-name = "vreg_l3a_0p8";
- regulator-min-microvolt = <800000>;
- regulator-max-microvolt = <800000>;
- regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
- };
- vdd_usb_hs_core:
- vdda_usb_ss_dp_core_1:
- vreg_l5a_0p88: ldo5 {
- regulator-name = "vreg_l5a_0p88";
- regulator-min-microvolt = <880000>;
- regulator-max-microvolt = <880000>;
- regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
- regulator-allow-set-load;
- regulator-allowed-modes =
- <RPMH_REGULATOR_MODE_LPM
- RPMH_REGULATOR_MODE_HPM>;
- };
- vreg_l7a_1p8: ldo7 {
- regulator-name = "vreg_l7a_1p8";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
- };
- vreg_l10a_2p96: ldo10 {
- regulator-name = "vreg_l10a_2p96";
- regulator-min-microvolt = <2504000>;
- 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_l11a_0p8: ldo11 {
- regulator-name = "vreg_l11a_0p8";
- regulator-min-microvolt = <800000>;
- regulator-max-microvolt = <800000>;
- regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
- };
- vdda_usb_hs_1p8:
- vreg_l12a_1p8: ldo12 {
- regulator-name = "vreg_l12a_1p8";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
- };
- vreg_l13a_2p7: ldo13 {
- regulator-name = "vreg_l13a_2p7";
- regulator-min-microvolt = <2704000>;
- regulator-max-microvolt = <2704000>;
- regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
- };
- vreg_l15a_1p7: ldo15 {
- regulator-name = "vreg_l15a_1p7";
- regulator-min-microvolt = <1704000>;
- regulator-max-microvolt = <1704000>;
- regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
- };
- vreg_l16a_2p7: ldo16 {
- regulator-name = "vreg_l16a_2p7";
- regulator-min-microvolt = <2704000>;
- regulator-max-microvolt = <2960000>;
- regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
- };
- vreg_l17a_2p96: ldo17 {
- regulator-name = "vreg_l17a_2p96";
- regulator-min-microvolt = <2504000>;
- regulator-max-microvolt = <2960000>;
- regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
- };
- };
- pmm8155au-2-rpmh-regulators {
- compatible = "qcom,pmm8155au-rpmh-regulators";
- qcom,pmic-id = "c";
- vdd-s1-supply = <&vreg_3p3>;
- vdd-s2-supply = <&vreg_3p3>;
- vdd-s3-supply = <&vreg_3p3>;
- vdd-s4-supply = <&vreg_3p3>;
- vdd-s5-supply = <&vreg_3p3>;
- vdd-s6-supply = <&vreg_3p3>;
- vdd-s7-supply = <&vreg_3p3>;
- vdd-s8-supply = <&vreg_3p3>;
- vdd-s9-supply = <&vreg_3p3>;
- vdd-s10-supply = <&vreg_3p3>;
- vdd-l1-l8-l11-supply = <&vreg_s4c_1p352>;
- vdd-l2-l10-supply = <&vreg_3p3>;
- vdd-l3-l4-l5-l18-supply = <&vreg_s4c_1p352>;
- vdd-l6-l9-supply = <&vreg_s6c_1p128>;
- vdd-l7-l12-l14-l15-supply = <&vreg_s5c_2p04>;
- vdd-l13-l16-l17-supply = <&vreg_3p3>;
- vreg_s4c_1p352: smps4 {
- regulator-name = "vreg_s4c_1p352";
- regulator-min-microvolt = <1352000>;
- regulator-max-microvolt = <1352000>;
- };
- vreg_s5c_2p04: smps5 {
- regulator-name = "vreg_s5c_2p04";
- regulator-min-microvolt = <1904000>;
- regulator-max-microvolt = <2000000>;
- };
- vreg_s6c_1p128: smps6 {
- regulator-name = "vreg_s6c_1p128";
- regulator-min-microvolt = <1128000>;
- regulator-max-microvolt = <1128000>;
- };
- vreg_l1c_1p304: ldo1 {
- regulator-name = "vreg_l1c_1p304";
- regulator-min-microvolt = <1304000>;
- regulator-max-microvolt = <1304000>;
- regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
- };
- vreg_l2c_1p808: ldo2 {
- regulator-name = "vreg_l2c_1p808";
- regulator-min-microvolt = <1704000>;
- regulator-max-microvolt = <2928000>;
- regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
- };
- vreg_l5c_1p2: ldo5 {
- regulator-name = "vreg_l5c_1p2";
- regulator-min-microvolt = <1200000>;
- regulator-max-microvolt = <1200000>;
- regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
- regulator-allow-set-load;
- regulator-allowed-modes =
- <RPMH_REGULATOR_MODE_LPM
- RPMH_REGULATOR_MODE_HPM>;
- };
- vreg_l7c_1p8: ldo7 {
- regulator-name = "vreg_l7c_1p8";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
- };
- vreg_l8c_1p2: ldo8 {
- regulator-name = "vreg_l8c_1p2";
- regulator-min-microvolt = <1200000>;
- regulator-max-microvolt = <1200000>;
- regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
- regulator-allow-set-load;
- regulator-allowed-modes =
- <RPMH_REGULATOR_MODE_LPM
- RPMH_REGULATOR_MODE_HPM>;
- };
- vreg_l10c_3p3: ldo10 {
- regulator-name = "vreg_l10c_3p3";
- regulator-min-microvolt = <3000000>;
- regulator-max-microvolt = <3312000>;
- regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
- };
- vreg_l11c_0p8: ldo11 {
- regulator-name = "vreg_l11c_0p8";
- regulator-min-microvolt = <800000>;
- regulator-max-microvolt = <800000>;
- regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
- };
- vreg_l12c_1p808: ldo12 {
- regulator-name = "vreg_l12c_1p808";
- regulator-min-microvolt = <1704000>;
- regulator-max-microvolt = <2928000>;
- regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
- };
- vreg_l13c_2p96: ldo13 {
- regulator-name = "vreg_l13c_2p96";
- regulator-min-microvolt = <2504000>;
- regulator-max-microvolt = <2960000>;
- regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
- };
- vreg_l15c_1p9: ldo15 {
- regulator-name = "vreg_l15c_1p9";
- regulator-min-microvolt = <1704000>;
- regulator-max-microvolt = <2928000>;
- regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
- };
- vreg_l16c_3p008: ldo16 {
- regulator-name = "vreg_l16c_3p008";
- regulator-min-microvolt = <3008000>;
- regulator-max-microvolt = <3008000>;
- regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
- };
- vreg_l18c_0p88: ldo18 {
- regulator-name = "vreg_l18c_0p88";
- regulator-min-microvolt = <880000>;
- regulator-max-microvolt = <880000>;
- regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
- };
- };
- };
- ðernet {
- status = "okay";
- snps,reset-gpio = <&tlmm 79 GPIO_ACTIVE_LOW>;
- snps,reset-active-low;
- snps,reset-delays-us = <0 11000 70000>;
- snps,mtl-rx-config = <&mtl_rx_setup>;
- snps,mtl-tx-config = <&mtl_tx_setup>;
- pinctrl-names = "default";
- pinctrl-0 = <ðernet_defaults>;
- phy-handle = <&rgmii_phy>;
- phy-mode = "rgmii";
- max-speed = <1000>;
- mdio {
- #address-cells = <0x1>;
- #size-cells = <0x0>;
- compatible = "snps,dwmac-mdio";
- /* Micrel KSZ9031RNZ PHY */
- rgmii_phy: phy@7 {
- reg = <0x7>;
- interrupt-parent = <&tlmm>;
- interrupts-extended = <&tlmm 124 IRQ_TYPE_EDGE_FALLING>; /* phy intr */
- device_type = "ethernet-phy";
- compatible = "ethernet-phy-ieee802.3-c22";
- };
- };
- };
- &qupv3_id_1 {
- status = "okay";
- };
- &remoteproc_adsp {
- status = "okay";
- firmware-name = "qcom/sa8155p/adsp.mdt";
- };
- &remoteproc_cdsp {
- status = "okay";
- firmware-name = "qcom/sa8155p/cdsp.mdt";
- };
- &sdhc_2 {
- status = "okay";
- cd-gpios = <&tlmm 4 GPIO_ACTIVE_LOW>;
- pinctrl-names = "default", "sleep";
- pinctrl-0 = <&sdc2_on>;
- pinctrl-1 = <&sdc2_off>;
- vqmmc-supply = <&vreg_l13c_2p96>; /* IO line power */
- vmmc-supply = <&vreg_l17a_2p96>; /* Card power line */
- bus-width = <4>;
- no-sdio;
- no-emmc;
- };
- &uart2 {
- status = "okay";
- };
- &ufs_mem_hc {
- status = "okay";
- reset-gpios = <&tlmm 175 GPIO_ACTIVE_LOW>;
- vcc-supply = <&vreg_l10a_2p96>;
- vcc-max-microamp = <750000>;
- vccq-supply = <&vreg_l5c_1p2>;
- vccq-max-microamp = <700000>;
- vccq2-supply = <&vreg_s4a_1p8>;
- vccq2-max-microamp = <750000>;
- };
- &ufs_mem_phy {
- status = "okay";
- vdda-phy-supply = <&vreg_l8c_1p2>;
- vdda-pll-supply = <&vreg_l5a_0p88>;
- };
- &usb_1 {
- status = "okay";
- };
- &usb_1_dwc3 {
- dr_mode = "host";
- pinctrl-names = "default";
- pinctrl-0 = <&usb2phy_ac_en1_default>;
- };
- &usb_1_hsphy {
- status = "okay";
- vdda-pll-supply = <&vdd_usb_hs_core>;
- vdda33-supply = <&vdda_usb_hs_3p1>;
- vdda18-supply = <&vdda_usb_hs_1p8>;
- };
- &usb_1_qmpphy {
- status = "disabled";
- };
- &usb_2 {
- status = "okay";
- };
- &usb_2_dwc3 {
- dr_mode = "host";
- pinctrl-names = "default";
- pinctrl-0 = <&usb2phy_ac_en2_default>;
- };
- &usb_2_hsphy {
- status = "okay";
- vdda-pll-supply = <&vdd_usb_hs_core>;
- vdda33-supply = <&vdda_usb_hs_3p1>;
- vdda18-supply = <&vdda_usb_hs_1p8>;
- };
- &usb_2_qmpphy {
- status = "okay";
- vdda-phy-supply = <&vreg_l8c_1p2>;
- vdda-pll-supply = <&vdda_usb_ss_dp_core_1>;
- };
- &pcie0 {
- status = "okay";
- };
- &pcie0_phy {
- status = "okay";
- vdda-phy-supply = <&vreg_l18c_0p88>;
- vdda-pll-supply = <&vreg_l8c_1p2>;
- };
- &pcie1_phy {
- vdda-phy-supply = <&vreg_l18c_0p88>;
- vdda-pll-supply = <&vreg_l8c_1p2>;
- };
- &tlmm {
- gpio-reserved-ranges = <0 4>;
- sdc2_on: sdc2_on {
- clk {
- pins = "sdc2_clk";
- bias-disable; /* No pull */
- drive-strength = <16>; /* 16 MA */
- };
- cmd {
- pins = "sdc2_cmd";
- bias-pull-up; /* pull up */
- drive-strength = <16>; /* 16 MA */
- };
- data {
- pins = "sdc2_data";
- bias-pull-up; /* pull up */
- drive-strength = <16>; /* 16 MA */
- };
- sd-cd {
- pins = "gpio96";
- function = "gpio";
- bias-pull-up; /* pull up */
- drive-strength = <2>; /* 2 MA */
- };
- };
- sdc2_off: sdc2_off {
- clk {
- pins = "sdc2_clk";
- bias-disable; /* No pull */
- drive-strength = <2>; /* 2 MA */
- };
- cmd {
- pins = "sdc2_cmd";
- bias-pull-up; /* pull up */
- drive-strength = <2>; /* 2 MA */
- };
- data {
- pins = "sdc2_data";
- bias-pull-up; /* pull up */
- drive-strength = <2>; /* 2 MA */
- };
- sd-cd {
- pins = "gpio96";
- function = "gpio";
- bias-pull-up; /* pull up */
- drive-strength = <2>; /* 2 MA */
- };
- };
- usb2phy_ac_en1_default: usb2phy_ac_en1_default {
- mux {
- pins = "gpio113";
- function = "usb2phy_ac";
- bias-disable;
- drive-strength = <2>;
- };
- };
- usb2phy_ac_en2_default: usb2phy_ac_en2_default {
- mux {
- pins = "gpio123";
- function = "usb2phy_ac";
- bias-disable;
- drive-strength = <2>;
- };
- };
- ethernet_defaults: ethernet-defaults {
- mdc {
- pins = "gpio7";
- function = "rgmii";
- bias-pull-up;
- };
- mdio {
- pins = "gpio59";
- function = "rgmii";
- bias-pull-up;
- };
- rgmii-rx {
- pins = "gpio117", "gpio118", "gpio119", "gpio120", "gpio115", "gpio116";
- function = "rgmii";
- bias-disable;
- drive-strength = <2>;
- };
- rgmii-tx {
- pins = "gpio122", "gpio4", "gpio5", "gpio6", "gpio114", "gpio121";
- function = "rgmii";
- bias-pull-up;
- drive-strength = <16>;
- };
- phy-intr {
- pins = "gpio124";
- function = "emac_phy";
- bias-disable;
- drive-strength = <8>;
- };
- pps {
- pins = "gpio81";
- function = "emac_pps";
- bias-disable;
- drive-strength = <8>;
- };
- phy-reset {
- pins = "gpio79";
- function = "gpio";
- bias-pull-up;
- drive-strength = <16>;
- };
- };
- };
|