diff options
-rw-r--r-- | drivers/net/e1000e/ich8lan.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/net/e1000e/ich8lan.c b/drivers/net/e1000e/ich8lan.c index b69c8190da30..9e23f50fb9cd 100644 --- a/drivers/net/e1000e/ich8lan.c +++ b/drivers/net/e1000e/ich8lan.c | |||
@@ -2348,8 +2348,13 @@ static s32 e1000_setup_link_ich8lan(struct e1000_hw *hw) | |||
2348 | * the default flow control setting, so we explicitly | 2348 | * the default flow control setting, so we explicitly |
2349 | * set it to full. | 2349 | * set it to full. |
2350 | */ | 2350 | */ |
2351 | if (hw->fc.requested_mode == e1000_fc_default) | 2351 | if (hw->fc.requested_mode == e1000_fc_default) { |
2352 | hw->fc.requested_mode = e1000_fc_full; | 2352 | /* Workaround h/w hang when Tx flow control enabled */ |
2353 | if (hw->mac.type == e1000_pchlan) | ||
2354 | hw->fc.requested_mode = e1000_fc_rx_pause; | ||
2355 | else | ||
2356 | hw->fc.requested_mode = e1000_fc_full; | ||
2357 | } | ||
2353 | 2358 | ||
2354 | /* | 2359 | /* |
2355 | * Save off the requested flow control mode for use later. Depending | 2360 | * Save off the requested flow control mode for use later. Depending |