Bluetooth: Add support for external configuration with UART driver

The quirk for enabling external configuration with UART needs to be
provided via the HCI UART flags. Add a new flag for it and declare
it as valid.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
This commit is contained in:
Marcel Holtmann 2014-07-11 07:12:58 +02:00 committed by Johan Hedberg
parent bb72bd68fd
commit 6afd04ad6b
2 changed files with 6 additions and 1 deletions

View File

@ -431,6 +431,9 @@ static int hci_uart_register_dev(struct hci_uart *hu)
if (test_bit(HCI_UART_RAW_DEVICE, &hu->hdev_flags)) if (test_bit(HCI_UART_RAW_DEVICE, &hu->hdev_flags))
set_bit(HCI_QUIRK_RAW_DEVICE, &hdev->quirks); set_bit(HCI_QUIRK_RAW_DEVICE, &hdev->quirks);
if (test_bit(HCI_UART_EXT_CONFIG, &hu->hdev_flags))
set_bit(HCI_QUIRK_EXTERNAL_CONFIG, &hdev->quirks);
if (!test_bit(HCI_UART_RESET_ON_INIT, &hu->hdev_flags)) if (!test_bit(HCI_UART_RESET_ON_INIT, &hu->hdev_flags))
set_bit(HCI_QUIRK_RESET_ON_CLOSE, &hdev->quirks); set_bit(HCI_QUIRK_RESET_ON_CLOSE, &hdev->quirks);
@ -482,7 +485,8 @@ static int hci_uart_set_flags(struct hci_uart *hu, unsigned long flags)
unsigned long valid_flags = BIT(HCI_UART_RAW_DEVICE) | unsigned long valid_flags = BIT(HCI_UART_RAW_DEVICE) |
BIT(HCI_UART_RESET_ON_INIT) | BIT(HCI_UART_RESET_ON_INIT) |
BIT(HCI_UART_CREATE_AMP) | BIT(HCI_UART_CREATE_AMP) |
BIT(HCI_UART_INIT_PENDING); BIT(HCI_UART_INIT_PENDING) |
BIT(HCI_UART_EXT_CONFIG);
if ((flags & ~valid_flags)) if ((flags & ~valid_flags))
return -EINVAL; return -EINVAL;

View File

@ -48,6 +48,7 @@
#define HCI_UART_RESET_ON_INIT 1 #define HCI_UART_RESET_ON_INIT 1
#define HCI_UART_CREATE_AMP 2 #define HCI_UART_CREATE_AMP 2
#define HCI_UART_INIT_PENDING 3 #define HCI_UART_INIT_PENDING 3
#define HCI_UART_EXT_CONFIG 4
struct hci_uart; struct hci_uart;