staging: fsl-dpaa2: ethsw: Introduce ethsw_port_dev_check()
authorPetr Machata <petrm@mellanox.com>
Thu, 22 Nov 2018 23:29:18 +0000 (23:29 +0000)
committerDavid S. Miller <davem@davemloft.net>
Sat, 24 Nov 2018 02:02:24 +0000 (18:02 -0800)
ethsw currently uses an open-coded comparison of netdev_ops to determine
whether whether a device represents a front panel port. Wrap this into a
named function to simplify reuse.

Signed-off-by: Petr Machata <petrm@mellanox.com>
Acked-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/staging/fsl-dpaa2/ethsw/ethsw.c

index 7a7ca67822c5fbad7fe476c126516dc896618055..e379b0fa936f092c659a98fdbb982be082cfc69e 100644 (file)
@@ -972,6 +972,11 @@ static int port_bridge_leave(struct net_device *netdev)
        return err;
 }
 
+static bool ethsw_port_dev_check(const struct net_device *netdev)
+{
+       return netdev->netdev_ops == &ethsw_port_ops;
+}
+
 static int port_netdevice_event(struct notifier_block *unused,
                                unsigned long event, void *ptr)
 {
@@ -980,7 +985,7 @@ static int port_netdevice_event(struct notifier_block *unused,
        struct net_device *upper_dev;
        int err = 0;
 
-       if (netdev->netdev_ops != &ethsw_port_ops)
+       if (!ethsw_port_dev_check(netdev))
                return NOTIFY_DONE;
 
        /* Handle just upper dev link/unlink for the moment */