summaryrefslogtreecommitdiff
path: root/drivers/net
diff options
context:
space:
mode:
authorLi Yang <leoli@freescale.com>2011-01-27 19:02:50 +0800
committerKumar Gala <galak@kernel.crashing.org>2011-04-04 09:24:43 -0500
commit19d68d202786efe7400dc2a6412c2d06b2ab38ec (patch)
tree5c2a803ae55d9922fc2b9e79080c5460eece589d /drivers/net
parentf5feb5afb2d4cd02480056c37ebc111de3ee04fc (diff)
downloadu-boot-imx-19d68d202786efe7400dc2a6412c2d06b2ab38ec.zip
u-boot-imx-19d68d202786efe7400dc2a6412c2d06b2ab38ec.tar.gz
u-boot-imx-19d68d202786efe7400dc2a6412c2d06b2ab38ec.tar.bz2
tsec: add AR8021 PHY support
Signed-off-by: Li Yang <leoli@freescale.com>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/tsec.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/drivers/net/tsec.c b/drivers/net/tsec.c
index 9c8fe62..9a91b9e 100644
--- a/drivers/net/tsec.c
+++ b/drivers/net/tsec.c
@@ -1810,6 +1810,28 @@ static struct phy_info phy_info_rtl8211b = {
},
};
+struct phy_info phy_info_AR8021 = {
+ 0x4dd04,
+ "AR8021",
+ 4,
+ (struct phy_cmd[]) { /* config */
+ {MII_BMCR, BMCR_RESET, NULL},
+ {MII_BMCR, BMCR_ANENABLE|BMCR_ANRESTART, NULL},
+ {0x1d, 0x05, NULL},
+ {0x1e, 0x3D47, NULL},
+ {miim_end,}
+ },
+ (struct phy_cmd[]) { /* startup */
+ {MII_BMSR, miim_read, NULL},
+ {MII_BMSR, miim_read, &mii_parse_sr},
+ {MII_BMSR, miim_read, &mii_parse_link},
+ {miim_end,}
+ },
+ (struct phy_cmd[]) { /* shutdown */
+ {miim_end,}
+ }
+};
+
static struct phy_info *phy_info[] = {
&phy_info_cis8204,
&phy_info_cis8201,
@@ -1832,6 +1854,7 @@ static struct phy_info *phy_info[] = {
&phy_info_VSC8221,
&phy_info_dp83865,
&phy_info_rtl8211b,
+ &phy_info_AR8021,
&phy_info_generic, /* must be last; has ID 0 and 32 bit mask */
NULL
};