Bluetooth: btusb: Use btintel_load_ddc_config for device config
authorLoic Poulain <loic.poulain@intel.com>
Fri, 4 Sep 2015 15:54:36 +0000 (17:54 +0200)
committerMarcel Holtmann <marcel@holtmann.org>
Thu, 17 Sep 2015 11:20:06 +0000 (13:20 +0200)
btintel_load_ddc_config is now part of btintel.

Signed-off-by: Loic Poulain <loic.poulain@intel.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
drivers/bluetooth/btusb.c

index eeff7ca763447987398a3fdbba31f9a0a120dfe7..9521b7bcc22d61b7690a928bc09500c883fe5495 100644 (file)
@@ -2219,36 +2219,7 @@ done:
         * The device can work without DDC parameters, so even if it fails
         * to load the file, no need to fail the setup.
         */
-       err = request_firmware_direct(&fw, fwname, &hdev->dev);
-       if (err < 0)
-               return 0;
-
-       BT_INFO("%s: Found Intel DDC parameters: %s", hdev->name, fwname);
-
-       fw_ptr = fw->data;
-
-       /* DDC file contains one or more DDC structure which has
-        * Length (1 byte), DDC ID (2 bytes), and DDC value (Length - 2).
-        */
-       while (fw->size > fw_ptr - fw->data) {
-               u8 cmd_plen = fw_ptr[0] + sizeof(u8);
-
-               skb = __hci_cmd_sync(hdev, 0xfc8b, cmd_plen, fw_ptr,
-                                    HCI_INIT_TIMEOUT);
-               if (IS_ERR(skb)) {
-                       BT_ERR("%s: Failed to send Intel_Write_DDC (%ld)",
-                              hdev->name, PTR_ERR(skb));
-                       release_firmware(fw);
-                       return PTR_ERR(skb);
-               }
-
-               fw_ptr += cmd_plen;
-               kfree_skb(skb);
-       }
-
-       release_firmware(fw);
-
-       BT_INFO("%s: Applying Intel DDC parameters completed", hdev->name);
+       btintel_load_ddc_config(hdev, fwname);
 
        return 0;
 }