aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/sky2.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/sky2.h')
-rw-r--r--drivers/net/sky2.h26
1 files changed, 19 insertions, 7 deletions
diff --git a/drivers/net/sky2.h b/drivers/net/sky2.h
index 43d2accf60e1..7760545edbf2 100644
--- a/drivers/net/sky2.h
+++ b/drivers/net/sky2.h
@@ -383,8 +383,13 @@ enum {
383 CHIP_REV_YU_EC_A2 = 1, /* Chip Rev. for Yukon-EC A2 */ 383 CHIP_REV_YU_EC_A2 = 1, /* Chip Rev. for Yukon-EC A2 */
384 CHIP_REV_YU_EC_A3 = 2, /* Chip Rev. for Yukon-EC A3 */ 384 CHIP_REV_YU_EC_A3 = 2, /* Chip Rev. for Yukon-EC A3 */
385 385
386 CHIP_REV_YU_EC_U_A0 = 0, 386 CHIP_REV_YU_EC_U_A0 = 1,
387 CHIP_REV_YU_EC_U_A1 = 1, 387 CHIP_REV_YU_EC_U_A1 = 2,
388 CHIP_REV_YU_EC_U_B0 = 3,
389
390 CHIP_REV_YU_FE_A1 = 1,
391 CHIP_REV_YU_FE_A2 = 2,
392
388}; 393};
389 394
390/* B2_Y2_CLK_GATE 8 bit Clock Gating (Yukon-2 only) */ 395/* B2_Y2_CLK_GATE 8 bit Clock Gating (Yukon-2 only) */
@@ -1576,7 +1581,7 @@ enum {
1576 1581
1577 GMR_FS_ANY_ERR = GMR_FS_RX_FF_OV | GMR_FS_CRC_ERR | 1582 GMR_FS_ANY_ERR = GMR_FS_RX_FF_OV | GMR_FS_CRC_ERR |
1578 GMR_FS_FRAGMENT | GMR_FS_LONG_ERR | 1583 GMR_FS_FRAGMENT | GMR_FS_LONG_ERR |
1579 GMR_FS_MII_ERR | GMR_FS_BAD_FC | 1584 GMR_FS_MII_ERR | GMR_FS_GOOD_FC | GMR_FS_BAD_FC |
1580 GMR_FS_UN_SIZE | GMR_FS_JABBER, 1585 GMR_FS_UN_SIZE | GMR_FS_JABBER,
1581}; 1586};
1582 1587
@@ -1828,6 +1833,13 @@ struct rx_ring_info {
1828 dma_addr_t frag_addr[ETH_JUMBO_MTU >> PAGE_SHIFT]; 1833 dma_addr_t frag_addr[ETH_JUMBO_MTU >> PAGE_SHIFT];
1829}; 1834};
1830 1835
1836enum flow_control {
1837 FC_NONE = 0,
1838 FC_TX = 1,
1839 FC_RX = 2,
1840 FC_BOTH = 3,
1841};
1842
1831struct sky2_port { 1843struct sky2_port {
1832 struct sky2_hw *hw; 1844 struct sky2_hw *hw;
1833 struct net_device *netdev; 1845 struct net_device *netdev;
@@ -1860,13 +1872,13 @@ struct sky2_port {
1860 1872
1861 dma_addr_t rx_le_map; 1873 dma_addr_t rx_le_map;
1862 dma_addr_t tx_le_map; 1874 dma_addr_t tx_le_map;
1863 u32 advertising; /* ADVERTISED_ bits */ 1875 u16 advertising; /* ADVERTISED_ bits */
1864 u16 speed; /* SPEED_1000, SPEED_100, ... */ 1876 u16 speed; /* SPEED_1000, SPEED_100, ... */
1865 u8 autoneg; /* AUTONEG_ENABLE, AUTONEG_DISABLE */ 1877 u8 autoneg; /* AUTONEG_ENABLE, AUTONEG_DISABLE */
1866 u8 duplex; /* DUPLEX_HALF, DUPLEX_FULL */ 1878 u8 duplex; /* DUPLEX_HALF, DUPLEX_FULL */
1867 u8 rx_pause;
1868 u8 tx_pause;
1869 u8 rx_csum; 1879 u8 rx_csum;
1880 enum flow_control flow_mode;
1881 enum flow_control flow_status;
1870 1882
1871 struct net_device_stats net_stats; 1883 struct net_device_stats net_stats;
1872 1884
@@ -1888,7 +1900,7 @@ struct sky2_hw {
1888 dma_addr_t st_dma; 1900 dma_addr_t st_dma;
1889 1901
1890 struct timer_list idle_timer; 1902 struct timer_list idle_timer;
1891 int msi_detected; 1903 int msi;
1892 wait_queue_head_t msi_wait; 1904 wait_queue_head_t msi_wait;
1893}; 1905};
1894 1906