tg3: 5785 enhancements

This patch refines support for the 5785 device.

Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Matt Carlson
2008-11-03 16:55:44 -08:00
committed by David S. Miller
parent 9c61d6bc56
commit fcb389dfd8
2 changed files with 163 additions and 21 deletions

View File

@@ -417,6 +417,7 @@
#define MI_COM_DATA_MASK 0x0000ffff
#define MAC_MI_STAT 0x00000450
#define MAC_MI_STAT_LNKSTAT_ATTN_ENAB 0x00000001
#define MAC_MI_STAT_10MBPS_MODE 0x00000002
#define MAC_MI_MODE 0x00000454
#define MAC_MI_MODE_CLK_10MHZ 0x00000001
#define MAC_MI_MODE_SHORT_PREAMBLE 0x00000002
@@ -542,6 +543,100 @@
#define MAC_PHYCFG1_TXC_DRV 0x20000000
#define MAC_PHYCFG2 0x000005a4
#define MAC_PHYCFG2_INBAND_ENABLE 0x00000001
#define MAC_PHYCFG2_EMODE_MASK_MASK 0x000001c0
#define MAC_PHYCFG2_EMODE_MASK_AC131 0x000000c0
#define MAC_PHYCFG2_EMODE_MASK_50610 0x00000100
#define MAC_PHYCFG2_EMODE_MASK_RT8211 0x00000000
#define MAC_PHYCFG2_EMODE_MASK_RT8201 0x000001c0
#define MAC_PHYCFG2_EMODE_COMP_MASK 0x00000e00
#define MAC_PHYCFG2_EMODE_COMP_AC131 0x00000600
#define MAC_PHYCFG2_EMODE_COMP_50610 0x00000400
#define MAC_PHYCFG2_EMODE_COMP_RT8211 0x00000800
#define MAC_PHYCFG2_EMODE_COMP_RT8201 0x00000000
#define MAC_PHYCFG2_FMODE_MASK_MASK 0x00007000
#define MAC_PHYCFG2_FMODE_MASK_AC131 0x00006000
#define MAC_PHYCFG2_FMODE_MASK_50610 0x00004000
#define MAC_PHYCFG2_FMODE_MASK_RT8211 0x00000000
#define MAC_PHYCFG2_FMODE_MASK_RT8201 0x00007000
#define MAC_PHYCFG2_FMODE_COMP_MASK 0x00038000
#define MAC_PHYCFG2_FMODE_COMP_AC131 0x00030000
#define MAC_PHYCFG2_FMODE_COMP_50610 0x00008000
#define MAC_PHYCFG2_FMODE_COMP_RT8211 0x00038000
#define MAC_PHYCFG2_FMODE_COMP_RT8201 0x00000000
#define MAC_PHYCFG2_GMODE_MASK_MASK 0x001c0000
#define MAC_PHYCFG2_GMODE_MASK_AC131 0x001c0000
#define MAC_PHYCFG2_GMODE_MASK_50610 0x00100000
#define MAC_PHYCFG2_GMODE_MASK_RT8211 0x00000000
#define MAC_PHYCFG2_GMODE_MASK_RT8201 0x001c0000
#define MAC_PHYCFG2_GMODE_COMP_MASK 0x00e00000
#define MAC_PHYCFG2_GMODE_COMP_AC131 0x00e00000
#define MAC_PHYCFG2_GMODE_COMP_50610 0x00000000
#define MAC_PHYCFG2_GMODE_COMP_RT8211 0x00200000
#define MAC_PHYCFG2_GMODE_COMP_RT8201 0x00000000
#define MAC_PHYCFG2_ACT_MASK_MASK 0x03000000
#define MAC_PHYCFG2_ACT_MASK_AC131 0x03000000
#define MAC_PHYCFG2_ACT_MASK_50610 0x01000000
#define MAC_PHYCFG2_ACT_MASK_RT8211 0x03000000
#define MAC_PHYCFG2_ACT_MASK_RT8201 0x01000000
#define MAC_PHYCFG2_ACT_COMP_MASK 0x0c000000
#define MAC_PHYCFG2_ACT_COMP_AC131 0x00000000
#define MAC_PHYCFG2_ACT_COMP_50610 0x00000000
#define MAC_PHYCFG2_ACT_COMP_RT8211 0x00000000
#define MAC_PHYCFG2_ACT_COMP_RT8201 0x08000000
#define MAC_PHYCFG2_QUAL_MASK_MASK 0x30000000
#define MAC_PHYCFG2_QUAL_MASK_AC131 0x30000000
#define MAC_PHYCFG2_QUAL_MASK_50610 0x30000000
#define MAC_PHYCFG2_QUAL_MASK_RT8211 0x30000000
#define MAC_PHYCFG2_QUAL_MASK_RT8201 0x30000000
#define MAC_PHYCFG2_QUAL_COMP_MASK 0xc0000000
#define MAC_PHYCFG2_QUAL_COMP_AC131 0x00000000
#define MAC_PHYCFG2_QUAL_COMP_50610 0x00000000
#define MAC_PHYCFG2_QUAL_COMP_RT8211 0x00000000
#define MAC_PHYCFG2_QUAL_COMP_RT8201 0x00000000
#define MAC_PHYCFG2_50610_LED_MODES \
(MAC_PHYCFG2_EMODE_MASK_50610 | \
MAC_PHYCFG2_EMODE_COMP_50610 | \
MAC_PHYCFG2_FMODE_MASK_50610 | \
MAC_PHYCFG2_FMODE_COMP_50610 | \
MAC_PHYCFG2_GMODE_MASK_50610 | \
MAC_PHYCFG2_GMODE_COMP_50610 | \
MAC_PHYCFG2_ACT_MASK_50610 | \
MAC_PHYCFG2_ACT_COMP_50610 | \
MAC_PHYCFG2_QUAL_MASK_50610 | \
MAC_PHYCFG2_QUAL_COMP_50610)
#define MAC_PHYCFG2_AC131_LED_MODES \
(MAC_PHYCFG2_EMODE_MASK_AC131 | \
MAC_PHYCFG2_EMODE_COMP_AC131 | \
MAC_PHYCFG2_FMODE_MASK_AC131 | \
MAC_PHYCFG2_FMODE_COMP_AC131 | \
MAC_PHYCFG2_GMODE_MASK_AC131 | \
MAC_PHYCFG2_GMODE_COMP_AC131 | \
MAC_PHYCFG2_ACT_MASK_AC131 | \
MAC_PHYCFG2_ACT_COMP_AC131 | \
MAC_PHYCFG2_QUAL_MASK_AC131 | \
MAC_PHYCFG2_QUAL_COMP_AC131)
#define MAC_PHYCFG2_RTL8211C_LED_MODES \
(MAC_PHYCFG2_EMODE_MASK_RT8211 | \
MAC_PHYCFG2_EMODE_COMP_RT8211 | \
MAC_PHYCFG2_FMODE_MASK_RT8211 | \
MAC_PHYCFG2_FMODE_COMP_RT8211 | \
MAC_PHYCFG2_GMODE_MASK_RT8211 | \
MAC_PHYCFG2_GMODE_COMP_RT8211 | \
MAC_PHYCFG2_ACT_MASK_RT8211 | \
MAC_PHYCFG2_ACT_COMP_RT8211 | \
MAC_PHYCFG2_QUAL_MASK_RT8211 | \
MAC_PHYCFG2_QUAL_COMP_RT8211)
#define MAC_PHYCFG2_RTL8201E_LED_MODES \
(MAC_PHYCFG2_EMODE_MASK_RT8201 | \
MAC_PHYCFG2_EMODE_COMP_RT8201 | \
MAC_PHYCFG2_FMODE_MASK_RT8201 | \
MAC_PHYCFG2_FMODE_COMP_RT8201 | \
MAC_PHYCFG2_GMODE_MASK_RT8201 | \
MAC_PHYCFG2_GMODE_COMP_RT8201 | \
MAC_PHYCFG2_ACT_MASK_RT8201 | \
MAC_PHYCFG2_ACT_COMP_RT8201 | \
MAC_PHYCFG2_QUAL_MASK_RT8201 | \
MAC_PHYCFG2_QUAL_COMP_RT8201)
#define MAC_EXT_RGMII_MODE 0x000005a8
#define MAC_RGMII_MODE_TX_ENABLE 0x00000001
#define MAC_RGMII_MODE_TX_LOWPWR 0x00000002
@@ -2595,6 +2690,8 @@ struct tg3 {
#define PHY_REV_BCM5411_X0 0x1 /* Found on Netgear GA302T */
#define TG3_PHY_ID_BCM50610 0x143bd60
#define TG3_PHY_ID_BCMAC131 0x143bc70
#define TG3_PHY_ID_RTL8211C 0x001cc910
#define TG3_PHY_ID_RTL8201E 0x00008200
#define TG3_PHY_OUI_MASK 0xfffffc00
#define TG3_PHY_OUI_1 0x00206000
#define TG3_PHY_OUI_2 0x0143bc00