1 /* Broadcom NetXtreme-C/E network driver. 2 * 3 * Copyright (c) 2014-2016 Broadcom Corporation 4 * 5 * This program is free software; you can redistribute it and/or modify 6 * it under the terms of the GNU General Public License as published by 7 * the Free Software Foundation. 8 */ 9 10 #ifndef BNXT_DCB_H 11 #define BNXT_DCB_H 12 13 #include <net/dcbnl.h> 14 15 struct bnxt_dcb { 16 u8 max_tc; 17 struct ieee_pfc *ieee_pfc; 18 struct ieee_ets *ieee_ets; 19 u8 dcbx_cap; 20 u8 default_pri; 21 }; 22 23 struct bnxt_cos2bw_cfg { 24 u8 pad[3]; 25 u8 queue_id; 26 __le32 min_bw; 27 __le32 max_bw; 28 u8 tsa; 29 u8 pri_lvl; 30 u8 bw_weight; 31 u8 unused; 32 }; 33 34 #define BNXT_LLQ(q_profile) \ 35 ((q_profile) == QUEUE_QPORTCFG_RESP_QUEUE_ID0_SERVICE_PROFILE_LOSSLESS) 36 37 #define HWRM_STRUCT_DATA_SUBTYPE_HOST_OPERATIONAL 0x0300 38 39 void bnxt_dcb_init(struct bnxt *bp); 40 void bnxt_dcb_free(struct bnxt *bp); 41 #endif 42