lkml.org 
[lkml]   [2013]   [Sep]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [dtc PATCH V2] Warn on node name unit-address presence/absence mismatch
From
Date

On Sep 19, 2013, at 12:54 PM, Stephen Warren wrote:

> From: Stephen Warren <swarren@nvidia.com>
>
> ePAPR 1.1 section 2.2.1.1 "Node Name Requirements" specifies that any
> node that has a reg property must include a unit address in its name
> with value matching the first entry in its reg property. Conversely, if
> a node does not have a reg property, the node name must not include a
> unit address.
>
> Implement a check for this. The code doesn't validate the format of the
> unit address; ePAPR implies this may vary from (containing bus) binding
> to binding, so doing so would be much more complex.
>
> Signed-off-by: Stephen Warren <swarren@nvidia.com>
> ---
> v2: Implement the new checks separately, rather than as part of existing
> checkes. downgrade from errors to warnings. Add tests.
>
> Question: Do I need to make a special exception for the /memory node? I
> assume we do want to fix that too, so the answer is no. That will require
> removing the /memory node from skeleton.dtsi in the kernel though.
> ---
> checks.c | 22 ++++++++++++++++++++--
> tests/reg-without-unit-addr.dts | 10 ++++++++++
> tests/run_tests.sh | 2 ++
> tests/unit-addr-without-reg.dts | 9 +++++++++
> 4 files changed, 41 insertions(+), 2 deletions(-)
> create mode 100644 tests/reg-without-unit-addr.dts
> create mode 100644 tests/unit-addr-without-reg.dts

What about the case of no reg but a ranges?

This pattern shows up on a lot (if not all) the PPC dts:

arch/powerpc/boot/dts/mpc8544ds.dts:

board_soc: soc: soc8544@e0000000 {
ranges = <0x0 0x0 0xe0000000 0x100000>;
};

- k

--
Employee of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation



\
 
 \ /
  Last update: 2013-09-26 20:41    [W:0.111 / U:0.708 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site