From: Hauke Mehrtens Date: Sat, 14 Sep 2013 16:17:36 +0000 (+0000) Subject: kernel: b53: use hard coded switch reset gpio on some boards. X-Git-Tag: reboot~9304 X-Git-Url: http://git.openwrt.org/?a=commitdiff_plain;h=cde1d53625ab93fb8ddf3121f33756f36ca1aff5;hp=2da56b4ebc89c145fd97aefcce7ac5d9616739f1;p=openwrt%2Fopenwrt.git kernel: b53: use hard coded switch reset gpio on some boards. The Linksys wrt310n v1 does not have a robo_reset config variable in nvram, but GPIO Pin 8 is the pin needed for resetting the external switch, Linksys hard coded it into their source code. Thank you Devastator for testing. Signed-off-by: Hauke Mehrtens SVN-Revision: 37988 --- diff --git a/target/linux/generic/files/drivers/net/phy/b53/b53_priv.h b/target/linux/generic/files/drivers/net/phy/b53/b53_priv.h index 308a729a3c..60f6bf96a5 100644 --- a/target/linux/generic/files/drivers/net/phy/b53/b53_priv.h +++ b/target/linux/generic/files/drivers/net/phy/b53/b53_priv.h @@ -286,14 +286,22 @@ static inline int b53_write64(struct b53_device *dev, u8 page, u8 reg, #ifdef CONFIG_BCM47XX #include +#include static inline int b53_switch_get_reset_gpio(struct b53_device *dev) { - return bcm47xx_nvram_gpio_pin("robo_reset"); + enum bcm47xx_board board = bcm47xx_board_get(); + + switch (board) { + case BCM47XX_BOARD_LINKSYS_WRT310NV1: + return 8; + default: + return bcm47xx_nvram_gpio_pin("robo_reset"); + } } #else static inline int b53_switch_get_reset_gpio(struct b53_device *dev) { - return -ENOENT; + return -ENOENT; } #endif #endif