On Wed, May 23, 2018 at 08:03:43PM +0200, Hans de Goede wrote: > Hi, > > On 23-05-18 16:37, Heikki Krogerus wrote: > > Trying to determine the USB port type with this mux is very > > difficult. To simplify the situation, always allowing user > > control, even if the port is USB Type-C port. > > > > Signed-off-by: Heikki Krogerus <heikki.krogerus@xxxxxxxxxxxxxxx> > > --- > > .../usb/roles/intel-xhci-usb-role-switch.c | 21 +------------------ > > 1 file changed, 1 insertion(+), 20 deletions(-) > > > > diff --git a/drivers/usb/roles/intel-xhci-usb-role-switch.c b/drivers/usb/roles/intel-xhci-usb-role-switch.c > > index 30b07ea3a3c6..3f14153d753f 100644 > > --- a/drivers/usb/roles/intel-xhci-usb-role-switch.c > > +++ b/drivers/usb/roles/intel-xhci-usb-role-switch.c > > @@ -39,20 +39,6 @@ struct intel_xhci_usb_data { > > void __iomem *base; > > }; > > -struct intel_xhci_acpi_match { > > - const char *hid; > > - int hrv; > > -}; > > - > > -/* > > - * ACPI IDs for PMICs which do not support separate data and power role > > - * detection (USB ACA detection for micro USB OTG), we allow userspace to > > - * change the role manually on these. > > - */ > > -static const struct intel_xhci_acpi_match allow_userspace_ctrl_ids[] = { > > - { "INT33F4", 3 }, /* X-Powers AXP288 PMIC */ > > -}; > > - > > static int intel_xhci_usb_set_role(struct device *dev, enum usb_role role) > > { > > struct intel_xhci_usb_data *data = dev_get_drvdata(dev); > > @@ -139,6 +125,7 @@ static enum usb_role intel_xhci_usb_get_role(struct device *dev) > > static struct usb_role_switch_desc sw_desc = { > > .set = intel_xhci_usb_set_role, > > .get = intel_xhci_usb_get_role, > > + .allow_userspace_control = true, > > }; > > static int intel_xhci_usb_probe(struct platform_device *pdev) > > > I hate to be pedantic here, but the sw_desc can and should be made > const now, with that fixed the entire series is: Sure, I'll fix that. > Reviewed-by: Hans de Goede <hdegoede@xxxxxxxxxx> Thanks Hans. I'll send the v3. I need to add one more fix to the series. I got a report where somebody hit the issue related to the runtime PM we talked about a while back: If xHCI is suspended, we fail to program the mux registers as they are part of xHCI MMIO, so I will add a patch to this series where I enable runtime PM here to fix that problem. Cheers, -- heikki -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html