aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/files/drivers/net/phy/b53/b53_phy_fixup.c
diff options
context:
space:
mode:
authorJonas Gorski <jogo@openwrt.org>2013-09-05 20:30:34 +0000
committerJonas Gorski <jogo@openwrt.org>2013-09-05 20:30:34 +0000
commitdf430c20c59a0e51dee7b92a965f9fab0d881274 (patch)
treebe97394cde9c016a190ac3f3c635515c07720f0e /target/linux/generic/files/drivers/net/phy/b53/b53_phy_fixup.c
parente1cb25c509d0272657dae314df26f7d2f5e9d086 (diff)
downloadmaster-187ad058-df430c20c59a0e51dee7b92a965f9fab0d881274.tar.gz
master-187ad058-df430c20c59a0e51dee7b92a965f9fab0d881274.tar.bz2
master-187ad058-df430c20c59a0e51dee7b92a965f9fab0d881274.zip
kernel: b53: support phy ids for BCM5365
BCM5365 (and probably other older variants) use a different phy id, so the phy driver never attached for them. Fix this by adding the appropriate phy id to the fixup and the phy driver. Reported-by: Russell Senior <russell@personaltelco.net> Signed-off-by: Jonas Gorski <jogo@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37906 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/generic/files/drivers/net/phy/b53/b53_phy_fixup.c')
-rw-r--r--target/linux/generic/files/drivers/net/phy/b53/b53_phy_fixup.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/target/linux/generic/files/drivers/net/phy/b53/b53_phy_fixup.c b/target/linux/generic/files/drivers/net/phy/b53/b53_phy_fixup.c
index 447f30b649..72d1373d7f 100644
--- a/target/linux/generic/files/drivers/net/phy/b53/b53_phy_fixup.c
+++ b/target/linux/generic/files/drivers/net/phy/b53/b53_phy_fixup.c
@@ -24,6 +24,7 @@
#define B53_BRCM_OUI_1 0x0143bc00
#define B53_BRCM_OUI_2 0x03625c00
+#define B53_BRCM_OUI_3 0x00406000
static int b53_phy_fixup(struct phy_device *dev)
{
@@ -38,7 +39,8 @@ static int b53_phy_fixup(struct phy_device *dev)
phy_id |= mdiobus_read(bus, 0, 3);
if ((phy_id & 0xfffffc00) == B53_BRCM_OUI_1 ||
- (phy_id & 0xfffffc00) == B53_BRCM_OUI_2) {
+ (phy_id & 0xfffffc00) == B53_BRCM_OUI_2 ||
+ (phy_id & 0xfffffc00) == B53_BRCM_OUI_3) {
dev->phy_id = phy_id;
}