aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/bluetooth/btusb.c
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2015-10-19 20:30:48 -0400
committerMarcel Holtmann <marcel@holtmann.org>2015-10-20 18:49:23 -0400
commit49a5f782d03888e8b55ed799e57a592b76ce32f6 (patch)
treef11597a854f34df398e26a9ca349fc9400f9ddba /drivers/bluetooth/btusb.c
parente131d74a3afe2b44c3bc59dc4ff06bfd0481ab1a (diff)
Bluetooth: btusb: Set early vendor info for Intel and Broadcom
For the controllers from Intel and Broadcom (including Apple), it is helpful to have the information about the manufacturer send out early. This patch sets the hdev->manufacturer information which will be send out before actually calling the vendor specific hdev->setup driver callback. Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Diffstat (limited to 'drivers/bluetooth/btusb.c')
-rw-r--r--drivers/bluetooth/btusb.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
index c064bb9540ee..9ed334de34d0 100644
--- a/drivers/bluetooth/btusb.c
+++ b/drivers/bluetooth/btusb.c
@@ -2874,6 +2874,7 @@ static int btusb_probe(struct usb_interface *intf,
2874 2874
2875#ifdef CONFIG_BT_HCIBTUSB_BCM 2875#ifdef CONFIG_BT_HCIBTUSB_BCM
2876 if (id->driver_info & BTUSB_BCM_PATCHRAM) { 2876 if (id->driver_info & BTUSB_BCM_PATCHRAM) {
2877 hdev->manufacturer = 15;
2877 hdev->setup = btbcm_setup_patchram; 2878 hdev->setup = btbcm_setup_patchram;
2878 hdev->set_diag = btusb_bcm_set_diag; 2879 hdev->set_diag = btusb_bcm_set_diag;
2879 hdev->set_bdaddr = btbcm_set_bdaddr; 2880 hdev->set_bdaddr = btbcm_set_bdaddr;
@@ -2883,6 +2884,7 @@ static int btusb_probe(struct usb_interface *intf,
2883 } 2884 }
2884 2885
2885 if (id->driver_info & BTUSB_BCM_APPLE) { 2886 if (id->driver_info & BTUSB_BCM_APPLE) {
2887 hdev->manufacturer = 15;
2886 hdev->setup = btbcm_setup_apple; 2888 hdev->setup = btbcm_setup_apple;
2887 hdev->set_diag = btusb_bcm_set_diag; 2889 hdev->set_diag = btusb_bcm_set_diag;
2888 2890
@@ -2892,6 +2894,7 @@ static int btusb_probe(struct usb_interface *intf,
2892#endif 2894#endif
2893 2895
2894 if (id->driver_info & BTUSB_INTEL) { 2896 if (id->driver_info & BTUSB_INTEL) {
2897 hdev->manufacturer = 2;
2895 hdev->setup = btusb_setup_intel; 2898 hdev->setup = btusb_setup_intel;
2896 hdev->shutdown = btusb_shutdown_intel; 2899 hdev->shutdown = btusb_shutdown_intel;
2897 hdev->set_diag = btintel_set_diag_mfg; 2900 hdev->set_diag = btintel_set_diag_mfg;
@@ -2902,6 +2905,7 @@ static int btusb_probe(struct usb_interface *intf,
2902 } 2905 }
2903 2906
2904 if (id->driver_info & BTUSB_INTEL_NEW) { 2907 if (id->driver_info & BTUSB_INTEL_NEW) {
2908 hdev->manufacturer = 2;
2905 hdev->send = btusb_send_frame_intel; 2909 hdev->send = btusb_send_frame_intel;
2906 hdev->setup = btusb_setup_intel_new; 2910 hdev->setup = btusb_setup_intel_new;
2907 hdev->hw_error = btintel_hw_error; 2911 hdev->hw_error = btintel_hw_error;