diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2010-08-16 13:42:58 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2010-08-16 13:42:58 -0400 |
commit | e4862f2f6f5653dfb67f3ba2b6f0bc74516ed51a (patch) | |
tree | 1db5a0540a4eecfad9b7daee476b985e82ddc810 /drivers/net/tg3.h | |
parent | ec62dbd7eb8e3dddb221da89ecbcea0fc3dee8c1 (diff) | |
parent | b2c1e07b81a126e5846dfc3d36f559d861df59f4 (diff) |
Merge branch 'for-2.6.36' into for-2.6.37
Fairly simple conflicts, the most serious ones are the i.MX ones which I
suspect now need another rename.
Conflicts:
arch/arm/mach-mx2/clock_imx27.c
arch/arm/mach-mx2/devices.c
arch/arm/mach-omap2/board-rx51-peripherals.c
arch/arm/mach-omap2/board-zoom2.c
sound/soc/fsl/mpc5200_dma.c
sound/soc/fsl/mpc5200_dma.h
sound/soc/fsl/mpc8610_hpcd.c
sound/soc/pxa/spitz.c
Diffstat (limited to 'drivers/net/tg3.h')
-rw-r--r-- | drivers/net/tg3.h | 98 |
1 files changed, 49 insertions, 49 deletions
diff --git a/drivers/net/tg3.h b/drivers/net/tg3.h index ce9c4918c318..4937bd190964 100644 --- a/drivers/net/tg3.h +++ b/drivers/net/tg3.h | |||
@@ -53,6 +53,7 @@ | |||
53 | #define TG3PCI_DEVICE_TIGON3_57765 0x16b4 | 53 | #define TG3PCI_DEVICE_TIGON3_57765 0x16b4 |
54 | #define TG3PCI_DEVICE_TIGON3_57791 0x16b2 | 54 | #define TG3PCI_DEVICE_TIGON3_57791 0x16b2 |
55 | #define TG3PCI_DEVICE_TIGON3_57795 0x16b6 | 55 | #define TG3PCI_DEVICE_TIGON3_57795 0x16b6 |
56 | #define TG3PCI_DEVICE_TIGON3_5719 0x1657 | ||
56 | /* 0x04 --> 0x2c unused */ | 57 | /* 0x04 --> 0x2c unused */ |
57 | #define TG3PCI_SUBVENDOR_ID_BROADCOM PCI_VENDOR_ID_BROADCOM | 58 | #define TG3PCI_SUBVENDOR_ID_BROADCOM PCI_VENDOR_ID_BROADCOM |
58 | #define TG3PCI_SUBDEVICE_ID_BROADCOM_95700A6 0x1644 | 59 | #define TG3PCI_SUBDEVICE_ID_BROADCOM_95700A6 0x1644 |
@@ -160,6 +161,7 @@ | |||
160 | #define ASIC_REV_57780 0x57780 | 161 | #define ASIC_REV_57780 0x57780 |
161 | #define ASIC_REV_5717 0x5717 | 162 | #define ASIC_REV_5717 0x5717 |
162 | #define ASIC_REV_57765 0x57785 | 163 | #define ASIC_REV_57765 0x57785 |
164 | #define ASIC_REV_5719 0x5719 | ||
163 | #define GET_CHIP_REV(CHIP_REV_ID) ((CHIP_REV_ID) >> 8) | 165 | #define GET_CHIP_REV(CHIP_REV_ID) ((CHIP_REV_ID) >> 8) |
164 | #define CHIPREV_5700_AX 0x70 | 166 | #define CHIPREV_5700_AX 0x70 |
165 | #define CHIPREV_5700_BX 0x71 | 167 | #define CHIPREV_5700_BX 0x71 |
@@ -231,6 +233,7 @@ | |||
231 | #define PCISTATE_RETRY_SAME_DMA 0x00002000 | 233 | #define PCISTATE_RETRY_SAME_DMA 0x00002000 |
232 | #define PCISTATE_ALLOW_APE_CTLSPC_WR 0x00010000 | 234 | #define PCISTATE_ALLOW_APE_CTLSPC_WR 0x00010000 |
233 | #define PCISTATE_ALLOW_APE_SHMEM_WR 0x00020000 | 235 | #define PCISTATE_ALLOW_APE_SHMEM_WR 0x00020000 |
236 | #define PCISTATE_ALLOW_APE_PSPACE_WR 0x00040000 | ||
234 | #define TG3PCI_CLOCK_CTRL 0x00000074 | 237 | #define TG3PCI_CLOCK_CTRL 0x00000074 |
235 | #define CLOCK_CTRL_CORECLK_DISABLE 0x00000200 | 238 | #define CLOCK_CTRL_CORECLK_DISABLE 0x00000200 |
236 | #define CLOCK_CTRL_RXCLK_DISABLE 0x00000400 | 239 | #define CLOCK_CTRL_RXCLK_DISABLE 0x00000400 |
@@ -468,6 +471,7 @@ | |||
468 | #define TX_MODE_FLOW_CTRL_ENABLE 0x00000010 | 471 | #define TX_MODE_FLOW_CTRL_ENABLE 0x00000010 |
469 | #define TX_MODE_BIG_BCKOFF_ENABLE 0x00000020 | 472 | #define TX_MODE_BIG_BCKOFF_ENABLE 0x00000020 |
470 | #define TX_MODE_LONG_PAUSE_ENABLE 0x00000040 | 473 | #define TX_MODE_LONG_PAUSE_ENABLE 0x00000040 |
474 | #define TX_MODE_MBUF_LOCKUP_FIX 0x00000100 | ||
471 | #define MAC_TX_STATUS 0x00000460 | 475 | #define MAC_TX_STATUS 0x00000460 |
472 | #define TX_STATUS_XOFFED 0x00000001 | 476 | #define TX_STATUS_XOFFED 0x00000001 |
473 | #define TX_STATUS_SENT_XOFF 0x00000002 | 477 | #define TX_STATUS_SENT_XOFF 0x00000002 |
@@ -1071,10 +1075,8 @@ | |||
1071 | #define TG3_CPMU_HST_ACC 0x0000361c | 1075 | #define TG3_CPMU_HST_ACC 0x0000361c |
1072 | #define CPMU_HST_ACC_MACCLK_MASK 0x001f0000 | 1076 | #define CPMU_HST_ACC_MACCLK_MASK 0x001f0000 |
1073 | #define CPMU_HST_ACC_MACCLK_6_25 0x00130000 | 1077 | #define CPMU_HST_ACC_MACCLK_6_25 0x00130000 |
1074 | /* 0x3620 --> 0x362c unused */ | 1078 | /* 0x3620 --> 0x3630 unused */ |
1075 | 1079 | ||
1076 | #define TG3_CPMU_STATUS 0x0000362c | ||
1077 | #define TG3_CPMU_STATUS_PCIE_FUNC 0x20000000 | ||
1078 | #define TG3_CPMU_CLCK_STAT 0x00003630 | 1080 | #define TG3_CPMU_CLCK_STAT 0x00003630 |
1079 | #define CPMU_CLCK_STAT_MAC_CLCK_MASK 0x001f0000 | 1081 | #define CPMU_CLCK_STAT_MAC_CLCK_MASK 0x001f0000 |
1080 | #define CPMU_CLCK_STAT_MAC_CLCK_62_5 0x00000000 | 1082 | #define CPMU_CLCK_STAT_MAC_CLCK_62_5 0x00000000 |
@@ -1842,6 +1844,10 @@ | |||
1842 | #define TG3_PCIE_LNKCTL_L1_PLL_PD_DIS 0x00000080 | 1844 | #define TG3_PCIE_LNKCTL_L1_PLL_PD_DIS 0x00000080 |
1843 | /* 0x7d58 --> 0x7e70 unused */ | 1845 | /* 0x7d58 --> 0x7e70 unused */ |
1844 | 1846 | ||
1847 | #define TG3_PCIE_PHY_TSTCTL 0x00007e2c | ||
1848 | #define TG3_PCIE_PHY_TSTCTL_PCIE10 0x00000040 | ||
1849 | #define TG3_PCIE_PHY_TSTCTL_PSCRAM 0x00000020 | ||
1850 | |||
1845 | #define TG3_PCIE_EIDLE_DELAY 0x00007e70 | 1851 | #define TG3_PCIE_EIDLE_DELAY 0x00007e70 |
1846 | #define TG3_PCIE_EIDLE_DELAY_MASK 0x0000001f | 1852 | #define TG3_PCIE_EIDLE_DELAY_MASK 0x0000001f |
1847 | #define TG3_PCIE_EIDLE_DELAY_13_CLKS 0x0000000c | 1853 | #define TG3_PCIE_EIDLE_DELAY_13_CLKS 0x0000000c |
@@ -2030,31 +2036,9 @@ | |||
2030 | 2036 | ||
2031 | 2037 | ||
2032 | /* Currently this is fixed. */ | 2038 | /* Currently this is fixed. */ |
2033 | #define TG3_PHY_PCIE_ADDR 0x00 | ||
2034 | #define TG3_PHY_MII_ADDR 0x01 | 2039 | #define TG3_PHY_MII_ADDR 0x01 |
2035 | 2040 | ||
2036 | 2041 | ||
2037 | /*** Tigon3 specific PHY PCIE registers. ***/ | ||
2038 | |||
2039 | #define TG3_PCIEPHY_BLOCK_ADDR 0x1f | ||
2040 | #define TG3_PCIEPHY_XGXS_BLK1 0x0801 | ||
2041 | #define TG3_PCIEPHY_TXB_BLK 0x0861 | ||
2042 | #define TG3_PCIEPHY_BLOCK_SHIFT 4 | ||
2043 | |||
2044 | /* TG3_PCIEPHY_TXB_BLK */ | ||
2045 | #define TG3_PCIEPHY_TX0CTRL1 0x15 | ||
2046 | #define TG3_PCIEPHY_TX0CTRL1_TXOCM 0x0003 | ||
2047 | #define TG3_PCIEPHY_TX0CTRL1_RDCTL 0x0008 | ||
2048 | #define TG3_PCIEPHY_TX0CTRL1_TXCMV 0x0030 | ||
2049 | #define TG3_PCIEPHY_TX0CTRL1_TKSEL 0x0040 | ||
2050 | #define TG3_PCIEPHY_TX0CTRL1_NB_EN 0x0400 | ||
2051 | |||
2052 | /* TG3_PCIEPHY_XGXS_BLK1 */ | ||
2053 | #define TG3_PCIEPHY_PWRMGMT4 0x1a | ||
2054 | #define TG3_PCIEPHY_PWRMGMT4_L1PLLPD_EN 0x0038 | ||
2055 | #define TG3_PCIEPHY_PWRMGMT4_LOWPWR_EN 0x4000 | ||
2056 | |||
2057 | |||
2058 | /*** Tigon3 specific PHY MII registers. ***/ | 2042 | /*** Tigon3 specific PHY MII registers. ***/ |
2059 | #define TG3_BMCR_SPEED1000 0x0040 | 2043 | #define TG3_BMCR_SPEED1000 0x0040 |
2060 | 2044 | ||
@@ -2073,8 +2057,9 @@ | |||
2073 | #define MII_TG3_EXT_STAT 0x11 /* Extended status register */ | 2057 | #define MII_TG3_EXT_STAT 0x11 /* Extended status register */ |
2074 | #define MII_TG3_EXT_STAT_LPASS 0x0100 | 2058 | #define MII_TG3_EXT_STAT_LPASS 0x0100 |
2075 | 2059 | ||
2060 | #define MII_TG3_RXR_COUNTERS 0x14 /* Local/Remote Receiver Counts */ | ||
2076 | #define MII_TG3_DSP_RW_PORT 0x15 /* DSP coefficient read/write port */ | 2061 | #define MII_TG3_DSP_RW_PORT 0x15 /* DSP coefficient read/write port */ |
2077 | 2062 | #define MII_TG3_DSP_CONTROL 0x16 /* DSP control register */ | |
2078 | #define MII_TG3_DSP_ADDRESS 0x17 /* DSP address register */ | 2063 | #define MII_TG3_DSP_ADDRESS 0x17 /* DSP address register */ |
2079 | 2064 | ||
2080 | #define MII_TG3_DSP_TAP1 0x0001 | 2065 | #define MII_TG3_DSP_TAP1 0x0001 |
@@ -2082,6 +2067,7 @@ | |||
2082 | #define MII_TG3_DSP_AADJ1CH0 0x001f | 2067 | #define MII_TG3_DSP_AADJ1CH0 0x001f |
2083 | #define MII_TG3_DSP_AADJ1CH3 0x601f | 2068 | #define MII_TG3_DSP_AADJ1CH3 0x601f |
2084 | #define MII_TG3_DSP_AADJ1CH3_ADCCKADJ 0x0002 | 2069 | #define MII_TG3_DSP_AADJ1CH3_ADCCKADJ 0x0002 |
2070 | #define MII_TG3_DSP_EXP1_INT_STAT 0x0f01 | ||
2085 | #define MII_TG3_DSP_EXP8 0x0f08 | 2071 | #define MII_TG3_DSP_EXP8 0x0f08 |
2086 | #define MII_TG3_DSP_EXP8_REJ2MHz 0x0001 | 2072 | #define MII_TG3_DSP_EXP8_REJ2MHz 0x0001 |
2087 | #define MII_TG3_DSP_EXP8_AEDW 0x0200 | 2073 | #define MII_TG3_DSP_EXP8_AEDW 0x0200 |
@@ -2177,6 +2163,8 @@ | |||
2177 | /* APE shared memory. Accessible through BAR1 */ | 2163 | /* APE shared memory. Accessible through BAR1 */ |
2178 | #define TG3_APE_FW_STATUS 0x400c | 2164 | #define TG3_APE_FW_STATUS 0x400c |
2179 | #define APE_FW_STATUS_READY 0x00000100 | 2165 | #define APE_FW_STATUS_READY 0x00000100 |
2166 | #define TG3_APE_FW_FEATURES 0x4010 | ||
2167 | #define TG3_APE_FW_FEATURE_NCSI 0x00000002 | ||
2180 | #define TG3_APE_FW_VERSION 0x4018 | 2168 | #define TG3_APE_FW_VERSION 0x4018 |
2181 | #define APE_FW_VERSION_MAJMSK 0xff000000 | 2169 | #define APE_FW_VERSION_MAJMSK 0xff000000 |
2182 | #define APE_FW_VERSION_MAJSFT 24 | 2170 | #define APE_FW_VERSION_MAJSFT 24 |
@@ -2191,7 +2179,9 @@ | |||
2191 | #define APE_HOST_SEG_LEN_MAGIC 0x0000001c | 2179 | #define APE_HOST_SEG_LEN_MAGIC 0x0000001c |
2192 | #define TG3_APE_HOST_INIT_COUNT 0x4208 | 2180 | #define TG3_APE_HOST_INIT_COUNT 0x4208 |
2193 | #define TG3_APE_HOST_DRIVER_ID 0x420c | 2181 | #define TG3_APE_HOST_DRIVER_ID 0x420c |
2194 | #define APE_HOST_DRIVER_ID_MAGIC 0xf0035100 | 2182 | #define APE_HOST_DRIVER_ID_LINUX 0xf0000000 |
2183 | #define APE_HOST_DRIVER_ID_MAGIC(maj, min) \ | ||
2184 | (APE_HOST_DRIVER_ID_LINUX | (maj & 0xff) << 16 | (min & 0xff) << 8) | ||
2195 | #define TG3_APE_HOST_BEHAVIOR 0x4210 | 2185 | #define TG3_APE_HOST_BEHAVIOR 0x4210 |
2196 | #define APE_HOST_BEHAV_NO_PHYLOCK 0x00000001 | 2186 | #define APE_HOST_BEHAV_NO_PHYLOCK 0x00000001 |
2197 | #define TG3_APE_HOST_HEARTBEAT_INT_MS 0x4214 | 2187 | #define TG3_APE_HOST_HEARTBEAT_INT_MS 0x4214 |
@@ -2209,6 +2199,11 @@ | |||
2209 | #define APE_EVENT_STATUS_STATE_SUSPEND 0x00040000 | 2199 | #define APE_EVENT_STATUS_STATE_SUSPEND 0x00040000 |
2210 | #define APE_EVENT_STATUS_EVENT_PENDING 0x80000000 | 2200 | #define APE_EVENT_STATUS_EVENT_PENDING 0x80000000 |
2211 | 2201 | ||
2202 | #define TG3_APE_PER_LOCK_REQ 0x8400 | ||
2203 | #define APE_LOCK_PER_REQ_DRIVER 0x00001000 | ||
2204 | #define TG3_APE_PER_LOCK_GRANT 0x8420 | ||
2205 | #define APE_PER_LOCK_GRANT_DRIVER 0x00001000 | ||
2206 | |||
2212 | /* APE convenience enumerations. */ | 2207 | /* APE convenience enumerations. */ |
2213 | #define TG3_APE_LOCK_GRC 1 | 2208 | #define TG3_APE_LOCK_GRC 1 |
2214 | #define TG3_APE_LOCK_MEM 4 | 2209 | #define TG3_APE_LOCK_MEM 4 |
@@ -2539,7 +2534,6 @@ struct tg3_link_config { | |||
2539 | /* When we go in and out of low power mode we need | 2534 | /* When we go in and out of low power mode we need |
2540 | * to swap with this state. | 2535 | * to swap with this state. |
2541 | */ | 2536 | */ |
2542 | int phy_is_low_power; | ||
2543 | u16 orig_speed; | 2537 | u16 orig_speed; |
2544 | u8 orig_duplex; | 2538 | u8 orig_duplex; |
2545 | u8 orig_autoneg; | 2539 | u8 orig_autoneg; |
@@ -2765,8 +2759,8 @@ struct tg3 { | |||
2765 | 2759 | ||
2766 | 2760 | ||
2767 | /* begin "everything else" cacheline(s) section */ | 2761 | /* begin "everything else" cacheline(s) section */ |
2768 | struct net_device_stats net_stats; | 2762 | struct rtnl_link_stats64 net_stats; |
2769 | struct net_device_stats net_stats_prev; | 2763 | struct rtnl_link_stats64 net_stats_prev; |
2770 | struct tg3_ethtool_stats estats; | 2764 | struct tg3_ethtool_stats estats; |
2771 | struct tg3_ethtool_stats estats_prev; | 2765 | struct tg3_ethtool_stats estats_prev; |
2772 | 2766 | ||
@@ -2780,7 +2774,6 @@ struct tg3 { | |||
2780 | #define TG3_FLAG_TXD_MBOX_HWBUG 0x00000002 | 2774 | #define TG3_FLAG_TXD_MBOX_HWBUG 0x00000002 |
2781 | #define TG3_FLAG_RX_CHECKSUMS 0x00000004 | 2775 | #define TG3_FLAG_RX_CHECKSUMS 0x00000004 |
2782 | #define TG3_FLAG_USE_LINKCHG_REG 0x00000008 | 2776 | #define TG3_FLAG_USE_LINKCHG_REG 0x00000008 |
2783 | #define TG3_FLAG_USE_MI_INTERRUPT 0x00000010 | ||
2784 | #define TG3_FLAG_ENABLE_ASF 0x00000020 | 2777 | #define TG3_FLAG_ENABLE_ASF 0x00000020 |
2785 | #define TG3_FLAG_ASPM_WORKAROUND 0x00000040 | 2778 | #define TG3_FLAG_ASPM_WORKAROUND 0x00000040 |
2786 | #define TG3_FLAG_POLL_SERDES 0x00000080 | 2779 | #define TG3_FLAG_POLL_SERDES 0x00000080 |
@@ -2802,7 +2795,6 @@ struct tg3 { | |||
2802 | #define TG3_FLAG_TX_RECOVERY_PENDING 0x00200000 | 2795 | #define TG3_FLAG_TX_RECOVERY_PENDING 0x00200000 |
2803 | #define TG3_FLAG_WOL_CAP 0x00400000 | 2796 | #define TG3_FLAG_WOL_CAP 0x00400000 |
2804 | #define TG3_FLAG_JUMBO_RING_ENABLE 0x00800000 | 2797 | #define TG3_FLAG_JUMBO_RING_ENABLE 0x00800000 |
2805 | #define TG3_FLAG_10_100_ONLY 0x01000000 | ||
2806 | #define TG3_FLAG_PAUSE_AUTONEG 0x02000000 | 2798 | #define TG3_FLAG_PAUSE_AUTONEG 0x02000000 |
2807 | #define TG3_FLAG_CPMU_PRESENT 0x04000000 | 2799 | #define TG3_FLAG_CPMU_PRESENT 0x04000000 |
2808 | #define TG3_FLAG_40BIT_DMA_BUG 0x08000000 | 2800 | #define TG3_FLAG_40BIT_DMA_BUG 0x08000000 |
@@ -2813,22 +2805,15 @@ struct tg3 { | |||
2813 | u32 tg3_flags2; | 2805 | u32 tg3_flags2; |
2814 | #define TG3_FLG2_RESTART_TIMER 0x00000001 | 2806 | #define TG3_FLG2_RESTART_TIMER 0x00000001 |
2815 | #define TG3_FLG2_TSO_BUG 0x00000002 | 2807 | #define TG3_FLG2_TSO_BUG 0x00000002 |
2816 | #define TG3_FLG2_NO_ETH_WIRE_SPEED 0x00000004 | ||
2817 | #define TG3_FLG2_IS_5788 0x00000008 | 2808 | #define TG3_FLG2_IS_5788 0x00000008 |
2818 | #define TG3_FLG2_MAX_RXPEND_64 0x00000010 | 2809 | #define TG3_FLG2_MAX_RXPEND_64 0x00000010 |
2819 | #define TG3_FLG2_TSO_CAPABLE 0x00000020 | 2810 | #define TG3_FLG2_TSO_CAPABLE 0x00000020 |
2820 | #define TG3_FLG2_PHY_ADC_BUG 0x00000040 | ||
2821 | #define TG3_FLG2_PHY_5704_A0_BUG 0x00000080 | ||
2822 | #define TG3_FLG2_PHY_BER_BUG 0x00000100 | ||
2823 | #define TG3_FLG2_PCI_EXPRESS 0x00000200 | 2811 | #define TG3_FLG2_PCI_EXPRESS 0x00000200 |
2824 | #define TG3_FLG2_ASF_NEW_HANDSHAKE 0x00000400 | 2812 | #define TG3_FLG2_ASF_NEW_HANDSHAKE 0x00000400 |
2825 | #define TG3_FLG2_HW_AUTONEG 0x00000800 | 2813 | #define TG3_FLG2_HW_AUTONEG 0x00000800 |
2826 | #define TG3_FLG2_IS_NIC 0x00001000 | 2814 | #define TG3_FLG2_IS_NIC 0x00001000 |
2827 | #define TG3_FLG2_PHY_SERDES 0x00002000 | ||
2828 | #define TG3_FLG2_CAPACITIVE_COUPLING 0x00004000 | ||
2829 | #define TG3_FLG2_FLASH 0x00008000 | 2815 | #define TG3_FLG2_FLASH 0x00008000 |
2830 | #define TG3_FLG2_HW_TSO_1 0x00010000 | 2816 | #define TG3_FLG2_HW_TSO_1 0x00010000 |
2831 | #define TG3_FLG2_SERDES_PREEMPHASIS 0x00020000 | ||
2832 | #define TG3_FLG2_5705_PLUS 0x00040000 | 2817 | #define TG3_FLG2_5705_PLUS 0x00040000 |
2833 | #define TG3_FLG2_5750_PLUS 0x00080000 | 2818 | #define TG3_FLG2_5750_PLUS 0x00080000 |
2834 | #define TG3_FLG2_HW_TSO_3 0x00100000 | 2819 | #define TG3_FLG2_HW_TSO_3 0x00100000 |
@@ -2836,10 +2821,6 @@ struct tg3 { | |||
2836 | #define TG3_FLG2_USING_MSIX 0x00400000 | 2821 | #define TG3_FLG2_USING_MSIX 0x00400000 |
2837 | #define TG3_FLG2_USING_MSI_OR_MSIX (TG3_FLG2_USING_MSI | \ | 2822 | #define TG3_FLG2_USING_MSI_OR_MSIX (TG3_FLG2_USING_MSI | \ |
2838 | TG3_FLG2_USING_MSIX) | 2823 | TG3_FLG2_USING_MSIX) |
2839 | #define TG3_FLG2_MII_SERDES 0x00800000 | ||
2840 | #define TG3_FLG2_ANY_SERDES (TG3_FLG2_PHY_SERDES | \ | ||
2841 | TG3_FLG2_MII_SERDES) | ||
2842 | #define TG3_FLG2_PARALLEL_DETECT 0x01000000 | ||
2843 | #define TG3_FLG2_ICH_WORKAROUND 0x02000000 | 2824 | #define TG3_FLG2_ICH_WORKAROUND 0x02000000 |
2844 | #define TG3_FLG2_5780_CLASS 0x04000000 | 2825 | #define TG3_FLG2_5780_CLASS 0x04000000 |
2845 | #define TG3_FLG2_HW_TSO_2 0x08000000 | 2826 | #define TG3_FLG2_HW_TSO_2 0x08000000 |
@@ -2847,9 +2828,7 @@ struct tg3 { | |||
2847 | TG3_FLG2_HW_TSO_2 | \ | 2828 | TG3_FLG2_HW_TSO_2 | \ |
2848 | TG3_FLG2_HW_TSO_3) | 2829 | TG3_FLG2_HW_TSO_3) |
2849 | #define TG3_FLG2_1SHOT_MSI 0x10000000 | 2830 | #define TG3_FLG2_1SHOT_MSI 0x10000000 |
2850 | #define TG3_FLG2_PHY_JITTER_BUG 0x20000000 | ||
2851 | #define TG3_FLG2_NO_FWARE_REPORTED 0x40000000 | 2831 | #define TG3_FLG2_NO_FWARE_REPORTED 0x40000000 |
2852 | #define TG3_FLG2_PHY_ADJUST_TRIM 0x80000000 | ||
2853 | u32 tg3_flags3; | 2832 | u32 tg3_flags3; |
2854 | #define TG3_FLG3_NO_NVRAM_ADDR_TRANS 0x00000001 | 2833 | #define TG3_FLG3_NO_NVRAM_ADDR_TRANS 0x00000001 |
2855 | #define TG3_FLG3_ENABLE_APE 0x00000002 | 2834 | #define TG3_FLG3_ENABLE_APE 0x00000002 |
@@ -2857,15 +2836,12 @@ struct tg3 { | |||
2857 | #define TG3_FLG3_5701_DMA_BUG 0x00000008 | 2836 | #define TG3_FLG3_5701_DMA_BUG 0x00000008 |
2858 | #define TG3_FLG3_USE_PHYLIB 0x00000010 | 2837 | #define TG3_FLG3_USE_PHYLIB 0x00000010 |
2859 | #define TG3_FLG3_MDIOBUS_INITED 0x00000020 | 2838 | #define TG3_FLG3_MDIOBUS_INITED 0x00000020 |
2860 | #define TG3_FLG3_PHY_CONNECTED 0x00000080 | ||
2861 | #define TG3_FLG3_RGMII_INBAND_DISABLE 0x00000100 | 2839 | #define TG3_FLG3_RGMII_INBAND_DISABLE 0x00000100 |
2862 | #define TG3_FLG3_RGMII_EXT_IBND_RX_EN 0x00000200 | 2840 | #define TG3_FLG3_RGMII_EXT_IBND_RX_EN 0x00000200 |
2863 | #define TG3_FLG3_RGMII_EXT_IBND_TX_EN 0x00000400 | 2841 | #define TG3_FLG3_RGMII_EXT_IBND_TX_EN 0x00000400 |
2864 | #define TG3_FLG3_CLKREQ_BUG 0x00000800 | 2842 | #define TG3_FLG3_CLKREQ_BUG 0x00000800 |
2865 | #define TG3_FLG3_PHY_ENABLE_APD 0x00001000 | ||
2866 | #define TG3_FLG3_5755_PLUS 0x00002000 | 2843 | #define TG3_FLG3_5755_PLUS 0x00002000 |
2867 | #define TG3_FLG3_NO_NVRAM 0x00004000 | 2844 | #define TG3_FLG3_NO_NVRAM 0x00004000 |
2868 | #define TG3_FLG3_PHY_IS_FET 0x00010000 | ||
2869 | #define TG3_FLG3_ENABLE_RSS 0x00020000 | 2845 | #define TG3_FLG3_ENABLE_RSS 0x00020000 |
2870 | #define TG3_FLG3_ENABLE_TSS 0x00040000 | 2846 | #define TG3_FLG3_ENABLE_TSS 0x00040000 |
2871 | #define TG3_FLG3_4G_DMA_BNDRY_BUG 0x00080000 | 2847 | #define TG3_FLG3_4G_DMA_BNDRY_BUG 0x00080000 |
@@ -2873,6 +2849,7 @@ struct tg3 { | |||
2873 | #define TG3_FLG3_SHORT_DMA_BUG 0x00200000 | 2849 | #define TG3_FLG3_SHORT_DMA_BUG 0x00200000 |
2874 | #define TG3_FLG3_USE_JUMBO_BDFLAG 0x00400000 | 2850 | #define TG3_FLG3_USE_JUMBO_BDFLAG 0x00400000 |
2875 | #define TG3_FLG3_L1PLLPD_EN 0x00800000 | 2851 | #define TG3_FLG3_L1PLLPD_EN 0x00800000 |
2852 | #define TG3_FLG3_5717_PLUS 0x01000000 | ||
2876 | 2853 | ||
2877 | struct timer_list timer; | 2854 | struct timer_list timer; |
2878 | u16 timer_counter; | 2855 | u16 timer_counter; |
@@ -2942,6 +2919,7 @@ struct tg3 { | |||
2942 | #define TG3_PHY_ID_BCM5718C 0x5c0d8a00 | 2919 | #define TG3_PHY_ID_BCM5718C 0x5c0d8a00 |
2943 | #define TG3_PHY_ID_BCM5718S 0xbc050ff0 | 2920 | #define TG3_PHY_ID_BCM5718S 0xbc050ff0 |
2944 | #define TG3_PHY_ID_BCM57765 0x5c0d8a40 | 2921 | #define TG3_PHY_ID_BCM57765 0x5c0d8a40 |
2922 | #define TG3_PHY_ID_BCM5719C 0x5c0d8a20 | ||
2945 | #define TG3_PHY_ID_BCM5906 0xdc00ac40 | 2923 | #define TG3_PHY_ID_BCM5906 0xdc00ac40 |
2946 | #define TG3_PHY_ID_BCM8002 0x60010140 | 2924 | #define TG3_PHY_ID_BCM8002 0x60010140 |
2947 | #define TG3_PHY_ID_INVALID 0xffffffff | 2925 | #define TG3_PHY_ID_INVALID 0xffffffff |
@@ -2965,7 +2943,29 @@ struct tg3 { | |||
2965 | (X) == TG3_PHY_ID_BCM5755 || (X) == TG3_PHY_ID_BCM5756 || \ | 2943 | (X) == TG3_PHY_ID_BCM5755 || (X) == TG3_PHY_ID_BCM5756 || \ |
2966 | (X) == TG3_PHY_ID_BCM5906 || (X) == TG3_PHY_ID_BCM5761 || \ | 2944 | (X) == TG3_PHY_ID_BCM5906 || (X) == TG3_PHY_ID_BCM5761 || \ |
2967 | (X) == TG3_PHY_ID_BCM5718C || (X) == TG3_PHY_ID_BCM5718S || \ | 2945 | (X) == TG3_PHY_ID_BCM5718C || (X) == TG3_PHY_ID_BCM5718S || \ |
2968 | (X) == TG3_PHY_ID_BCM57765 || (X) == TG3_PHY_ID_BCM8002) | 2946 | (X) == TG3_PHY_ID_BCM57765 || (X) == TG3_PHY_ID_BCM5719C || \ |
2947 | (X) == TG3_PHY_ID_BCM8002) | ||
2948 | |||
2949 | u32 phy_flags; | ||
2950 | #define TG3_PHYFLG_IS_LOW_POWER 0x00000001 | ||
2951 | #define TG3_PHYFLG_IS_CONNECTED 0x00000002 | ||
2952 | #define TG3_PHYFLG_USE_MI_INTERRUPT 0x00000004 | ||
2953 | #define TG3_PHYFLG_PHY_SERDES 0x00000010 | ||
2954 | #define TG3_PHYFLG_MII_SERDES 0x00000020 | ||
2955 | #define TG3_PHYFLG_ANY_SERDES (TG3_PHYFLG_PHY_SERDES | \ | ||
2956 | TG3_PHYFLG_MII_SERDES) | ||
2957 | #define TG3_PHYFLG_IS_FET 0x00000040 | ||
2958 | #define TG3_PHYFLG_10_100_ONLY 0x00000080 | ||
2959 | #define TG3_PHYFLG_ENABLE_APD 0x00000100 | ||
2960 | #define TG3_PHYFLG_CAPACITIVE_COUPLING 0x00000200 | ||
2961 | #define TG3_PHYFLG_NO_ETH_WIRE_SPEED 0x00000400 | ||
2962 | #define TG3_PHYFLG_JITTER_BUG 0x00000800 | ||
2963 | #define TG3_PHYFLG_ADJUST_TRIM 0x00001000 | ||
2964 | #define TG3_PHYFLG_ADC_BUG 0x00002000 | ||
2965 | #define TG3_PHYFLG_5704_A0_BUG 0x00004000 | ||
2966 | #define TG3_PHYFLG_BER_BUG 0x00008000 | ||
2967 | #define TG3_PHYFLG_SERDES_PREEMPHASIS 0x00010000 | ||
2968 | #define TG3_PHYFLG_PARALLEL_DETECT 0x00020000 | ||
2969 | 2969 | ||
2970 | u32 led_ctrl; | 2970 | u32 led_ctrl; |
2971 | u32 phy_otp; | 2971 | u32 phy_otp; |