mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-11-23 23:32:49 +02:00
[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
This commit is contained in:
parent
ee0eb80db0
commit
9df07ac5e1
@ -16,7 +16,7 @@ include $(INCLUDE_DIR)/package.mk
|
|||||||
|
|
||||||
define KernelPackage/switch
|
define KernelPackage/switch
|
||||||
SUBMENU:=Other modules
|
SUBMENU:=Other modules
|
||||||
DEPENDS:=@TARGET_brcm_2_4||TARGET_brcm47xx
|
DEPENDS:=@TARGET_brcm_2_4||TARGET_brcm47xx||TARGET_brcm63xx
|
||||||
TITLE:=Switch drivers
|
TITLE:=Switch drivers
|
||||||
FILES:= \
|
FILES:= \
|
||||||
$(PKG_BUILD_DIR)/switch-core.$(LINUX_KMOD_SUFFIX) \
|
$(PKG_BUILD_DIR)/switch-core.$(LINUX_KMOD_SUFFIX) \
|
||||||
|
@ -11,7 +11,15 @@
|
|||||||
#ifdef BROADCOM
|
#ifdef BROADCOM
|
||||||
#include "gpio-bcm947xx.h"
|
#include "gpio-bcm947xx.h"
|
||||||
#else
|
#else
|
||||||
#error "Unsupported configuration."
|
#warning "Unsupported configuration."
|
||||||
|
|
||||||
|
#define gpio_in() (-1U)
|
||||||
|
#define gpio_out(mask, value) (-1U)
|
||||||
|
#define gpio_outen(mask, value) (-1U)
|
||||||
|
#define gpio_control(mask, value) (-1U)
|
||||||
|
#define gpio_intmask(mask, value) (-1U)
|
||||||
|
#define gpio_intpolarity(mask, value) (-1U)
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif /* __GPIO_H */
|
#endif /* __GPIO_H */
|
||||||
|
@ -41,6 +41,7 @@
|
|||||||
|
|
||||||
#define ROBO_PHY_ADDR 0x1E /* robo switch phy address */
|
#define ROBO_PHY_ADDR 0x1E /* robo switch phy address */
|
||||||
#define ROBO_PHY_ADDR_TG3 0x01 /* Tigon3 PHY address */
|
#define ROBO_PHY_ADDR_TG3 0x01 /* Tigon3 PHY address */
|
||||||
|
#define ROBO_PHY_ADDR_BCM63XX 0x00 /* BCM63XX PHY address */
|
||||||
|
|
||||||
/* MII registers */
|
/* MII registers */
|
||||||
#define REG_MII_PAGE 0x10 /* MII Page register */
|
#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 */
|
/* got phy address check for robo address */
|
||||||
struct mii_ioctl_data *mii = (struct mii_ioctl_data *) &robo.ifr.ifr_data;
|
struct mii_ioctl_data *mii = (struct mii_ioctl_data *) &robo.ifr.ifr_data;
|
||||||
if ((mii->phy_id != ROBO_PHY_ADDR) &&
|
if ((mii->phy_id != ROBO_PHY_ADDR) &&
|
||||||
|
(mii->phy_id != ROBO_PHY_ADDR_BCM63XX) &&
|
||||||
(mii->phy_id != ROBO_PHY_ADDR_TG3)) {
|
(mii->phy_id != ROBO_PHY_ADDR_TG3)) {
|
||||||
printk("Invalid phy address (%d)\n", mii->phy_id);
|
printk("Invalid phy address (%d)\n", mii->phy_id);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
robo.use_et = 0;
|
robo.use_et = 0;
|
||||||
/* The robo has a fixed PHY address that is different from the
|
/* 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;
|
robo.phy_addr = ROBO_PHY_ADDR;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -332,7 +334,7 @@ static int robo_probe(char *devname)
|
|||||||
(mdio_read(robo.phy_addr, 0x3) << 16);
|
(mdio_read(robo.phy_addr, 0x3) << 16);
|
||||||
|
|
||||||
if (phyid == 0xffffffff || phyid == 0x55210022) {
|
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;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user