diff options
author | Shmulik Ravid <shmulikr@broadcom.com> | 2011-02-27 00:04:31 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-03-03 00:58:54 -0500 |
commit | eed84713bc47ce2f7d675914f297ad9b6227a587 (patch) | |
tree | 27da816e2d37163409639639c37171bb4c53945c /include/linux/dcbnl.h | |
parent | 23b41168fc942a4a041325a04ecc1bd17d031a3e (diff) |
dcbnl: add support for retrieving peer configuration - ieee
These 2 patches add the support for retrieving the remote or peer DCBX
configuration via dcbnl for embedded DCBX stacks. The peer configuration
is part of the DCBX MIB and is useful for debugging and diagnostics of
the overall DCB configuration. The first patch add this support for IEEE
802.1Qaz standard the second patch add the same support for the older
CEE standard. Diff for v2 - the peer-app-info is CEE specific.
Signed-off-by: Shmulik Ravid <shmulikr@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/dcbnl.h')
-rw-r--r-- | include/linux/dcbnl.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/include/linux/dcbnl.h b/include/linux/dcbnl.h index 4c5b26e0cc48..2542685f8b3e 100644 --- a/include/linux/dcbnl.h +++ b/include/linux/dcbnl.h | |||
@@ -110,6 +110,20 @@ struct dcb_app { | |||
110 | __u16 protocol; | 110 | __u16 protocol; |
111 | }; | 111 | }; |
112 | 112 | ||
113 | /** | ||
114 | * struct dcb_peer_app_info - APP feature information sent by the peer | ||
115 | * | ||
116 | * @willing: willing bit in the peer APP tlv | ||
117 | * @error: error bit in the peer APP tlv | ||
118 | * | ||
119 | * In addition to this information the full peer APP tlv also contains | ||
120 | * a table of 'app_count' APP objects defined above. | ||
121 | */ | ||
122 | struct dcb_peer_app_info { | ||
123 | __u8 willing; | ||
124 | __u8 error; | ||
125 | }; | ||
126 | |||
113 | struct dcbmsg { | 127 | struct dcbmsg { |
114 | __u8 dcb_family; | 128 | __u8 dcb_family; |
115 | __u8 cmd; | 129 | __u8 cmd; |
@@ -235,11 +249,25 @@ enum dcbnl_attrs { | |||
235 | DCB_ATTR_MAX = __DCB_ATTR_ENUM_MAX - 1, | 249 | DCB_ATTR_MAX = __DCB_ATTR_ENUM_MAX - 1, |
236 | }; | 250 | }; |
237 | 251 | ||
252 | /** | ||
253 | * enum ieee_attrs - IEEE 802.1Qaz get/set attributes | ||
254 | * | ||
255 | * @DCB_ATTR_IEEE_UNSPEC: unspecified | ||
256 | * @DCB_ATTR_IEEE_ETS: negotiated ETS configuration | ||
257 | * @DCB_ATTR_IEEE_PFC: negotiated PFC configuration | ||
258 | * @DCB_ATTR_IEEE_APP_TABLE: negotiated APP configuration | ||
259 | * @DCB_ATTR_IEEE_PEER_ETS: peer ETS configuration - get only | ||
260 | * @DCB_ATTR_IEEE_PEER_PFC: peer PFC configuration - get only | ||
261 | * @DCB_ATTR_IEEE_PEER_APP: peer APP tlv - get only | ||
262 | */ | ||
238 | enum ieee_attrs { | 263 | enum ieee_attrs { |
239 | DCB_ATTR_IEEE_UNSPEC, | 264 | DCB_ATTR_IEEE_UNSPEC, |
240 | DCB_ATTR_IEEE_ETS, | 265 | DCB_ATTR_IEEE_ETS, |
241 | DCB_ATTR_IEEE_PFC, | 266 | DCB_ATTR_IEEE_PFC, |
242 | DCB_ATTR_IEEE_APP_TABLE, | 267 | DCB_ATTR_IEEE_APP_TABLE, |
268 | DCB_ATTR_IEEE_PEER_ETS, | ||
269 | DCB_ATTR_IEEE_PEER_PFC, | ||
270 | DCB_ATTR_IEEE_PEER_APP, | ||
243 | __DCB_ATTR_IEEE_MAX | 271 | __DCB_ATTR_IEEE_MAX |
244 | }; | 272 | }; |
245 | #define DCB_ATTR_IEEE_MAX (__DCB_ATTR_IEEE_MAX - 1) | 273 | #define DCB_ATTR_IEEE_MAX (__DCB_ATTR_IEEE_MAX - 1) |