612 lines
13 KiB
Plaintext
612 lines
13 KiB
Plaintext
// 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>;
|
|
};
|
|
};
|
|
};
|