From: Rob Herring <robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
To: David Gibson <david-xT8FGy+AXnRB3Ne2BGzF6laj5H9X9Tb+@public.gmane.org>
Cc: devicetree-compiler-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Stephen Warren <swarren-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
Subject: [PATCH 2/2] Warn on node name unit-addresses with '0x' or leading 0s
Date: Thu, 11 Feb 2016 14:46:59 -0600 [thread overview]
Message-ID: <1455223619-16052-3-git-send-email-robh@kernel.org> (raw)
In-Reply-To: <1455223619-16052-1-git-send-email-robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
Node name unit-addresses should never begin with 0x or leading 0s
regardless of whether they have a bus specific address (i.e. one with
commas) or not. Add warnings to check for these cases.
Signed-off-by: Rob Herring <robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
---
checks.c | 10 ++++++++++
tests/run_tests.sh | 2 ++
tests/unit-addr-leading-0s.dts | 10 ++++++++++
tests/unit-addr-leading-0x.dts | 10 ++++++++++
4 files changed, 32 insertions(+)
create mode 100644 tests/unit-addr-leading-0s.dts
create mode 100644 tests/unit-addr-leading-0x.dts
diff --git a/checks.c b/checks.c
index 4001b8c..300ab43 100644
--- a/checks.c
+++ b/checks.c
@@ -310,6 +310,16 @@ static void check_unit_address_vs_reg(struct check *c, struct node *dt,
if (!unitname[0])
FAIL(c, "Node %s has a reg or ranges property, but no unit name",
node->fullpath);
+
+ if (strstr(unitname, "0x") == unitname) {
+ FAIL(c, "Node %s unit name should not have leading \"0x\"",
+ node->fullpath);
+ /* skip over 0x for next test */
+ unitname += 2;
+ }
+ if (unitname[0] == '0' && isxdigit(unitname[1]))
+ FAIL(c, "Node %s unit name should not have leading 0s",
+ node->fullpath);
} else {
if (unitname[0])
FAIL(c, "Node %s has a unit name, but no reg property",
diff --git a/tests/run_tests.sh b/tests/run_tests.sh
index 4b7a131..502caa6 100755
--- a/tests/run_tests.sh
+++ b/tests/run_tests.sh
@@ -445,6 +445,8 @@ dtc_tests () {
check_tests obsolete-chosen-interrupt-controller.dts obsolete_chosen_interrupt_controller
check_tests reg-without-unit-addr.dts unit_address_vs_reg
check_tests unit-addr-without-reg.dts unit_address_vs_reg
+ check_tests unit-addr-leading-0x.dts unit_address_vs_reg
+ check_tests unit-addr-leading-0s.dts unit_address_vs_reg
run_sh_test dtc-checkfails.sh node_name_chars -- -I dtb -O dtb bad_node_char.dtb
run_sh_test dtc-checkfails.sh node_name_format -- -I dtb -O dtb bad_node_format.dtb
run_sh_test dtc-checkfails.sh prop_name_chars -- -I dtb -O dtb bad_prop_char.dtb
diff --git a/tests/unit-addr-leading-0s.dts b/tests/unit-addr-leading-0s.dts
new file mode 100644
index 0000000..7c8e2ce
--- /dev/null
+++ b/tests/unit-addr-leading-0s.dts
@@ -0,0 +1,10 @@
+/dts-v1/;
+
+/ {
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ node@001 {
+ reg = <1 0>;
+ };
+};
diff --git a/tests/unit-addr-leading-0x.dts b/tests/unit-addr-leading-0x.dts
new file mode 100644
index 0000000..7ed7254
--- /dev/null
+++ b/tests/unit-addr-leading-0x.dts
@@ -0,0 +1,10 @@
+/dts-v1/;
+
+/ {
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ node@0x1 {
+ reg = <1 0>;
+ };
+};
--
2.5.0
next prev parent reply other threads:[~2016-02-11 20:46 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-11 20:46 [PATCH 0/2] DTC unit-address checks Rob Herring
[not found] ` <1455223619-16052-1-git-send-email-robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2016-02-11 20:46 ` [PATCH 1/2] Warn on node name unit-address presence/absence mismatch Rob Herring
[not found] ` <1455223619-16052-2-git-send-email-robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2016-02-19 5:02 ` David Gibson
2016-02-11 20:46 ` Rob Herring [this message]
[not found] ` <1455223619-16052-3-git-send-email-robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2016-02-19 5:07 ` [PATCH 2/2] Warn on node name unit-addresses with '0x' or leading 0s David Gibson
[not found] ` <20160219050709.GB15224-RXTfZT5YzpxwFLYp8hBm2A@public.gmane.org>
2016-02-22 16:51 ` Rob Herring
[not found] ` <CAL_JsqLDdyLd4z_Pmsr7+vtnMZsusEpJYZ4tdZmjQFt0PD_Fbw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-02-23 5:47 ` David Gibson
[not found] ` <20160223054746.GT2808-RXTfZT5YzpxwFLYp8hBm2A@public.gmane.org>
2016-02-23 14:35 ` Rob Herring
[not found] ` <CAL_Jsq+Nr6uzA0xzc=zKG4diZwDrgsbLAKDb80m6ZSq2NXcGgA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-02-24 0:44 ` David Gibson
[not found] ` <20160224004456.GB2808-RXTfZT5YzpxwFLYp8hBm2A@public.gmane.org>
2016-02-24 15:01 ` Rob Herring
2016-02-25 0:49 ` David Gibson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1455223619-16052-3-git-send-email-robh@kernel.org \
--to=robh-dgejt+ai2ygdnm+yrofe0a@public.gmane.org \
--cc=david-xT8FGy+AXnRB3Ne2BGzF6laj5H9X9Tb+@public.gmane.org \
--cc=devicetree-compiler-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=swarren-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.