On Mon, Feb 26, 2018 at 10:09:22AM +0100, Hans de Goede wrote: > Various Intel SoCs (Cherry Trail, Broxton and others) have an internal USB > role switch for swiching the OTG USB data lines between the xHCI host > controller and the dwc3 gadget controller. > > Note on some Cherry Trail systems there is ACPI/AML code listening to > edge interrupts on the id-pin (through an _AIE ACPI method) and switching > the role between ROLE_HOST and ROLE_NONE based on the id-pin. Note it does > not set the role to ROLE_DEVICE, because device-mode is usually not used > under Windows. > > The presence of AML code which modifies the cfg0 reg (on some systems) > means that our read/write/modify of cfg0 may race with the AML code > doing the same to avoid this we take the global ACPI lock while doing > the read/write/modify. > > Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx> Reviewed-by: Heikki Krogerus <heikki.krogerus@xxxxxxxxxxxxxxx> Thanks Hans! -- heikki