Make ar9170 use common ath reg code
[safe/jmp/linux-2.6] / drivers / net / e1000e / hw.h
index ac1efb9..d8b8229 100644 (file)
@@ -206,6 +206,7 @@ enum e1e_registers {
        E1000_MANC2H    = 0x05860, /* Management Control To Host - RW */
        E1000_SW_FW_SYNC = 0x05B5C, /* Software-Firmware Synchronization - RW */
        E1000_GCR       = 0x05B00, /* PCI-Ex Control */
+       E1000_GCR2      = 0x05B64, /* PCI-Ex Control #2 */
        E1000_FACTPS    = 0x05B30, /* Function Active and Power State to MNG */
        E1000_SWSM      = 0x05B50, /* SW Semaphore */
        E1000_FWSM      = 0x05B54, /* FW Semaphore */
@@ -338,6 +339,8 @@ enum e1e_registers {
 #define E1000_DEV_ID_82573E_IAMT               0x108C
 #define E1000_DEV_ID_82573L                    0x109A
 #define E1000_DEV_ID_82574L                    0x10D3
+#define E1000_DEV_ID_82574LA                   0x10F6
+#define E1000_DEV_ID_82583V                     0x150C
 
 #define E1000_DEV_ID_80003ES2LAN_COPPER_DPT    0x1096
 #define E1000_DEV_ID_80003ES2LAN_SERDES_DPT    0x1098
@@ -375,6 +378,7 @@ enum e1000_mac_type {
        e1000_82572,
        e1000_82573,
        e1000_82574,
+       e1000_82583,
        e1000_80003es2lan,
        e1000_ich8lan,
        e1000_ich9lan,
@@ -437,7 +441,7 @@ enum e1000_rev_polarity{
        e1000_rev_polarity_undefined = 0xFF
 };
 
-enum e1000_fc_type {
+enum e1000_fc_mode {
        e1000_fc_none = 0,
        e1000_fc_rx_pause,
        e1000_fc_tx_pause,
@@ -458,6 +462,13 @@ enum e1000_smart_speed {
        e1000_smart_speed_off
 };
 
+enum e1000_serdes_link_state {
+       e1000_serdes_link_down = 0,
+       e1000_serdes_link_autoneg_progress,
+       e1000_serdes_link_autoneg_complete,
+       e1000_serdes_link_forced_up
+};
+
 /* Receive Descriptor */
 struct e1000_rx_desc {
        __le64 buffer_addr; /* Address of the descriptor's data buffer */
@@ -786,6 +797,7 @@ struct e1000_mac_info {
        bool in_ifs_mode;
        bool serdes_has_link;
        bool tx_pkt_filtering;
+       enum e1000_serdes_link_state serdes_link_state;
 };
 
 struct e1000_phy_info {
@@ -850,8 +862,8 @@ struct e1000_fc_info {
        u16 pause_time;          /* Flow control pause timer */
        bool send_xon;           /* Flow control send XON */
        bool strict_ieee;        /* Strict IEEE mode */
-       enum e1000_fc_type type; /* Type of flow control */
-       enum e1000_fc_type original_type;
+       enum e1000_fc_mode current_mode; /* FC mode in effect */
+       enum e1000_fc_mode requested_mode; /* FC mode requested by caller */
 };
 
 struct e1000_dev_spec_82571 {