1: Remove unnecessary spaces after dev_dbg/err/info functions
2: Expand compressed switches, one of which had unreachable code
3: Create and use check_port_status_changes, removes an indent level
signed-off-by: Joe Perches <[EMAIL PROTECTED]>
diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
index 875596e..3827106 100644
--- a/drivers/usb/core/hub.c
+++ b/drivers/usb/core/hub.c
@@ -151,18 +151,29 @@ static void set_port_led(
{
int status = set_port_feature(hub->hdev, (selector << 8) | port1,
USB_PORT_FEAT_INDICATOR);
- if (status < 0)
- dev_dbg (hub->intfdev,
+ if (status < 0) {
+ char *s;
+ switch (selector) {
+ case HUB_LED_AMBER:
+ s = "amber";
+ break;
+ case HUB_LED_GREEN:
+ s = "green";
+ break;
+ case HUB_LED_OFF:
+ s = "off";
+ break;
+ case HUB_LED_AUTO:
+ s = "auto";
+ break;
+ default:
+ s = "??";
+ break;
+ }
+ dev_dbg(hub->intfdev,
"port %d indicator %s status %d\n",
- port1,
- ({ char *s; switch (selector) {
- case HUB_LED_AMBER: s = "amber"; break;
- case HUB_LED_GREEN: s = "green"; break;
- case HUB_LED_OFF: s = "off"; break;
- case HUB_LED_AUTO: s = "auto"; break;
- default: s = "??"; break;
- }; s; }),
- status);
+ port1, s, status);
+ }
}
#define LED_CYCLE_PERIOD ((2*HZ)/3)
@@ -373,7 +384,7 @@ static void hub_tt_kevent (void *arg)
spin_lock_irqsave (&hub->tt.lock, flags);
if (status)
- dev_err (&hdev->dev,
+ dev_err(&hdev->dev,
"clear tt %d (%04x) error %d\n",
clear->tt, clear->devinfo, status);
kfree(clear);
@@ -405,7 +416,7 @@ void usb_hub_tt_clear_buffer (struct usb
* there can be many TTs per hub). even if they're uncommon.
*/
if ((clear = kmalloc (sizeof *clear, SLAB_ATOMIC)) == NULL) {
- dev_err (&udev->dev, "can't save CLEAR_TT_BUFFER state\n");
+ dev_err(&udev->dev, "can't save CLEAR_TT_BUFFER state\n");
/* FIXME recover somehow ... RESET_TT? */
return;
}
@@ -495,7 +506,7 @@ static int hub_hub_status(struct usb_hub
ret = get_hub_status(hub->hdev, &hub->status->hub);
if (ret < 0)
- dev_err (hub->intfdev,
+ dev_err(hub->intfdev,
"%s failed (err = %d)\n", __FUNCTION__, ret);
else {
*status = le16_to_cpu(hub->status->hub.wHubStatus);
@@ -599,8 +610,8 @@ static int hub_configure(struct usb_hub
}
hdev->maxchild = hub->descriptor->bNbrPorts;
- dev_info (hub_dev, "%d port%s detected\n", hdev->maxchild,
- (hdev->maxchild == 1) ? "" : "s");
+ dev_info(hub_dev, "%d port%s detected\n", hdev->maxchild,
+ (hdev->maxchild == 1) ? "" : "s");
wHubCharacteristics = le16_to_cpu(hub->descriptor->wHubCharacteristics);
@@ -791,8 +802,8 @@ static int hub_configure(struct usb_hub
return 0;
fail:
- dev_err (hub_dev, "config failed, %s (err %d)\n",
- message, ret);
+ dev_err(hub_dev, "config failed, %s (err %d)\n",
+ message, ret);
/* hub_disconnect() frees urb and descriptor */
return ret;
}
@@ -858,7 +869,7 @@ static int hub_probe(struct usb_interfac
if ((desc->desc.bInterfaceSubClass != 0) &&
(desc->desc.bInterfaceSubClass != 1)) {
descriptor_error:
- dev_err (&intf->dev, "bad descriptor, ignoring hub\n");
+ dev_err(&intf->dev, "bad descriptor, ignoring hub\n");
return -EIO;
}
@@ -878,11 +889,11 @@ descriptor_error:
goto descriptor_error;
/* We found a hub */
- dev_info (&intf->dev, "USB hub found\n");
+ dev_info(&intf->dev, "USB hub found\n");
hub = kzalloc(sizeof(*hub), GFP_KERNEL);
if (!hub) {
- dev_dbg (&intf->dev, "couldn't kmalloc hub struct\n");
+ dev_dbg(&intf->dev, "couldn't kmalloc hub struct\n");
return -ENOMEM;
}
@@ -1134,7 +1145,7 @@ void usb_disconnect(struct usb_device **
* this quiesces everyting except pending urbs.
*/
usb_set_device_state(udev, USB_STATE_NOTATTACHED);
- dev_info (&udev->dev, "USB disconnect, address %d\n", udev->devnum);
+ dev_info(&udev->dev, "USB disconnect, address %d\n", udev->devnum);
usb_lock_device(udev);
@@ -1156,7 +1167,7 @@ void usb_disconnect(struct usb_device **
* the sysfs attributes, and delete the parent's children[]
* (or root_hub) pointer.
*/
- dev_dbg (&udev->dev, "unregistering device\n");
+ dev_dbg(&udev->dev, "unregistering device\n");
release_address(udev);
usb_remove_sysfs_dev_files(udev);
@@ -1293,7 +1304,7 @@ static void show_string(struct usb_devic
{
if (!string)
return;
- dev_printk(KERN_INFO, &udev->dev, "%s: %s\n", id, string);
+ dev_info(&udev->dev, "%s: %s\n", id, string);
}
#else
@@ -1424,7 +1435,7 @@ int usb_new_device(struct usb_device *ud
dev_err(&udev->dev, "can't device_add, error %d\n", err);
goto fail;
}
- usb_create_sysfs_dev_files (udev);
+ usb_create_sysfs_dev_files(udev);
usb_lock_device(udev);
@@ -1462,7 +1473,7 @@ static int hub_port_status(struct usb_hu
ret = get_port_status(hub->hdev, port1, &hub->status->port);
if (ret < 0)
- dev_err (hub->intfdev,
+ dev_err(hub->intfdev,
"%s failed (err = %d)\n", __FUNCTION__, ret);
else {
*status = le16_to_cpu(hub->status->port.wPortStatus);
@@ -1525,7 +1536,7 @@ static int hub_port_wait_reset(struct us
if (delay_time >= 2 * HUB_SHORT_RESET_TIME)
delay = HUB_LONG_RESET_TIME;
- dev_dbg (hub->intfdev,
+ dev_dbg(hub->intfdev,
"port %d not reset yet, waiting %dms\n",
port1, delay);
}
@@ -1571,13 +1582,13 @@ static int hub_port_reset(struct usb_hub
return status;
}
- dev_dbg (hub->intfdev,
+ dev_dbg(hub->intfdev,
"port %d not enabled, trying reset again...\n",
port1);
delay = HUB_LONG_RESET_TIME;
}
- dev_err (hub->intfdev,
+ dev_err(hub->intfdev,
"Cannot enable port %i. Maybe the USB cable is bad?\n",
port1);
@@ -2148,7 +2159,7 @@ static int hub_port_debounce(struct usb_
msleep(HUB_DEBOUNCE_STEP);
}
- dev_dbg (hub->intfdev,
+ dev_dbg(hub->intfdev,
"debounce: port %d: total %dms stable %dms status 0x%x\n",
port1, total_time, stable_time, portstatus);
@@ -2206,6 +2217,7 @@ hub_port_init (struct usb_hub *hub, stru
int i, j, retval;
unsigned delay = HUB_SHORT_RESET_TIME;
enum usb_device_speed oldspeed = udev->speed;
+ char *speed;
/* root hub ports have a slightly longer reset period
* (from USB 2.0 spec, section 7.1.7.5)
@@ -2242,6 +2254,7 @@ hub_port_init (struct usb_hub *hub, stru
switch (udev->speed) {
case USB_SPEED_HIGH: /* fixed at 64 */
udev->ep0.desc.wMaxPacketSize = __constant_cpu_to_le16(64);
+ speed = "high";
break;
case USB_SPEED_FULL: /* 8, 16, 32, or 64 */
/* to determine the ep0 maxpacket size, try to read
@@ -2249,25 +2262,22 @@ hub_port_init (struct usb_hub *hub, stru
* then correct our initial guess.
*/
udev->ep0.desc.wMaxPacketSize = __constant_cpu_to_le16(64);
+ speed = "full";
break;
case USB_SPEED_LOW: /* fixed at 8 */
udev->ep0.desc.wMaxPacketSize = __constant_cpu_to_le16(8);
+ speed = "low";
break;
default:
goto fail;
}
- dev_info (&udev->dev,
- "%s %s speed USB device using %s and address %d\n",
- (udev->config) ? "reset" : "new",
- ({ char *speed; switch (udev->speed) {
- case USB_SPEED_LOW: speed = "low"; break;
- case USB_SPEED_FULL: speed = "full"; break;
- case USB_SPEED_HIGH: speed = "high"; break;
- default: speed = "?"; break;
- }; speed;}),
- udev->bus->controller->driver->name,
- udev->devnum);
+ dev_info(&udev->dev,
+ "%s %s speed USB device using %s and address %d\n",
+ (udev->config) ? "reset" : "new",
+ speed,
+ udev->bus->controller->driver->name,
+ udev->devnum);
/* Set up TT records, if needed */
if (hdev->tt) {
@@ -2503,7 +2513,7 @@ static void hub_port_connect_change(stru
u16 wHubCharacteristics =
le16_to_cpu(hub->descriptor->wHubCharacteristics);
int status, i;
- dev_dbg (hub_dev,
+ dev_dbg(hub_dev,
"port %d, status %04x, change %04x, %s\n",
port1, portstatus, portchange, portspeed (portstatus));
@@ -2526,7 +2536,7 @@ static void hub_port_connect_change(stru
if (portchange & USB_PORT_STAT_C_CONNECTION) {
status = hub_port_debounce(hub, port1);
if (status < 0) {
- dev_err (hub_dev,
+ dev_err(hub_dev,
"connect-debounce failed, port %d disabled\n",
port1);
goto done;
@@ -2568,7 +2578,7 @@ static void hub_port_connect_change(stru
*/
udev = usb_alloc_dev(hdev, hdev->bus, port1);
if (!udev) {
- dev_err (hub_dev,
+ dev_err(hub_dev,
"couldn't allocate port %d usb_device\n",
port1);
goto done;
@@ -2677,6 +2687,101 @@ done:
hub_port_disable(hub, port1, 1);
}
+static void check_port_status_changes(struct usb_hub *hub)
+{
+ u16 portstatus;
+ u16 portchange;
+ int i, ret;
+ int connect_change;
+ struct usb_device *hdev = hub->hdev;
+ struct usb_interface *intf = to_usb_interface(hub->intfdev);
+ struct device *hub_dev = &intf->dev;
+
+ /* deal with port status changes */
+ for (i = 1; i <= hub->descriptor->bNbrPorts; i++) {
+ if (test_bit(i, hub->busy_bits))
+ continue;
+ connect_change = test_bit(i, hub->change_bits);
+ if (!test_and_clear_bit(i, hub->event_bits) &&
+ !connect_change && !hub->activating)
+ continue;
+
+ ret = hub_port_status(hub, i, &portstatus, &portchange);
+ if (ret < 0)
+ continue;
+
+ if (hub->activating && !hdev->children[i-1] &&
+ (portstatus & USB_PORT_STAT_CONNECTION))
+ connect_change = 1;
+
+ if (portchange & USB_PORT_STAT_C_CONNECTION) {
+ clear_port_feature(hdev, i,
+ USB_PORT_FEAT_C_CONNECTION);
+ connect_change = 1;
+ }
+
+ if (portchange & USB_PORT_STAT_C_ENABLE) {
+ if (!connect_change)
+ dev_dbg(hub_dev,
+ "port %d enable change, status %08x\n",
+ i, portstatus);
+ clear_port_feature(hdev, i, USB_PORT_FEAT_C_ENABLE);
+
+ /*
+ * EM interference sometimes causes badly
+ * shielded USB devices to be shutdown by
+ * the hub, this hack enables them again.
+ * Works at least with mouse driver.
+ */
+ if (!(portstatus & USB_PORT_STAT_ENABLE) &&
+ !connect_change && hdev->children[i-1]) {
+ dev_err(hub_dev,
+ "port %i disabled by hub (EMI?), "
+ "re-enabling...\n",
+ i);
+ connect_change = 1;
+ }
+ }
+
+ if (portchange & USB_PORT_STAT_C_SUSPEND) {
+ clear_port_feature(hdev, i, USB_PORT_FEAT_C_SUSPEND);
+ if (hdev->children[i-1]) {
+ ret = remote_wakeup(hdev->children[i-1]);
+ if (ret < 0)
+ connect_change = 1;
+ } else {
+ ret = -ENODEV;
+ hub_port_disable(hub, i, 1);
+ }
+ dev_dbg(hub_dev,
+ "resume on port %d, status %d\n",
+ i, ret);
+ }
+
+ if (portchange & USB_PORT_STAT_C_OVERCURRENT) {
+ dev_err(hub_dev,
+ "over-current change on port %d\n",
+ i);
+ clear_port_feature(hdev, i,
+ USB_PORT_FEAT_C_OVER_CURRENT);
+ hub_power_on(hub);
+ }
+
+ if (portchange & USB_PORT_STAT_C_RESET) {
+ dev_dbg(hub_dev,
+ "reset change on port %d\n",
+ i);
+ clear_port_feature(hdev, i,
+ USB_PORT_FEAT_C_RESET);
+ }
+
+ if (connect_change)
+ hub_port_connect_change(hub, i,
+ portstatus, portchange);
+ } /* end for i */
+}
+
+
static void hub_events(void)
{
struct list_head *tmp;
@@ -2686,10 +2791,7 @@ static void hub_events(void)
struct device *hub_dev;
u16 hubstatus;
u16 hubchange;
- u16 portstatus;
- u16 portchange;
int i, ret;
- int connect_change;
/*
* We restart the list every time to avoid a deadlock with
@@ -2717,13 +2819,12 @@ static void hub_events(void)
i = hub->resume_root_hub;
dev_dbg(hub_dev, "state %d ports %d chg %04x evt %04x%s\n",
- hdev->state, hub->descriptor
- ? hub->descriptor->bNbrPorts
- : 0,
- /* NOTE: expects max 15 ports... */
- (u16) hub->change_bits[0],
- (u16) hub->event_bits[0],
- i ? ", resume root" : "");
+ hdev->state,
+ hub->descriptor ? hub->descriptor->bNbrPorts : 0,
+ /* NOTE: expects max 15 ports... */
+ (u16) hub->change_bits[0],
+ (u16) hub->event_bits[0],
+ i ? ", resume root" : "");
usb_get_intf(intf);
spin_unlock_irq(&hub_event_lock);
@@ -2760,12 +2861,12 @@ static void hub_events(void)
goto loop;
if (hub->error) {
- dev_dbg (hub_dev, "resetting for error %d\n",
+ dev_dbg(hub_dev, "resetting for error %d\n",
hub->error);
ret = usb_reset_composite_device(hdev, intf);
if (ret) {
- dev_dbg (hub_dev,
+ dev_dbg(hub_dev,
"error resetting hub: %d\n", ret);
goto loop;
}
@@ -2774,105 +2875,16 @@ static void hub_events(void)
hub->error = 0;
}
- /* deal with port status changes */
- for (i = 1; i <= hub->descriptor->bNbrPorts; i++) {
- if (test_bit(i, hub->busy_bits))
- continue;
- connect_change = test_bit(i, hub->change_bits);
- if (!test_and_clear_bit(i, hub->event_bits) &&
- !connect_change && !hub->activating)
- continue;
-
- ret = hub_port_status(hub, i,
- &portstatus, &portchange);
- if (ret < 0)
- continue;
-
- if (hub->activating && !hdev->children[i-1] &&
- (portstatus &
- USB_PORT_STAT_CONNECTION))
- connect_change = 1;
-
- if (portchange & USB_PORT_STAT_C_CONNECTION) {
- clear_port_feature(hdev, i,
- USB_PORT_FEAT_C_CONNECTION);
- connect_change = 1;
- }
-
- if (portchange & USB_PORT_STAT_C_ENABLE) {
- if (!connect_change)
- dev_dbg (hub_dev,
- "port %d enable change, "
- "status %08x\n",
- i, portstatus);
- clear_port_feature(hdev, i,
- USB_PORT_FEAT_C_ENABLE);
-
- /*
- * EM interference sometimes causes badly
- * shielded USB devices to be shutdown by
- * the hub, this hack enables them again.
- * Works at least with mouse driver.
- */
- if (!(portstatus & USB_PORT_STAT_ENABLE)
- && !connect_change
- && hdev->children[i-1]) {
- dev_err (hub_dev,
- "port %i "
- "disabled by hub (EMI?), "
- "re-enabling...\n",
- i);
- connect_change = 1;
- }
- }
-
- if (portchange & USB_PORT_STAT_C_SUSPEND) {
- clear_port_feature(hdev, i,
- USB_PORT_FEAT_C_SUSPEND);
- if (hdev->children[i-1]) {
- ret = remote_wakeup(hdev->
- children[i-1]);
- if (ret < 0)
- connect_change = 1;
- } else {
- ret = -ENODEV;
- hub_port_disable(hub, i, 1);
- }
- dev_dbg (hub_dev,
- "resume on port %d, status %d\n",
- i, ret);
- }
-
- if (portchange & USB_PORT_STAT_C_OVERCURRENT) {
- dev_err (hub_dev,
- "over-current change on port %d\n",
- i);
- clear_port_feature(hdev, i,
- USB_PORT_FEAT_C_OVER_CURRENT);
- hub_power_on(hub);
- }
-
- if (portchange & USB_PORT_STAT_C_RESET) {
- dev_dbg (hub_dev,
- "reset change on port %d\n",
- i);
- clear_port_feature(hdev, i,
- USB_PORT_FEAT_C_RESET);
- }
-
- if (connect_change)
- hub_port_connect_change(hub, i,
- portstatus, portchange);
- } /* end for i */
+ check_port_status_changes(hub);
/* deal with hub status changes */
if (test_and_clear_bit(0, hub->event_bits) == 0)
; /* do nothing */
else if (hub_hub_status(hub, &hubstatus, &hubchange) < 0)
- dev_err (hub_dev, "get_hub_status failed\n");
+ dev_err(hub_dev, "get_hub_status failed\n");
else {
if (hubchange & HUB_CHANGE_LOCAL_POWER) {
- dev_dbg (hub_dev, "power change\n");
+ dev_dbg(hub_dev, "power change\n");
clear_hub_feature(hdev, C_HUB_LOCAL_POWER);
if (hubstatus & HUB_STATUS_LOCAL_POWER)
/* FIXME: Is this always true? */
@@ -2881,7 +2893,7 @@ static void hub_events(void)
hub->limited_power = 1;
}
if (hubchange & HUB_CHANGE_OVERCURRENT) {
- dev_dbg (hub_dev, "overcurrent change\n");
+ dev_dbg(hub_dev, "overcurrent change\n");
msleep(500); /* Cool down */
clear_hub_feature(hdev, C_HUB_OVER_CURRENT);
hub_power_on(hub);
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel