[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAA+D8APgcZo4fhmzft83ZFeG2bfF19Ew5Fi4o5Gqh3Ej=OPCuA@mail.gmail.com>
Date: Tue, 21 May 2024 14:32:32 +0800
From: Shengjiu Wang <shengjiu.wang@...il.com>
To: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
Cc: Shengjiu Wang <shengjiu.wang@....com>, lgirdwood@...il.com, broonie@...nel.org,
robh+dt@...nel.org, krzysztof.kozlowski+dt@...aro.org, conor+dt@...nel.org,
linux-sound@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, Xiubo.Lee@...il.com, festevam@...il.com,
nicoleotsuka@...il.com, perex@...ex.cz, tiwai@...e.com,
alsa-devel@...a-project.org, linuxppc-dev@...ts.ozlabs.org
Subject: Re: [PATCH 1/2] ASoC: dt-bindings: fsl,mqs: Add i.MX95 platform support
On Mon, May 20, 2024 at 6:47 PM Krzysztof Kozlowski
<krzysztof.kozlowski@...aro.org> wrote:
>
> On 17/05/2024 11:45, Shengjiu Wang wrote:
> > In order to support the MQS module on i.MX95, a new property
> > "fsl,mqs-ctrl" needs to be added, as there are two MQS instances
> > on the i.MX95 platform, the definition of bit positions in the
> > control register is different. This new property is to distinguish
> > these two instances.
> >
> > Without this property, the difference of platforms except the
> > i.MX95 was handled by the driver itself. But this new property can
> > also be used for previous platforms.
> >
> > The MQS only has one control register, the register may be
> > in General Purpose Register memory space, or MQS its own
> > memory space, or controlled by System Manager.
> > The bit position in the register may be different for each
> > platform, there are four parts (bits for module enablement,
> > bits for reset, bits for oversampling ratio, bits for divider ratio).
> > This new property includes all these things.
>
> ...
>
> >
> > clocks:
> > minItems: 1
> > @@ -45,6 +46,22 @@ properties:
> > resets:
> > maxItems: 1
> >
> > + fsl,mqs-ctrl:
> > + $ref: /schemas/types.yaml#/definitions/uint32-array
> > + minItems: 6
> > + maxItems: 6
> > + description: |
> > + Contains the control register information, defined as,
> > + Cell #1: register type
> > + 0 - the register in owned register map
> > + 1 - the register in general purpose register map
> > + 2 - the register in control of system manager
> > + Cell #2: offset of the control register from the syscon
> > + Cell #3: shift bits for module enable bit
> > + Cell #4: shift bits for reset bit
> > + Cell #5: shift bits for oversampling ratio bit
> > + Cell #6: shift bits for divider ratio control bit
>
> Thanks for detailed explanation in commit msg, but no, please do not
> describe layout of registers in DTS. For the syscon phandles, you can
> pass an argument (although not 6 arguments...). Usually this is enough.
> For some cases, like you have differences in capabilities of this device
> or its programming model, maybe you need different compatible.
>
> If these are different capabilities, sometimes new properties are
> applicable (describing hardware, not register bits...).
>
The main difference between the two instances on i.MX95 is the register
difference. looks like I need to use two compatible strings:
- fsl,imx95-aonmix-mqs
- fsl,imx95-netcmix-mqs
to distinguish them.
best regards
Shengjiu Wang
> Best regards,
> Krzysztof
>
Powered by blists - more mailing lists