On Mon, Jan 27, 2025 at 11:45:41PM +0100, Luca Weiss wrote:
> Add a node for the modem remoteproc found on MSM8226.
> 
> Co-developed-by: Matti Lehtimäki <matti.lehtim...@gmail.com>
> Signed-off-by: Matti Lehtimäki <matti.lehtim...@gmail.com>
> Signed-off-by: Luca Weiss <l...@lucaweiss.eu>

Reviewed-by: Stephan Gerhold <stephan.gerh...@linaro.org>

> ---
>  .../dts/qcom/qcom-apq8026-samsung-milletwifi.dts   |  2 +
>  .../qcom/qcom-msm8226-samsung-matisse-common.dtsi  |  6 +-
>  arch/arm/boot/dts/qcom/qcom-msm8226.dtsi           | 82 
> ++++++++++++++++++++++
>  arch/arm/boot/dts/qcom/qcom-msm8926-htc-memul.dts  |  2 +
>  4 files changed, 90 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/qcom/qcom-apq8026-samsung-milletwifi.dts 
> b/arch/arm/boot/dts/qcom/qcom-apq8026-samsung-milletwifi.dts
> index 
> 7d519156d91d156d801c477711751aba66cc3224..a8543ca7b5569549418683b6be320784eba1768c
>  100644
> --- a/arch/arm/boot/dts/qcom/qcom-apq8026-samsung-milletwifi.dts
> +++ b/arch/arm/boot/dts/qcom/qcom-apq8026-samsung-milletwifi.dts
> @@ -12,6 +12,8 @@
>  #include "pm8226.dtsi"
>  
>  /delete-node/ &adsp_region;
> +/delete-node/ &mba_region;
> +/delete-node/ &mpss_region;
>  /delete-node/ &smem_region;
>  
>  / {
> diff --git a/arch/arm/boot/dts/qcom/qcom-msm8226-samsung-matisse-common.dtsi 
> b/arch/arm/boot/dts/qcom/qcom-msm8226-samsung-matisse-common.dtsi
> index 
> a15a44fc0181bf23e7531ecdc8978505ca48189d..fbd568c7d6b7415d240aa1a2329d07cf9135274c
>  100644
> --- a/arch/arm/boot/dts/qcom/qcom-msm8226-samsung-matisse-common.dtsi
> +++ b/arch/arm/boot/dts/qcom/qcom-msm8226-samsung-matisse-common.dtsi
> @@ -8,6 +8,8 @@
>  #include "pm8226.dtsi"
>  
>  /delete-node/ &adsp_region;
> +/delete-node/ &mba_region;
> +/delete-node/ &mpss_region;
>  /delete-node/ &smem_region;
>  
>  / {
> @@ -145,12 +147,12 @@ framebuffer@3200000 {
>                       no-map;
>               };
>  
> -             mpss@8400000 {
> +             mpss_region: mpss@8400000 {
>                       reg = <0x08400000 0x1f00000>;
>                       no-map;
>               };
>  
> -             mba@a300000 {
> +             mba_region: mba@a300000 {
>                       reg = <0x0a300000 0x100000>;
>                       no-map;
>               };
> diff --git a/arch/arm/boot/dts/qcom/qcom-msm8226.dtsi 
> b/arch/arm/boot/dts/qcom/qcom-msm8226.dtsi
> index 
> 7e0838af6c2d0dc26e0082471b70578bc627491d..55bb070dcf489064f5b14902da1acd2762232ef9
>  100644
> --- a/arch/arm/boot/dts/qcom/qcom-msm8226.dtsi
> +++ b/arch/arm/boot/dts/qcom/qcom-msm8226.dtsi
> @@ -213,6 +213,18 @@ smem_region: smem@3000000 {
>                       no-map;
>               };
>  
> +             mpss_region: mpss@8000000 {
> +                     reg = <0x08000000 0x5100000>;
> +                     no-map;
> +                     status = "disabled";
> +             };
> +
> +             mba_region: mba@d100000 {
> +                     reg = <0x0d100000 0x100000>;
> +                     no-map;
> +                     status = "disabled";
> +             };
> +
>               adsp_region: adsp@dc00000 {
>                       reg = <0x0dc00000 0x1900000>;
>                       no-map;
> @@ -253,6 +265,31 @@ adsp_smp2p_in: slave-kernel {
>               };
>       };
>  
> +     smp2p-modem {
> +             compatible = "qcom,smp2p";
> +             qcom,smem = <435>, <428>;
> +
> +             interrupt-parent = <&intc>;
> +             interrupts = <GIC_SPI 27 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>;
> +             };
> +     };
> +
>       smsm {
>               compatible = "qcom,smsm";
>               #address-cells = <1>;
> @@ -879,6 +916,51 @@ spmi_bus: spmi@fc4cf000 {
>                       #interrupt-cells = <4>;
>               };
>  
> +             modem: remoteproc@fc880000 {
> +                     compatible = "qcom,msm8226-mss-pil";
> +                     reg = <0xfc880000 0x100>,
> +                           <0xfc820000 0x020>;
> +                     reg-names = "qdsp6", "rmb";
> +
> +                     interrupts-extended = <&intc GIC_SPI 24 
> 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>;
> +                     interrupt-names = "wdog", "fatal", "ready", "handover", 
> "stop-ack";
> +
> +                     clocks = <&gcc GCC_MSS_Q6_BIMC_AXI_CLK>,
> +                              <&gcc GCC_MSS_CFG_AHB_CLK>,
> +                              <&gcc GCC_BOOT_ROM_AHB_CLK>,
> +                              <&xo_board>;
> +                     clock-names = "iface", "bus", "mem", "xo";
> +
> +                     resets = <&gcc GCC_MSS_RESTART>;
> +                     reset-names = "mss_restart";
> +
> +                     power-domains = <&rpmpd MSM8226_VDDCX>;
> +                     power-domain-names = "cx";
> +
> +                     qcom,ext-bhs-reg = <&tcsr_regs_1 0x194>;
> +                     qcom,halt-regs = <&tcsr_regs_1 0x180 0x200 0x280>;
> +
> +                     qcom,smem-states = <&modem_smp2p_out 0>;
> +                     qcom,smem-state-names = "stop";
> +
> +                     memory-region = <&mba_region>, <&mpss_region>;
> +
> +                     status = "disabled";
> +
> +                     smd-edge {
> +                             interrupts = <GIC_SPI 25 IRQ_TYPE_EDGE_RISING>;
> +
> +                             mboxes = <&apcs 12>;
> +                             qcom,smd-edge = <0>;
> +
> +                             label = "modem";
> +                     };
> +             };
> +
>               tcsr_mutex: hwlock@fd484000 {
>                       compatible = "qcom,msm8226-tcsr-mutex", 
> "qcom,tcsr-mutex";
>                       reg = <0xfd484000 0x1000>;
> diff --git a/arch/arm/boot/dts/qcom/qcom-msm8926-htc-memul.dts 
> b/arch/arm/boot/dts/qcom/qcom-msm8926-htc-memul.dts
> index 
> 3037344eb24055071cc77c9cfce0f1d0f95de921..18396623a91dd4bf4b66f01c1d983c391722f3b5
>  100644
> --- a/arch/arm/boot/dts/qcom/qcom-msm8926-htc-memul.dts
> +++ b/arch/arm/boot/dts/qcom/qcom-msm8926-htc-memul.dts
> @@ -9,6 +9,8 @@
>  #include "pm8226.dtsi"
>  
>  /delete-node/ &adsp_region;
> +/delete-node/ &mba_region;
> +/delete-node/ &mpss_region;
>  /delete-node/ &smem_region;
>  
>  / {
> 
> -- 
> 2.48.1
> 

Reply via email to