More Qualcomm DTS updates for 5.13

This adds CPUfreq, interconnect providers, IPC, remoteproc and IPA to
 the SDX55 platform and then adds board files for the Telit FN980 TLB and
 Thundercomm TurboX T55.
 -----BEGIN PGP SIGNATURE-----
 
 iQJPBAABCAA5FiEEBd4DzF816k8JZtUlCx85Pw2ZrcUFAmB9l7UbHGJqb3JuLmFu
 ZGVyc3NvbkBsaW5hcm8ub3JnAAoJEAsfOT8Nma3F7AcQANfA0up7/3fv7nEsKk58
 53bkx48h8I6OdalXpejqZmIJjd9muuGPVJJfiZcQ3tn0r7ePnFgRHmUTXgfBJNPt
 xS9ZdsRH5o3897uc9AQB6j7oiALfbiUWLrrrBeLLrU4LIoBBsHcoZI0HORaXClaE
 gaBJdCVHSrasLLOkqYxLSquP3jwj4BEnmiXx1kuA4Y9BPuMaACby6083FtIHIg74
 JQ2tZNGle+bs/0qPvPJg/AGKOwH15NO4TW/Z5trErI62gBqSGe3RzIG2V4nvN7kr
 FvmAwYG+mvqIyUv5FybMU5xyb3GSqEA66zsm9927oJdGL31CKV3RmjKy1+Mpfqhd
 erD5ZzWCfidIow9QDZGyRMigFaGwWvkdBUPSnuuOVIYJVgYY/pvV5ErC4CgBAWm8
 EYvtvv87oEyJPA7hjAvIdqybn4FfTxqffDON+ZEcVo2CvotxXjEvffWFxY8+pJre
 tbLhhNYIKz/0IYBbCkMOvcTCbgRePEBdZPCDgPM3ktBCqoBhAwQ37PsZ/z6l+QHe
 /YM4+AYrtcKNOjOBvYTEgX9ZHMcmWpviYcFoFu2sM/Lmb5e5/5zWj7umQfoUMNqs
 JL8XKjnNUnoXMVd61keXoeGHSPQNeb/qYeZWkdzJ7E/MUCSV4WlDS9mhB2vCp6yq
 3nxzk7vZo4fdaAC3YORj3NmU
 =f0HR
 -----END PGP SIGNATURE-----

Merge tag 'qcom-dts-for-5.13-2' of git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/dt

More Qualcomm DTS updates for 5.13

This adds CPUfreq, interconnect providers, IPC, remoteproc and IPA to
the SDX55 platform and then adds board files for the Telit FN980 TLB and
Thundercomm TurboX T55.

* tag 'qcom-dts-for-5.13-2' of git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux:
  ARM: dts: qcom: sdx55: add IPA information
  ARM: dts: qcom: sdx55: Add basic devicetree support for Thundercomm T55
  dt-bindings: arm: qcom: Add binding for Thundercomm T55 kit
  ARM: dts: qcom: sdx55: Add basic devicetree support for Telit FN980 TLB
  dt-bindings: arm: qcom: Add binding for Telit FN980 TLB board
  ARM: dts: qcom: sdx55: Add Modem remoteproc node
  ARM: dts: qcom: Fix node name for NAND controller node
  ARM: dts: qcom: sdx55: Add interconnect nodes
  ARM: dts: qcom: sdx55: Add SCM node
  dt-bindings: firmware: scm: Add compatible for SDX55
  ARM: dts: qcom: sdx55: Add IMEM and PIL info region
  ARM: dts: qcom: sdx55: Add modem SMP2P node
  ARM: dts: qcom: sdx55: Add CPUFreq support
  ARM: dts: qcom: sdx55: Add support for APCS block
  ARM: dts: qcom: sdx55: Add support for A7 PLL clock

Link: https://lore.kernel.org/r/20210419150956.860423-1-bjorn.andersson@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
Arnd Bergmann 2021-04-19 17:15:50 +02:00
commit 6417554e3d
7 changed files with 776 additions and 3 deletions

View file

@ -188,6 +188,8 @@ properties:
- items:
- enum:
- qcom,sdx55-mtp
- qcom,sdx55-telit-fn980-tlb
- qcom,sdx55-t55
- const: qcom,sdx55
- items:

View file

@ -21,6 +21,7 @@ Required properties:
* "qcom,scm-msm8998"
* "qcom,scm-sc7180"
* "qcom,scm-sdm845"
* "qcom,scm-sdx55"
* "qcom,scm-sm8150"
* "qcom,scm-sm8250"
* "qcom,scm-sm8350"

View file

@ -931,7 +931,9 @@ dtb-$(CONFIG_ARCH_QCOM) += \
qcom-msm8974-sony-xperia-castor.dtb \
qcom-msm8974-sony-xperia-honami.dtb \
qcom-mdm9615-wp8548-mangoh-green.dtb \
qcom-sdx55-mtp.dtb
qcom-sdx55-mtp.dtb \
qcom-sdx55-t55.dtb \
qcom-sdx55-telit-fn980-tlb.dtb
dtb-$(CONFIG_ARCH_RDA) += \
rda8810pl-orangepi-2g-iot.dtb \
rda8810pl-orangepi-i96.dtb

View file

@ -480,7 +480,7 @@ qpic_bam: dma@7984000 {
status = "disabled";
};
nand: qpic-nand@79b0000 {
nand: nand-controller@79b0000 {
compatible = "qcom,ipq4019-nand";
reg = <0x79b0000 0x1000>;
#address-cells = <1>;

View file

@ -0,0 +1,281 @@
// SPDX-License-Identifier: BSD-3-Clause
/*
* Copyright (c) 2021, Linaro Ltd.
*/
/dts-v1/;
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
#include "qcom-sdx55.dtsi"
#include "qcom-pmx55.dtsi"
/ {
model = "Thundercomm T55 Development Kit";
compatible = "qcom,sdx55-t55", "qcom,sdx55";
qcom,board-id = <0xb010008 0x4>;
aliases {
serial0 = &blsp1_uart3;
};
chosen {
stdout-path = "serial0:115200n8";
};
reserved-memory {
#address-cells = <1>;
#size-cells = <1>;
ranges;
mpss_debug_mem: memory@8ef00000 {
no-map;
reg = <0x8ef00000 0x800000>;
};
ipa_fw_mem: memory@8fced000 {
no-map;
reg = <0x8fced000 0x10000>;
};
mpss_adsp_mem: memory@90800000 {
no-map;
reg = <0x90800000 0xf800000>;
};
};
vph_pwr: vph-pwr-regulator {
compatible = "regulator-fixed";
regulator-name = "vph_pwr";
regulator-min-microvolt = <3700000>;
regulator-max-microvolt = <3700000>;
};
vreg_bob_3p3: pmx55-bob {
compatible = "regulator-fixed";
regulator-name = "vreg_bob_3p3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
regulator-boot-on;
vin-supply = <&vph_pwr>;
};
vreg_s7e_mx_0p752: pmx55-s7e {
compatible = "regulator-fixed";
regulator-name = "vreg_s7e_mx_0p752";
regulator-min-microvolt = <752000>;
regulator-max-microvolt = <752000>;
vin-supply = <&vph_pwr>;
};
vreg_sd_vdd: sd-vdd {
compatible = "regulator-fixed";
regulator-name = "vreg_sd_vdd";
regulator-min-microvolt = <2950000>;
regulator-max-microvolt = <2950000>;
vin-supply = <&vreg_vddpx_2>;
};
vreg_vddpx_2: vddpx-2 {
compatible = "regulator-gpio";
regulator-name = "vreg_vddpx_2";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <2850000>;
enable-gpios = <&tlmm 98 GPIO_ACTIVE_HIGH>;
gpios = <&tlmm 100 GPIO_ACTIVE_HIGH>;
states = <1800000 0>, <2850000 1>;
startup-delay-us = <200000>;
enable-active-high;
regulator-boot-on;
vin-supply = <&vph_pwr>;
};
};
&apps_rsc {
pmx55-rpmh-regulators {
compatible = "qcom,pmx55-rpmh-regulators";
qcom,pmic-id = "e";
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-l1-l2-supply = <&vreg_s2e_1p224>;
vdd-l3-l9-supply = <&vreg_s3e_0p824>;
vdd-l4-l12-supply = <&vreg_s4e_1p904>;
vdd-l5-l6-supply = <&vreg_s4e_1p904>;
vdd-l7-l8-supply = <&vreg_s3e_0p824>;
vdd-l10-l11-l13-supply = <&vreg_bob_3p3>;
vdd-l14-supply = <&vreg_s7e_mx_0p752>;
vdd-l15-supply = <&vreg_s2e_1p224>;
vdd-l16-supply = <&vreg_s4e_1p904>;
vreg_s2e_1p224: smps2 {
regulator-min-microvolt = <1280000>;
regulator-max-microvolt = <1400000>;
};
vreg_s3e_0p824: smps3 {
regulator-min-microvolt = <800000>;
regulator-max-microvolt = <1000000>;
};
vreg_s4e_1p904: smps4 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1960000>;
};
vreg_l1e_bb_1p2: ldo1 {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo2 {
regulator-min-microvolt = <1128000>;
regulator-max-microvolt = <1128000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo3 {
regulator-min-microvolt = <800000>;
regulator-max-microvolt = <800000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
vreg_l4e_bb_0p875: ldo4 {
regulator-min-microvolt = <872000>;
regulator-max-microvolt = <872000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
vreg_l5e_bb_1p7: ldo5 {
regulator-min-microvolt = <1704000>;
regulator-max-microvolt = <1900000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo6 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo7 {
regulator-min-microvolt = <480000>;
regulator-max-microvolt = <900000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo8 {
regulator-min-microvolt = <480000>;
regulator-max-microvolt = <900000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo9 {
regulator-min-microvolt = <800000>;
regulator-max-microvolt = <800000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
vreg_l10e_3p1: ldo10 {
regulator-min-microvolt = <3088000>;
regulator-max-microvolt = <3088000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo11 {
regulator-min-microvolt = <1704000>;
regulator-max-microvolt = <2928000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo12 {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo13 {
regulator-min-microvolt = <1704000>;
regulator-max-microvolt = <2928000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo14 {
regulator-min-microvolt = <600000>;
regulator-max-microvolt = <800000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo15 {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo16 {
regulator-min-microvolt = <1704000>;
regulator-max-microvolt = <1904000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
};
};
&blsp1_uart3 {
status = "ok";
};
&qpic_bam {
status = "ok";
};
&qpic_nand {
status = "ok";
nand@0 {
reg = <0>;
nand-ecc-strength = <8>;
nand-ecc-step-size = <512>;
nand-bus-width = <8>;
/* efs2 partition is secured */
secure-regions = <0x500000 0xb00000>;
};
};
&remoteproc_mpss {
status = "okay";
memory-region = <&mpss_adsp_mem>;
};
&usb_hsphy {
status = "okay";
vdda-pll-supply = <&vreg_l4e_bb_0p875>;
vdda33-supply = <&vreg_l10e_3p1>;
vdda18-supply = <&vreg_l5e_bb_1p7>;
};
&usb_qmpphy {
status = "okay";
vdda-phy-supply = <&vreg_l4e_bb_0p875>;
vdda-pll-supply = <&vreg_l1e_bb_1p2>;
};
&usb {
status = "okay";
};
&usb_dwc3 {
dr_mode = "peripheral";
};

View file

@ -0,0 +1,282 @@
// SPDX-License-Identifier: BSD-3-Clause
/*
* Copyright (c) 2021, Linaro Ltd.
*/
/dts-v1/;
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
#include "qcom-sdx55.dtsi"
#include "qcom-pmx55.dtsi"
/ {
model = "Telit FN980 TLB";
compatible = "qcom,sdx55-telit-fn980-tlb", "qcom,sdx55";
qcom,board-id = <0xb010008 0x0>;
aliases {
serial0 = &blsp1_uart3;
};
chosen {
stdout-path = "serial0:921600n8";
};
reserved-memory {
#address-cells = <1>;
#size-cells = <1>;
ranges;
mpss_debug_mem: memory@8ef00000 {
no-map;
reg = <0x8ef00000 0x800000>;
};
ipa_fw_mem: memory@8fced000 {
no-map;
reg = <0x8fced000 0x10000>;
};
mpss_adsp_mem: memory@90800000 {
no-map;
reg = <0x90800000 0xf800000>;
};
};
vph_pwr: vph-pwr-regulator {
compatible = "regulator-fixed";
regulator-name = "vph_pwr";
regulator-min-microvolt = <3700000>;
regulator-max-microvolt = <3700000>;
};
vreg_bob_3p3: pmx55-bob {
compatible = "regulator-fixed";
regulator-name = "vreg_bob_3p3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
regulator-boot-on;
vin-supply = <&vph_pwr>;
};
vreg_s7e_mx_0p752: pmx55-s7e {
compatible = "regulator-fixed";
regulator-name = "vreg_s7e_mx_0p752";
regulator-min-microvolt = <752000>;
regulator-max-microvolt = <752000>;
vin-supply = <&vph_pwr>;
};
vreg_sd_vdd: sd-vdd {
compatible = "regulator-fixed";
regulator-name = "vreg_sd_vdd";
regulator-min-microvolt = <2950000>;
regulator-max-microvolt = <2950000>;
vin-supply = <&vreg_vddpx_2>;
};
vreg_vddpx_2: vddpx-2 {
compatible = "regulator-gpio";
regulator-name = "vreg_vddpx_2";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <2850000>;
enable-gpios = <&tlmm 98 GPIO_ACTIVE_HIGH>;
gpios = <&tlmm 100 GPIO_ACTIVE_HIGH>;
states = <1800000 0>, <2850000 1>;
startup-delay-us = <200000>;
enable-active-high;
regulator-boot-on;
vin-supply = <&vph_pwr>;
};
};
&apps_rsc {
pmx55-rpmh-regulators {
compatible = "qcom,pmx55-rpmh-regulators";
qcom,pmic-id = "e";
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-l1-l2-supply = <&vreg_s2e_1p224>;
vdd-l3-l9-supply = <&vreg_s3e_0p824>;
vdd-l4-l12-supply = <&vreg_s4e_1p904>;
vdd-l5-l6-supply = <&vreg_s4e_1p904>;
vdd-l7-l8-supply = <&vreg_s3e_0p824>;
vdd-l10-l11-l13-supply = <&vreg_bob_3p3>;
vdd-l14-supply = <&vreg_s7e_mx_0p752>;
vdd-l15-supply = <&vreg_s2e_1p224>;
vdd-l16-supply = <&vreg_s4e_1p904>;
vreg_s2e_1p224: smps2 {
regulator-min-microvolt = <1280000>;
regulator-max-microvolt = <1400000>;
};
vreg_s3e_0p824: smps3 {
regulator-min-microvolt = <800000>;
regulator-max-microvolt = <1000000>;
};
vreg_s4e_1p904: smps4 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1960000>;
};
vreg_l1e_bb_1p2: ldo1 {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo2 {
regulator-min-microvolt = <1128000>;
regulator-max-microvolt = <1128000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo3 {
regulator-min-microvolt = <800000>;
regulator-max-microvolt = <800000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
vreg_l4e_bb_0p875: ldo4 {
regulator-min-microvolt = <872000>;
regulator-max-microvolt = <872000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
vreg_l5e_bb_1p7: ldo5 {
regulator-min-microvolt = <1704000>;
regulator-max-microvolt = <1900000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo6 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo7 {
regulator-min-microvolt = <480000>;
regulator-max-microvolt = <900000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo8 {
regulator-min-microvolt = <480000>;
regulator-max-microvolt = <900000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo9 {
regulator-min-microvolt = <800000>;
regulator-max-microvolt = <800000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
vreg_l10e_3p1: ldo10 {
regulator-min-microvolt = <3088000>;
regulator-max-microvolt = <3088000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo11 {
regulator-min-microvolt = <1704000>;
regulator-max-microvolt = <2928000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo12 {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo13 {
regulator-min-microvolt = <1704000>;
regulator-max-microvolt = <2928000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo14 {
regulator-min-microvolt = <600000>;
regulator-max-microvolt = <800000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo15 {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
ldo16 {
regulator-min-microvolt = <1704000>;
regulator-max-microvolt = <1904000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
};
};
};
&blsp1_uart3 {
status = "ok";
};
&qpic_bam {
status = "ok";
};
&qpic_nand {
status = "ok";
nand@0 {
reg = <0>;
nand-ecc-strength = <8>;
nand-ecc-step-size = <512>;
nand-bus-width = <8>;
/* ico and efs2 partitions are secured */
secure-regions = <0x500000 0x500000
0xa00000 0xb00000>;
};
};
&remoteproc_mpss {
status = "okay";
memory-region = <&mpss_adsp_mem>;
};
&usb_hsphy {
status = "okay";
vdda-pll-supply = <&vreg_l4e_bb_0p875>;
vdda33-supply = <&vreg_l10e_3p1>;
vdda18-supply = <&vreg_l5e_bb_1p7>;
};
&usb_qmpphy {
status = "okay";
vdda-phy-supply = <&vreg_l4e_bb_0p875>;
vdda-pll-supply = <&vreg_l1e_bb_1p2>;
};
&usb {
status = "okay";
};
&usb_dwc3 {
dr_mode = "peripheral";
};

View file

@ -8,6 +8,7 @@
#include <dt-bindings/clock/qcom,gcc-sdx55.h>
#include <dt-bindings/clock/qcom,rpmh.h>
#include <dt-bindings/interconnect/qcom,sdx55.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/power/qcom-rpmpd.h>
#include <dt-bindings/soc/qcom,rpmh-rsc.h>
@ -53,6 +54,41 @@ cpu0: cpu@0 {
compatible = "arm,cortex-a7";
reg = <0x0>;
enable-method = "psci";
clocks = <&apcs>;
power-domains = <&rpmhpd SDX55_CX>;
power-domain-names = "rpmhpd";
operating-points-v2 = <&cpu_opp_table>;
};
};
cpu_opp_table: cpu-opp-table {
compatible = "operating-points-v2";
opp-shared;
opp-345600000 {
opp-hz = /bits/ 64 <345600000>;
required-opps = <&rpmhpd_opp_low_svs>;
};
opp-576000000 {
opp-hz = /bits/ 64 <576000000>;
required-opps = <&rpmhpd_opp_svs>;
};
opp-1094400000 {
opp-hz = /bits/ 64 <1094400000>;
required-opps = <&rpmhpd_opp_nom>;
};
opp-1555200000 {
opp-hz = /bits/ 64 <1555200000>;
required-opps = <&rpmhpd_opp_turbo>;
};
};
firmware {
scm {
compatible = "qcom,scm-sdx55", "qcom,scm";
};
};
@ -119,6 +155,37 @@ smem {
hwlocks = <&tcsr_mutex 3>;
};
smp2p-mpss {
compatible = "qcom,smp2p";
qcom,smem = <435>, <428>;
interrupts = <GIC_SPI 113 IRQ_TYPE_EDGE_RISING>;
mboxes = <&apcs 14>;
qcom,local-pid = <0>;
qcom,remote-pid = <1>;
modem_smp2p_out: master-kernel {
qcom,entry-name = "master-kernel";
#qcom,smem-state-cells = <1>;
};
modem_smp2p_in: slave-kernel {
qcom,entry-name = "slave-kernel";
interrupt-controller;
#interrupt-cells = <2>;
};
ipa_smp2p_out: ipa-ap-to-modem {
qcom,entry-name = "ipa";
#qcom,smem-state-cells = <1>;
};
ipa_smp2p_in: ipa-modem-to-ap {
qcom,entry-name = "ipa";
interrupt-controller;
#interrupt-cells = <2>;
};
};
soc: soc {
#address-cells = <1>;
#size-cells = <1>;
@ -187,6 +254,34 @@ usb_ssphy: phy@ff6200 {
};
};
mc_virt: interconnect@1100000 {
compatible = "qcom,sdx55-mc-virt";
reg = <0x01100000 0x400000>;
#interconnect-cells = <1>;
qcom,bcm-voters = <&apps_bcm_voter>;
};
mem_noc: interconnect@9680000 {
compatible = "qcom,sdx55-mem-noc";
reg = <0x09680000 0x40000>;
#interconnect-cells = <1>;
qcom,bcm-voters = <&apps_bcm_voter>;
};
system_noc: interconnect@162c000 {
compatible = "qcom,sdx55-system-noc";
reg = <0x0162c000 0x31200>;
#interconnect-cells = <1>;
qcom,bcm-voters = <&apps_bcm_voter>;
};
ipa_virt: interconnect@1e00000 {
compatible = "qcom,sdx55-ipa-virt";
reg = <0x01e00000 0x100000>;
#interconnect-cells = <1>;
qcom,bcm-voters = <&apps_bcm_voter>;
};
qpic_bam: dma-controller@1b04000 {
compatible = "qcom,bam-v1.7.0";
reg = <0x01b04000 0x1c000>;
@ -199,7 +294,7 @@ qpic_bam: dma-controller@1b04000 {
status = "disabled";
};
qpic_nand: nand@1b30000 {
qpic_nand: nand-controller@1b30000 {
compatible = "qcom,sdx55-nand";
reg = <0x01b30000 0x10000>;
#address-cells = <1>;
@ -215,6 +310,47 @@ qpic_nand: nand@1b30000 {
status = "disabled";
};
ipa: ipa@1e40000 {
compatible = "qcom,sdx55-ipa";
iommus = <&apps_smmu 0x5e0 0x0>,
<&apps_smmu 0x5e2 0x0>;
reg = <0x1e40000 0x7000>,
<0x1e50000 0x4b20>,
<0x1e04000 0x2c000>;
reg-names = "ipa-reg",
"ipa-shared",
"gsi";
interrupts-extended = <&intc GIC_SPI 241 IRQ_TYPE_EDGE_RISING>,
<&intc GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>,
<&ipa_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
<&ipa_smp2p_in 1 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "ipa",
"gsi",
"ipa-clock-query",
"ipa-setup-ready";
clocks = <&rpmhcc RPMH_IPA_CLK>;
clock-names = "core";
interconnects = <&system_noc MASTER_IPA &system_noc SLAVE_SNOC_MEM_NOC_GC>,
<&mem_noc MASTER_SNOC_GC_MEM_NOC &mc_virt SLAVE_EBI_CH0>,
<&system_noc MASTER_IPA &system_noc SLAVE_OCIMEM>,
<&mem_noc MASTER_AMPSS_M0 &system_noc SLAVE_IPA_CFG>;
interconnect-names = "memory-a",
"memory-b",
"imem",
"config";
qcom,smem-states = <&ipa_smp2p_out 0>,
<&ipa_smp2p_out 1>;
qcom,smem-state-names = "ipa-clock-enabled-valid",
"ipa-clock-enabled";
status = "disabled";
};
tcsr_mutex: hwlock@1f40000 {
compatible = "qcom,tcsr-mutex";
reg = <0x01f40000 0x40000>;
@ -233,6 +369,39 @@ sdhc_1: sdhci@8804000 {
status = "disabled";
};
remoteproc_mpss: remoteproc@4080000 {
compatible = "qcom,sdx55-mpss-pas";
reg = <0x04080000 0x4040>;
interrupts-extended = <&intc GIC_SPI 250 IRQ_TYPE_EDGE_RISING>,
<&modem_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
<&modem_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
<&modem_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
<&modem_smp2p_in 3 IRQ_TYPE_EDGE_RISING>,
<&modem_smp2p_in 7 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "wdog", "fatal", "ready", "handover",
"stop-ack", "shutdown-ack";
clocks = <&rpmhcc RPMH_CXO_CLK>;
clock-names = "xo";
power-domains = <&rpmhpd SDX55_CX>,
<&rpmhpd SDX55_MSS>;
power-domain-names = "cx", "mss";
qcom,smem-states = <&modem_smp2p_out 0>;
qcom,smem-state-names = "stop";
status = "disabled";
glink-edge {
interrupts = <GIC_SPI 114 IRQ_TYPE_EDGE_RISING>;
label = "mpss";
qcom,remote-pid = <1>;
mboxes = <&apcs 15>;
};
};
usb: usb@a6f8800 {
compatible = "qcom,sdx55-dwc3", "qcom,dwc3";
reg = <0x0a6f8800 0x400>;
@ -319,6 +488,21 @@ tlmm: pinctrl@f100000 {
#interrupt-cells = <2>;
};
imem@1468f000 {
compatible = "simple-mfd";
reg = <0x1468f000 0x1000>;
#address-cells = <1>;
#size-cells = <1>;
ranges = <0x0 0x1468f000 0x1000>;
pil-reloc@94c {
compatible = "qcom,pil-reloc-info";
reg = <0x94c 0x200>;
};
};
apps_smmu: iommu@15000000 {
compatible = "qcom,sdx55-smmu-500", "arm,mmu-500";
reg = <0x15000000 0x20000>;
@ -352,6 +536,23 @@ intc: interrupt-controller@17800000 {
<0x17802000 0x1000>;
};
a7pll: clock@17808000 {
compatible = "qcom,sdx55-a7pll";
reg = <0x17808000 0x1000>;
clocks = <&rpmhcc RPMH_CXO_CLK>;
clock-names = "bi_tcxo";
#clock-cells = <0>;
};
apcs: mailbox@17810000 {
compatible = "qcom,sdx55-apcs-gcc", "syscon";
reg = <0x17810000 0x2000>;
#mbox-cells = <1>;
clocks = <&rpmhcc RPMH_CXO_CLK>, <&a7pll>, <&gcc GPLL0>;
clock-names = "ref", "pll", "aux";
#clock-cells = <0>;
};
watchdog@17817000 {
compatible = "qcom,apss-wdt-sdx55", "qcom,kpss-wdt";
reg = <0x17817000 0x1000>;
@ -491,6 +692,10 @@ rpmhpd_opp_turbo_l1: opp10 {
};
};
};
apps_bcm_voter: bcm_voter {
compatible = "qcom,bcm-voter";
};
};
};