Skip to content

Commit 45c5775

Browse files
Linus Walleijgregkh
authored andcommitted
usb: ohci-omap: Fix descriptor conversion
There were a bunch of issues with the patch converting the OMAP1 OSK board to use descriptors for controlling the USB host: - The chip label was incorrect - The GPIO offset was off-by-one - The code should use sleeping accessors This patch tries to fix all issues at the same time. Cc: Aaro Koskinen <aaro.koskinen@iki.fi> Reported-by: Aaro Koskinen <aaro.koskinen@iki.fi> Fixes: 15d157e ("usb: ohci-omap: Convert to use GPIO descriptors") Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Link: https://lore.kernel.org/r/20201130083033.29435-1-linus.walleij@linaro.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
1 parent 97ad4a7 commit 45c5775

2 files changed

Lines changed: 3 additions & 3 deletions

File tree

arch/arm/mach-omap1/board-osk.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -288,7 +288,7 @@ static struct gpiod_lookup_table osk_usb_gpio_table = {
288288
.dev_id = "ohci",
289289
.table = {
290290
/* Power GPIO on the I2C-attached TPS65010 */
291-
GPIO_LOOKUP("i2c-tps65010", 1, "power", GPIO_ACTIVE_HIGH),
291+
GPIO_LOOKUP("tps65010", 0, "power", GPIO_ACTIVE_HIGH),
292292
GPIO_LOOKUP(OMAP_GPIO_LABEL, 9, "overcurrent",
293293
GPIO_ACTIVE_HIGH),
294294
},

drivers/usb/host/ohci-omap.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -91,14 +91,14 @@ static int omap_ohci_transceiver_power(struct ohci_omap_priv *priv, int on)
9191
| ((1 << 5/*usb1*/) | (1 << 3/*usb2*/)),
9292
INNOVATOR_FPGA_CAM_USB_CONTROL);
9393
else if (priv->power)
94-
gpiod_set_value(priv->power, 0);
94+
gpiod_set_value_cansleep(priv->power, 0);
9595
} else {
9696
if (machine_is_omap_innovator() && cpu_is_omap1510())
9797
__raw_writeb(__raw_readb(INNOVATOR_FPGA_CAM_USB_CONTROL)
9898
& ~((1 << 5/*usb1*/) | (1 << 3/*usb2*/)),
9999
INNOVATOR_FPGA_CAM_USB_CONTROL);
100100
else if (priv->power)
101-
gpiod_set_value(priv->power, 1);
101+
gpiod_set_value_cansleep(priv->power, 1);
102102
}
103103

104104
return 0;

0 commit comments

Comments
 (0)