Merge "usb: misc: lvstest: allow specifying port for compliance mode"

This commit is contained in:
Linux Build Service Account 2019-05-08 18:49:39 -07:00 committed by Gerrit - the friendly Code Review server
commit a4b2d7442d

View file

@ -186,10 +186,13 @@ static ssize_t warm_reset_store(struct device *dev,
struct usb_interface *intf = to_usb_interface(dev); struct usb_interface *intf = to_usb_interface(dev);
struct usb_device *hdev = interface_to_usbdev(intf); struct usb_device *hdev = interface_to_usbdev(intf);
struct lvs_rh *lvs = usb_get_intfdata(intf); struct lvs_rh *lvs = usb_get_intfdata(intf);
int port;
int ret; int ret;
ret = lvs_rh_set_port_feature(hdev, lvs->portnum, if (kstrtoint(buf, 0, &port) || port < 1 || port > 255)
USB_PORT_FEAT_BH_PORT_RESET); port = lvs->portnum;
ret = lvs_rh_set_port_feature(hdev, port, USB_PORT_FEAT_BH_PORT_RESET);
if (ret < 0) { if (ret < 0) {
dev_err(dev, "can't issue warm reset %d\n", ret); dev_err(dev, "can't issue warm reset %d\n", ret);
return ret; return ret;
@ -303,10 +306,14 @@ static ssize_t enable_compliance_store(struct device *dev,
struct usb_interface *intf = to_usb_interface(dev); struct usb_interface *intf = to_usb_interface(dev);
struct usb_device *hdev = interface_to_usbdev(intf); struct usb_device *hdev = interface_to_usbdev(intf);
struct lvs_rh *lvs = usb_get_intfdata(intf); struct lvs_rh *lvs = usb_get_intfdata(intf);
int port;
int ret; int ret;
if (kstrtoint(buf, 0, &port) || port < 1 || port > 255)
port = lvs->portnum;
ret = lvs_rh_set_port_feature(hdev, ret = lvs_rh_set_port_feature(hdev,
lvs->portnum | USB_SS_PORT_LS_COMP_MOD << 3, port | (USB_SS_PORT_LS_COMP_MOD << 3),
USB_PORT_FEAT_LINK_STATE); USB_PORT_FEAT_LINK_STATE);
if (ret < 0) { if (ret < 0) {
dev_err(dev, "can't enable compliance mode %d\n", ret); dev_err(dev, "can't enable compliance mode %d\n", ret);