[PATCH] dt-bindings: dma: fsl-mxs-dma: Convert MXS DMA to DT schema

Marek Vasut marex at denx.de
Sat Dec 17 15:12:47 PST 2022


On 12/17/22 12:05, Krzysztof Kozlowski wrote:

[...]

>> +allOf:
>> +  - $ref: dma-controller.yaml#
>> +  - if:
>> +      properties:
>> +        compatible:
>> +          not:
> 
> I think "not:" goes just after "if:". Please double check that it's correct.
> 
> Anyway it is easier to have this without negation and you already
> enumerate all variants (here and below).

About this part, I don't think that works. See this:

$ git grep -A 15 'imx2[38]-dma-apb[hx]' arch/ | grep 
'\(imx2[38]-dma-apb[hx]\|dma-channels\)'
arch/arm/boot/dts/imx23.dtsi: compatible = "fsl,imx23-dma-apbh";
arch/arm/boot/dts/imx23.dtsi- dma-channels = <8>;
arch/arm/boot/dts/imx23.dtsi: compatible = "fsl,imx23-dma-apbx";
arch/arm/boot/dts/imx23.dtsi- dma-channels = <16>;
arch/arm/boot/dts/imx28.dtsi: compatible = "fsl,imx28-dma-apbh";
arch/arm/boot/dts/imx28.dtsi- dma-channels = <16>;
arch/arm/boot/dts/imx28.dtsi: compatible = "fsl,imx28-dma-apbx";
arch/arm/boot/dts/imx28.dtsi- dma-channels = <16>;
arch/arm/boot/dts/imx6qdl.dtsi: compatible = "fsl,imx6q-dma-apbh", 
"fsl,imx28-dma-apbh";
arch/arm/boot/dts/imx6qdl.dtsi- dma-channels = <4>;
arch/arm/boot/dts/imx6sx.dtsi: compatible = "fsl,imx6sx-dma-apbh", 
"fsl,imx28-dma-apbh";
arch/arm/boot/dts/imx6sx.dtsi- dma-channels = <4>;
arch/arm/boot/dts/imx6ul.dtsi: compatible = "fsl,imx6q-dma-apbh", 
"fsl,imx28-dma-apbh";
arch/arm/boot/dts/imx6ul.dtsi- dma-channels = <4>;
arch/arm/boot/dts/imx7s.dtsi: compatible = "fsl,imx7d-dma-apbh", 
"fsl,imx28-dma-apbh";
arch/arm/boot/dts/imx7s.dtsi- dma-channels = <4>;
arch/arm64/boot/dts/freescale/imx8mm.dtsi: compatible = 
"fsl,imx7d-dma-apbh", "fsl,imx28-dma-apbh";
arch/arm64/boot/dts/freescale/imx8mm.dtsi- dma-channels = <4>;
arch/arm64/boot/dts/freescale/imx8mn.dtsi: compatible = 
"fsl,imx7d-dma-apbh", "fsl,imx28-dma-apbh";
arch/arm64/boot/dts/freescale/imx8mn.dtsi- dma-channels = <4>;

So I think what we have to do to validate that, is, say

default: 4

if does not match on 6q/6sx/7d/23-apbx/28-abbh/28-apbx then 8

if does not match on 6q/6sx/7d/23-apbh then 16

But if there is a better way to validate the above, please do tell.



More information about the linux-arm-kernel mailing list