Le 21/02/2017 à 12:48, Jelle Martijn Kok a écrit : > In patch 2e2aa1bc7eff90ecm, USB suspend and wakeup control requests are > passed to SFR_OHCIICR register. If a processor does not have such a > register, this hub control request will be dropped. > > If no such a SFR register is available, all USB suspend control requests > will now be processed using ohci_hub_control() > (like before patch 2e2aa1bc7eff90ecm.) > > Tested on an Atmel AT91SAM9G20 with an on-board TI TUSB2046B hub chip > If the last USB device is unplugged from the USB hub, the hub goes into > sleep and will not wakeup when an USB devices is inserted. > > Fixes: 2e2aa1bc7eff90ec ("usb: ohci-at91: Forcibly suspend ports while USB > suspend") > Signed-off-by: Jelle Martijn Kok <jm...@youcom.nl> > Tested-by: Wenyou Yang <wenyou.y...@atmel.com> > Cc: Wenyou Yang <wenyou.y...@atmel.com> > Cc: Alexandre Belloni <alexandre.bell...@free-electrons.com> > Cc: Nicolas Ferre <nicolas.fe...@atmel.com>
Acked-by: Nicolas Ferre <nicolas.fe...@microchip.com> Thanks > Cc: Alan Stern <st...@rowland.harvard.edu> > --- > drivers/usb/host/ohci-at91.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/usb/host/ohci-at91.c b/drivers/usb/host/ohci-at91.c > index b38a228..af0566d 100644 > --- a/drivers/usb/host/ohci-at91.c > +++ b/drivers/usb/host/ohci-at91.c > @@ -361,7 +361,7 @@ static int ohci_at91_hub_control(struct usb_hcd *hcd, u16 > typeReq, u16 wValue, > > case USB_PORT_FEAT_SUSPEND: > dev_dbg(hcd->self.controller, "SetPortFeat: SUSPEND\n"); > - if (valid_port(wIndex)) { > + if (valid_port(wIndex) && ohci_at91->sfr_regmap) { > ohci_at91_port_suspend(ohci_at91->sfr_regmap, > 1); > return 0; > @@ -404,7 +404,7 @@ static int ohci_at91_hub_control(struct usb_hcd *hcd, u16 > typeReq, u16 wValue, > > case USB_PORT_FEAT_SUSPEND: > dev_dbg(hcd->self.controller, "ClearPortFeature: > SUSPEND\n"); > - if (valid_port(wIndex)) { > + if (valid_port(wIndex) && ohci_at91->sfr_regmap) { > ohci_at91_port_suspend(ohci_at91->sfr_regmap, > 0); > return 0; > -- Nicolas Ferre -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html