Changeset View
Changeset View
Standalone View
Standalone View
sys/dev/ixgbe/ixgbe_dcb_82599.c
Show First 20 Lines • Show All 105 Lines • ▼ Show 20 Lines | s32 ixgbe_dcb_get_pfc_stats_82599(struct ixgbe_hw *hw, | ||||
} | } | ||||
return IXGBE_SUCCESS; | return IXGBE_SUCCESS; | ||||
} | } | ||||
/** | /** | ||||
* ixgbe_dcb_config_rx_arbiter_82599 - Config Rx Data arbiter | * ixgbe_dcb_config_rx_arbiter_82599 - Config Rx Data arbiter | ||||
* @hw: pointer to hardware structure | * @hw: pointer to hardware structure | ||||
* @dcb_config: pointer to ixgbe_dcb_config structure | * @refill: refill credits index by traffic class | ||||
* @max: max credits index by traffic class | |||||
* @bwg_id: bandwidth grouping indexed by traffic class | |||||
* @tsa: transmission selection algorithm indexed by traffic class | |||||
* @map: priority to tc assignments indexed by priority | |||||
* | * | ||||
* Configure Rx Packet Arbiter and credits for each traffic class. | * Configure Rx Packet Arbiter and credits for each traffic class. | ||||
*/ | */ | ||||
s32 ixgbe_dcb_config_rx_arbiter_82599(struct ixgbe_hw *hw, u16 *refill, | s32 ixgbe_dcb_config_rx_arbiter_82599(struct ixgbe_hw *hw, u16 *refill, | ||||
u16 *max, u8 *bwg_id, u8 *tsa, | u16 *max, u8 *bwg_id, u8 *tsa, | ||||
u8 *map) | u8 *map) | ||||
{ | { | ||||
u32 reg = 0; | u32 reg = 0; | ||||
▲ Show 20 Lines • Show All 42 Lines • ▼ Show 20 Lines | s32 ixgbe_dcb_config_rx_arbiter_82599(struct ixgbe_hw *hw, u16 *refill, | ||||
IXGBE_WRITE_REG(hw, IXGBE_RTRPCS, reg); | IXGBE_WRITE_REG(hw, IXGBE_RTRPCS, reg); | ||||
return IXGBE_SUCCESS; | return IXGBE_SUCCESS; | ||||
} | } | ||||
/** | /** | ||||
* ixgbe_dcb_config_tx_desc_arbiter_82599 - Config Tx Desc. arbiter | * ixgbe_dcb_config_tx_desc_arbiter_82599 - Config Tx Desc. arbiter | ||||
* @hw: pointer to hardware structure | * @hw: pointer to hardware structure | ||||
* @dcb_config: pointer to ixgbe_dcb_config structure | * @refill: refill credits index by traffic class | ||||
* @max: max credits index by traffic class | |||||
* @bwg_id: bandwidth grouping indexed by traffic class | |||||
* @tsa: transmission selection algorithm indexed by traffic class | |||||
* | * | ||||
* Configure Tx Descriptor Arbiter and credits for each traffic class. | * Configure Tx Descriptor Arbiter and credits for each traffic class. | ||||
*/ | */ | ||||
s32 ixgbe_dcb_config_tx_desc_arbiter_82599(struct ixgbe_hw *hw, u16 *refill, | s32 ixgbe_dcb_config_tx_desc_arbiter_82599(struct ixgbe_hw *hw, u16 *refill, | ||||
u16 *max, u8 *bwg_id, u8 *tsa) | u16 *max, u8 *bwg_id, u8 *tsa) | ||||
{ | { | ||||
u32 reg, max_credits; | u32 reg, max_credits; | ||||
u8 i; | u8 i; | ||||
Show All 28 Lines | s32 ixgbe_dcb_config_tx_desc_arbiter_82599(struct ixgbe_hw *hw, u16 *refill, | ||||
IXGBE_WRITE_REG(hw, IXGBE_RTTDCS, reg); | IXGBE_WRITE_REG(hw, IXGBE_RTTDCS, reg); | ||||
return IXGBE_SUCCESS; | return IXGBE_SUCCESS; | ||||
} | } | ||||
/** | /** | ||||
* ixgbe_dcb_config_tx_data_arbiter_82599 - Config Tx Data arbiter | * ixgbe_dcb_config_tx_data_arbiter_82599 - Config Tx Data arbiter | ||||
* @hw: pointer to hardware structure | * @hw: pointer to hardware structure | ||||
* @dcb_config: pointer to ixgbe_dcb_config structure | * @refill: refill credits index by traffic class | ||||
* @max: max credits index by traffic class | |||||
* @bwg_id: bandwidth grouping indexed by traffic class | |||||
* @tsa: transmission selection algorithm indexed by traffic class | |||||
* @map: priority to tc assignments indexed by priority | |||||
* | * | ||||
* Configure Tx Packet Arbiter and credits for each traffic class. | * Configure Tx Packet Arbiter and credits for each traffic class. | ||||
*/ | */ | ||||
s32 ixgbe_dcb_config_tx_data_arbiter_82599(struct ixgbe_hw *hw, u16 *refill, | s32 ixgbe_dcb_config_tx_data_arbiter_82599(struct ixgbe_hw *hw, u16 *refill, | ||||
u16 *max, u8 *bwg_id, u8 *tsa, | u16 *max, u8 *bwg_id, u8 *tsa, | ||||
u8 *map) | u8 *map) | ||||
{ | { | ||||
u32 reg; | u32 reg; | ||||
▲ Show 20 Lines • Show All 131 Lines • ▼ Show 20 Lines | s32 ixgbe_dcb_config_pfc_82599(struct ixgbe_hw *hw, u8 pfc_en, u8 *map) | ||||
IXGBE_WRITE_REG(hw, IXGBE_FCRTV, hw->fc.pause_time / 2); | IXGBE_WRITE_REG(hw, IXGBE_FCRTV, hw->fc.pause_time / 2); | ||||
return IXGBE_SUCCESS; | return IXGBE_SUCCESS; | ||||
} | } | ||||
/** | /** | ||||
* ixgbe_dcb_config_tc_stats_82599 - Config traffic class statistics | * ixgbe_dcb_config_tc_stats_82599 - Config traffic class statistics | ||||
* @hw: pointer to hardware structure | * @hw: pointer to hardware structure | ||||
* @dcb_config: pointer to ixgbe_dcb_config structure | |||||
* | * | ||||
* Configure queue statistics registers, all queues belonging to same traffic | * Configure queue statistics registers, all queues belonging to same traffic | ||||
* class uses a single set of queue statistics counters. | * class uses a single set of queue statistics counters. | ||||
*/ | */ | ||||
s32 ixgbe_dcb_config_tc_stats_82599(struct ixgbe_hw *hw, | s32 ixgbe_dcb_config_tc_stats_82599(struct ixgbe_hw *hw, | ||||
struct ixgbe_dcb_config *dcb_config) | struct ixgbe_dcb_config *dcb_config) | ||||
{ | { | ||||
u32 reg = 0; | u32 reg = 0; | ||||
▲ Show 20 Lines • Show All 194 Lines • ▼ Show 20 Lines | s32 ixgbe_dcb_config_82599(struct ixgbe_hw *hw, | ||||
IXGBE_WRITE_REG(hw, IXGBE_SECTXMINIFG, reg); | IXGBE_WRITE_REG(hw, IXGBE_SECTXMINIFG, reg); | ||||
return IXGBE_SUCCESS; | return IXGBE_SUCCESS; | ||||
} | } | ||||
/** | /** | ||||
* ixgbe_dcb_hw_config_82599 - Configure and enable DCB | * ixgbe_dcb_hw_config_82599 - Configure and enable DCB | ||||
* @hw: pointer to hardware structure | * @hw: pointer to hardware structure | ||||
* @dcb_config: pointer to ixgbe_dcb_config structure | * @link_speed: unused | ||||
* @refill: refill credits index by traffic class | |||||
* @max: max credits index by traffic class | |||||
* @bwg_id: bandwidth grouping indexed by traffic class | |||||
* @tsa: transmission selection algorithm indexed by traffic class | |||||
* @map: priority to tc assignments indexed by priority | |||||
* | * | ||||
* Configure dcb settings and enable dcb mode. | * Configure dcb settings and enable dcb mode. | ||||
*/ | */ | ||||
s32 ixgbe_dcb_hw_config_82599(struct ixgbe_hw *hw, int link_speed, | s32 ixgbe_dcb_hw_config_82599(struct ixgbe_hw *hw, int link_speed, | ||||
u16 *refill, u16 *max, u8 *bwg_id, u8 *tsa, | u16 *refill, u16 *max, u8 *bwg_id, u8 *tsa, | ||||
u8 *map) | u8 *map) | ||||
{ | { | ||||
UNREFERENCED_1PARAMETER(link_speed); | UNREFERENCED_1PARAMETER(link_speed); | ||||
Show All 11 Lines |