mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-11-27 20:29:41 +02:00
[generic/3.7]: fix 820-usb_add_usb_find_device_by_name.patch
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34254 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
4318f32f11
commit
15d41bfc9b
@ -8,6 +8,7 @@
|
|||||||
+ const char *name)
|
+ const char *name)
|
||||||
+{
|
+{
|
||||||
+ struct usb_device *ret_dev = NULL;
|
+ struct usb_device *ret_dev = NULL;
|
||||||
|
+ struct usb_device *childdev = NULL;
|
||||||
+ int child;
|
+ int child;
|
||||||
+
|
+
|
||||||
+ dev_dbg(&dev->dev, "check for name %s ...\n", name);
|
+ dev_dbg(&dev->dev, "check for name %s ...\n", name);
|
||||||
@ -18,13 +19,12 @@
|
|||||||
+ ret_dev = usb_get_dev(dev);
|
+ ret_dev = usb_get_dev(dev);
|
||||||
+ goto exit;
|
+ goto exit;
|
||||||
+ }
|
+ }
|
||||||
+
|
|
||||||
+ /* look through all of the children of this device */
|
+ /* look through all of the children of this device */
|
||||||
+ for (child = 0; child < dev->maxchild; ++child) {
|
+ usb_hub_for_each_child(dev, child, childdev) {
|
||||||
+ if (dev->children[child]) {
|
+ if (childdev) {
|
||||||
+ usb_lock_device(dev->children[child]);
|
+ usb_lock_device(childdev);
|
||||||
+ ret_dev = match_device_name(dev->children[child], name);
|
+ ret_dev = match_device_name(childdev, name);
|
||||||
+ usb_unlock_device(dev->children[child]);
|
+ usb_unlock_device(childdev);
|
||||||
+ if (ret_dev)
|
+ if (ret_dev)
|
||||||
+ goto exit;
|
+ goto exit;
|
||||||
+ }
|
+ }
|
||||||
|
Loading…
Reference in New Issue
Block a user