int (*recv_bulk)(struct btusb_data *data, void *buffer, int count);
 };
 
-static int btusb_wait_on_bit_timeout(void *word, int bit, unsigned long timeout,
-                                    unsigned mode)
-{
-       might_sleep();
-       if (!test_bit(bit, word))
-               return 0;
-       return out_of_line_wait_on_bit_timeout(word, bit, bit_wait_timeout,
-                                              mode, timeout);
-}
-
 static inline void btusb_free_frags(struct btusb_data *data)
 {
        unsigned long flags;
         * and thus just timeout if that happens and fail the setup
         * of this device.
         */
-       err = btusb_wait_on_bit_timeout(&data->flags, BTUSB_DOWNLOADING,
-                                       msecs_to_jiffies(5000),
-                                       TASK_INTERRUPTIBLE);
+       err = wait_on_bit_timeout(&data->flags, BTUSB_DOWNLOADING,
+                                 TASK_INTERRUPTIBLE,
+                                 msecs_to_jiffies(5000));
        if (err == 1) {
                BT_ERR("%s: Firmware loading interrupted", hdev->name);
                err = -EINTR;
         */
        BT_INFO("%s: Waiting for device to boot", hdev->name);
 
-       err = btusb_wait_on_bit_timeout(&data->flags, BTUSB_BOOTING,
-                                       msecs_to_jiffies(1000),
-                                       TASK_INTERRUPTIBLE);
+       err = wait_on_bit_timeout(&data->flags, BTUSB_BOOTING,
+                                 TASK_INTERRUPTIBLE,
+                                 msecs_to_jiffies(1000));
 
        if (err == 1) {
                BT_ERR("%s: Device boot interrupted", hdev->name);