On Di, 2025-02-25 at 12:19 +0200, Daniel Baluta wrote: > Assert and deassert functionality of the DSP found on i.MX8MP is > realized by combining control bits from two modules: Audio Block > Control and Debug Access Port. > > Audio block control bits are used to for Run/Stall the DSP core > while the DAP bits are used for software reset the core. > > The original plan was to use fsl,dsp-ctrl property and to refer the > audiomix bits via syscon interface. This proposal received NACK from > community we shouldn't abuse the syscon interface [1]. > > So remove fsl,dsp-ctrl property for i.MX8MP and use reset control > interface instead. > > [1] https://patchwork.kernel.org/project/imx/patch/20250212085222.107102-6-daniel.baluta@xxxxxxx/ > > Signed-off-by: Daniel Baluta <daniel.baluta@xxxxxxx> > Reviewed-by: Frank Li <Frank.Li@xxxxxxx> > --- > .../devicetree/bindings/dsp/fsl,dsp.yaml | 16 +++++++++++++++- > 1 file changed, 15 insertions(+), 1 deletion(-) > > diff --git a/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml b/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml > index ab93ffd3d2e5..b3550c9d12e7 100644 > --- a/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml > +++ b/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml > @@ -82,6 +82,9 @@ properties: > description: > Phandle to syscon block which provide access for processor enablement > > + resets: > + maxItems: 1 The DAP core reset is mentioned in the commit message. Why is it missing here? After reading the discussion in [1], I'd expect both the stall and the (core) reset signal to be documented, something like: resets: maxItems: 2 reset-names: items: - const: core - const: stall > + > required: > - compatible > - reg > @@ -164,6 +167,16 @@ allOf: > - const: txdb1 > - const: rxdb0 > - const: rxdb1 > + - if: > + properties: > + compatible: > + contains: > + enum: > + - fsl,imx8mp-dsp > + - fsl,imx8mp-hifi4 > + then: > + required: > + - resets > > additionalProperties: false > > @@ -186,6 +199,7 @@ examples: > }; > - | > #include <dt-bindings/clock/imx8mp-clock.h> > + #include <dt-bindings/reset/imx8mp-reset-audiomix.h> > dsp_reserved: dsp@92400000 { > reg = <0x92400000 0x1000000>; > no-map; > @@ -220,5 +234,5 @@ examples: > <&mu2 3 0>; > memory-region = <&dsp_vdev0buffer>, <&dsp_vdev0vring0>, > <&dsp_vdev0vring1>, <&dsp_reserved>; > - fsl,dsp-ctrl = <&audio_blk_ctrl>; Is there nothing else in this range that will have to be controlled by the DSP driver in the future, such as the IMPWIRE register or the XOCDMODE[OCDHALTONRESET] bit? regards Philipp