[PATCH 4/5] arm64: dts: imx8qm: add node for VPU dsp

Laurentiu Mihalcea posted 5 patches 2 months, 1 week ago
There is a newer version of this series
[PATCH 4/5] arm64: dts: imx8qm: add node for VPU dsp
Posted by Laurentiu Mihalcea 2 months, 1 week ago
From: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>

Add DT node for i.MX8QM's DSP, which is found in
the VPU subsystem.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
---
 arch/arm64/boot/dts/freescale/imx8qm.dtsi | 27 +++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/arch/arm64/boot/dts/freescale/imx8qm.dtsi b/arch/arm64/boot/dts/freescale/imx8qm.dtsi
index f8b577ebdbef..ae0165a44dcd 100644
--- a/arch/arm64/boot/dts/freescale/imx8qm.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8qm.dtsi
@@ -581,6 +581,33 @@ mipi_pll_div2_clk: clock-controller-mipi-div2-pll {
 		clock-output-names = "mipi_pll_div2_clk";
 	};
 
+	vpu_subsys_dsp: bus@55000000 {
+		compatible = "simple-bus";
+		#address-cells = <1>;
+		#size-cells = <1>;
+		ranges = <0x55000000 0x0 0x55000000 0x1000000>;
+
+		vpu_dsp: dsp@556e8000 {
+			compatible = "fsl,imx8qm-hifi4";
+			reg = <0x556e8000 0x88000>;
+			clocks = <&clk_dummy>,
+				 <&clk_dummy>,
+				 <&clk_dummy>;
+			clock-names = "ipg", "ocram", "core";
+			power-domains = <&pd IMX_SC_R_MU_13B>,
+					<&pd IMX_SC_R_DSP>,
+					<&pd IMX_SC_R_DSP_RAM>,
+					<&pd IMX_SC_R_IRQSTR_DSP>,
+					<&pd IMX_SC_R_MU_2A>;
+			mbox-names = "tx", "rx", "rxdb";
+			mboxes = <&lsio_mu13 0 0>,
+				 <&lsio_mu13 1 0>,
+				 <&lsio_mu13 3 0>;
+			firmware-name = "imx/dsp/hifi4.bin";
+			status = "disabled";
+		};
+	};
+
 	/* sorted in register address */
 	#include "imx8-ss-cm41.dtsi"
 	#include "imx8-ss-audio.dtsi"
-- 
2.34.1
Re: [PATCH 4/5] arm64: dts: imx8qm: add node for VPU dsp
Posted by Frank Li 2 months, 1 week ago
On Wed, Sep 18, 2024 at 02:21:16PM -0400, Laurentiu Mihalcea wrote:
> From: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
>
> Add DT node for i.MX8QM's DSP, which is found in
> the VPU subsystem.
>
> Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
> ---
>  arch/arm64/boot/dts/freescale/imx8qm.dtsi | 27 +++++++++++++++++++++++

why not add a file imx8qm-ss-vpu.dtsi to keep consistent with others.

Frank

>  1 file changed, 27 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/freescale/imx8qm.dtsi b/arch/arm64/boot/dts/freescale/imx8qm.dtsi
> index f8b577ebdbef..ae0165a44dcd 100644
> --- a/arch/arm64/boot/dts/freescale/imx8qm.dtsi
> +++ b/arch/arm64/boot/dts/freescale/imx8qm.dtsi
> @@ -581,6 +581,33 @@ mipi_pll_div2_clk: clock-controller-mipi-div2-pll {
>  		clock-output-names = "mipi_pll_div2_clk";
>  	};
>
> +	vpu_subsys_dsp: bus@55000000 {
> +		compatible = "simple-bus";
> +		#address-cells = <1>;
> +		#size-cells = <1>;
> +		ranges = <0x55000000 0x0 0x55000000 0x1000000>;
> +
> +		vpu_dsp: dsp@556e8000 {
> +			compatible = "fsl,imx8qm-hifi4";
> +			reg = <0x556e8000 0x88000>;
> +			clocks = <&clk_dummy>,
> +				 <&clk_dummy>,
> +				 <&clk_dummy>;
> +			clock-names = "ipg", "ocram", "core";
> +			power-domains = <&pd IMX_SC_R_MU_13B>,
> +					<&pd IMX_SC_R_DSP>,
> +					<&pd IMX_SC_R_DSP_RAM>,
> +					<&pd IMX_SC_R_IRQSTR_DSP>,
> +					<&pd IMX_SC_R_MU_2A>;
> +			mbox-names = "tx", "rx", "rxdb";
> +			mboxes = <&lsio_mu13 0 0>,
> +				 <&lsio_mu13 1 0>,
> +				 <&lsio_mu13 3 0>;
> +			firmware-name = "imx/dsp/hifi4.bin";
> +			status = "disabled";
> +		};
> +	};
> +
>  	/* sorted in register address */
>  	#include "imx8-ss-cm41.dtsi"
>  	#include "imx8-ss-audio.dtsi"
> --
> 2.34.1
>
Re: [PATCH 4/5] arm64: dts: imx8qm: add node for VPU dsp
Posted by Laurentiu Mihalcea 2 months, 1 week ago

On 9/18/2024 9:57 PM, Frank Li wrote:
> On Wed, Sep 18, 2024 at 02:21:16PM -0400, Laurentiu Mihalcea wrote:
>> From: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
>>
>> Add DT node for i.MX8QM's DSP, which is found in
>> the VPU subsystem.
>>
>> Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
>> ---
>>  arch/arm64/boot/dts/freescale/imx8qm.dtsi | 27 +++++++++++++++++++++++
> why not add a file imx8qm-ss-vpu.dtsi to keep consistent with others.

Don't see much value in doing so right now. It's just two extra nodes (should stay that way AFAICT).

>
> Frank
>
>>  1 file changed, 27 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/freescale/imx8qm.dtsi b/arch/arm64/boot/dts/freescale/imx8qm.dtsi
>> index f8b577ebdbef..ae0165a44dcd 100644
>> --- a/arch/arm64/boot/dts/freescale/imx8qm.dtsi
>> +++ b/arch/arm64/boot/dts/freescale/imx8qm.dtsi
>> @@ -581,6 +581,33 @@ mipi_pll_div2_clk: clock-controller-mipi-div2-pll {
>>  		clock-output-names = "mipi_pll_div2_clk";
>>  	};
>>
>> +	vpu_subsys_dsp: bus@55000000 {
>> +		compatible = "simple-bus";
>> +		#address-cells = <1>;
>> +		#size-cells = <1>;
>> +		ranges = <0x55000000 0x0 0x55000000 0x1000000>;
>> +
>> +		vpu_dsp: dsp@556e8000 {
>> +			compatible = "fsl,imx8qm-hifi4";
>> +			reg = <0x556e8000 0x88000>;
>> +			clocks = <&clk_dummy>,
>> +				 <&clk_dummy>,
>> +				 <&clk_dummy>;
>> +			clock-names = "ipg", "ocram", "core";
>> +			power-domains = <&pd IMX_SC_R_MU_13B>,
>> +					<&pd IMX_SC_R_DSP>,
>> +					<&pd IMX_SC_R_DSP_RAM>,
>> +					<&pd IMX_SC_R_IRQSTR_DSP>,
>> +					<&pd IMX_SC_R_MU_2A>;
>> +			mbox-names = "tx", "rx", "rxdb";
>> +			mboxes = <&lsio_mu13 0 0>,
>> +				 <&lsio_mu13 1 0>,
>> +				 <&lsio_mu13 3 0>;
>> +			firmware-name = "imx/dsp/hifi4.bin";
>> +			status = "disabled";
>> +		};
>> +	};
>> +
>>  	/* sorted in register address */
>>  	#include "imx8-ss-cm41.dtsi"
>>  	#include "imx8-ss-audio.dtsi"
>> --
>> 2.34.1
>>