summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorImre Kaloz <kaloz@openwrt.org>2012-11-19 10:56:09 +0000
committerImre Kaloz <kaloz@openwrt.org>2012-11-19 10:56:09 +0000
commit4c043300fc40d06ea07a1fa83691c2bc72bff1e1 (patch)
tree0b6e4d65cc47805d7fb825a1ecefe19a49b16b8c
parent4fa5781a959b0711c5cd8c57a2a55b7ba2528503 (diff)
downloadmtk-20170518-4c043300fc40d06ea07a1fa83691c2bc72bff1e1.zip
mtk-20170518-4c043300fc40d06ea07a1fa83691c2bc72bff1e1.tar.gz
mtk-20170518-4c043300fc40d06ea07a1fa83691c2bc72bff1e1.tar.bz2
fix 820-usb_add_usb_find_device_by_name.patch
SVN-Revision: 34254
-rw-r--r--target/linux/generic/patches-3.7/820-usb_add_usb_find_device_by_name.patch12
1 files changed, 6 insertions, 6 deletions
diff --git a/target/linux/generic/patches-3.7/820-usb_add_usb_find_device_by_name.patch b/target/linux/generic/patches-3.7/820-usb_add_usb_find_device_by_name.patch
index dc90e75..c77ebd1 100644
--- a/target/linux/generic/patches-3.7/820-usb_add_usb_find_device_by_name.patch
+++ b/target/linux/generic/patches-3.7/820-usb_add_usb_find_device_by_name.patch
@@ -8,6 +8,7 @@
+ const char *name)
+{
+ struct usb_device *ret_dev = NULL;
++ struct usb_device *childdev = NULL;
+ int child;
+
+ dev_dbg(&dev->dev, "check for name %s ...\n", name);
@@ -18,13 +19,12 @@
+ ret_dev = usb_get_dev(dev);
+ goto exit;
+ }
-+
+ /* look through all of the children of this device */
-+ for (child = 0; child < dev->maxchild; ++child) {
-+ if (dev->children[child]) {
-+ usb_lock_device(dev->children[child]);
-+ ret_dev = match_device_name(dev->children[child], name);
-+ usb_unlock_device(dev->children[child]);
++ usb_hub_for_each_child(dev, child, childdev) {
++ if (childdev) {
++ usb_lock_device(childdev);
++ ret_dev = match_device_name(childdev, name);
++ usb_unlock_device(childdev);
+ if (ret_dev)
+ goto exit;
+ }