tg3: Make 1000Base-X FC resolution look like 1000T
This patch changes tg3's 1000Base-X flow control resolution to look like the 1000Base-T flow control resolution code. Signed-off-by: Matt Carlson <mcarlson@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Родитель
c796984f2f
Коммит
f3791cdf33
|
@ -1706,18 +1706,12 @@ static u8 tg3_resolve_flowctrl_1000X(u16 lcladv, u16 rmtadv)
|
|||
{
|
||||
u8 cap = 0;
|
||||
|
||||
if (lcladv & ADVERTISE_1000XPAUSE) {
|
||||
if (lcladv & ADVERTISE_1000XPSE_ASYM) {
|
||||
if (rmtadv & LPA_1000XPAUSE)
|
||||
cap = FLOW_CTRL_TX | FLOW_CTRL_RX;
|
||||
else if (rmtadv & LPA_1000XPAUSE_ASYM)
|
||||
cap = FLOW_CTRL_RX;
|
||||
} else {
|
||||
if (rmtadv & LPA_1000XPAUSE)
|
||||
cap = FLOW_CTRL_TX | FLOW_CTRL_RX;
|
||||
}
|
||||
} else if (lcladv & ADVERTISE_1000XPSE_ASYM) {
|
||||
if ((rmtadv & LPA_1000XPAUSE) && (rmtadv & LPA_1000XPAUSE_ASYM))
|
||||
if (lcladv & rmtadv & ADVERTISE_1000XPAUSE) {
|
||||
cap = FLOW_CTRL_TX | FLOW_CTRL_RX;
|
||||
} else if (lcladv & rmtadv & ADVERTISE_1000XPSE_ASYM) {
|
||||
if (lcladv & ADVERTISE_1000XPAUSE)
|
||||
cap = FLOW_CTRL_RX;
|
||||
if (rmtadv & ADVERTISE_1000XPAUSE)
|
||||
cap = FLOW_CTRL_TX;
|
||||
}
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче