Message ID | 20250305100037.373782-3-daniel.baluta@nxp.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | imx8mp: Add support to Run/Stall DSP via reset API | expand |
On Wed, 05 Mar 2025 12:00:30 +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 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. > > Example dts node only uses runstall control now, but softreset will > be added in the future when we will convert the softreset functionality > to use reset controller API. > > [1] https://patchwork.kernel.org/project/imx/patch/20250212085222.107102-6-daniel.baluta@nxp.com/ > > Reviewed-by: Frank Li <Frank.Li@nxp.com> > Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com> > --- > .../devicetree/bindings/dsp/fsl,dsp.yaml | 24 ++++++++++++++++++- > 1 file changed, 23 insertions(+), 1 deletion(-) > Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
diff --git a/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml b/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml index ab93ffd3d2e5..b8693e4b4b0d 100644 --- a/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml +++ b/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml @@ -82,6 +82,15 @@ properties: description: Phandle to syscon block which provide access for processor enablement + resets: + minItems: 1 + + reset-names: + minItems: 1 + items: + - const: runstall + - const: softreset + required: - compatible - reg @@ -164,6 +173,17 @@ allOf: - const: txdb1 - const: rxdb0 - const: rxdb1 + - if: + properties: + compatible: + contains: + enum: + - fsl,imx8mp-dsp + - fsl,imx8mp-hifi4 + then: + required: + - resets + - reset-names additionalProperties: false @@ -186,6 +206,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 +241,6 @@ examples: <&mu2 3 0>; memory-region = <&dsp_vdev0buffer>, <&dsp_vdev0vring0>, <&dsp_vdev0vring1>, <&dsp_reserved>; - fsl,dsp-ctrl = <&audio_blk_ctrl>; + resets = <&audio_blk_ctrl IMX8MP_AUDIOMIX_DSP_RUNSTALL>; + reset-names = "runstall"; };