[PATCH v2] of: WARN on deprecated #address-cells/#size-cells handling

Steven Price steven.price at arm.com
Sat Nov 9 00:26:23 AEDT 2024


On 08/11/2024 11:04, Marek Szyprowski wrote:
> Hi Rob,
> 
> On 06.11.2024 18:10, Rob Herring (Arm) wrote:
>> While OpenFirmware originally allowed walking parent nodes and default
>> root values for #address-cells and #size-cells, FDT has long required
>> explicit values. It's been a warning in dtc for the root node since the
>> beginning (2005) and for any parent node since 2007. Of course, not all
>> FDT uses dtc, but that should be the majority by far. The various
>> extracted OF devicetrees I have dating back to the 1990s (various
>> PowerMac, OLPC, PASemi Nemo) all have explicit root node properties. The
>> warning is disabled for Sparc as there are known systems relying on
>> default root node values.
>>
>> Signed-off-by: Rob Herring (Arm) <robh at kernel.org>
>> ---
>> v2:
>>   - Add a define for excluded platforms to help clarify the intent
>>     is to have an exclude list and make adding platforms easier.
>>   - Also warn when walking parent nodes.
>> ---
>>   drivers/of/base.c | 28 ++++++++++++++++++++++------
>>   drivers/of/fdt.c  |  4 ++--
>>   2 files changed, 24 insertions(+), 8 deletions(-)
> 
> This patch landed in today's linux-next as commit 4b28a0dec185 ("of: 
> WARN on deprecated #address-cells/#size-cells handling"). In my tests I 
> found that it introduces warnings on almost all of my test systems. I 
> took a look at the first one I got in my logs (Samsung Exynos Rinato 
> board: arch/arm/boot/dts/samsung/exynos3250-rinato.dts):

Just a "me too" for rk3288-firefly.dtb:

[    0.138735] WARNING: CPU: 0 PID: 1 at drivers/of/base.c:106 of_bus_n_addr_cells+0x9c/0xd8
[    0.138776] Missing '#address-cells' in /power-management at ff730000

I'm sure it's easy to fix up the DTB, but we shouldn't be breaking long existing DTBs.

Steve



More information about the Linuxppc-dev mailing list