aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/dcbnl.h
diff options
context:
space:
mode:
authorShmulik Ravid <shmulikr@broadcom.com>2011-02-27 00:04:31 -0500
committerDavid S. Miller <davem@davemloft.net>2011-03-03 00:58:54 -0500
commiteed84713bc47ce2f7d675914f297ad9b6227a587 (patch)
tree27da816e2d37163409639639c37171bb4c53945c /include/linux/dcbnl.h
parent23b41168fc942a4a041325a04ecc1bd17d031a3e (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.h28
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 */
122struct dcb_peer_app_info {
123 __u8 willing;
124 __u8 error;
125};
126
113struct dcbmsg { 127struct 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 */
238enum ieee_attrs { 263enum 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)