|
|
@@ -0,0 +1,39 @@
|
|
|
+From 17cb62255ef8f6b6ac270024204a8fa65537b333 Mon Sep 17 00:00:00 2001
|
|
|
+From: Tuomas Tynkkynen <[email protected]>
|
|
|
+Date: Sun, 19 Aug 2018 21:23:14 +0300
|
|
|
+Subject: [PATCH] MIPS: BCM47XX: Enable USB power on Netgear WNDR3400v3
|
|
|
+
|
|
|
+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: Tuomas Tynkkynen <[email protected]>
|
|
|
+---
|
|
|
+ arch/mips/bcm47xx/workarounds.c | 8 +++++---
|
|
|
+ 1 file changed, 5 insertions(+), 3 deletions(-)
|
|
|
+
|
|
|
+--- a/arch/mips/bcm47xx/workarounds.c
|
|
|
++++ b/arch/mips/bcm47xx/workarounds.c
|
|
|
+@@ -5,9 +5,8 @@
|
|
|
+ #include <bcm47xx_board.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;
|
|
|
+
|
|
|
+ err = gpio_request_one(usb_power, GPIOF_OUT_INIT_HIGH, "usb_power");
|
|
|
+@@ -23,7 +22,10 @@ void __init bcm47xx_workarounds(void)
|
|
|
+
|
|
|
+ switch (board) {
|
|
|
+ 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;
|
|
|
+ default:
|
|
|
+ /* No workaround(s) needed */
|