mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
synced 2025-08-31 22:23:05 +00:00

Enable video nodes on the sa8775p-ride board and point to the appropriate firmware files. Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Vikash Garodia <quic_vgarodia@quicinc.com> Link: https://lore.kernel.org/r/20250421-dtbinding-v5-3-363c1c05bc80@quicinc.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
1239 lines
24 KiB
Plaintext
1239 lines
24 KiB
Plaintext
// SPDX-License-Identifier: BSD-3-Clause
|
|
/*
|
|
* Copyright (c) 2023, Linaro Limited
|
|
*/
|
|
|
|
/dts-v1/;
|
|
|
|
#include <dt-bindings/gpio/gpio.h>
|
|
#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
|
|
|
|
#include "sa8775p.dtsi"
|
|
#include "sa8775p-pmics.dtsi"
|
|
|
|
/ {
|
|
aliases {
|
|
ethernet0 = ðernet0;
|
|
ethernet1 = ðernet1;
|
|
i2c11 = &i2c11;
|
|
i2c18 = &i2c18;
|
|
serial0 = &uart10;
|
|
serial1 = &uart12;
|
|
serial2 = &uart17;
|
|
spi16 = &spi16;
|
|
ufshc1 = &ufs_mem_hc;
|
|
};
|
|
|
|
chosen {
|
|
stdout-path = "serial0:115200n8";
|
|
};
|
|
|
|
vreg_12p0: vreg-12p0-regulator {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "VREG_12P0";
|
|
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
regulator-min-microvolt = <12000000>;
|
|
regulator-max-microvolt = <12000000>;
|
|
};
|
|
|
|
vreg_5p0: vreg-5p0-regulator {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "VREG_5P0";
|
|
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
regulator-min-microvolt = <5000000>;
|
|
regulator-max-microvolt = <5000000>;
|
|
|
|
vin-supply = <&vreg_12p0>;
|
|
};
|
|
|
|
vreg_1p8: vreg-1p8-regulator {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "VREG_1P8";
|
|
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
regulator-min-microvolt = <1800000>;
|
|
regulator-max-microvolt = <1800000>;
|
|
|
|
vin-supply = <&vreg_5p0>;
|
|
};
|
|
|
|
vreg_1p0: vreg-1p0-regulator {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "VREG_1P0";
|
|
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
regulator-min-microvolt = <1000000>;
|
|
regulator-max-microvolt = <1000000>;
|
|
|
|
vin-supply = <&vreg_1p8>;
|
|
};
|
|
|
|
vreg_3p0: vreg-3p0-regulator {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "VREG_3P0";
|
|
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
regulator-min-microvolt = <3000000>;
|
|
regulator-max-microvolt = <3000000>;
|
|
|
|
vin-supply = <&vreg_12p0>;
|
|
};
|
|
|
|
vreg_conn_1p8: vreg_conn_1p8 {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "vreg_conn_1p8";
|
|
startup-delay-us = <4000>;
|
|
enable-active-high;
|
|
gpio = <&pmm8654au_1_gpios 4 GPIO_ACTIVE_HIGH>;
|
|
};
|
|
|
|
vreg_conn_pa: vreg_conn_pa {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "vreg_conn_pa";
|
|
startup-delay-us = <4000>;
|
|
enable-active-high;
|
|
gpio = <&pmm8654au_1_gpios 6 GPIO_ACTIVE_HIGH>;
|
|
};
|
|
|
|
wcn6855-pmu {
|
|
compatible = "qcom,wcn6855-pmu";
|
|
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&bt_en_state>, <&wlan_en_state>;
|
|
|
|
vddio-supply = <&vreg_conn_pa>;
|
|
vddaon-supply = <&vreg_l2c>;
|
|
vddpmu-supply = <&vreg_conn_1p8>;
|
|
vddrfa0p95-supply = <&vreg_l2c>;
|
|
vddrfa1p3-supply = <&vreg_l6e>;
|
|
vddrfa1p9-supply = <&vreg_s5a>;
|
|
vddpcie1p3-supply = <&vreg_l6e>;
|
|
vddpcie1p9-supply = <&vreg_s5a>;
|
|
|
|
bt-enable-gpios = <&pmm8654au_1_gpios 8 GPIO_ACTIVE_HIGH>;
|
|
wlan-enable-gpios = <&pmm8654au_1_gpios 7 GPIO_ACTIVE_HIGH>;
|
|
|
|
regulators {
|
|
vreg_pmu_rfa_cmn: ldo0 {
|
|
regulator-name = "vreg_pmu_rfa_cmn";
|
|
};
|
|
|
|
vreg_pmu_aon_0p59: ldo1 {
|
|
regulator-name = "vreg_pmu_aon_0p59";
|
|
};
|
|
|
|
vreg_pmu_wlcx_0p8: ldo2 {
|
|
regulator-name = "vreg_pmu_wlcx_0p8";
|
|
};
|
|
|
|
vreg_pmu_wlmx_0p85: ldo3 {
|
|
regulator-name = "vreg_pmu_wlmx_0p85";
|
|
};
|
|
|
|
vreg_pmu_btcmx_0p85: ldo4 {
|
|
regulator-name = "vreg_pmu_btcmx_0p85";
|
|
};
|
|
|
|
vreg_pmu_rfa_0p8: ldo5 {
|
|
regulator-name = "vreg_pmu_rfa_0p8";
|
|
};
|
|
|
|
vreg_pmu_rfa_1p2: ldo6 {
|
|
regulator-name = "vreg_pmu_rfa_1p2";
|
|
};
|
|
|
|
vreg_pmu_rfa_1p7: ldo7 {
|
|
regulator-name = "vreg_pmu_rfa_1p7";
|
|
};
|
|
|
|
vreg_pmu_pcie_0p9: ldo8 {
|
|
regulator-name = "vreg_pmu_pcie_0p9";
|
|
};
|
|
|
|
vreg_pmu_pcie_1p8: ldo9 {
|
|
regulator-name = "vreg_pmu_pcie_1p8";
|
|
};
|
|
};
|
|
};
|
|
|
|
dp0-connector {
|
|
compatible = "dp-connector";
|
|
label = "eDP0";
|
|
type = "full-size";
|
|
|
|
port {
|
|
dp0_connector_in: endpoint {
|
|
remote-endpoint = <&mdss0_dp0_out>;
|
|
};
|
|
};
|
|
};
|
|
|
|
dp1-connector {
|
|
compatible = "dp-connector";
|
|
label = "eDP1";
|
|
type = "full-size";
|
|
|
|
port {
|
|
dp1_connector_in: endpoint {
|
|
remote-endpoint = <&mdss0_dp1_out>;
|
|
};
|
|
};
|
|
};
|
|
|
|
dp-dsi0-connector {
|
|
compatible = "dp-connector";
|
|
label = "DSI0";
|
|
type = "full-size";
|
|
|
|
port {
|
|
dp_dsi0_connector_in: endpoint {
|
|
remote-endpoint = <&dsi2dp_bridge0_out>;
|
|
};
|
|
};
|
|
};
|
|
|
|
dp-dsi1-connector {
|
|
compatible = "dp-connector";
|
|
label = "DSI1";
|
|
type = "full-size";
|
|
|
|
port {
|
|
dp_dsi1_connector_in: endpoint {
|
|
remote-endpoint = <&dsi2dp_bridge1_out>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
&apps_rsc {
|
|
regulators-0 {
|
|
compatible = "qcom,pmm8654au-rpmh-regulators";
|
|
qcom,pmic-id = "a";
|
|
|
|
vreg_s4a: smps4 {
|
|
regulator-name = "vreg_s4a";
|
|
regulator-min-microvolt = <1800000>;
|
|
regulator-max-microvolt = <1816000>;
|
|
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
|
};
|
|
|
|
vreg_s5a: smps5 {
|
|
regulator-name = "vreg_s5a";
|
|
regulator-min-microvolt = <1850000>;
|
|
regulator-max-microvolt = <1996000>;
|
|
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
|
};
|
|
|
|
vreg_s9a: smps9 {
|
|
regulator-name = "vreg_s9a";
|
|
regulator-min-microvolt = <535000>;
|
|
regulator-max-microvolt = <1120000>;
|
|
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
|
};
|
|
|
|
vreg_l4a: ldo4 {
|
|
regulator-name = "vreg_l4a";
|
|
regulator-min-microvolt = <788000>;
|
|
regulator-max-microvolt = <1050000>;
|
|
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
|
regulator-allow-set-load;
|
|
regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
|
|
RPMH_REGULATOR_MODE_HPM>;
|
|
};
|
|
|
|
vreg_l5a: ldo5 {
|
|
regulator-name = "vreg_l5a";
|
|
regulator-min-microvolt = <870000>;
|
|
regulator-max-microvolt = <950000>;
|
|
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
|
regulator-allow-set-load;
|
|
regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
|
|
RPMH_REGULATOR_MODE_HPM>;
|
|
};
|
|
|
|
vreg_l6a: ldo6 {
|
|
regulator-name = "vreg_l6a";
|
|
regulator-min-microvolt = <870000>;
|
|
regulator-max-microvolt = <970000>;
|
|
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
|
regulator-allow-set-load;
|
|
regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
|
|
RPMH_REGULATOR_MODE_HPM>;
|
|
};
|
|
|
|
vreg_l7a: ldo7 {
|
|
regulator-name = "vreg_l7a";
|
|
regulator-min-microvolt = <720000>;
|
|
regulator-max-microvolt = <950000>;
|
|
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
|
regulator-allow-set-load;
|
|
regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
|
|
RPMH_REGULATOR_MODE_HPM>;
|
|
};
|
|
|
|
vreg_l8a: ldo8 {
|
|
regulator-name = "vreg_l8a";
|
|
regulator-min-microvolt = <2504000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
|
regulator-allow-set-load;
|
|
regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
|
|
RPMH_REGULATOR_MODE_HPM>;
|
|
};
|
|
|
|
vreg_l9a: ldo9 {
|
|
regulator-name = "vreg_l9a";
|
|
regulator-min-microvolt = <2970000>;
|
|
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>;
|
|
};
|
|
};
|
|
|
|
regulators-1 {
|
|
compatible = "qcom,pmm8654au-rpmh-regulators";
|
|
qcom,pmic-id = "c";
|
|
|
|
vreg_l1c: ldo1 {
|
|
regulator-name = "vreg_l1c";
|
|
regulator-min-microvolt = <1140000>;
|
|
regulator-max-microvolt = <1260000>;
|
|
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
|
regulator-allow-set-load;
|
|
regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
|
|
RPMH_REGULATOR_MODE_HPM>;
|
|
};
|
|
|
|
vreg_l2c: ldo2 {
|
|
regulator-name = "vreg_l2c";
|
|
regulator-min-microvolt = <900000>;
|
|
regulator-max-microvolt = <1100000>;
|
|
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
|
regulator-allow-set-load;
|
|
regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
|
|
RPMH_REGULATOR_MODE_HPM>;
|
|
};
|
|
|
|
vreg_l3c: ldo3 {
|
|
regulator-name = "vreg_l3c";
|
|
regulator-min-microvolt = <1100000>;
|
|
regulator-max-microvolt = <1300000>;
|
|
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
|
regulator-allow-set-load;
|
|
regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
|
|
RPMH_REGULATOR_MODE_HPM>;
|
|
};
|
|
|
|
vreg_l4c: ldo4 {
|
|
regulator-name = "vreg_l4c";
|
|
regulator-min-microvolt = <1200000>;
|
|
regulator-max-microvolt = <1200000>;
|
|
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
|
/*
|
|
* FIXME: This should have regulator-allow-set-load but
|
|
* we're getting an over-current fault from the PMIC
|
|
* when switching to LPM.
|
|
*/
|
|
};
|
|
|
|
vreg_l5c: ldo5 {
|
|
regulator-name = "vreg_l5c";
|
|
regulator-min-microvolt = <1100000>;
|
|
regulator-max-microvolt = <1300000>;
|
|
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
|
regulator-allow-set-load;
|
|
regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
|
|
RPMH_REGULATOR_MODE_HPM>;
|
|
};
|
|
|
|
vreg_l6c: ldo6 {
|
|
regulator-name = "vreg_l6c";
|
|
regulator-min-microvolt = <1620000>;
|
|
regulator-max-microvolt = <1980000>;
|
|
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
|
regulator-allow-set-load;
|
|
regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
|
|
RPMH_REGULATOR_MODE_HPM>;
|
|
};
|
|
|
|
vreg_l7c: ldo7 {
|
|
regulator-name = "vreg_l7c";
|
|
regulator-min-microvolt = <1620000>;
|
|
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>;
|
|
};
|
|
|
|
vreg_l8c: ldo8 {
|
|
regulator-name = "vreg_l8c";
|
|
regulator-min-microvolt = <2400000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
|
regulator-allow-set-load;
|
|
regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
|
|
RPMH_REGULATOR_MODE_HPM>;
|
|
};
|
|
|
|
vreg_l9c: ldo9 {
|
|
regulator-name = "vreg_l9c";
|
|
regulator-min-microvolt = <1650000>;
|
|
regulator-max-microvolt = <2700000>;
|
|
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
|
regulator-allow-set-load;
|
|
regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
|
|
RPMH_REGULATOR_MODE_HPM>;
|
|
};
|
|
};
|
|
|
|
regulators-2 {
|
|
compatible = "qcom,pmm8654au-rpmh-regulators";
|
|
qcom,pmic-id = "e";
|
|
|
|
vreg_s4e: smps4 {
|
|
regulator-name = "vreg_s4e";
|
|
regulator-min-microvolt = <970000>;
|
|
regulator-max-microvolt = <1520000>;
|
|
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
|
};
|
|
|
|
vreg_s7e: smps7 {
|
|
regulator-name = "vreg_s7e";
|
|
regulator-min-microvolt = <1010000>;
|
|
regulator-max-microvolt = <1170000>;
|
|
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
|
};
|
|
|
|
vreg_s9e: smps9 {
|
|
regulator-name = "vreg_s9e";
|
|
regulator-min-microvolt = <300000>;
|
|
regulator-max-microvolt = <570000>;
|
|
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
|
};
|
|
|
|
vreg_l6e: ldo6 {
|
|
regulator-name = "vreg_l6e";
|
|
regulator-min-microvolt = <1280000>;
|
|
regulator-max-microvolt = <1450000>;
|
|
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
|
regulator-allow-set-load;
|
|
regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
|
|
RPMH_REGULATOR_MODE_HPM>;
|
|
};
|
|
|
|
vreg_l8e: ldo8 {
|
|
regulator-name = "vreg_l8e";
|
|
regulator-min-microvolt = <1800000>;
|
|
regulator-max-microvolt = <1950000>;
|
|
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
|
regulator-allow-set-load;
|
|
regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
|
|
RPMH_REGULATOR_MODE_HPM>;
|
|
};
|
|
};
|
|
};
|
|
|
|
ðernet0 {
|
|
phy-handle = <&sgmii_phy0>;
|
|
|
|
pinctrl-0 = <ðernet0_default>;
|
|
pinctrl-names = "default";
|
|
|
|
snps,mtl-rx-config = <&mtl_rx_setup>;
|
|
snps,mtl-tx-config = <&mtl_tx_setup>;
|
|
snps,ps-speed = <1000>;
|
|
|
|
status = "okay";
|
|
|
|
mdio: mdio {
|
|
compatible = "snps,dwmac-mdio";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
};
|
|
|
|
mtl_rx_setup: rx-queues-config {
|
|
snps,rx-queues-to-use = <4>;
|
|
snps,rx-sched-sp;
|
|
|
|
queue0 {
|
|
snps,dcb-algorithm;
|
|
snps,map-to-dma-channel = <0x0>;
|
|
snps,route-up;
|
|
snps,priority = <0x1>;
|
|
};
|
|
|
|
queue1 {
|
|
snps,dcb-algorithm;
|
|
snps,map-to-dma-channel = <0x1>;
|
|
snps,route-ptp;
|
|
};
|
|
|
|
queue2 {
|
|
snps,avb-algorithm;
|
|
snps,map-to-dma-channel = <0x2>;
|
|
snps,route-avcp;
|
|
};
|
|
|
|
queue3 {
|
|
snps,avb-algorithm;
|
|
snps,map-to-dma-channel = <0x3>;
|
|
snps,priority = <0xc>;
|
|
};
|
|
};
|
|
|
|
mtl_tx_setup: tx-queues-config {
|
|
snps,tx-queues-to-use = <4>;
|
|
|
|
queue0 {
|
|
snps,dcb-algorithm;
|
|
};
|
|
|
|
queue1 {
|
|
snps,dcb-algorithm;
|
|
};
|
|
|
|
queue2 {
|
|
snps,avb-algorithm;
|
|
snps,send_slope = <0x1000>;
|
|
snps,idle_slope = <0x1000>;
|
|
snps,high_credit = <0x3e800>;
|
|
snps,low_credit = <0xffc18000>;
|
|
};
|
|
|
|
queue3 {
|
|
snps,avb-algorithm;
|
|
snps,send_slope = <0x1000>;
|
|
snps,idle_slope = <0x1000>;
|
|
snps,high_credit = <0x3e800>;
|
|
snps,low_credit = <0xffc18000>;
|
|
};
|
|
};
|
|
};
|
|
|
|
ðernet1 {
|
|
phy-handle = <&sgmii_phy1>;
|
|
|
|
snps,mtl-rx-config = <&mtl_rx_setup1>;
|
|
snps,mtl-tx-config = <&mtl_tx_setup1>;
|
|
snps,ps-speed = <1000>;
|
|
|
|
status = "okay";
|
|
|
|
mtl_rx_setup1: rx-queues-config {
|
|
snps,rx-queues-to-use = <4>;
|
|
snps,rx-sched-sp;
|
|
|
|
queue0 {
|
|
snps,dcb-algorithm;
|
|
snps,map-to-dma-channel = <0x0>;
|
|
snps,route-up;
|
|
snps,priority = <0x1>;
|
|
};
|
|
|
|
queue1 {
|
|
snps,dcb-algorithm;
|
|
snps,map-to-dma-channel = <0x1>;
|
|
snps,route-ptp;
|
|
};
|
|
|
|
queue2 {
|
|
snps,avb-algorithm;
|
|
snps,map-to-dma-channel = <0x2>;
|
|
snps,route-avcp;
|
|
};
|
|
|
|
queue3 {
|
|
snps,avb-algorithm;
|
|
snps,map-to-dma-channel = <0x3>;
|
|
snps,priority = <0xc>;
|
|
};
|
|
};
|
|
|
|
mtl_tx_setup1: tx-queues-config {
|
|
snps,tx-queues-to-use = <4>;
|
|
|
|
queue0 {
|
|
snps,dcb-algorithm;
|
|
};
|
|
|
|
queue1 {
|
|
snps,dcb-algorithm;
|
|
};
|
|
|
|
queue2 {
|
|
snps,avb-algorithm;
|
|
snps,send_slope = <0x1000>;
|
|
snps,idle_slope = <0x1000>;
|
|
snps,high_credit = <0x3e800>;
|
|
snps,low_credit = <0xffc18000>;
|
|
};
|
|
|
|
queue3 {
|
|
snps,avb-algorithm;
|
|
snps,send_slope = <0x1000>;
|
|
snps,idle_slope = <0x1000>;
|
|
snps,high_credit = <0x3e800>;
|
|
snps,low_credit = <0xffc18000>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&i2c11 {
|
|
clock-frequency = <400000>;
|
|
status = "okay";
|
|
};
|
|
|
|
&i2c18 {
|
|
clock-frequency = <400000>;
|
|
|
|
status = "okay";
|
|
|
|
io_expander: gpio@74 {
|
|
compatible = "ti,tca9539";
|
|
reg = <0x74>;
|
|
interrupts-extended = <&tlmm 98 IRQ_TYPE_EDGE_BOTH>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
interrupt-controller;
|
|
#interrupt-cells = <2>;
|
|
reset-gpios = <&tlmm 97 GPIO_ACTIVE_LOW>;
|
|
|
|
pinctrl-0 = <&io_expander_intr_active>,
|
|
<&io_expander_reset_active>;
|
|
pinctrl-names = "default";
|
|
};
|
|
|
|
i2c-mux@70 {
|
|
compatible = "nxp,pca9543";
|
|
#address-cells = <1>;
|
|
|
|
#size-cells = <0>;
|
|
reg = <0x70>;
|
|
|
|
i2c@0 {
|
|
reg = <0>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
bridge@58 {
|
|
compatible = "analogix,anx7625";
|
|
reg = <0x58>;
|
|
interrupts-extended = <&io_expander 2 IRQ_TYPE_EDGE_FALLING>;
|
|
enable-gpios = <&io_expander 1 GPIO_ACTIVE_HIGH>;
|
|
reset-gpios = <&io_expander 0 GPIO_ACTIVE_HIGH>;
|
|
vdd10-supply = <&vreg_1p0>;
|
|
vdd18-supply = <&vreg_1p8>;
|
|
vdd33-supply = <&vreg_3p0>;
|
|
|
|
ports {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
port@0 {
|
|
reg = <0>;
|
|
|
|
dsi2dp_bridge0_in: endpoint {
|
|
remote-endpoint = <&mdss0_dsi0_out>;
|
|
};
|
|
};
|
|
|
|
port@1 {
|
|
reg = <1>;
|
|
|
|
dsi2dp_bridge0_out: endpoint {
|
|
remote-endpoint = <&dp_dsi0_connector_in>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
i2c@1 {
|
|
reg = <1>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
bridge@58 {
|
|
compatible = "analogix,anx7625";
|
|
reg = <0x58>;
|
|
interrupts-extended = <&io_expander 10 IRQ_TYPE_EDGE_FALLING>;
|
|
enable-gpios = <&io_expander 9 GPIO_ACTIVE_HIGH>;
|
|
reset-gpios = <&io_expander 8 GPIO_ACTIVE_HIGH>;
|
|
vdd10-supply = <&vreg_1p0>;
|
|
vdd18-supply = <&vreg_1p8>;
|
|
vdd33-supply = <&vreg_3p0>;
|
|
|
|
ports {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
port@0 {
|
|
reg = <0>;
|
|
|
|
dsi2dp_bridge1_in: endpoint {
|
|
remote-endpoint = <&mdss0_dsi1_out>;
|
|
};
|
|
};
|
|
|
|
port@1 {
|
|
reg = <1>;
|
|
|
|
dsi2dp_bridge1_out: endpoint {
|
|
remote-endpoint = <&dp_dsi1_connector_in>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
};
|
|
|
|
&iris {
|
|
firmware-name = "qcom/vpu/vpu30_p4_s6.mbn";
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&mdss0 {
|
|
status = "okay";
|
|
};
|
|
|
|
&mdss0_dp0 {
|
|
pinctrl-0 = <&dp0_hot_plug_det>;
|
|
pinctrl-names = "default";
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&mdss0_dp0_out {
|
|
data-lanes = <0 1 2 3>;
|
|
link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
|
|
remote-endpoint = <&dp0_connector_in>;
|
|
};
|
|
|
|
&mdss0_dp0_phy {
|
|
vdda-phy-supply = <&vreg_l1c>;
|
|
vdda-pll-supply = <&vreg_l4a>;
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&mdss0_dp1 {
|
|
pinctrl-0 = <&dp1_hot_plug_det>;
|
|
pinctrl-names = "default";
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&mdss0_dp1_out {
|
|
data-lanes = <0 1 2 3>;
|
|
link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
|
|
remote-endpoint = <&dp1_connector_in>;
|
|
};
|
|
|
|
&mdss0_dp1_phy {
|
|
vdda-phy-supply = <&vreg_l1c>;
|
|
vdda-pll-supply = <&vreg_l4a>;
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&mdss0_dsi0 {
|
|
vdda-supply = <&vreg_l1c>;
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&mdss0_dsi0_out {
|
|
data-lanes = <0 1 2 3>;
|
|
remote-endpoint = <&dsi2dp_bridge0_in>;
|
|
};
|
|
|
|
&mdss0_dsi0_phy {
|
|
vdds-supply = <&vreg_l4a>;
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&mdss0_dsi1 {
|
|
vdda-supply = <&vreg_l1c>;
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&mdss0_dsi1_out {
|
|
data-lanes = <0 1 2 3>;
|
|
remote-endpoint = <&dsi2dp_bridge1_in>;
|
|
};
|
|
|
|
&mdss0_dsi1_phy {
|
|
vdds-supply = <&vreg_l4a>;
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&pmm8654au_0_gpios {
|
|
gpio-line-names = "DS_EN",
|
|
"POFF_COMPLETE",
|
|
"UFS0_VER_ID",
|
|
"FAST_POFF",
|
|
"DBU1_PON_DONE",
|
|
"AOSS_SLEEP",
|
|
"CAM_DES0_EN",
|
|
"CAM_DES1_EN",
|
|
"CAM_DES2_EN",
|
|
"CAM_DES3_EN",
|
|
"UEFI",
|
|
"ANALOG_PON_OPT";
|
|
};
|
|
|
|
&pmm8654au_0_pon_resin {
|
|
linux,code = <KEY_VOLUMEDOWN>;
|
|
status = "okay";
|
|
};
|
|
|
|
&pmm8654au_1_gpios {
|
|
gpio-line-names = "PMIC_C_ID0",
|
|
"PMIC_C_ID1",
|
|
"UFS1_VER_ID",
|
|
"IPA_PWR",
|
|
"",
|
|
"WLAN_DBU4_EN",
|
|
"WLAN_EN",
|
|
"BT_EN",
|
|
"USB2_PWR_EN",
|
|
"USB2_FAULT";
|
|
|
|
wlan_en_state: wlan-en-state {
|
|
pins = "gpio7";
|
|
function = "normal";
|
|
output-low;
|
|
bias-pull-down;
|
|
};
|
|
|
|
bt_en_state: bt-en-state {
|
|
pins = "gpio8";
|
|
function = "normal";
|
|
output-low;
|
|
bias-pull-down;
|
|
};
|
|
|
|
usb2_en_state: usb2-en-state {
|
|
pins = "gpio9";
|
|
function = "normal";
|
|
output-high;
|
|
power-source = <0>;
|
|
};
|
|
};
|
|
|
|
&pmm8654au_2_gpios {
|
|
gpio-line-names = "PMIC_E_ID0",
|
|
"PMIC_E_ID1",
|
|
"USB0_PWR_EN",
|
|
"USB0_FAULT",
|
|
"SENSOR_IRQ_1",
|
|
"SENSOR_IRQ_2",
|
|
"SENSOR_RST",
|
|
"SGMIIO0_RST",
|
|
"SGMIIO1_RST",
|
|
"USB1_PWR_ENABLE",
|
|
"USB1_FAULT",
|
|
"VMON_SPX8";
|
|
|
|
usb0_en_state: usb0-en-state {
|
|
pins = "gpio3";
|
|
function = "normal";
|
|
output-high;
|
|
power-source = <0>;
|
|
};
|
|
|
|
usb1_en_state: usb1-en-state {
|
|
pins = "gpio10";
|
|
function = "normal";
|
|
output-high;
|
|
power-source = <0>;
|
|
};
|
|
};
|
|
|
|
&pmm8654au_3_gpios {
|
|
gpio-line-names = "PMIC_G_ID0",
|
|
"PMIC_G_ID1",
|
|
"GNSS_RST",
|
|
"GNSS_EN",
|
|
"GNSS_BOOT_MODE";
|
|
};
|
|
|
|
&qupv3_id_1 {
|
|
status = "okay";
|
|
};
|
|
|
|
&qupv3_id_2 {
|
|
status = "okay";
|
|
};
|
|
|
|
&qup_spi16_default {
|
|
drive-strength = <6>;
|
|
bias-disable;
|
|
};
|
|
|
|
&qup_i2c11_default {
|
|
drive-strength = <2>;
|
|
bias-pull-up;
|
|
};
|
|
|
|
&qup_i2c18_default {
|
|
drive-strength = <2>;
|
|
bias-pull-up;
|
|
};
|
|
|
|
&qup_uart12_cts {
|
|
bias-disable;
|
|
};
|
|
|
|
&qup_uart12_rts {
|
|
bias-pull-down;
|
|
};
|
|
|
|
&qup_uart12_tx {
|
|
bias-pull-up;
|
|
};
|
|
|
|
&qup_uart12_rx {
|
|
bias-pull-down;
|
|
};
|
|
|
|
&qup_uart17_cts {
|
|
bias-disable;
|
|
};
|
|
|
|
&qup_uart17_rts {
|
|
bias-pull-down;
|
|
};
|
|
|
|
&qup_uart17_tx {
|
|
bias-pull-up;
|
|
};
|
|
|
|
&qup_uart17_rx {
|
|
bias-pull-down;
|
|
};
|
|
|
|
&serdes0 {
|
|
phy-supply = <&vreg_l5a>;
|
|
status = "okay";
|
|
};
|
|
|
|
&serdes1 {
|
|
phy-supply = <&vreg_l5a>;
|
|
status = "okay";
|
|
};
|
|
|
|
&sleep_clk {
|
|
clock-frequency = <32000>;
|
|
};
|
|
|
|
&spi16 {
|
|
status = "okay";
|
|
};
|
|
|
|
&tlmm {
|
|
dp0_hot_plug_det: dp0-hot-plug-det-state {
|
|
pins = "gpio101";
|
|
function = "edp0_hot";
|
|
bias-disable;
|
|
};
|
|
|
|
dp1_hot_plug_det: dp1-hot-plug-det-state {
|
|
pins = "gpio102";
|
|
function = "edp1_hot";
|
|
bias-disable;
|
|
};
|
|
|
|
ethernet0_default: ethernet0-default-state {
|
|
ethernet0_mdc: ethernet0-mdc-pins {
|
|
pins = "gpio8";
|
|
function = "emac0_mdc";
|
|
drive-strength = <16>;
|
|
bias-pull-up;
|
|
};
|
|
|
|
ethernet0_mdio: ethernet0-mdio-pins {
|
|
pins = "gpio9";
|
|
function = "emac0_mdio";
|
|
drive-strength = <16>;
|
|
bias-pull-up;
|
|
};
|
|
};
|
|
|
|
io_expander_intr_active: io-expander-intr-active-state {
|
|
pins = "gpio98";
|
|
function = "gpio";
|
|
drive-strength = <2>;
|
|
bias-disable;
|
|
};
|
|
|
|
io_expander_reset_active: io-expander-reset-active-state {
|
|
pins = "gpio97";
|
|
function = "gpio";
|
|
drive-strength = <2>;
|
|
bias-disable;
|
|
output-high;
|
|
};
|
|
|
|
pcie0_default_state: pcie0-default-state {
|
|
perst-pins {
|
|
pins = "gpio2";
|
|
function = "gpio";
|
|
drive-strength = <2>;
|
|
bias-pull-down;
|
|
};
|
|
|
|
clkreq-pins {
|
|
pins = "gpio1";
|
|
function = "pcie0_clkreq";
|
|
drive-strength = <2>;
|
|
bias-pull-up;
|
|
};
|
|
|
|
wake-pins {
|
|
pins = "gpio0";
|
|
function = "gpio";
|
|
drive-strength = <2>;
|
|
bias-pull-up;
|
|
};
|
|
};
|
|
|
|
pcie1_default_state: pcie1-default-state {
|
|
perst-pins {
|
|
pins = "gpio4";
|
|
function = "gpio";
|
|
drive-strength = <2>;
|
|
bias-pull-down;
|
|
};
|
|
|
|
clkreq-pins {
|
|
pins = "gpio3";
|
|
function = "pcie1_clkreq";
|
|
drive-strength = <2>;
|
|
bias-pull-up;
|
|
};
|
|
|
|
wake-pins {
|
|
pins = "gpio5";
|
|
function = "gpio";
|
|
drive-strength = <2>;
|
|
bias-pull-up;
|
|
};
|
|
};
|
|
};
|
|
|
|
&pcie0 {
|
|
perst-gpios = <&tlmm 2 GPIO_ACTIVE_LOW>;
|
|
wake-gpios = <&tlmm 0 GPIO_ACTIVE_HIGH>;
|
|
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pcie0_default_state>;
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&pcie1 {
|
|
perst-gpios = <&tlmm 4 GPIO_ACTIVE_LOW>;
|
|
wake-gpios = <&tlmm 5 GPIO_ACTIVE_HIGH>;
|
|
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pcie1_default_state>;
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&pcie0_phy {
|
|
vdda-phy-supply = <&vreg_l5a>;
|
|
vdda-pll-supply = <&vreg_l1c>;
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&pcie1_phy {
|
|
vdda-phy-supply = <&vreg_l5a>;
|
|
vdda-pll-supply = <&vreg_l1c>;
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&pcieport0 {
|
|
wifi@0 {
|
|
compatible = "pci17cb,1101";
|
|
reg = <0x10000 0x0 0x0 0x0 0x0>;
|
|
|
|
qcom,calibration-variant = "QC_SA8775P_Ride";
|
|
|
|
vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
|
|
vddaon-supply = <&vreg_pmu_aon_0p59>;
|
|
vddwlcx-supply = <&vreg_pmu_wlcx_0p8>;
|
|
vddwlmx-supply = <&vreg_pmu_wlmx_0p85>;
|
|
vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
|
|
vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
|
|
vddrfa1p7-supply = <&vreg_pmu_rfa_1p7>;
|
|
vddpcie0p9-supply = <&vreg_pmu_pcie_0p9>;
|
|
vddpcie1p8-supply = <&vreg_pmu_pcie_1p8>;
|
|
};
|
|
};
|
|
|
|
&remoteproc_adsp {
|
|
firmware-name = "qcom/sa8775p/adsp.mbn";
|
|
status = "okay";
|
|
};
|
|
|
|
&remoteproc_cdsp0 {
|
|
firmware-name = "qcom/sa8775p/cdsp0.mbn";
|
|
status = "okay";
|
|
};
|
|
|
|
&remoteproc_cdsp1 {
|
|
firmware-name = "qcom/sa8775p/cdsp1.mbn";
|
|
status = "okay";
|
|
};
|
|
|
|
&remoteproc_gpdsp0 {
|
|
firmware-name = "qcom/sa8775p/gpdsp0.mbn";
|
|
status = "okay";
|
|
};
|
|
|
|
&remoteproc_gpdsp1 {
|
|
firmware-name = "qcom/sa8775p/gpdsp1.mbn";
|
|
status = "okay";
|
|
};
|
|
|
|
&uart10 {
|
|
compatible = "qcom,geni-debug-uart";
|
|
status = "okay";
|
|
};
|
|
|
|
&uart12 {
|
|
pinctrl-0 = <&qup_uart12_default>;
|
|
pinctrl-names = "default";
|
|
status = "okay";
|
|
};
|
|
|
|
&uart17 {
|
|
pinctrl-0 = <&qup_uart17_default>;
|
|
pinctrl-names = "default";
|
|
status = "okay";
|
|
|
|
bluetooth {
|
|
compatible = "qcom,wcn6855-bt";
|
|
firmware-name = "QCA6698/hpnv21", "QCA6698/hpbtfw21.tlv";
|
|
|
|
vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
|
|
vddaon-supply = <&vreg_pmu_aon_0p59>;
|
|
vddbtcmx-supply = <&vreg_pmu_btcmx_0p85>;
|
|
vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
|
|
vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
|
|
vddrfa1p7-supply = <&vreg_pmu_rfa_1p7>;
|
|
};
|
|
};
|
|
|
|
&ufs_mem_hc {
|
|
reset-gpios = <&tlmm 149 GPIO_ACTIVE_LOW>;
|
|
vcc-supply = <&vreg_l8a>;
|
|
vcc-max-microamp = <1100000>;
|
|
vccq-supply = <&vreg_l4c>;
|
|
vccq-max-microamp = <1200000>;
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&ufs_mem_phy {
|
|
vdda-phy-supply = <&vreg_l4a>;
|
|
vdda-pll-supply = <&vreg_l1c>;
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&usb_0 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&usb0_en_state>;
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&usb_0_dwc3 {
|
|
dr_mode = "peripheral";
|
|
};
|
|
|
|
&usb_0_hsphy {
|
|
vdda-pll-supply = <&vreg_l7a>;
|
|
vdda18-supply = <&vreg_l6c>;
|
|
vdda33-supply = <&vreg_l9a>;
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&usb_0_qmpphy {
|
|
vdda-phy-supply = <&vreg_l1c>;
|
|
vdda-pll-supply = <&vreg_l7a>;
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&usb_1 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&usb1_en_state>;
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&usb_1_dwc3 {
|
|
dr_mode = "host";
|
|
};
|
|
|
|
&usb_1_hsphy {
|
|
vdda-pll-supply = <&vreg_l7a>;
|
|
vdda18-supply = <&vreg_l6c>;
|
|
vdda33-supply = <&vreg_l9a>;
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&usb_1_qmpphy {
|
|
vdda-phy-supply = <&vreg_l1c>;
|
|
vdda-pll-supply = <&vreg_l7a>;
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&usb_2 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&usb2_en_state>;
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&usb_2_dwc3 {
|
|
dr_mode = "host";
|
|
};
|
|
|
|
&usb_2_hsphy {
|
|
vdda-pll-supply = <&vreg_l7a>;
|
|
vdda18-supply = <&vreg_l6c>;
|
|
vdda33-supply = <&vreg_l9a>;
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&xo_board_clk {
|
|
clock-frequency = <38400000>;
|
|
};
|