Commit fa345d01 authored by Eric Bénard's avatar Eric Bénard Committed by Greg Kroah-Hartman

USB: otg/ulpi.c : fix register write

ulpi_set_vbus and ulpi_set_flags are using ULPI_SET(register) to write
to the PHY's registers, which means we can only set bits in the PHY's
register and not clear them.
By directly using the address of the register without any offset, we
now get the expected behaviour for these functions.
Signed-off-by: default avatarEric Bénard <eric@eukrea.com>
Cc: Daniel Mack <daniel@caiaq.de>
Cc: linux-arm-kernel@lists.infradead.org
Cc: Sascha Hauer <kernel@pengutronix.de>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
 
parent 9800eb33
......@@ -54,7 +54,7 @@ static int ulpi_set_flags(struct otg_transceiver *otg)
if (otg->flags & USB_OTG_EXT_VBUS_INDICATOR)
flags |= ULPI_OTG_CTRL_EXTVBUSIND;
return otg_io_write(otg, flags, ULPI_SET(ULPI_OTG_CTRL));
return otg_io_write(otg, flags, ULPI_OTG_CTRL);
}
static int ulpi_init(struct otg_transceiver *otg)
......@@ -95,7 +95,7 @@ static int ulpi_set_vbus(struct otg_transceiver *otg, bool on)
flags |= ULPI_OTG_CTRL_DRVVBUS_EXT;
}
return otg_io_write(otg, flags, ULPI_SET(ULPI_OTG_CTRL));
return otg_io_write(otg, flags, ULPI_OTG_CTRL);
}
struct otg_transceiver *
......
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