diff options
author | Stephen Hemminger <shemminger@osdl.org> | 2006-10-17 13:24:13 -0400 |
---|---|---|
committer | Stephen Hemminger <shemminger@osdl.org> | 2006-10-17 13:24:13 -0400 |
commit | 16ad91e1c686734aaa5664cd08af0b5e9bf3af61 (patch) | |
tree | 2e4c5d3e4932c66d2c00eddee81b2df0667970fe /drivers/net/sky2.h | |
parent | 7800fddcd05a7dc89276389b96664af4f7890ea7 (diff) |
sky2: flow control setting fixes
The result of flow control negotiation should not limit the next
negotiatition. If board is plugged into an old half duplex 10Mbit port,
without pause, then replugged into a gigabit port, it should negotiate
what is desired, not inherit that last negotiation.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Diffstat (limited to 'drivers/net/sky2.h')
-rw-r--r-- | drivers/net/sky2.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/net/sky2.h b/drivers/net/sky2.h index 0a8d8210679a..3f05492da703 100644 --- a/drivers/net/sky2.h +++ b/drivers/net/sky2.h | |||
@@ -1828,6 +1828,13 @@ struct rx_ring_info { | |||
1828 | dma_addr_t frag_addr[ETH_JUMBO_MTU >> PAGE_SHIFT]; | 1828 | dma_addr_t frag_addr[ETH_JUMBO_MTU >> PAGE_SHIFT]; |
1829 | }; | 1829 | }; |
1830 | 1830 | ||
1831 | enum flow_control { | ||
1832 | FC_NONE = 0, | ||
1833 | FC_TX = 1, | ||
1834 | FC_RX = 2, | ||
1835 | FC_BOTH = 3, | ||
1836 | }; | ||
1837 | |||
1831 | struct sky2_port { | 1838 | struct sky2_port { |
1832 | struct sky2_hw *hw; | 1839 | struct sky2_hw *hw; |
1833 | struct net_device *netdev; | 1840 | struct net_device *netdev; |
@@ -1864,9 +1871,9 @@ struct sky2_port { | |||
1864 | u16 speed; /* SPEED_1000, SPEED_100, ... */ | 1871 | u16 speed; /* SPEED_1000, SPEED_100, ... */ |
1865 | u8 autoneg; /* AUTONEG_ENABLE, AUTONEG_DISABLE */ | 1872 | u8 autoneg; /* AUTONEG_ENABLE, AUTONEG_DISABLE */ |
1866 | u8 duplex; /* DUPLEX_HALF, DUPLEX_FULL */ | 1873 | u8 duplex; /* DUPLEX_HALF, DUPLEX_FULL */ |
1867 | u8 rx_pause; | ||
1868 | u8 tx_pause; | ||
1869 | u8 rx_csum; | 1874 | u8 rx_csum; |
1875 | enum flow_control flow_mode; | ||
1876 | enum flow_control flow_status; | ||
1870 | 1877 | ||
1871 | struct net_device_stats net_stats; | 1878 | struct net_device_stats net_stats; |
1872 | 1879 | ||