[PATCH 2/2] of: base: Improve argument length mismatch error

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The cells_name field of of_phandle_iterator might be NULL. Use the
phandle name instead. With this change we get the more helpful messages:

  OF: /soc/pinctrl@1000000: phandle pinctrl@1000000 needs 3, found 2

instead of:

  OF: /soc/pinctrl@1000000: (null) = 3 found 2

That should make DT debugging easier.

Signed-off-by: Baruch Siach <baruch@xxxxxxxxxx>
---
 drivers/of/base.c | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/drivers/of/base.c b/drivers/of/base.c
index 64218c614a85..7c03de370913 100644
--- a/drivers/of/base.c
+++ b/drivers/of/base.c
@@ -1349,9 +1349,14 @@ int of_phandle_iterator_next(struct of_phandle_iterator *it)
 		 * property data length
 		 */
 		if (it->cur + count > it->list_end) {
-			pr_err("%pOF: %s = %d found %ld\n",
-			       it->parent, it->cells_name,
-			       count, it->list_end - it->cur);
+			if (it->cells_name)
+				pr_err("%pOF: %s = %d found %ld\n",
+					it->parent, it->cells_name,
+					count, it->list_end - it->cur);
+			else
+				pr_err("%pOF: phandle %s needs %d, found %ld\n",
+					it->parent, of_node_full_name(it->node),
+					count, it->list_end - it->cur);
 			goto err;
 		}
 	}
-- 
2.34.1




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux