diff options
author | Jiri Pirko <jiri@resnulli.us> | 2014-11-28 14:34:17 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-12-02 20:01:20 -0800 |
commit | 007f790c8276271de26416f90d55561bcc96588a (patch) | |
tree | 03a55b7897402e9daa8af64ea2c81d5236f77367 /include/net/switchdev.h | |
parent | 02637fce3e0103ba086b9c33b6d529e69460e4b6 (diff) | |
download | op-kernel-dev-007f790c8276271de26416f90d55561bcc96588a.zip op-kernel-dev-007f790c8276271de26416f90d55561bcc96588a.tar.gz |
net: introduce generic switch devices support
The goal of this is to provide a possibility to support various switch
chips. Drivers should implement relevant ndos to do so. Now there is
only one ndo defined:
- for getting physical switch id is in place.
Note that user can use random port netdevice to access the switch.
Signed-off-by: Jiri Pirko <jiri@resnulli.us>
Reviewed-by: Thomas Graf <tgraf@suug.ch>
Acked-by: Andy Gospodarek <gospo@cumulusnetworks.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/switchdev.h')
-rw-r--r-- | include/net/switchdev.h | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/include/net/switchdev.h b/include/net/switchdev.h new file mode 100644 index 0000000..7a52360 --- /dev/null +++ b/include/net/switchdev.h @@ -0,0 +1,30 @@ +/* + * include/net/switchdev.h - Switch device API + * Copyright (c) 2014 Jiri Pirko <jiri@resnulli.us> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + */ +#ifndef _LINUX_SWITCHDEV_H_ +#define _LINUX_SWITCHDEV_H_ + +#include <linux/netdevice.h> + +#ifdef CONFIG_NET_SWITCHDEV + +int netdev_switch_parent_id_get(struct net_device *dev, + struct netdev_phys_item_id *psid); + +#else + +static inline int netdev_switch_parent_id_get(struct net_device *dev, + struct netdev_phys_item_id *psid) +{ + return -EOPNOTSUPP; +} + +#endif + +#endif /* _LINUX_SWITCHDEV_H_ */ |