blob: 58c37c91678c6161df7211707cacc723f7014d5b [file] [log] [blame]
// SPDX-License-Identifier: GPL-2.0-only
/*
* Copyright (c) 2018, The Linux Foundation. All rights reserved.
*/
#include <dt-bindings/msm/msm-bus-ids.h>
&soc {
/* QUPv3_0 wrapper instance : North QUP*/
qupv3_0: qcom,qupv3_0_geni_se@9c0000 {
compatible = "qcom,qupv3-geni-se";
reg = <0x9c0000 0x2000>;
qcom,bus-mas-id = <MSM_BUS_MASTER_QUP_0>;
qcom,bus-slv-id = <MSM_BUS_SLAVE_EBI_CH0>;
qcom,iommu-s1-bypass;
iommu_qupv3_0_geni_se_cb: qcom,iommu_qupv3_0_geni_se_cb {
compatible = "qcom,qupv3-geni-se-cb";
iommus = <&apps_smmu 0x5a3 0x0>;
qcom,iommu-dma = "disabled";
};
};
/* Debug UART Instance for RUMI platform */
qupv3_se2_2uart: qcom,qup_uart@988000 {
compatible = "qcom,msm-geni-console";
reg = <0x988000 0x4000>;
reg-names = "se_phys";
clock-names = "se-clk", "m-ahb", "s-ahb";
clocks = <&clock_gcc GCC_QUPV3_WRAP0_S2_CLK>,
<&clock_gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>,
<&clock_gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>;
pinctrl-names = "default", "sleep";
pinctrl-0 = <&qupv3_se2_2uart_active>;
pinctrl-1 = <&qupv3_se2_2uart_sleep>;
interrupts = <GIC_SPI 603 IRQ_TYPE_LEVEL_HIGH>;
qcom,wrapper-core = <&qupv3_0>;
qcom,change-sampling-rate;
status = "disabled";
};
/*
* HS UART instances. HS UART usecases can be supported on these
* instances only.
*/
qupv3_se6_4uart: qcom,qup_uart@998000 {
compatible = "qcom,msm-geni-serial-hs";
reg = <0x998000 0x4000>;
reg-names = "se_phys";
clock-names = "se-clk", "m-ahb", "s-ahb";
clocks = <&clock_gcc GCC_QUPV3_WRAP0_S6_CLK>,
<&clock_gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>,
<&clock_gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>;
pinctrl-names = "default", "sleep";
pinctrl-0 = <&qupv3_se6_ctsrx>, <&qupv3_se6_rts>,
<&qupv3_se6_tx> ;
pinctrl-1 = <&qupv3_se6_ctsrx>, <&qupv3_se6_rts>,
<&qupv3_se6_tx> ;
interrupts-extended = <&pdc GIC_SPI 607 0>,
<&tlmm 19 0>;
status = "disabled";
qcom,wakeup-byte = <0xFD>;
qcom,wrapper-core = <&qupv3_0>;
};
/* QUPv3_1 wrapper instance : South_1 QUP */
qupv3_1: qcom,qupv3_1_geni_se@ac0000 {
compatible = "qcom,qupv3-geni-se";
reg = <0xac0000 0x2000>;
qcom,bus-mas-id = <MSM_BUS_MASTER_QUP_1>;
qcom,bus-slv-id = <MSM_BUS_SLAVE_EBI_CH0>;
qcom,iommu-s1-bypass;
iommu_qupv3_1_geni_se_cb: qcom,iommu_qupv3_1_geni_se_cb {
compatible = "qcom,qupv3-geni-se-cb";
iommus = <&apps_smmu 0x43 0x0>;
qcom,iommu-dma = "disabled";
};
};
/* Debug UART Instance for CDP/MTP platform */
qupv3_se12_2uart: qcom,qup_uart@a90000 {
compatible = "qcom,msm-geni-console";
reg = <0xa90000 0x4000>;
reg-names = "se_phys";
clock-names = "se-clk", "m-ahb", "s-ahb";
clocks = <&clock_gcc GCC_QUPV3_WRAP1_S4_CLK>,
<&clock_gcc GCC_QUPV3_WRAP_1_M_AHB_CLK>,
<&clock_gcc GCC_QUPV3_WRAP_1_S_AHB_CLK>;
pinctrl-names = "default", "sleep";
pinctrl-0 = <&qupv3_se12_2uart_active>;
pinctrl-1 = <&qupv3_se12_2uart_sleep>;
interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>;
qcom,wrapper-core = <&qupv3_1>;
qcom,change-sampling-rate;
status = "disabled";
};
/* QUPv3_2 wrapper instance : South_2 QUP */
qupv3_2: qcom,qupv3_2_geni_se@8c0000 {
compatible = "qcom,qupv3-geni-se";
reg = <0x8c0000 0x2000>;
qcom,bus-mas-id = <MSM_BUS_MASTER_QUP_2>;
qcom,bus-slv-id = <MSM_BUS_SLAVE_EBI_CH0>;
qcom,iommu-s1-bypass;
iommu_qupv3_2_geni_se_cb: qcom,iommu_qupv3_2_geni_se_cb {
compatible = "qcom,qupv3-geni-se-cb";
iommus = <&apps_smmu 0x63 0x0>;
qcom,iommu-dma = "disabled";
};
};
/*
* HS UART : Modem/Audio backup
*/
qupv3_se17_4uart: qcom,qup_uart@88c000 {
compatible = "qcom,msm-geni-serial-hs";
reg = <0x88c000 0x4000>;
reg-names = "se_phys";
clock-names = "se-clk", "m-ahb", "s-ahb";
clocks = <&clock_gcc GCC_QUPV3_WRAP2_S3_CLK>,
<&clock_gcc GCC_QUPV3_WRAP_2_M_AHB_CLK>,
<&clock_gcc GCC_QUPV3_WRAP_2_S_AHB_CLK>;
pinctrl-names = "default", "sleep";
pinctrl-0 = <&qupv3_se17_ctsrx>, <&qupv3_se17_rts>,
<&qupv3_se17_tx> ;
pinctrl-1 = <&qupv3_se17_ctsrx>, <&qupv3_se17_rts>,
<&qupv3_se17_tx> ;
interrupts-extended = <&pdc GIC_SPI 585 0>,
<&tlmm 55 0>;
status = "disabled";
qcom,wakeup-byte = <0xFD>;
qcom,wrapper-core = <&qupv3_2>;
};
/*
* HS UART : 2-wire Modem
*/
qupv3_se18_2uart: qcom,qup_uart@890000 {
compatible = "qcom,msm-geni-serial-hs";
reg = <0x890000 0x4000>;
reg-names = "se_phys";
clock-names = "se-clk", "m-ahb", "s-ahb";
clocks = <&clock_gcc GCC_QUPV3_WRAP2_S4_CLK>,
<&clock_gcc GCC_QUPV3_WRAP_2_M_AHB_CLK>,
<&clock_gcc GCC_QUPV3_WRAP_2_S_AHB_CLK>;
pinctrl-names = "default", "sleep";
pinctrl-0 = <&qupv3_se18_rx>, <&qupv3_se18_tx>;
pinctrl-1 = <&qupv3_se18_rx>, <&qupv3_se18_tx>;
interrupts-extended = <&pdc GIC_SPI 586 0>,
<&tlmm 59 0>;
status = "disabled";
qcom,wakeup-byte = <0xFD>;
qcom,wrapper-core = <&qupv3_2>;
};
};