[PATCH 2/2] net: ethernet: ti: eliminated some duplicate code.

From: Wen Yang
Date: Tue Apr 09 2019 - 01:48:20 EST


Put the code that obtains device_node and the code that
uses it tightly together to remove duplicate resource
cleanup statements between them.

Signed-off-by: Wen Yang <wen.yang99@xxxxxxxxxx>
Reported-by: Markus Elfring <Markus.Elfring@xxxxxx>
Cc: Markus Elfring <Markus.Elfring@xxxxxx>
Cc: Wingman Kwok <w-kwok2@xxxxxx> (maintainer:TI NETCP ETHERNET DRIVER)
Cc: Murali Karicheri <m-karicheri2@xxxxxx> (maintainer:TI NETCP ETHERNET DRIVER)
Cc: "David S. Miller" <davem@xxxxxxxxxxxxx> (odd fixer:NETWORKING DRIVERS)
Cc: netdev@xxxxxxxxxxxxxxx (open list:TI NETCP ETHERNET DRIVER)
Cc: linux-kernel@xxxxxxxxxxxxxxx (open list)
---
drivers/net/ethernet/ti/netcp_ethss.c | 16 ++++++----------
1 file changed, 6 insertions(+), 10 deletions(-)

diff --git a/drivers/net/ethernet/ti/netcp_ethss.c b/drivers/net/ethernet/ti/netcp_ethss.c
index 0a920c5..748116a 100644
--- a/drivers/net/ethernet/ti/netcp_ethss.c
+++ b/drivers/net/ethernet/ti/netcp_ethss.c
@@ -3651,22 +3651,18 @@ static int gbe_probe(struct netcp_device *netcp_device, struct device *dev,
if (ret)
return ret;

- interfaces = of_get_child_by_name(node, "interfaces");
- if (!interfaces)
- dev_err(dev, "could not find interfaces\n");
-
ret = netcp_txpipe_init(&gbe_dev->tx_pipe, netcp_device,
gbe_dev->dma_chan_name, gbe_dev->tx_queue_id);
- if (ret) {
- of_node_put(interfaces);
+ if (ret)
return ret;
- }

ret = netcp_txpipe_open(&gbe_dev->tx_pipe);
- if (ret) {
- of_node_put(interfaces);
+ if (ret)
return ret;
- }
+
+ interfaces = of_get_child_by_name(node, "interfaces");
+ if (!interfaces)
+ dev_err(dev, "could not find interfaces\n");

/* Create network interfaces */
INIT_LIST_HEAD(&gbe_dev->gbe_intf_head);
--
2.9.5