Re: [PATCH] dt-bindings: interrupt-controller: Convert Atmel AIC to json-schema

From: Dharma.B
Date: Fri Feb 09 2024 - 01:31:41 EST


Hi Conor,

On 09/02/24 12:19 am, Conor Dooley wrote:
> Hey Dharma,
>
> On Thu, Feb 08, 2024 at 03:51:31PM +0000, Rob Herring wrote:
>> On Thu, 08 Feb 2024 14:50:15 +0530, Dharma Balasubiramani wrote:
>>> Convert the Atmel AIC binding document to DT schema format using
>>> json-schema.
>>>
>>> Signed-off-by: Dharma Balasubiramani<dharma.b@xxxxxxxxxxxxx>
>>> ---
>>> Note: I get the following warnings on latest kernel but not in 6.7.
>>> Should I be worried?
>>> usage: yamllint [-h] [-] [-c CONFIG_FILE | -d CONFIG_DATA] [--list-files] [-f {parsable,standard,colored,github,auto}] [-s] [--no-warnings] [-v] [FILE_OR_DIR [FILE_OR_DIR ...]]
>>> yamllint: error: one of the arguments FILE_OR_DIR - is required
> Hard to say, how were you envoking the command? There were some issues
> recently with dt_binding_check, but I thought those had been fixed.

I use this command to validate

make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- dt_binding_check
DT_SCHEMA_FILES=Documentation/devicetree/bindings/interrupt-controller/atmel,aic.yaml

and also dtbs_check.

version = yamllint 1.32.0
>
>> dtschema/dtc warnings/errors:
>> Documentation/devicetree/bindings/interrupt-controller/atmel,aic.example.dtb: /example-1/dma-controller@ffffec00: failed to match any schema with compatible: ['atmel,at91sam9g45-dma']
> But you didn't see this warning?

No I didn't see this warning when applied on tag:6.7. Don't know why.

> I think you can resolve it by just dropping the "user" example from the
> binding entirely. I don't think it adds anything at all.

I intentionally checked the generated example dts file and found that
both the examples look correct.

example-0 {
#address-cells = <1>;
#size-cells = <1>;

/* AIC */
aic: interrupt-controller@fffff000 {
compatible = "atmel,at91rm9200-aic";
interrupt-controller;
#interrupt-cells = <3>;
reg = <0xfffff000 0x200>;
atmel,external-irqs = <31>;
};

};

example-1 {
#address-cells = <1>;
#size-cells = <1>;

interrupt-parent = <&fake_intc1>;
fake_intc1: fake-interrupt-controller {
interrupt-controller;
#interrupt-cells = < 3 >;
};

/* An interrupt generating device that is wired to an AIC. */
dma: dma-controller@ffffec00 {
compatible = "atmel,at91sam9g45-dma";
#dma-cells = <2>;
reg = <0xffffec00 0x200>;
interrupts = <21 4 5>;
};

};

>
> Cheers,
> Conor.

Please correct me if I'm doing something wrong here.

--
With Best Regards,
Dharma B.