You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
48 lines
1.6 KiB
48 lines
1.6 KiB
From feef7918667b84f9d5653c501542dd8d84ae32af Mon Sep 17 00:00:00 2001
|
|
From: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>
|
|
Date: Sun, 19 Aug 2018 22:20:23 +0300
|
|
Subject: [PATCH] MIPS: BCM47XX: Enable USB power on Netgear WNDR3400v3
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
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 <tuomas.tynkkynen@iki.fi>
|
|
Acked-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
Signed-off-by: Paul 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
|
|
---
|
|
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 */
|
|
|