Messages in this thread Patch in this message | | | From | Sam Protsenko <> | Subject | [PATCH v3 1/2] usb: dwc3: drd: Avoid error when extcon is missing | Date | Fri, 11 Dec 2020 23:19:15 +0200 |
| |
If "port" node is missing in PHY controller node, dwc3_get_extcon() isn't able to find extcon device. This is perfectly fine in case when "usb-role-switch" or OTG is used, but next misleading error message is printed in that case, from of_graph_get_remote_node():
OF: graph: no port node found in /phy@1234abcd
Avoid printing that message by checking if port node exists in PHY node before calling of_graph_get_remote_node().
Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org> Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com> --- Changes in v3: - Split patch into two patches: logic diff and style diff
drivers/usb/dwc3/drd.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/usb/dwc3/drd.c b/drivers/usb/dwc3/drd.c index 3e1c1aacf002..312a4d060e80 100644 --- a/drivers/usb/dwc3/drd.c +++ b/drivers/usb/dwc3/drd.c @@ -463,7 +463,10 @@ static struct extcon_dev *dwc3_get_extcon(struct dwc3 *dwc) } np_phy = of_parse_phandle(dev->of_node, "phys", 0); - np_conn = of_graph_get_remote_node(np_phy, -1, -1); + if (of_graph_is_present(np_phy)) + np_conn = of_graph_get_remote_node(np_phy, -1, -1); + else + np_conn = NULL; if (np_conn) edev = extcon_find_edev_by_node(np_conn); -- 2.29.2
| |