On Sunday, January 28, 2024 6:28:03 PM CET Conor Dooley wrote: > On Sat, Jan 27, 2024 at 05:53:45PM +0100, Duje Mihanović wrote: > > +allOf: > > + - $ref: dma-controller.yaml# > > + - if: > > + properties: > > + compatible: > > + contains: > > + enum: > > + - marvell,adma-1.0 > > + - marvell,pxa910-squ > > + then: > > + properties: > > + asram: > > + description: > > + phandle to the SRAM pool > > + minItems: 1 > > + maxItems: 1 > > + iram: > > > + maxItems: > These properties are not mentioned in the text binding, nor commit > message. Where did they come from? Both of them can be found in arch/arm/boot/dts/marvell/mmp2.dtsi. There is one major difference between the two: iram is not mentioned at all by the mmp_tdma driver (on the other hand, asram is not only used but also required for a successful probe), but I left it here as it's still found in the MMP2 dtsi. On second thought it should probably be dropped both here and in the dtsi. > That said, for properties that are only usable on some platforms, please > define them at the top level and conditionally permit/constrain them. Could you please point me to how to do so if this if/then does not do it properly? > > +unevaluatedProperties: false > > + > > +examples: > > + # Peripheral controller > > + - | > > + pdma0: dma-controller@d4000000 { > > The label is not needed here or below. > In fact, I'd probably delete the second example as it shows nothing that > the first one does not. I'd rather add the asram property in the second node (adding onto the above comment, I now see that it shouldn't have even passed dt_binding_check because of the missing asram, but it did). Regards, -- Duje