Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e924d3d6 authored by Loic Poulain's avatar Loic Poulain Committed by Marcel Holtmann
Browse files

Bluetooth: btusb: Use btintel_load_ddc_config for device config



btintel_load_ddc_config is now part of btintel.

Signed-off-by: default avatarLoic Poulain <loic.poulain@intel.com>
Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
parent 1cfbabdd
Loading
Loading
Loading
Loading
+1 −30
Original line number Diff line number Diff line
@@ -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;
}