Linux kernel and device drivers for NXP i.MX platforms
 help / color / mirror / Atom feed
* [PATCH 0/5] Configure imx8mp dsp node for rproc usage
@ 2024-11-20 13:58 Daniel Baluta
  2024-11-20 13:58 ` [PATCH 1/5] arm64: dts: imx8mp: Add mu2 root clock Daniel Baluta
                   ` (5 more replies)
  0 siblings, 6 replies; 11+ messages in thread
From: Daniel Baluta @ 2024-11-20 13:58 UTC (permalink / raw)
  To: shawnguo, s.hauer, kernel
  Cc: robh, krzk+dt, conor+dt, festevam, devicetree, imx,
	linux-arm-kernel, linux-kernel, frank.li, aisheng.dong,
	daniel.baluta, laurentiu.mihalcea, shengjiu.wang, iuliana.prodan,
	Daniel Baluta

DSP found in i.MX8MP SOC can be used by multiple frameworks in order to
enable various applications:
	- rproc/rpmsg framework, used to load for example Zephyr samples
	- Sound Open Firmware, used to enable various audio processing
	  pipelines.

Current dsp node was configured with SOF in mind but it doesn't work
well with imx8mp-evk dts. SOF controls audio IPs from firmware side
while imx8mp-evk preffers to control audio IPs from Linux side.

So, configure 'dsp' node to be used with rproc scenario and later will
add a separate dts or an overlay to configure the node for SOF.

This patch series configures and enables dsp node to be used with rproc.

Daniel Baluta (5):
  arm64: dts: imx8mp: Add mu2 root clock
  arm64: dts: imx8mp: Configure dsp node for rproc usage
  arm64: dts: imx8mp: Add DSP clocks
  arm64: dts: imx8mp: Add fsl,dsp-ctrl property for dsp
  arm64: dts: Add dsp rproc related mem regions

 arch/arm64/boot/dts/freescale/imx8mp-evk.dts |  6 +++++
 arch/arm64/boot/dts/freescale/imx8mp.dtsi    | 23 ++++++++++++--------
 2 files changed, 20 insertions(+), 9 deletions(-)

-- 
2.43.0


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH 1/5] arm64: dts: imx8mp: Add mu2 root clock
  2024-11-20 13:58 [PATCH 0/5] Configure imx8mp dsp node for rproc usage Daniel Baluta
@ 2024-11-20 13:58 ` Daniel Baluta
  2024-11-20 13:58 ` [PATCH 2/5] arm64: dts: imx8mp: Configure dsp node for rproc usage Daniel Baluta
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 11+ messages in thread
From: Daniel Baluta @ 2024-11-20 13:58 UTC (permalink / raw)
  To: shawnguo, s.hauer, kernel
  Cc: robh, krzk+dt, conor+dt, festevam, devicetree, imx,
	linux-arm-kernel, linux-kernel, frank.li, aisheng.dong,
	daniel.baluta, laurentiu.mihalcea, shengjiu.wang, iuliana.prodan,
	Daniel Baluta

Enable MU2 node and add mu2 root clock.
MU2 is used to communicate with DSP core.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
---
 arch/arm64/boot/dts/freescale/imx8mp.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/freescale/imx8mp.dtsi b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
index 7775f5f58036..9173deafdd74 100644
--- a/arch/arm64/boot/dts/freescale/imx8mp.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
@@ -1252,7 +1252,7 @@ mu2: mailbox@30e60000 {
 				reg = <0x30e60000 0x10000>;
 				interrupts = <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>;
 				#mbox-cells = <2>;
-				status = "disabled";
+				clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_MU2_ROOT>;
 			};
 
 			i2c5: i2c@30ad0000 {
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 2/5] arm64: dts: imx8mp: Configure dsp node for rproc usage
  2024-11-20 13:58 [PATCH 0/5] Configure imx8mp dsp node for rproc usage Daniel Baluta
  2024-11-20 13:58 ` [PATCH 1/5] arm64: dts: imx8mp: Add mu2 root clock Daniel Baluta
@ 2024-11-20 13:58 ` Daniel Baluta
  2024-11-20 13:58 ` [PATCH 3/5] arm64: dts: imx8mp: Add DSP clocks Daniel Baluta
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 11+ messages in thread
From: Daniel Baluta @ 2024-11-20 13:58 UTC (permalink / raw)
  To: shawnguo, s.hauer, kernel
  Cc: robh, krzk+dt, conor+dt, festevam, devicetree, imx,
	linux-arm-kernel, linux-kernel, frank.li, aisheng.dong,
	daniel.baluta, laurentiu.mihalcea, shengjiu.wang, iuliana.prodan,
	Daniel Baluta

DSP can be used with various frameworks (e.g audio firmware, rproc).
Currently 'dsp' configuration is intended for audio firmware but it
doesn't work well with board level DTs (e.g imx8mp-evk) because
board level DT enables audio related IPs (e.g SAI) while audio firmware
needs this IPs disabled (because firmware will configure them).

So, configure 'dsp' node to be used with rproc. This way users will be
able to use board DT to use the DSP as long as they don't clash with
Audio IP configurations.

More comples usage of 'dsp' node (e.g by audio firmware) will need to
create a separate dts file (or an overlay).

This change follows the approach taken for other i.MX8 boards
in commit 391a319c81f6d7 ("arm64: dts: imx8-ss-audio: configure dsp node
for rproc usage")

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
---
 arch/arm64/boot/dts/freescale/imx8mp.dtsi | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/arch/arm64/boot/dts/freescale/imx8mp.dtsi b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
index 9173deafdd74..abc8f0d4eea0 100644
--- a/arch/arm64/boot/dts/freescale/imx8mp.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
@@ -280,7 +280,7 @@ reserved-memory {
 		ranges;
 
 		dsp_reserved: dsp@92400000 {
-			reg = <0 0x92400000 0 0x2000000>;
+			reg = <0 0x92400000 0 0x1000000>;
 			no-map;
 			status = "disabled";
 		};
@@ -2421,12 +2421,12 @@ usb_dwc3_1: usb@38200000 {
 		};
 
 		dsp: dsp@3b6e8000 {
-			compatible = "fsl,imx8mp-dsp";
+			compatible = "fsl,imx8mp-hifi4";
 			reg = <0x3b6e8000 0x88000>;
-			mbox-names = "txdb0", "txdb1",
-				"rxdb0", "rxdb1";
-			mboxes = <&mu2 2 0>, <&mu2 2 1>,
-				<&mu2 3 0>, <&mu2 3 1>;
+			power-domains = <&pgc_audio>;
+			mbox-names = "tx", "rx", "rxdb";
+			mboxes = <&mu2 0 0>, <&mu2 1 0>, <&mu2 3 0>;
+			firmware-name = "imx/dsp/hifi4.bin";
 			memory-region = <&dsp_reserved>;
 			status = "disabled";
 		};
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 3/5] arm64: dts: imx8mp: Add DSP clocks
  2024-11-20 13:58 [PATCH 0/5] Configure imx8mp dsp node for rproc usage Daniel Baluta
  2024-11-20 13:58 ` [PATCH 1/5] arm64: dts: imx8mp: Add mu2 root clock Daniel Baluta
  2024-11-20 13:58 ` [PATCH 2/5] arm64: dts: imx8mp: Configure dsp node for rproc usage Daniel Baluta
@ 2024-11-20 13:58 ` Daniel Baluta
  2024-11-20 13:58 ` [PATCH 4/5] arm64: dts: imx8mp: Add fsl,dsp-ctrl property for dsp Daniel Baluta
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 11+ messages in thread
From: Daniel Baluta @ 2024-11-20 13:58 UTC (permalink / raw)
  To: shawnguo, s.hauer, kernel
  Cc: robh, krzk+dt, conor+dt, festevam, devicetree, imx,
	linux-arm-kernel, linux-kernel, frank.li, aisheng.dong,
	daniel.baluta, laurentiu.mihalcea, shengjiu.wang, iuliana.prodan,
	Daniel Baluta

DSP core needs ocram, core and debug clocks.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
---
 arch/arm64/boot/dts/freescale/imx8mp.dtsi | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/arch/arm64/boot/dts/freescale/imx8mp.dtsi b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
index abc8f0d4eea0..41ff40ab5da2 100644
--- a/arch/arm64/boot/dts/freescale/imx8mp.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
@@ -2423,6 +2423,11 @@ usb_dwc3_1: usb@38200000 {
 		dsp: dsp@3b6e8000 {
 			compatible = "fsl,imx8mp-hifi4";
 			reg = <0x3b6e8000 0x88000>;
+			clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_OCRAMA_IPG>,
+				<&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_OCRAMA_IPG>,
+				<&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_DSP_ROOT>,
+				<&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_DSPDBG_ROOT>;
+			clock-names = "ipg", "ocram", "core", "debug";
 			power-domains = <&pgc_audio>;
 			mbox-names = "tx", "rx", "rxdb";
 			mboxes = <&mu2 0 0>, <&mu2 1 0>, <&mu2 3 0>;
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 4/5] arm64: dts: imx8mp: Add fsl,dsp-ctrl property for dsp
  2024-11-20 13:58 [PATCH 0/5] Configure imx8mp dsp node for rproc usage Daniel Baluta
                   ` (2 preceding siblings ...)
  2024-11-20 13:58 ` [PATCH 3/5] arm64: dts: imx8mp: Add DSP clocks Daniel Baluta
@ 2024-11-20 13:58 ` Daniel Baluta
  2024-11-21 11:33   ` Peng Fan
  2024-11-20 13:58 ` [PATCH 5/5] arm64: dts: Add dsp rproc related mem regions Daniel Baluta
  2024-11-20 16:02 ` [PATCH 0/5] Configure imx8mp dsp node for rproc usage Rob Herring (Arm)
  5 siblings, 1 reply; 11+ messages in thread
From: Daniel Baluta @ 2024-11-20 13:58 UTC (permalink / raw)
  To: shawnguo, s.hauer, kernel
  Cc: robh, krzk+dt, conor+dt, festevam, devicetree, imx,
	linux-arm-kernel, linux-kernel, frank.li, aisheng.dong,
	daniel.baluta, laurentiu.mihalcea, shengjiu.wang, iuliana.prodan,
	Daniel Baluta

Audio block control contains a set of registers some of them used for
DSP configuration.

Drivers (rproc, SOF) are using fsl,dsp-ctrl property to access those registers
in order to control the operations of the DSP (e.g for start, reset,
etc).

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
---
 arch/arm64/boot/dts/freescale/imx8mp.dtsi | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/freescale/imx8mp.dtsi b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
index 41ff40ab5da2..fa4ff75af12d 100644
--- a/arch/arm64/boot/dts/freescale/imx8mp.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
@@ -1616,7 +1616,7 @@ sdma2: dma-controller@30e10000 {
 			};
 
 			audio_blk_ctrl: clock-controller@30e20000 {
-				compatible = "fsl,imx8mp-audio-blk-ctrl";
+				compatible = "fsl,imx8mp-audio-blk-ctrl", "syscon";
 				reg = <0x30e20000 0x10000>;
 				#clock-cells = <1>;
 				#reset-cells = <1>;
@@ -2433,6 +2433,7 @@ dsp: dsp@3b6e8000 {
 			mboxes = <&mu2 0 0>, <&mu2 1 0>, <&mu2 3 0>;
 			firmware-name = "imx/dsp/hifi4.bin";
 			memory-region = <&dsp_reserved>;
+			fsl,dsp-ctrl = <&audio_blk_ctrl>;
 			status = "disabled";
 		};
 	};
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 5/5] arm64: dts: Add dsp rproc related mem regions
  2024-11-20 13:58 [PATCH 0/5] Configure imx8mp dsp node for rproc usage Daniel Baluta
                   ` (3 preceding siblings ...)
  2024-11-20 13:58 ` [PATCH 4/5] arm64: dts: imx8mp: Add fsl,dsp-ctrl property for dsp Daniel Baluta
@ 2024-11-20 13:58 ` Daniel Baluta
  2024-11-20 15:36   ` Ahmad Fatoum
  2024-11-20 16:02 ` [PATCH 0/5] Configure imx8mp dsp node for rproc usage Rob Herring (Arm)
  5 siblings, 1 reply; 11+ messages in thread
From: Daniel Baluta @ 2024-11-20 13:58 UTC (permalink / raw)
  To: shawnguo, s.hauer, kernel
  Cc: robh, krzk+dt, conor+dt, festevam, devicetree, imx,
	linux-arm-kernel, linux-kernel, frank.li, aisheng.dong,
	daniel.baluta, laurentiu.mihalcea, shengjiu.wang, iuliana.prodan,
	Daniel Baluta

With imx8mp-evk board we are now configuring 'dsp' node for rproc usage,
so add rproc specific memory regions.

Also, enable dsp node because it is ready to be used.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
---
 arch/arm64/boot/dts/freescale/imx8mp-evk.dts | 6 ++++++
 arch/arm64/boot/dts/freescale/imx8mp.dtsi    | 1 -
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/freescale/imx8mp-evk.dts b/arch/arm64/boot/dts/freescale/imx8mp-evk.dts
index d26930f1a9e9..adb01a484d78 100644
--- a/arch/arm64/boot/dts/freescale/imx8mp-evk.dts
+++ b/arch/arm64/boot/dts/freescale/imx8mp-evk.dts
@@ -291,6 +291,12 @@ &aud2htx {
 	status = "okay";
 };
 
+&dsp {
+	memory-region = <&dsp_vdev0buffer>, <&dsp_vdev0vring0>,
+			<&dsp_vdev0vring1>, <&dsp_reserved>;
+	status = "okay";
+};
+
 &eqos {
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_eqos>;
diff --git a/arch/arm64/boot/dts/freescale/imx8mp.dtsi b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
index fa4ff75af12d..e6f3ac02689c 100644
--- a/arch/arm64/boot/dts/freescale/imx8mp.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
@@ -282,7 +282,6 @@ reserved-memory {
 		dsp_reserved: dsp@92400000 {
 			reg = <0 0x92400000 0 0x1000000>;
 			no-map;
-			status = "disabled";
 		};
 	};
 
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* Re: [PATCH 5/5] arm64: dts: Add dsp rproc related mem regions
  2024-11-20 13:58 ` [PATCH 5/5] arm64: dts: Add dsp rproc related mem regions Daniel Baluta
@ 2024-11-20 15:36   ` Ahmad Fatoum
  2024-11-20 15:40     ` Daniel Baluta
  0 siblings, 1 reply; 11+ messages in thread
From: Ahmad Fatoum @ 2024-11-20 15:36 UTC (permalink / raw)
  To: Daniel Baluta, shawnguo, s.hauer, kernel
  Cc: aisheng.dong, imx, conor+dt, robh, iuliana.prodan, shengjiu.wang,
	frank.li, linux-kernel, laurentiu.mihalcea, devicetree,
	daniel.baluta, krzk+dt, festevam, linux-arm-kernel

Hello Daniel,

On 20.11.24 14:58, Daniel Baluta wrote:
> With imx8mp-evk board we are now configuring 'dsp' node for rproc usage,
> so add rproc specific memory regions.
> 
> Also, enable dsp node because it is ready to be used.
> 
> Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>

>  &eqos {
>  	pinctrl-names = "default";
>  	pinctrl-0 = <&pinctrl_eqos>;
> diff --git a/arch/arm64/boot/dts/freescale/imx8mp.dtsi b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
> index fa4ff75af12d..e6f3ac02689c 100644
> --- a/arch/arm64/boot/dts/freescale/imx8mp.dtsi
> +++ b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
> @@ -282,7 +282,6 @@ reserved-memory {
>  		dsp_reserved: dsp@92400000 {
>  			reg = <0 0x92400000 0 0x1000000>;
>  			no-map;
> -			status = "disabled";

This reverts commit 010dc015b811 ("arm64: dts: imx8mp: Disable dsp
reserved memory by default").

Please enable the reserved memory node in your board DTS instead.

Thanks,
Ahmad

>  		};
>  	};
>  


-- 
Pengutronix e.K.                           |                             |
Steuerwalder Str. 21                       | http://www.pengutronix.de/  |
31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 5/5] arm64: dts: Add dsp rproc related mem regions
  2024-11-20 15:36   ` Ahmad Fatoum
@ 2024-11-20 15:40     ` Daniel Baluta
  0 siblings, 0 replies; 11+ messages in thread
From: Daniel Baluta @ 2024-11-20 15:40 UTC (permalink / raw)
  To: Ahmad Fatoum
  Cc: Daniel Baluta, shawnguo, s.hauer, kernel, aisheng.dong, imx,
	conor+dt, robh, iuliana.prodan, shengjiu.wang, frank.li,
	linux-kernel, laurentiu.mihalcea, devicetree, krzk+dt, festevam,
	linux-arm-kernel

On Wed, Nov 20, 2024 at 5:36 PM Ahmad Fatoum <a.fatoum@pengutronix.de> wrote:
>
> Hello Daniel,
>
> On 20.11.24 14:58, Daniel Baluta wrote:
> > With imx8mp-evk board we are now configuring 'dsp' node for rproc usage,
> > so add rproc specific memory regions.
> >
> > Also, enable dsp node because it is ready to be used.
> >
> > Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
>
> >  &eqos {
> >       pinctrl-names = "default";
> >       pinctrl-0 = <&pinctrl_eqos>;
> > diff --git a/arch/arm64/boot/dts/freescale/imx8mp.dtsi b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
> > index fa4ff75af12d..e6f3ac02689c 100644
> > --- a/arch/arm64/boot/dts/freescale/imx8mp.dtsi
> > +++ b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
> > @@ -282,7 +282,6 @@ reserved-memory {
> >               dsp_reserved: dsp@92400000 {
> >                       reg = <0 0x92400000 0 0x1000000>;
> >                       no-map;
> > -                     status = "disabled";
>
> This reverts commit 010dc015b811 ("arm64: dts: imx8mp: Disable dsp
> reserved memory by default").
>
> Please enable the reserved memory node in your board DTS instead.

Thanks Ahmad that's a good catch. Will fix this in v2.

Will wait for few days to get more comments on this patchseries and
then send v2.

Thanks,
Daniel.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 0/5] Configure imx8mp dsp node for rproc usage
  2024-11-20 13:58 [PATCH 0/5] Configure imx8mp dsp node for rproc usage Daniel Baluta
                   ` (4 preceding siblings ...)
  2024-11-20 13:58 ` [PATCH 5/5] arm64: dts: Add dsp rproc related mem regions Daniel Baluta
@ 2024-11-20 16:02 ` Rob Herring (Arm)
  5 siblings, 0 replies; 11+ messages in thread
From: Rob Herring (Arm) @ 2024-11-20 16:02 UTC (permalink / raw)
  To: Daniel Baluta
  Cc: iuliana.prodan, kernel, daniel.baluta, conor+dt, devicetree,
	frank.li, laurentiu.mihalcea, imx, linux-arm-kernel, linux-kernel,
	shawnguo, shengjiu.wang, s.hauer, aisheng.dong, krzk+dt, festevam


On Wed, 20 Nov 2024 15:58:53 +0200, Daniel Baluta wrote:
> DSP found in i.MX8MP SOC can be used by multiple frameworks in order to
> enable various applications:
> 	- rproc/rpmsg framework, used to load for example Zephyr samples
> 	- Sound Open Firmware, used to enable various audio processing
> 	  pipelines.
> 
> Current dsp node was configured with SOF in mind but it doesn't work
> well with imx8mp-evk dts. SOF controls audio IPs from firmware side
> while imx8mp-evk preffers to control audio IPs from Linux side.
> 
> So, configure 'dsp' node to be used with rproc scenario and later will
> add a separate dts or an overlay to configure the node for SOF.
> 
> This patch series configures and enables dsp node to be used with rproc.
> 
> Daniel Baluta (5):
>   arm64: dts: imx8mp: Add mu2 root clock
>   arm64: dts: imx8mp: Configure dsp node for rproc usage
>   arm64: dts: imx8mp: Add DSP clocks
>   arm64: dts: imx8mp: Add fsl,dsp-ctrl property for dsp
>   arm64: dts: Add dsp rproc related mem regions
> 
>  arch/arm64/boot/dts/freescale/imx8mp-evk.dts |  6 +++++
>  arch/arm64/boot/dts/freescale/imx8mp.dtsi    | 23 ++++++++++++--------
>  2 files changed, 20 insertions(+), 9 deletions(-)
> 
> --
> 2.43.0
> 
> 
> 


My bot found new DTB warnings on the .dts files added or changed in this
series.

Some warnings may be from an existing SoC .dtsi. Or perhaps the warnings
are fixed by another series. Ultimately, it is up to the platform
maintainer whether these warnings are acceptable or not. No need to reply
unless the platform maintainer has comments.

If you already ran DT checks and didn't see these error(s), then
make sure dt-schema is up to date:

  pip3 install dtschema --upgrade


New warnings running 'make CHECK_DTBS=y freescale/imx8mp-evk.dtb' for 20241120135859.3133984-1-daniel.baluta@nxp.com:

arch/arm64/boot/dts/freescale/imx8mp-evk.dtb: clock-controller@30e20000: compatible: ['fsl,imx8mp-audio-blk-ctrl', 'syscon'] is too long
	from schema $id: http://devicetree.org/schemas/clock/imx8mp-audiomix.yaml#






^ permalink raw reply	[flat|nested] 11+ messages in thread

* RE: [PATCH 4/5] arm64: dts: imx8mp: Add fsl,dsp-ctrl property for dsp
  2024-11-20 13:58 ` [PATCH 4/5] arm64: dts: imx8mp: Add fsl,dsp-ctrl property for dsp Daniel Baluta
@ 2024-11-21 11:33   ` Peng Fan
  2024-11-21 11:48     ` Daniel Baluta
  0 siblings, 1 reply; 11+ messages in thread
From: Peng Fan @ 2024-11-21 11:33 UTC (permalink / raw)
  To: Daniel Baluta, shawnguo@kernel.org, s.hauer@pengutronix.de,
	kernel@pengutronix.de
  Cc: robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org,
	festevam@gmail.com, devicetree@vger.kernel.org,
	imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, Frank Li, Aisheng Dong,
	daniel.baluta@gmail.com, Laurentiu Mihalcea, S.J. Wang,
	Iuliana Prodan, Daniel Baluta

> Subject: [PATCH 4/5] arm64: dts: imx8mp: Add fsl,dsp-ctrl property for
> dsp
> 
> Audio block control contains a set of registers some of them used for
> DSP configuration.
> 
> Drivers (rproc, SOF) are using fsl,dsp-ctrl property to access those
> registers in order to control the operations of the DSP (e.g for start,
> reset, etc).
> 
> Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
> ---
>  arch/arm64/boot/dts/freescale/imx8mp.dtsi | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm64/boot/dts/freescale/imx8mp.dtsi
> b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
> index 41ff40ab5da2..fa4ff75af12d 100644
> --- a/arch/arm64/boot/dts/freescale/imx8mp.dtsi
> +++ b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
> @@ -1616,7 +1616,7 @@ sdma2: dma-controller@30e10000 {
>  			};
> 
>  			audio_blk_ctrl: clock-controller@30e20000 {
> -				compatible = "fsl,imx8mp-audio-blk-
> ctrl";
> +				compatible = "fsl,imx8mp-audio-blk-
> ctrl", "syscon";

This requires binding update as I recall.

Regards,
Peng.

>  				reg = <0x30e20000 0x10000>;
>  				#clock-cells = <1>;
>  				#reset-cells = <1>;
> @@ -2433,6 +2433,7 @@ dsp: dsp@3b6e8000 {
>  			mboxes = <&mu2 0 0>, <&mu2 1 0>, <&mu2
> 3 0>;
>  			firmware-name = "imx/dsp/hifi4.bin";
>  			memory-region = <&dsp_reserved>;
> +			fsl,dsp-ctrl = <&audio_blk_ctrl>;
>  			status = "disabled";
>  		};
>  	};
> --
> 2.43.0
> 


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 4/5] arm64: dts: imx8mp: Add fsl,dsp-ctrl property for dsp
  2024-11-21 11:33   ` Peng Fan
@ 2024-11-21 11:48     ` Daniel Baluta
  0 siblings, 0 replies; 11+ messages in thread
From: Daniel Baluta @ 2024-11-21 11:48 UTC (permalink / raw)
  To: Peng Fan
  Cc: Daniel Baluta, shawnguo@kernel.org, s.hauer@pengutronix.de,
	kernel@pengutronix.de, robh@kernel.org, krzk+dt@kernel.org,
	conor+dt@kernel.org, festevam@gmail.com,
	devicetree@vger.kernel.org, imx@lists.linux.dev,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, Frank Li, Aisheng Dong,
	Laurentiu Mihalcea, S.J. Wang, Iuliana Prodan

On Thu, Nov 21, 2024 at 1:33 PM Peng Fan <peng.fan@nxp.com> wrote:
>
> > Subject: [PATCH 4/5] arm64: dts: imx8mp: Add fsl,dsp-ctrl property for
> > dsp
> >
> > Audio block control contains a set of registers some of them used for
> > DSP configuration.
> >
> > Drivers (rproc, SOF) are using fsl,dsp-ctrl property to access those
> > registers in order to control the operations of the DSP (e.g for start,
> > reset, etc).
> >
> > Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
> > ---
> >  arch/arm64/boot/dts/freescale/imx8mp.dtsi | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/arch/arm64/boot/dts/freescale/imx8mp.dtsi
> > b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
> > index 41ff40ab5da2..fa4ff75af12d 100644
> > --- a/arch/arm64/boot/dts/freescale/imx8mp.dtsi
> > +++ b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
> > @@ -1616,7 +1616,7 @@ sdma2: dma-controller@30e10000 {
> >                       };
> >
> >                       audio_blk_ctrl: clock-controller@30e20000 {
> > -                             compatible = "fsl,imx8mp-audio-blk-
> > ctrl";
> > +                             compatible = "fsl,imx8mp-audio-blk-
> > ctrl", "syscon";
>
> This requires binding update as I recall.

Yes, indeed. Will update in v2.

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2024-11-21 11:47 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-11-20 13:58 [PATCH 0/5] Configure imx8mp dsp node for rproc usage Daniel Baluta
2024-11-20 13:58 ` [PATCH 1/5] arm64: dts: imx8mp: Add mu2 root clock Daniel Baluta
2024-11-20 13:58 ` [PATCH 2/5] arm64: dts: imx8mp: Configure dsp node for rproc usage Daniel Baluta
2024-11-20 13:58 ` [PATCH 3/5] arm64: dts: imx8mp: Add DSP clocks Daniel Baluta
2024-11-20 13:58 ` [PATCH 4/5] arm64: dts: imx8mp: Add fsl,dsp-ctrl property for dsp Daniel Baluta
2024-11-21 11:33   ` Peng Fan
2024-11-21 11:48     ` Daniel Baluta
2024-11-20 13:58 ` [PATCH 5/5] arm64: dts: Add dsp rproc related mem regions Daniel Baluta
2024-11-20 15:36   ` Ahmad Fatoum
2024-11-20 15:40     ` Daniel Baluta
2024-11-20 16:02 ` [PATCH 0/5] Configure imx8mp dsp node for rproc usage Rob Herring (Arm)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox