* [PATCH v2 1/4] dt-bindings: dsp: fsl,dsp: document debug reset control
2026-11-05 2:41 [PATCH v2 0/4] Enable DSP device for i.MX8ULP shengjiu.wang
@ 2026-11-05 2:41 ` shengjiu.wang
2026-11-06 12:52 ` Krzysztof Kozlowski
2026-11-05 2:41 ` [PATCH v2 2/4] remoteproc: imx_dsp_rproc: Add softreset and dbgreset handling shengjiu.wang
` (2 subsequent siblings)
3 siblings, 1 reply; 9+ messages in thread
From: shengjiu.wang @ 2026-11-05 2:41 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, shengjiu.wang, daniel.baluta,
devicetree, linux-kernel, andersson, mathieu.poirier, Frank.Li,
s.hauer, kernel, festevam, p.zabel, linux-remoteproc, imx,
linux-arm-kernel
From: Shengjiu Wang <shengjiu.wang@nxp.com>
The HiFi4 DSP provides a separate reset control for its debug logic.
Keep this reset deasserted so that an external debug agent can access
the DSP and perform debug operations.
Also require the reset properties for the i.MX8ULP HiFi4 DSP.
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
---
Documentation/devicetree/bindings/dsp/fsl,dsp.yaml | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml b/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml
index e610b7636a08..2f4c8623ff21 100644
--- a/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml
+++ b/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml
@@ -84,12 +84,14 @@ properties:
resets:
minItems: 1
+ maxItems: 3
reset-names:
minItems: 1
items:
- const: runstall
- const: softreset
+ - const: dbgreset
access-controllers:
maxItems: 1
@@ -183,6 +185,8 @@ allOf:
enum:
- fsl,imx8mp-dsp
- fsl,imx8mp-hifi4
+ - fsl,imx8ulp-dsp
+ - fsl,imx8ulp-hifi4
then:
required:
- resets
--
2.34.1
^ permalink raw reply [flat|nested] 9+ messages in thread* Re: [PATCH v2 1/4] dt-bindings: dsp: fsl,dsp: document debug reset control
2026-11-05 2:41 ` [PATCH v2 1/4] dt-bindings: dsp: fsl,dsp: document debug reset control shengjiu.wang
@ 2026-11-06 12:52 ` Krzysztof Kozlowski
2026-11-09 2:22 ` Shengjiu Wang
0 siblings, 1 reply; 9+ messages in thread
From: Krzysztof Kozlowski @ 2026-11-06 12:52 UTC (permalink / raw)
To: shengjiu.wang
Cc: robh, krzk+dt, conor+dt, shengjiu.wang, daniel.baluta,
devicetree, linux-kernel, andersson, mathieu.poirier, Frank.Li,
s.hauer, kernel, festevam, p.zabel, linux-remoteproc, imx,
linux-arm-kernel
On Thu, Nov 05, 2026 at 10:41:03AM +0800, shengjiu.wang@oss.nxp.com wrote:
> From: Shengjiu Wang <shengjiu.wang@nxp.com>
>
> The HiFi4 DSP provides a separate reset control for its debug logic.
> Keep this reset deasserted so that an external debug agent can access
> the DSP and perform debug operations.
>
> Also require the reset properties for the i.MX8ULP HiFi4 DSP.
That's ABI break without explanation.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v2 1/4] dt-bindings: dsp: fsl,dsp: document debug reset control
2026-11-06 12:52 ` Krzysztof Kozlowski
@ 2026-11-09 2:22 ` Shengjiu Wang
2026-11-09 7:29 ` Krzysztof Kozlowski
0 siblings, 1 reply; 9+ messages in thread
From: Shengjiu Wang @ 2026-11-09 2:22 UTC (permalink / raw)
To: Krzysztof Kozlowski
Cc: shengjiu.wang, robh, krzk+dt, conor+dt, shengjiu.wang,
daniel.baluta, devicetree, linux-kernel, andersson,
mathieu.poirier, Frank.Li, s.hauer, kernel, festevam, p.zabel,
linux-remoteproc, imx, linux-arm-kernel
On Fri, Nov 6, 2026 at 8:57 PM Krzysztof Kozlowski <krzk@kernel.org> wrote:
>
> On Thu, Nov 05, 2026 at 10:41:03AM +0800, shengjiu.wang@oss.nxp.com wrote:
> > From: Shengjiu Wang <shengjiu.wang@nxp.com>
> >
> > The HiFi4 DSP provides a separate reset control for its debug logic.
> > Keep this reset deasserted so that an external debug agent can access
> > the DSP and perform debug operations.
> >
> > Also require the reset properties for the i.MX8ULP HiFi4 DSP.
>
> That's ABI break without explanation.
>
The i.MX8ULP HiFi4 DSP has not been enabled upstream before. This series
adds the DSP node for the first time, so there should be no existing upstream
DT relying on this compatible without the reset properties.
I will add this explanation to the commit message.
Best regards
Shengjiu Wang
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v2 1/4] dt-bindings: dsp: fsl,dsp: document debug reset control
2026-11-09 2:22 ` Shengjiu Wang
@ 2026-11-09 7:29 ` Krzysztof Kozlowski
2026-11-09 7:40 ` Shengjiu Wang
0 siblings, 1 reply; 9+ messages in thread
From: Krzysztof Kozlowski @ 2026-11-09 7:29 UTC (permalink / raw)
To: Shengjiu Wang
Cc: shengjiu.wang, robh, krzk+dt, conor+dt, shengjiu.wang,
daniel.baluta, devicetree, linux-kernel, andersson,
mathieu.poirier, Frank.Li, s.hauer, kernel, festevam, p.zabel,
linux-remoteproc, imx, linux-arm-kernel
On 09/11/2026 03:22, Shengjiu Wang wrote:
> On Fri, Nov 6, 2026 at 8:57 PM Krzysztof Kozlowski <krzk@kernel.org> wrote:
>>
>> On Thu, Nov 05, 2026 at 10:41:03AM +0800, shengjiu.wang@oss.nxp.com wrote:
>>> From: Shengjiu Wang <shengjiu.wang@nxp.com>
>>>
>>> The HiFi4 DSP provides a separate reset control for its debug logic.
>>> Keep this reset deasserted so that an external debug agent can access
>>> the DSP and perform debug operations.
>>>
>>> Also require the reset properties for the i.MX8ULP HiFi4 DSP.
>>
>> That's ABI break without explanation.
>>
>
> The i.MX8ULP HiFi4 DSP has not been enabled upstream before. This series
> adds the DSP node for the first time, so there should be no existing upstream
> DT relying on this compatible without the reset properties.
That does not change the fact that you break ABI, does it?
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v2 1/4] dt-bindings: dsp: fsl,dsp: document debug reset control
2026-11-09 7:29 ` Krzysztof Kozlowski
@ 2026-11-09 7:40 ` Shengjiu Wang
0 siblings, 0 replies; 9+ messages in thread
From: Shengjiu Wang @ 2026-11-09 7:40 UTC (permalink / raw)
To: Krzysztof Kozlowski
Cc: shengjiu.wang, robh, krzk+dt, conor+dt, shengjiu.wang,
daniel.baluta, devicetree, linux-kernel, andersson,
mathieu.poirier, Frank.Li, s.hauer, kernel, festevam, p.zabel,
linux-remoteproc, imx, linux-arm-kernel
On Mon, Nov 9, 2026 at 3:29 PM Krzysztof Kozlowski <krzk@kernel.org> wrote:
>
> On 09/11/2026 03:22, Shengjiu Wang wrote:
> > On Fri, Nov 6, 2026 at 8:57 PM Krzysztof Kozlowski <krzk@kernel.org> wrote:
> >>
> >> On Thu, Nov 05, 2026 at 10:41:03AM +0800, shengjiu.wang@oss.nxp.com wrote:
> >>> From: Shengjiu Wang <shengjiu.wang@nxp.com>
> >>>
> >>> The HiFi4 DSP provides a separate reset control for its debug logic.
> >>> Keep this reset deasserted so that an external debug agent can access
> >>> the DSP and perform debug operations.
> >>>
> >>> Also require the reset properties for the i.MX8ULP HiFi4 DSP.
> >>
> >> That's ABI break without explanation.
> >>
> >
> > The i.MX8ULP HiFi4 DSP has not been enabled upstream before. This series
> > adds the DSP node for the first time, so there should be no existing upstream
> > DT relying on this compatible without the reset properties.
>
> That does not change the fact that you break ABI, does it?
>
Yes, it changes the binding ABI. However, these reset controls are
required for the
i.MX8ULP HiFi4 DSP to work correctly, so the existing binding is
incomplete without
them. I will add this explanation to the commit message.
Best regards
Shengjiu Wang
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH v2 2/4] remoteproc: imx_dsp_rproc: Add softreset and dbgreset handling
2026-11-05 2:41 [PATCH v2 0/4] Enable DSP device for i.MX8ULP shengjiu.wang
2026-11-05 2:41 ` [PATCH v2 1/4] dt-bindings: dsp: fsl,dsp: document debug reset control shengjiu.wang
@ 2026-11-05 2:41 ` shengjiu.wang
2026-11-05 2:41 ` [PATCH v2 3/4] arm64: dts: imx8ulp: add HiFi4 DSP node shengjiu.wang
2026-11-05 2:41 ` [PATCH v2 4/4] arm64: dts: imx8ulp-evk: Enable HiFi4 DSP shengjiu.wang
3 siblings, 0 replies; 9+ messages in thread
From: shengjiu.wang @ 2026-11-05 2:41 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, shengjiu.wang, daniel.baluta,
devicetree, linux-kernel, andersson, mathieu.poirier, Frank.Li,
s.hauer, kernel, festevam, p.zabel, linux-remoteproc, imx,
linux-arm-kernel
From: Shengjiu Wang <shengjiu.wang@nxp.com>
Add soft_rst and dbg_rst to struct imx_dsp_rproc for the softreset and
dbgreset controls defined in the DSP binding.
Update imx_dsp_rproc_reset_ctrl_detect_mode() to acquire the runstall,
softreset, and dbgreset controls. The softreset and dbgreset controls
are optional.
Rewrite imx8ulp_dsp_reset() to use the reset controller API instead of
accessing the reset registers directly. This relies on the i.MX8ULP
SIM LPAV reset controller support added by commit 5aac7afc752b
("reset: imx8mp-audiomix: Support i.MX8ULP SIM LPAV").
The imx_dsp_rproc_mmio_*() helpers are no longer needed after this
change, so remove them.
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
---
drivers/remoteproc/imx_dsp_rproc.c | 76 +++++++++---------------------
1 file changed, 21 insertions(+), 55 deletions(-)
diff --git a/drivers/remoteproc/imx_dsp_rproc.c b/drivers/remoteproc/imx_dsp_rproc.c
index 96d619daf3f5..0b0042525ea2 100644
--- a/drivers/remoteproc/imx_dsp_rproc.c
+++ b/drivers/remoteproc/imx_dsp_rproc.c
@@ -108,8 +108,9 @@ enum imx_dsp_rp_mbox_messages {
/**
* struct imx_dsp_rproc - DSP remote processor state
- * @regmap: regmap handler
* @run_stall: reset control handle used for Run/Stall operation
+ * @soft_rst: reset control handle used for DSP core reset
+ * @dbg_rst: reset control handle used for DSP debug logic
* @rproc: rproc handler
* @dsp_dcfg: device configuration pointer
* @clks: clocks needed by this device
@@ -125,8 +126,9 @@ enum imx_dsp_rp_mbox_messages {
* @flags: control flags
*/
struct imx_dsp_rproc {
- struct regmap *regmap;
struct reset_control *run_stall;
+ struct reset_control *soft_rst;
+ struct reset_control *dbg_rst;
struct rproc *rproc;
const struct imx_dsp_rproc_dcfg *dsp_dcfg;
struct clk_bulk_data clks[DSP_RPROC_CLK_MAX];
@@ -243,20 +245,15 @@ static int imx8ulp_dsp_reset(struct imx_dsp_rproc *priv)
struct arm_smccc_res res;
/* Put DSP into reset and stall */
- regmap_update_bits(priv->regmap, IMX8ULP_SIM_LPAV_REG_SYSCTRL0,
- IMX8ULP_SYSCTRL0_DSP_RST, IMX8ULP_SYSCTRL0_DSP_RST);
- regmap_update_bits(priv->regmap, IMX8ULP_SIM_LPAV_REG_SYSCTRL0,
- IMX8ULP_SYSCTRL0_DSP_STALL,
- IMX8ULP_SYSCTRL0_DSP_STALL);
+ reset_control_assert(priv->soft_rst);
+ reset_control_assert(priv->run_stall);
/* Configure resources of DSP through TFA */
arm_smccc_smc(IMX8ULP_SIP_HIFI_XRDC, 0, 0, 0, 0, 0, 0, 0, &res);
/* Take the DSP out of reset and keep stalled for FW loading */
- regmap_update_bits(priv->regmap, IMX8ULP_SIM_LPAV_REG_SYSCTRL0,
- IMX8ULP_SYSCTRL0_DSP_RST, 0);
- regmap_update_bits(priv->regmap, IMX8ULP_SIM_LPAV_REG_SYSCTRL0,
- IMX8ULP_SYSCTRL0_DSP_DBG_RST, 0);
+ reset_control_deassert(priv->soft_rst);
+ reset_control_deassert(priv->dbg_rst);
return 0;
}
@@ -338,14 +335,6 @@ static int imx_dsp_rproc_handle_rsc(struct rproc *rproc, u32 rsc_type,
return RSC_HANDLED;
}
-static int imx_dsp_rproc_mmio_start(struct rproc *rproc)
-{
- struct imx_dsp_rproc *priv = rproc->priv;
- const struct imx_rproc_dcfg *dcfg = priv->dsp_dcfg->dcfg;
-
- return regmap_update_bits(priv->regmap, dcfg->src_reg, dcfg->src_mask, dcfg->src_start);
-}
-
static int imx_dsp_rproc_reset_ctrl_start(struct rproc *rproc)
{
struct imx_dsp_rproc *priv = rproc->priv;
@@ -391,14 +380,6 @@ static int imx_dsp_rproc_start(struct rproc *rproc)
return 0;
}
-static int imx_dsp_rproc_mmio_stop(struct rproc *rproc)
-{
- struct imx_dsp_rproc *priv = rproc->priv;
- const struct imx_rproc_dcfg *dcfg = priv->dsp_dcfg->dcfg;
-
- return regmap_update_bits(priv->regmap, dcfg->src_reg, dcfg->src_mask, dcfg->src_stop);
-}
-
static int imx_dsp_rproc_reset_ctrl_stop(struct rproc *rproc)
{
struct imx_dsp_rproc *priv = rproc->priv;
@@ -1024,23 +1005,6 @@ static int imx_dsp_attach_pm_domains(struct imx_dsp_rproc *priv)
return devm_pm_domain_attach_list(dev, NULL, &priv->pd_list);
}
-static int imx_dsp_rproc_mmio_detect_mode(struct rproc *rproc)
-{
- struct imx_dsp_rproc *priv = rproc->priv;
- struct device *dev = rproc->dev.parent;
- struct regmap *regmap;
-
- regmap = syscon_regmap_lookup_by_phandle(dev->of_node, "fsl,dsp-ctrl");
- if (IS_ERR(regmap)) {
- dev_err(dev, "failed to find syscon\n");
- return PTR_ERR(regmap);
- }
-
- priv->regmap = regmap;
-
- return 0;
-}
-
static int imx_dsp_rproc_reset_ctrl_detect_mode(struct rproc *rproc)
{
struct imx_dsp_rproc *priv = rproc->priv;
@@ -1052,6 +1016,18 @@ static int imx_dsp_rproc_reset_ctrl_detect_mode(struct rproc *rproc)
return PTR_ERR(priv->run_stall);
}
+ priv->soft_rst = devm_reset_control_get_optional_exclusive(dev, "softreset");
+ if (IS_ERR(priv->soft_rst)) {
+ dev_err(dev, "Failed to get DSP soft reset control\n");
+ return PTR_ERR(priv->soft_rst);
+ }
+
+ priv->dbg_rst = devm_reset_control_get_optional_exclusive(dev, "dbgreset");
+ if (IS_ERR(priv->dbg_rst)) {
+ dev_err(dev, "Failed to get DSP debug reset control\n");
+ return PTR_ERR(priv->dbg_rst);
+ }
+
return 0;
}
@@ -1316,12 +1292,6 @@ static const struct dev_pm_ops imx_dsp_rproc_pm_ops = {
RUNTIME_PM_OPS(imx_dsp_runtime_suspend, imx_dsp_runtime_resume, NULL)
};
-static const struct imx_rproc_plat_ops imx_dsp_rproc_ops_mmio = {
- .start = imx_dsp_rproc_mmio_start,
- .stop = imx_dsp_rproc_mmio_stop,
- .detect_mode = imx_dsp_rproc_mmio_detect_mode,
-};
-
static const struct imx_rproc_plat_ops imx_dsp_rproc_ops_reset_ctrl = {
.start = imx_dsp_rproc_reset_ctrl_start,
.stop = imx_dsp_rproc_reset_ctrl_stop,
@@ -1348,13 +1318,9 @@ static const struct imx_dsp_rproc_dcfg imx_dsp_rproc_cfg_imx8mp = {
/* Specific configuration for i.MX8ULP */
static const struct imx_rproc_dcfg dsp_rproc_cfg_imx8ulp = {
- .src_reg = IMX8ULP_SIM_LPAV_REG_SYSCTRL0,
- .src_mask = IMX8ULP_SYSCTRL0_DSP_STALL,
- .src_start = 0,
- .src_stop = IMX8ULP_SYSCTRL0_DSP_STALL,
.att = imx_dsp_rproc_att_imx8ulp,
.att_size = ARRAY_SIZE(imx_dsp_rproc_att_imx8ulp),
- .ops = &imx_dsp_rproc_ops_mmio,
+ .ops = &imx_dsp_rproc_ops_reset_ctrl,
};
static const struct imx_dsp_rproc_dcfg imx_dsp_rproc_cfg_imx8ulp = {
--
2.34.1
^ permalink raw reply [flat|nested] 9+ messages in thread* [PATCH v2 3/4] arm64: dts: imx8ulp: add HiFi4 DSP node
2026-11-05 2:41 [PATCH v2 0/4] Enable DSP device for i.MX8ULP shengjiu.wang
2026-11-05 2:41 ` [PATCH v2 1/4] dt-bindings: dsp: fsl,dsp: document debug reset control shengjiu.wang
2026-11-05 2:41 ` [PATCH v2 2/4] remoteproc: imx_dsp_rproc: Add softreset and dbgreset handling shengjiu.wang
@ 2026-11-05 2:41 ` shengjiu.wang
2026-11-05 2:41 ` [PATCH v2 4/4] arm64: dts: imx8ulp-evk: Enable HiFi4 DSP shengjiu.wang
3 siblings, 0 replies; 9+ messages in thread
From: shengjiu.wang @ 2026-11-05 2:41 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, shengjiu.wang, daniel.baluta,
devicetree, linux-kernel, andersson, mathieu.poirier, Frank.Li,
s.hauer, kernel, festevam, p.zabel, linux-remoteproc, imx,
linux-arm-kernel
From: Shengjiu Wang <shengjiu.wang@nxp.com>
Add the HiFi4 DSP node with the required registers, clocks, firmware
reference, and mailbox connections.
Keep the node disabled by default, allowing boards to enable it when
HiFi4 DSP support is needed.
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
---
arch/arm64/boot/dts/freescale/imx8ulp.dtsi | 23 ++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/arch/arm64/boot/dts/freescale/imx8ulp.dtsi b/arch/arm64/boot/dts/freescale/imx8ulp.dtsi
index ac8293f81c6b..6d8dccaf8ac3 100644
--- a/arch/arm64/boot/dts/freescale/imx8ulp.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8ulp.dtsi
@@ -8,6 +8,7 @@
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/power/imx8ulp-power.h>
+#include <dt-bindings/reset/fsl,imx8ulp-sim-lpav.h>
#include <dt-bindings/thermal/thermal.h>
#include "imx8ulp-pinfunc.h"
@@ -208,6 +209,28 @@ soc: soc@0 {
ranges = <0x0 0x0 0x0 0x40000000>,
<0x60000000 0x0 0x60000000 0x1000000>;
+ dsp: dsp@21170000 {
+ compatible = "fsl,imx8ulp-hifi4";
+ reg = <0x21170000 0x20000>;
+ clocks = <&sim_lpav IMX8ULP_CLK_SIM_LPAV_HIFI_PBCLK>,
+ <&sim_lpav IMX8ULP_CLK_SIM_LPAV_HIFI_PLAT>,
+ <&sim_lpav IMX8ULP_CLK_SIM_LPAV_HIFI_CORE>,
+ <&cgc1 IMX8ULP_CLK_DUMMY>,
+ <&pcc5 IMX8ULP_CLK_MU3_B>;
+ clock-names = "ipg", "ocram", "core", "debug", "mu";
+ firmware-name = "imx/dsp/hifi4.bin";
+ mboxes = <&mu3 0 0>,
+ <&mu3 1 0>,
+ <&mu3 3 0>;
+ mbox-names = "tx", "rx", "rxdb";
+ power-domains = <&scmi_devpd IMX8ULP_PD_HIFI4>;
+ resets = <&sim_lpav IMX8ULP_SIM_LPAV_HIFI4_DSP_STALL>,
+ <&sim_lpav IMX8ULP_SIM_LPAV_HIFI4_DSP_RST>,
+ <&sim_lpav IMX8ULP_SIM_LPAV_HIFI4_DSP_DBG_RST>;
+ reset-names = "runstall", "softreset", "dbgreset";
+ status = "disabled";
+ };
+
s4muap: mailbox@27020000 {
compatible = "fsl,imx8ulp-mu-s4";
reg = <0x27020000 0x10000>;
--
2.34.1
^ permalink raw reply [flat|nested] 9+ messages in thread* [PATCH v2 4/4] arm64: dts: imx8ulp-evk: Enable HiFi4 DSP
2026-11-05 2:41 [PATCH v2 0/4] Enable DSP device for i.MX8ULP shengjiu.wang
` (2 preceding siblings ...)
2026-11-05 2:41 ` [PATCH v2 3/4] arm64: dts: imx8ulp: add HiFi4 DSP node shengjiu.wang
@ 2026-11-05 2:41 ` shengjiu.wang
3 siblings, 0 replies; 9+ messages in thread
From: shengjiu.wang @ 2026-11-05 2:41 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, shengjiu.wang, daniel.baluta,
devicetree, linux-kernel, andersson, mathieu.poirier, Frank.Li,
s.hauer, kernel, festevam, p.zabel, linux-remoteproc, imx,
linux-arm-kernel
From: Shengjiu Wang <shengjiu.wang@nxp.com>
Configure the HiFi4 DSP clocks and memory regions, including the
vdev0vring0, vdev0vring1, vdev0buffer, and dsp_reserved regions.
Enable MU3, which provides the mailbox used for communication with
the DSP, and enable the HiFi4 DSP.
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
---
arch/arm64/boot/dts/freescale/imx8ulp-evk.dts | 34 +++++++++++++++++++
1 file changed, 34 insertions(+)
diff --git a/arch/arm64/boot/dts/freescale/imx8ulp-evk.dts b/arch/arm64/boot/dts/freescale/imx8ulp-evk.dts
index fdf3aab2224b..f985a9e7010d 100644
--- a/arch/arm64/boot/dts/freescale/imx8ulp-evk.dts
+++ b/arch/arm64/boot/dts/freescale/imx8ulp-evk.dts
@@ -61,6 +61,27 @@ rsc_table: rsc-table@20000000 {
no-map;
};
+ dsp_reserved: memory@8e000000 {
+ reg = <0 0x8e000000 0 0x1000000>;
+ no-map;
+ };
+
+ dsp_vdev0vring0: vdev0vring0@8fef0000 {
+ reg = <0 0x8fef0000 0 0x8000>;
+ no-map;
+ };
+
+ dsp_vdev0vring1: vdev0vring1@8fef8000 {
+ reg = <0 0x8fef8000 0 0x8000>;
+ no-map;
+ };
+
+ dsp_vdev0buffer: vdev0buffer@8ff00000 {
+ compatible = "shared-dma-pool";
+ reg = <0 0x8ff00000 0 0x100000>;
+ no-map;
+ };
+
vdev0vring0: vdev0vring0@aff00000 {
reg = <0 0xaff00000 0 0x8000>;
no-map;
@@ -145,6 +166,15 @@ &cm33 {
status = "okay";
};
+&dsp {
+ assigned-clocks = <&cgc2 IMX8ULP_CLK_HIFI_SEL>, <&cgc2 IMX8ULP_CLK_HIFI_DIVCORE>;
+ assigned-clock-parents = <&cgc2 IMX8ULP_CLK_PLL4_PFD0>;
+ assigned-clock-rates = <0>, <475200000>;
+ memory-region = <&dsp_vdev0buffer>, <&dsp_vdev0vring0>,
+ <&dsp_vdev0vring1>, <&dsp_reserved>;
+ status = "okay";
+};
+
&flexspi2 {
pinctrl-names = "default", "sleep";
pinctrl-0 = <&pinctrl_flexspi2_ptd>;
@@ -321,6 +351,10 @@ &mu {
status = "okay";
};
+&mu3 {
+ status = "okay";
+};
+
&iomuxc1 {
pinctrl_enet: enetgrp {
fsl,pins = <
--
2.34.1
^ permalink raw reply [flat|nested] 9+ messages in thread