-
Notifications
You must be signed in to change notification settings - Fork 13
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add patch to fix the bluetooth on T2 MacBooks with the BCM4377 chip
- Loading branch information
1 parent
3a95a16
commit ea32bd1
Showing
1 changed file
with
38 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
diff --git a/drivers/bluetooth/hci_bcm4377.c b/drivers/bluetooth/hci_bcm4377.c | ||
index a61757835695..5c6fef1aa0f6 100644 | ||
--- a/drivers/bluetooth/hci_bcm4377.c | ||
+++ b/drivers/bluetooth/hci_bcm4377.c | ||
@@ -513,6 +513,7 @@ struct bcm4377_hw { | ||
unsigned long broken_ext_scan : 1; | ||
unsigned long broken_mws_transport_config : 1; | ||
unsigned long broken_le_coded : 1; | ||
+ unsigned long use_bdaddr_property : 1; | ||
|
||
int (*send_calibration)(struct bcm4377_data *bcm4377); | ||
int (*send_ptb)(struct bcm4377_data *bcm4377, | ||
@@ -2368,7 +2369,8 @@ static int bcm4377_probe(struct pci_dev *pdev, const struct pci_device_id *id) | ||
hdev->set_bdaddr = bcm4377_hci_set_bdaddr; | ||
hdev->setup = bcm4377_hci_setup; | ||
|
||
- set_bit(HCI_QUIRK_USE_BDADDR_PROPERTY, &hdev->quirks); | ||
+ if (bcm4377->hw->use_bdaddr_property) | ||
+ set_bit(HCI_QUIRK_USE_BDADDR_PROPERTY, &hdev->quirks); | ||
if (bcm4377->hw->broken_mws_transport_config) | ||
set_bit(HCI_QUIRK_BROKEN_MWS_TRANSPORT_CONFIG, &hdev->quirks); | ||
if (bcm4377->hw->broken_ext_scan) | ||
@@ -2465,6 +2467,7 @@ static const struct bcm4377_hw bcm4377_hw_variants[] = { | ||
.has_bar0_core2_window2 = true, | ||
.broken_mws_transport_config = true, | ||
.broken_le_coded = true, | ||
+ .use_bdaddr_property = true, | ||
.send_calibration = bcm4378_send_calibration, | ||
.send_ptb = bcm4378_send_ptb, | ||
}, | ||
@@ -2479,6 +2482,7 @@ static const struct bcm4377_hw bcm4377_hw_variants[] = { | ||
.clear_pciecfg_subsystem_ctrl_bit19 = true, | ||
.broken_mws_transport_config = true, | ||
.broken_le_coded = true, | ||
+ .use_bdaddr_property = true, | ||
.send_calibration = bcm4387_send_calibration, | ||
.send_ptb = bcm4378_send_ptb, | ||
}, |