summaryrefslogtreecommitdiffstats
path: root/include/net/switchdev.h
diff options
context:
space:
mode:
authorScott Feldman <sfeldma@gmail.com>2015-05-10 09:47:53 -0700
committerDavid S. Miller <davem@davemloft.net>2015-05-12 18:43:53 -0400
commit6fc3016da7c1587aa59e71f8c4dbc4cf1343eab2 (patch)
treeca3cfe8d396746a8ac897df94ac9fc12c3a2da60 /include/net/switchdev.h
parent491d0f1533ac750260406dbf84cdad44fd3d8a29 (diff)
downloadop-kernel-dev-6fc3016da7c1587aa59e71f8c4dbc4cf1343eab2.zip
op-kernel-dev-6fc3016da7c1587aa59e71f8c4dbc4cf1343eab2.tar.gz
switchdev: add port vlan obj
VLAN obj has flags (PVID and untagged) as well as start and end vid ranges. The switchdev driver can optimize programing the device using the ranges. Signed-off-by: Scott Feldman <sfeldma@gmail.com> Acked-by: Jiri Pirko <jiri@resnulli.us> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/switchdev.h')
-rw-r--r--include/net/switchdev.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/include/net/switchdev.h b/include/net/switchdev.h
index 4f43300..e598c2d 100644
--- a/include/net/switchdev.h
+++ b/include/net/switchdev.h
@@ -43,11 +43,19 @@ struct fib_info;
enum switchdev_obj_id {
SWITCHDEV_OBJ_UNDEFINED,
+ SWITCHDEV_OBJ_PORT_VLAN,
};
struct switchdev_obj {
enum switchdev_obj_id id;
enum switchdev_trans trans;
+ union {
+ struct switchdev_obj_vlan { /* PORT_VLAN */
+ u16 flags;
+ u16 vid_start;
+ u16 vid_end;
+ } vlan;
+ };
};
/**
OpenPOWER on IntegriCloud