The previous change ("usb: dwc3: drd: Avoid error when extcon is
missing") changed the code flow in dwc3_get_extcon() function, leading
to unnecessary if-branch. This patch does housekeeping by reworking the
code for obtaining an extcon device from the "port" node.

Signed-off-by: Sam Protsenko <[email protected]>
Cc: Andy Shevchenko <[email protected]>
---
Changes in v4:
  - Moved the comment from patch 2/2 to 1/2
  - Fixed typos in commit message
Changes in v3:
  - Split patch into two patches: logic diff and style diff

 drivers/usb/dwc3/drd.c | 21 +++++++++------------
 1 file changed, 9 insertions(+), 12 deletions(-)

diff --git a/drivers/usb/dwc3/drd.c b/drivers/usb/dwc3/drd.c
index da428cf2eb5b..e2b68bb770d1 100644
--- a/drivers/usb/dwc3/drd.c
+++ b/drivers/usb/dwc3/drd.c
@@ -441,8 +441,8 @@ static int dwc3_drd_notifier(struct notifier_block *nb,
 static struct extcon_dev *dwc3_get_extcon(struct dwc3 *dwc)
 {
        struct device *dev = dwc->dev;
-       struct device_node *np_phy, *np_conn;
-       struct extcon_dev *edev;
+       struct device_node *np_phy;
+       struct extcon_dev *edev = NULL;
        const char *name;
 
        if (device_property_read_bool(dev, "extcon"))
@@ -470,17 +470,14 @@ static struct extcon_dev *dwc3_get_extcon(struct dwc3 
*dwc)
         * or OTG mode.
         */
        np_phy = of_parse_phandle(dev->of_node, "phys", 0);
-       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);
-       else
-               edev = NULL;
+       if (of_graph_is_present(np_phy)) {
+               struct device_node *np_conn;
 
-       of_node_put(np_conn);
+               np_conn = of_graph_get_remote_node(np_phy, -1, -1);
+               if (np_conn)
+                       edev = extcon_find_edev_by_node(np_conn);
+               of_node_put(np_conn);
+       }
        of_node_put(np_phy);
 
        return edev;
-- 
2.29.2

Reply via email to