[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YTJTF5VMOyG2iZb0@robh.at.kernel.org>
Date: Fri, 3 Sep 2021 11:53:43 -0500
From: Rob Herring <robh@...nel.org>
To: Daniel Baluta <daniel.baluta@....nxp.com>
Cc: broonie@...nel.org, pierre-louis.bossart@...ux.intel.com,
lgirdwood@...il.com, ranjani.sridharan@...ux.intel.com,
kai.vehmanen@...ux.intel.com, devicetree@...r.kernel.org,
shawnguo@...nel.org, kernel@...gutronix.de, festevam@...il.com,
linux-imx@....com, peter.ujfalusi@...ux.intel.com,
alsa-devel@...a-project.org, linux-kernel@...r.kernel.org,
s-anna@...com, Daniel Baluta <daniel.baluta@....com>
Subject: Re: [PATCH v2 2/2] dt-bindings: dsp: fsl: Add DSP optional clocks
documentation
On Fri, Sep 03, 2021 at 05:53:40PM +0300, Daniel Baluta wrote:
> From: Daniel Baluta <daniel.baluta@....com>
>
> DSP node on the Linux kernel side must also take care of enabling
> DAI/DMA related clocks.
>
> By design we choose to manage DAI/DMA clocks from the kernel side because of
> the architecture of some i.MX8 boards.
>
> Clocks are handled by a special M4 core which runs a special firmware
> called SCFW (System Controler firmware).
>
> This communicates with A cores running Linux via a special Messaging
> Unit and implements a custom API which is already implemented by the
> Linux kernel i.MX clocks implementation.
>
> Note that these clocks are optional. We can use the DSP without them.
>
> Signed-off-by: Daniel Baluta <daniel.baluta@....com>
> ---
> .../devicetree/bindings/dsp/fsl,dsp.yaml | 33 +++++++++++++++++++
> 1 file changed, 33 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml b/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml
> index 7afc9f2be13a..1453668c0194 100644
> --- a/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml
> +++ b/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml
> @@ -24,16 +24,49 @@ properties:
> maxItems: 1
>
> clocks:
> + minItems: 3
> items:
> - description: ipg clock
> - description: ocram clock
> - description: core clock
> + - description: esai0 core clock for accessing registers
> + - description: esai0 baud clock
> + - description: esai0 system clock
> + - description: esai0 spba clock required when ESAI is placed in slave mode
> + - description: SAI1 bus clock
> + - description: SAI1 master clock 0
> + - description: SAI1 master clock 1
> + - description: SAI1 master clock 2
> + - description: SAI1 master clock 3
> + - description: SAI3 bus clock
> + - description: SAI3 master clock 0
> + - description: SAI3 master clock 1
> + - description: SAI3 master clock 2
> + - description: SAI3 master clock 3
> + - description: SDMA3 root clock used for accessing registers
Sigh, I just rejected this kind of thing for the other i.MX8 DSP
binding[1].
Add a reference to the h/w block and then get the clocks (and other
resources) from there.
Rob
[1] https://lore.kernel.org/linux-devicetree/YTDq%2FkWFPLHUnHMN@robh.at.kernel.org/
Powered by blists - more mailing lists