summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBjørn Mork <bjorn@mork.no>2014-01-11 05:04:00 +0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-02-08 02:24:24 +0400
commit31c6bf70955dda6ef92ab40624f289576cff97d3 (patch)
treea36b167ec44a46fe50f01f9f08a0139697f0313b
parent823d12c95c666fa7ab7dad208d735f6bc6afabdc (diff)
downloadlinux-31c6bf70955dda6ef92ab40624f289576cff97d3.tar.xz
usb: core: let dynamic ids override static ids
This modifies the probing order so that any matching dynamic entry always will be used, even if the driver has a matching static entry. It is sometimes useful to dynamically update existing device entries. With the new ability to set the dynamic entry driver_info field, this can be used to test new additions to class driver exception lists or proposed changes to existing static per-device driver_info entries. Signed-off-by: Bjørn Mork <bjorn@mork.no> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/usb/core/driver.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/usb/core/driver.c b/drivers/usb/core/driver.c
index 5d01558cef66..9cd218135087 100644
--- a/drivers/usb/core/driver.c
+++ b/drivers/usb/core/driver.c
@@ -302,9 +302,9 @@ static int usb_probe_interface(struct device *dev)
return error;
}
- id = usb_match_id(intf, driver->id_table);
+ id = usb_match_dynamic_id(intf, driver);
if (!id)
- id = usb_match_dynamic_id(intf, driver);
+ id = usb_match_id(intf, driver->id_table);
if (!id)
return error;