[PATCH] arm64: xilinx: Move address/size-cells to proper locations

Michal Simek michal.simek at amd.com
Thu Jan 11 11:19:53 CET 2024



On 1/11/24 09:52, Krzysztof Kozlowski wrote:
> On 11/01/2024 09:48, Michal Simek wrote:
>>
>>
>> On 1/11/24 09:18, Krzysztof Kozlowski wrote:
>>> On 11/01/2024 09:10, Michal Simek wrote:
>>>>
>>>>
>>>> On 1/11/24 08:56, Krzysztof Kozlowski wrote:
>>>>> On 11/01/2024 08:09, Michal Simek wrote:
>>>>>>
>>>>>>
>>>>>> On 1/10/24 22:27, Krzysztof Kozlowski wrote:
>>>>>>> On 10/01/2024 14:35, Michal Simek wrote:
>>>>>>>> Move cells to board dtsi files from generic zynqmp.dtsi. Changes are
>>>>>>>> related to qspi, spi, nand, i2c and ethernet nodes.
>>>>>>>>
>>>>>>>> All errors are generated when dtbs are compiled with W=1.
>>>>>>>>
>>>>>>>
>>>>>>> I don't see any errors on some other platforms, like Samsung. Isn't the
>>>>>>> actual problem that you do not disable the nodes (I2C, SPI etc) in DTSI?
>>>>>>
>>>>>> On i2c node. Bus is present on the board but it can end in a connector or device
>>>>>> which we don't have OS/bootloader drivers for. But we have drivers using i2c
>>>>>> tools or u-boot i2c probe. It means that transition should happen.
>>>>>> On i2c interesting is that W=1 is not able to report issues when you have i2c
>>>>>> mux described like this
>>>>>>
>>>>>>                     i2c at 0 {
>>>>>>                             #address-cells = <1>;
>>>>>>                             #size-cells = <0>;
>>>>>>                             reg = <0>;
>>>>>>                             /* HPC0_IIC */
>>>>>
>>>>> I understand and it is quite common, but it does not explain the case.
>>>>> Your bus should still be disabled in DTSI and enabled in DTS for these
>>>>> cases.
>>>>>
>>>>> And how exactly do you solve the warning for above case?
>>>>
>>>> I had address/size-cells in dtsi (entire SoC) and then just enabled the whole
>>>> i2c bus(for above reason) in board dts file without any childs there.
>>>> Then W=1 reported that there are address/size-cells without child.
>>>>
>>>> Another way how to solve it would be to simply delete address/size cells in
>>>> these cases.
>>>
>>> But your device without children sill have address/size cells, doesn't
>>> it? Or does it mean you did not add it to such cases?
>>>
>>> Anyway, I have exactly the same case exynos5800-peach-pi.dts with i2c_2
>>> and no W=1 warnings. I really do not think your solution is correct.
>>>
>>> Also, address/size cells are properties of the SoC, so rather DTSI.
>>
>> Let me take a look at i2c case again. For gems it should be clear that I need to
>> remove it because when there is mdio node I am getting errors like this.
>>
>> arch/arm64/boot/dts/xilinx/zynqmp.dtsi:627.27-641.5: Warning
>> (avoid_unnecessary_addr_size): /axi/ethernet at ff0e0000: unnecessary
>> #address-cells/#size-cells without "ranges" or child "reg" property
> 
> Yes, which also synchronizes your DTS with kernel:
> See: eb2f7ff7de56 ("arm64: xilinx: Remove address/size-cells from gem
> nodes")
 >> BTW, Instead of working on U-Boot clone of DTS, I would suggest spending
> effort on re-using in kernel DTS (see Sumit's work using rebased-DTS tree).

I am aware about it and that's in my plan too.

I actually used Linux to report these issue but waiting for 6.8-rc1 to happen to 
send it.

Thanks,
Michal


More information about the U-Boot mailing list