Commit 95625b88 authored by Scott Feldman's avatar Scott Feldman Committed by Stephen Hemminger

[e1000] Add PHY master/slave #define override

* Add PHY master/slave #define override to address link issues
  with 82541/7 (rev2) against some low-end switches.  Forcing
  master will improve the time-to-link against these switches.
parent 566f19e8
...@@ -124,6 +124,11 @@ struct e1000_adapter; ...@@ -124,6 +124,11 @@ struct e1000_adapter;
#define AUTO_ALL_MODES 0 #define AUTO_ALL_MODES 0
#define E1000_EEPROM_APME 0x0400 #define E1000_EEPROM_APME 0x0400
#ifndef E1000_MASTER_SLAVE
/* Switch to override PHY master/slave setting */
#define E1000_MASTER_SLAVE e1000_ms_hw_default
#endif
/* only works for sizes that are powers of 2 */ /* only works for sizes that are powers of 2 */
#define E1000_ROUNDUP(i, size) ((i) = (((i) + (size) - 1) & ~((size) - 1))) #define E1000_ROUNDUP(i, size) ((i) = (((i) + (size) - 1) & ~((size) - 1)))
......
...@@ -641,6 +641,7 @@ e1000_sw_init(struct e1000_adapter *adapter) ...@@ -641,6 +641,7 @@ e1000_sw_init(struct e1000_adapter *adapter)
if(hw->media_type == e1000_media_type_copper) { if(hw->media_type == e1000_media_type_copper) {
hw->mdix = AUTO_ALL_MODES; hw->mdix = AUTO_ALL_MODES;
hw->disable_polarity_correction = FALSE; hw->disable_polarity_correction = FALSE;
hw->master_slave = E1000_MASTER_SLAVE;
} }
atomic_set(&adapter->irq_sem, 1); atomic_set(&adapter->irq_sem, 1);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment