From 67e10d757f88d9f2e0a0be8c96c01d951a2fca6e Mon Sep 17 00:00:00 2001 From: John Crispin Date: Wed, 23 Dec 2015 19:24:30 +0000 Subject: swconfig: add SWITCH_TYPE_LINK and support sending link info to user space MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit So far we were sending link data as a string. It got some drawbacks: 1) Didn't allow writing clean user space apps reading link state. It was needed to do some screen scraping. 2) Forced whole PORT_LINK communication to be string based. Adding support for *setting* port link required passing string and parting it in the kernel space. Signed-off-by: Rafał Miłecki SVN-Revision: 47997 --- target/linux/generic/files/include/uapi/linux/switch.h | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'target/linux/generic/files/include/uapi') diff --git a/target/linux/generic/files/include/uapi/linux/switch.h b/target/linux/generic/files/include/uapi/linux/switch.h index a59b23953a..c0071a415a 100644 --- a/target/linux/generic/files/include/uapi/linux/switch.h +++ b/target/linux/generic/files/include/uapi/linux/switch.h @@ -50,6 +50,7 @@ enum { SWITCH_ATTR_OP_VALUE_INT, SWITCH_ATTR_OP_VALUE_STR, SWITCH_ATTR_OP_VALUE_PORTS, + SWITCH_ATTR_OP_VALUE_LINK, SWITCH_ATTR_OP_DESCRIPTION, /* port lists */ SWITCH_ATTR_PORT, @@ -86,6 +87,7 @@ enum switch_val_type { SWITCH_TYPE_INT, SWITCH_TYPE_STRING, SWITCH_TYPE_PORTS, + SWITCH_TYPE_LINK, SWITCH_TYPE_NOVAL, }; @@ -97,6 +99,20 @@ enum { SWITCH_PORT_ATTR_MAX }; +/* link nested attributes */ +enum { + SWITCH_LINK_UNSPEC, + SWITCH_LINK_FLAG_LINK, + SWITCH_LINK_FLAG_DUPLEX, + SWITCH_LINK_FLAG_ANEG, + SWITCH_LINK_FLAG_TX_FLOW, + SWITCH_LINK_FLAG_RX_FLOW, + SWITCH_LINK_SPEED, + SWITCH_LINK_FLAG_EEE_100BASET, + SWITCH_LINK_FLAG_EEE_1000BASET, + SWITCH_LINK_ATTR_MAX, +}; + #define SWITCH_ATTR_DEFAULTS_OFFSET 0x1000 -- cgit v1.2.3