diff options
| author | Mark Brown <broonie@kernel.org> | 2026-10-27 13:28:40 +0000 |
|---|---|---|
| committer | Mark Brown <broonie@kernel.org> | 2026-10-27 13:28:40 +0000 |
| commit | e113f800b5ec541785605d1c4e70ecb3d83df895 (patch) | |
| tree | 4b3daed388d80da37f1ad16807beb7a1ba7a67ae | |
| parent | e3f4ec36fad38498d2b7bfccb49b9c912de6c014 (diff) | |
| parent | 47d4d9f67e92d56ef3965f2727f9c98a5a611368 (diff) | |
| download | linux-next-e113f800b5ec541785605d1c4e70ecb3d83df895.tar.gz linux-next-e113f800b5ec541785605d1c4e70ecb3d83df895.zip | |
Merge branch 'master' of https://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git
| -rw-r--r-- | drivers/bluetooth/Kconfig | 2 | ||||
| -rw-r--r-- | drivers/bluetooth/btintel_pcie.c | 8 | ||||
| -rw-r--r-- | drivers/bluetooth/btmtk.c | 8 | ||||
| -rw-r--r-- | drivers/bluetooth/btmtksdio.c | 8 | ||||
| -rw-r--r-- | drivers/bluetooth/btmtkuart.c | 8 |
5 files changed, 14 insertions, 20 deletions
diff --git a/drivers/bluetooth/Kconfig b/drivers/bluetooth/Kconfig index 0dca5e43edc5..b18482b5677f 100644 --- a/drivers/bluetooth/Kconfig +++ b/drivers/bluetooth/Kconfig @@ -476,7 +476,7 @@ config BT_NXPUART config BT_INTEL_PCIE tristate "Intel HCI PCIe driver" - depends on PCI && ACPI + depends on PCI && (ACPI || COMPILE_TEST) select BT_INTEL select FW_LOADER help diff --git a/drivers/bluetooth/btintel_pcie.c b/drivers/bluetooth/btintel_pcie.c index df95d16a163c..4fbefaa3129a 100644 --- a/drivers/bluetooth/btintel_pcie.c +++ b/drivers/bluetooth/btintel_pcie.c @@ -4001,6 +4001,7 @@ static void btintel_pcie_inc_recovery_count(struct pci_dev *pdev, } } +#ifdef CONFIG_ACPI static int btintel_pcie_acpi_reset_method(struct btintel_pcie_data *data) { union acpi_object *obj, argv4; @@ -4054,6 +4055,13 @@ static int btintel_pcie_acpi_reset_method(struct btintel_pcie_data *data) pci_dev_unlock(data->pdev); return ret; } +#else +static int btintel_pcie_acpi_reset_method(struct btintel_pcie_data *data) +{ + bt_dev_err(data->hdev, "No support for ACPI, cold boot"); + return -EOPNOTSUPP; +} +#endif static void btintel_pcie_perform_pldr(struct btintel_pcie_data *data) { diff --git a/drivers/bluetooth/btmtk.c b/drivers/bluetooth/btmtk.c index bf9bfed3da23..6a48ff0192cf 100644 --- a/drivers/bluetooth/btmtk.c +++ b/drivers/bluetooth/btmtk.c @@ -608,13 +608,7 @@ static void btmtk_usb_wmt_recv(struct urb *urb) return; } - if (test_and_clear_bit(BTMTK_TX_WAIT_VND_EVT, - &data->flags)) { - /* Barrier to sync with other CPUs */ - smp_mb__after_atomic(); - wake_up_bit(&data->flags, - BTMTK_TX_WAIT_VND_EVT); - } + test_and_clear_wake_up_bit(BTMTK_TX_WAIT_VND_EVT, &data->flags); kfree(urb->setup_packet); return; } else if (urb->status == -ENOENT) { diff --git a/drivers/bluetooth/btmtksdio.c b/drivers/bluetooth/btmtksdio.c index b9563df72983..b6e16716b169 100644 --- a/drivers/bluetooth/btmtksdio.c +++ b/drivers/bluetooth/btmtksdio.c @@ -442,12 +442,8 @@ static int btmtksdio_recv_event(struct hci_dev *hdev, struct sk_buff *skb) goto err_free_skb; if (evt == HCI_EV_WMT) { - if (test_and_clear_bit(BTMTKSDIO_TX_WAIT_VND_EVT, - &bdev->tx_state)) { - /* Barrier to sync with other CPUs */ - smp_mb__after_atomic(); - wake_up_bit(&bdev->tx_state, BTMTKSDIO_TX_WAIT_VND_EVT); - } + test_and_clear_wake_up_bit(BTMTKSDIO_TX_WAIT_VND_EVT, + &bdev->tx_state); } return 0; diff --git a/drivers/bluetooth/btmtkuart.c b/drivers/bluetooth/btmtkuart.c index 4af6fbbbd302..744a87acaadc 100644 --- a/drivers/bluetooth/btmtkuart.c +++ b/drivers/bluetooth/btmtkuart.c @@ -229,12 +229,8 @@ static int btmtkuart_recv_event(struct hci_dev *hdev, struct sk_buff *skb) goto err_free_skb; if (hdr->evt == HCI_EV_WMT) { - if (test_and_clear_bit(BTMTKUART_TX_WAIT_VND_EVT, - &bdev->tx_state)) { - /* Barrier to sync with other CPUs */ - smp_mb__after_atomic(); - wake_up_bit(&bdev->tx_state, BTMTKUART_TX_WAIT_VND_EVT); - } + test_and_clear_wake_up_bit(BTMTKUART_TX_WAIT_VND_EVT, + &bdev->tx_state); } return 0; |
