Revert "net: netcp: remove dead code from the driver"
authorMurali Karicheri <m-karicheri2@ti.com>
Tue, 17 Apr 2018 21:30:39 +0000 (17:30 -0400)
committerDavid S. Miller <davem@davemloft.net>
Thu, 19 Apr 2018 01:00:57 +0000 (21:00 -0400)
As the probe sequence is not guaranteed contrary to the assumption
of the commit 2d8e276a9030, same has to be reverted.

commit 2d8e276a9030 ("net: netcp: remove dead code from the driver")

Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/ti/netcp_core.c

index f5a7eb22d0f50e38a39c94f1dbb01cd17dff73c7..9c51b25d7fd075055b71b7b701a682274f45dded 100644 (file)
@@ -2155,6 +2155,7 @@ static int netcp_probe(struct platform_device *pdev)
        struct device_node *child, *interfaces;
        struct netcp_device *netcp_device;
        struct device *dev = &pdev->dev;
+       struct netcp_module *module;
        int ret;
 
        if (!node) {
@@ -2203,6 +2204,14 @@ static int netcp_probe(struct platform_device *pdev)
        /* Add the device instance to the list */
        list_add_tail(&netcp_device->device_list, &netcp_devices);
 
+       /* Probe & attach any modules already registered */
+       mutex_lock(&netcp_modules_lock);
+       for_each_netcp_module(module) {
+               ret = netcp_module_probe(netcp_device, module);
+               if (ret < 0)
+                       dev_err(dev, "module(%s) probe failed\n", module->name);
+       }
+       mutex_unlock(&netcp_modules_lock);
        return 0;
 
 probe_quit_interface: