diff options
author | Florian Fainelli <florian@openwrt.org> | 2009-03-09 21:57:11 +0000 |
---|---|---|
committer | Florian Fainelli <florian@openwrt.org> | 2009-03-09 21:57:11 +0000 |
commit | 13a5bcb41bc946e458739d2ae338d8825a1ae352 (patch) | |
tree | 63b5a2077889354bda22da3817623231789a39e2 /package/switch/src/switch-robo.c | |
parent | 2efa8efb65174c8cf24f5f99a71771e5d0ae9bb6 (diff) | |
download | master-187ad058-13a5bcb41bc946e458739d2ae338d8825a1ae352.tar.gz master-187ad058-13a5bcb41bc946e458739d2ae338d8825a1ae352.tar.bz2 master-187ad058-13a5bcb41bc946e458739d2ae338d8825a1ae352.zip |
[package] allow kmod-switch to be used on brcm63xx (#4599)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@14825 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/switch/src/switch-robo.c')
-rw-r--r-- | package/switch/src/switch-robo.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/package/switch/src/switch-robo.c b/package/switch/src/switch-robo.c index 779b89f615..5733d5024e 100644 --- a/package/switch/src/switch-robo.c +++ b/package/switch/src/switch-robo.c @@ -41,6 +41,7 @@ #define ROBO_PHY_ADDR 0x1E /* robo switch phy address */ #define ROBO_PHY_ADDR_TG3 0x01 /* Tigon3 PHY address */ +#define ROBO_PHY_ADDR_BCM63XX 0x00 /* BCM63XX PHY address */ /* MII registers */ #define REG_MII_PAGE 0x10 /* MII Page register */ @@ -318,13 +319,14 @@ static int robo_probe(char *devname) /* got phy address check for robo address */ struct mii_ioctl_data *mii = (struct mii_ioctl_data *) &robo.ifr.ifr_data; if ((mii->phy_id != ROBO_PHY_ADDR) && + (mii->phy_id != ROBO_PHY_ADDR_BCM63XX) && (mii->phy_id != ROBO_PHY_ADDR_TG3)) { printk("Invalid phy address (%d)\n", mii->phy_id); return 1; } robo.use_et = 0; /* The robo has a fixed PHY address that is different from the - * Tigon3 PHY address. */ + * Tigon3 and BCM63xx PHY address. */ robo.phy_addr = ROBO_PHY_ADDR; } @@ -332,7 +334,7 @@ static int robo_probe(char *devname) (mdio_read(robo.phy_addr, 0x3) << 16); if (phyid == 0xffffffff || phyid == 0x55210022) { - printk("No Robo switch in managed mode found\n"); + printk("No Robo switch in managed mode found, phy_id = 0x%08x\n", phyid); return 1; } |