Author: nwhitehorn
Date: Wed Nov 11 03:17:51 2009
New Revision: 199169
URL: http://svn.freebsd.org/changeset/base/199169

Log:
  Reduce probe priority of USB input devices to BUS_PROBE_GENERIC from
  BUS_PROBE_SPECIFIC. This allows device-specific drivers like atp to
  attach reliably.
  
  Reviewed by:  hps

Modified:
  head/sys/dev/usb/input/uhid.c
  head/sys/dev/usb/input/ukbd.c
  head/sys/dev/usb/input/ums.c

Modified: head/sys/dev/usb/input/uhid.c
==============================================================================
--- head/sys/dev/usb/input/uhid.c       Wed Nov 11 02:25:27 2009        
(r199168)
+++ head/sys/dev/usb/input/uhid.c       Wed Nov 11 03:17:51 2009        
(r199169)
@@ -633,7 +633,7 @@ uhid_probe(device_t dev)
        if (usb_test_quirk(uaa, UQ_HID_IGNORE)) {
                return (ENXIO);
        }
-       return (0);
+       return (BUS_PROBE_GENERIC);
 }
 
 static int

Modified: head/sys/dev/usb/input/ukbd.c
==============================================================================
--- head/sys/dev/usb/input/ukbd.c       Wed Nov 11 02:25:27 2009        
(r199168)
+++ head/sys/dev/usb/input/ukbd.c       Wed Nov 11 03:17:51 2009        
(r199169)
@@ -749,7 +749,7 @@ ukbd_probe(device_t dev)
                if (usb_test_quirk(uaa, UQ_KBD_IGNORE))
                        return (ENXIO);
                else
-                       return (0);
+                       return (BUS_PROBE_GENERIC);
        }
 
        error = usbd_req_get_hid_desc(uaa->device, NULL,
@@ -771,7 +771,7 @@ ukbd_probe(device_t dev)
                if (usb_test_quirk(uaa, UQ_KBD_IGNORE))
                        error = ENXIO;
                else
-                       error = 0;
+                       error = BUS_PROBE_GENERIC;
        } else
                error = ENXIO;
 

Modified: head/sys/dev/usb/input/ums.c
==============================================================================
--- head/sys/dev/usb/input/ums.c        Wed Nov 11 02:25:27 2009        
(r199168)
+++ head/sys/dev/usb/input/ums.c        Wed Nov 11 03:17:51 2009        
(r199169)
@@ -375,7 +375,7 @@ ums_probe(device_t dev)
 
        if ((uaa->info.bInterfaceSubClass == UISUBCLASS_BOOT) &&
            (uaa->info.bInterfaceProtocol == UIPROTO_MOUSE))
-               return (0);
+               return (BUS_PROBE_GENERIC);
 
        error = usbd_req_get_hid_desc(uaa->device, NULL,
            &d_ptr, &d_len, M_TEMP, uaa->info.bIfaceIndex);
@@ -385,7 +385,7 @@ ums_probe(device_t dev)
 
        if (hid_is_collection(d_ptr, d_len,
            HID_USAGE2(HUP_GENERIC_DESKTOP, HUG_MOUSE)))
-               error = 0;
+               error = BUS_PROBE_GENERIC;
        else
                error = ENXIO;
 
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to