diff options
author | blogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2013-04-09 14:19:09 +0000 |
---|---|---|
committer | blogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2013-04-09 14:19:09 +0000 |
commit | ef55a217d20e3910d4a37af41447cfffb1178591 (patch) | |
tree | ffdec2659be05cb044abc270c55e4af7c6961f5f /target/linux/generic/files/include | |
parent | 6b445de686790a3268d0264a67a0408a0646e2c9 (diff) |
[swconfig] allow loading port maps from OF
Signed-off-by: John Crispin <blogic@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@36283 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/generic/files/include')
-rw-r--r-- | target/linux/generic/files/include/linux/switch.h | 7 | ||||
-rw-r--r-- | target/linux/generic/files/include/uapi/linux/switch.h | 9 |
2 files changed, 16 insertions, 0 deletions
diff --git a/target/linux/generic/files/include/linux/switch.h b/target/linux/generic/files/include/linux/switch.h index bd4fae4a17..b53431e0a1 100644 --- a/target/linux/generic/files/include/linux/switch.h +++ b/target/linux/generic/files/include/linux/switch.h @@ -98,6 +98,7 @@ struct switch_dev_ops { }; struct switch_dev { + struct device_node *of_node; const struct switch_dev_ops *ops; /* will be automatically filled */ char devname[IFNAMSIZ]; @@ -118,6 +119,7 @@ struct switch_dev { struct mutex sw_mutex; struct switch_port *portbuf; + struct switch_portmap *portmap; char buf[128]; @@ -131,6 +133,11 @@ struct switch_port { u32 flags; }; +struct switch_portmap { + u32 virt; + const char *s; +}; + struct switch_val { const struct switch_attr *attr; int port_vlan; diff --git a/target/linux/generic/files/include/uapi/linux/switch.h b/target/linux/generic/files/include/uapi/linux/switch.h index 581caf168a..a59b23953a 100644 --- a/target/linux/generic/files/include/uapi/linux/switch.h +++ b/target/linux/generic/files/include/uapi/linux/switch.h @@ -39,6 +39,7 @@ enum { SWITCH_ATTR_NAME, SWITCH_ATTR_VLANS, SWITCH_ATTR_PORTS, + SWITCH_ATTR_PORTMAP, SWITCH_ATTR_CPU_PORT, /* attributes */ SWITCH_ATTR_OP_ID, @@ -55,6 +56,14 @@ enum { SWITCH_ATTR_MAX }; +enum { + /* port map */ + SWITCH_PORTMAP_PORTS, + SWITCH_PORTMAP_SEGMENT, + SWITCH_PORTMAP_VIRT, + SWITCH_PORTMAP_MAX +}; + /* commands */ enum { SWITCH_CMD_UNSPEC, |