On 2023/2/24 21:21, Krzysztof Kozlowski wrote: > On 24/02/2023 14:09, Walker Chen wrote: >> >> >> On 2023/2/24 18:51, Krzysztof Kozlowski wrote: >>> On 24/02/2023 11:14, Walker Chen wrote: >>>>>> resets: >>>>>> - maxItems: 1 >>>>>> + maxItems: 2 >>>>> >>>>> This breaks ABI and all other users. Test your changes before sending. >>>> >>>> I think 'minItems' should be added here. So like this: >>>> resets: >>>> minItems: 1 >>>> maxItems: 2 >>>> >>>> Other platform/users will not be affected by this. >>> >>> Which will allow two resets on all platforms. Is this correct for these >>> platforms? Do they have two resets? >>> >> In kernel 6.2, only two platforms use this DMA controller (see 'arch/arc/boot/dts/hsdk.dts' and 'arch/riscv/boot/dts/canaan/k210.dtsi'). > > What about all out-of-tree platforms, bootloaders and FW? > >> There is one reset on k210, while there is no reset of DMA on hsdk at all. >> If here minItems with value 1 is added and the value of maxItems is changed to 2, after my testing, >> whether it is one reset or two resets, even no reset, there is no errors occur when doing dtbs_check, > > Yeah, I know how this works. > >> the DMA initialization shall not be affected either on their platforms. > > I asked whether the hardware physically have two resets. dtbs_check > checks the DTS, not the hardware. You know allow two resets for each > other variant. What's more, you call first reset axi for all variants. > This does not look correct, e.g. k210.dtsi does not indicate this is axi > reset line but reset for entire block. > > Thus your change should be constrained per your variant (min/max in > top-level, allOf:if:then allowing two lines for you, disallowing for > others). > I see what you mean. Thank you for your guidance! I will use allOf:if:then structure to indicate different case for resets in next version of patch. Best regards, Walker