Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8d7b0278 authored by Ariel Elior's avatar Ariel Elior Committed by David S. Miller
Browse files

bnx2x: Support Queue Per Cos in 5771xx devices



Enable the use of up to three hardware queues for transmission. The queues
are always dequed round robin (i.e. strict priority, PFC and ETS are not
supported). This does allow the allocation of a seperate HW queue for low
volume, high priority traffic which will be serviced more promptly.

Signed-off-by: default avatarAriel Elior <ariele@broadcom.com>
Signed-off-by: default avatarEilon Greenstein <eilong@broadcom.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent d6cb17d5
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -984,10 +984,11 @@ static inline int bnx2x_func_start(struct bnx2x *bp)
	/* Function parameters */
	start_params->mf_mode = bp->mf_mode;
	start_params->sd_vlan_tag = bp->mf_ov;
	if (CHIP_IS_E1x(bp))
		start_params->network_cos_mode = OVERRIDE_COS;
	else

	if (CHIP_IS_E2(bp) || CHIP_IS_E3(bp))
		start_params->network_cos_mode = STATIC_COS;
	else /* CHIP_IS_E1X */
		start_params->network_cos_mode = FW_WRR;

	return bnx2x_func_state_change(bp, &func_params);
}
+2 −2
Original line number Diff line number Diff line
@@ -803,10 +803,10 @@ enum bnx2x_q_type {
};

#define BNX2X_PRIMARY_CID_INDEX			0
#define BNX2X_MULTI_TX_COS_E1X			1
#define BNX2X_MULTI_TX_COS_E1X			3 /* QM only */
#define BNX2X_MULTI_TX_COS_E2_E3A0		2
#define BNX2X_MULTI_TX_COS_E3B0			3
#define BNX2X_MULTI_TX_COS			BNX2X_MULTI_TX_COS_E3B0
#define BNX2X_MULTI_TX_COS			3 /* Maximum possible */


struct bnx2x_queue_init_params {