Commit 8e6acc5e authored by Tuomas Tynkkynen's avatar Tuomas Tynkkynen Committed by Greg Kroah-Hartman

MIPS: BCM47XX: Enable USB power on Netgear WNDR3400v3

[ Upstream commit feef7918 ]

Setting GPIO 21 high seems to be required to enable power to USB ports
on the WNDR3400v3. As there is already similar code for WNR3500L,
make the existing USB power GPIO code generic and use that.
Signed-off-by: default avatarTuomas Tynkkynen <tuomas.tynkkynen@iki.fi>
Acked-by: default avatarHauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: default avatarPaul Burton <paul.burton@mips.com>
Patchwork: https://patchwork.linux-mips.org/patch/20259/
Cc: Rafał Miłecki <zajec5@gmail.com>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent 7c68184f
...@@ -5,9 +5,8 @@ ...@@ -5,9 +5,8 @@
#include <bcm47xx_board.h> #include <bcm47xx_board.h>
#include <bcm47xx.h> #include <bcm47xx.h>
static void __init bcm47xx_workarounds_netgear_wnr3500l(void) static void __init bcm47xx_workarounds_enable_usb_power(int usb_power)
{ {
const int usb_power = 12;
int err; int err;
err = gpio_request_one(usb_power, GPIOF_OUT_INIT_HIGH, "usb_power"); err = gpio_request_one(usb_power, GPIOF_OUT_INIT_HIGH, "usb_power");
...@@ -23,7 +22,10 @@ void __init bcm47xx_workarounds(void) ...@@ -23,7 +22,10 @@ void __init bcm47xx_workarounds(void)
switch (board) { switch (board) {
case BCM47XX_BOARD_NETGEAR_WNR3500L: case BCM47XX_BOARD_NETGEAR_WNR3500L:
bcm47xx_workarounds_netgear_wnr3500l(); bcm47xx_workarounds_enable_usb_power(12);
break;
case BCM47XX_BOARD_NETGEAR_WNDR3400_V3:
bcm47xx_workarounds_enable_usb_power(21);
break; break;
default: default:
/* No workaround(s) needed */ /* No workaround(s) needed */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment