USB: ohci-jz4740: FEAT_POWER is a port feature, not a hub feature

Power control of hub ports target the CLEAR_FEATURE and SET_FEATURE
requests to ports, not to the hub. Fix the hub control function to
detect the request correctly.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Lars-Peter Clausen <lars@metafoo.de>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Laurent Pinchart 2014-04-14 12:08:14 +02:00 committed by Greg Kroah-Hartman
parent 4d6b5161db
commit 166cf4aa35

View file

@ -85,11 +85,11 @@ static int ohci_jz4740_hub_control(struct usb_hcd *hcd, u16 typeReq, u16 wValue,
int ret = 0; int ret = 0;
switch (typeReq) { switch (typeReq) {
case SetHubFeature: case SetPortFeature:
if (wValue == USB_PORT_FEAT_POWER) if (wValue == USB_PORT_FEAT_POWER)
ret = ohci_jz4740_set_vbus_power(jz4740_ohci, true); ret = ohci_jz4740_set_vbus_power(jz4740_ohci, true);
break; break;
case ClearHubFeature: case ClearPortFeature:
if (wValue == USB_PORT_FEAT_POWER) if (wValue == USB_PORT_FEAT_POWER)
ret = ohci_jz4740_set_vbus_power(jz4740_ohci, false); ret = ohci_jz4740_set_vbus_power(jz4740_ohci, false);
break; break;