Browse Source

Bluetooth: Initialize default flow control mode

Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
Acked-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
Andrei Emeltchenko 13 years ago
parent
commit
2455a3ea0c
2 changed files with 8 additions and 0 deletions
  1. 4 0
      include/net/bluetooth/hci.h
  2. 4 0
      net/bluetooth/hci_core.c

+ 4 - 0
include/net/bluetooth/hci.h

@@ -280,6 +280,10 @@ enum {
 #define HCI_ERROR_LOCAL_HOST_TERM	0x16
 #define HCI_ERROR_LOCAL_HOST_TERM	0x16
 #define HCI_ERROR_PAIRING_NOT_ALLOWED	0x18
 #define HCI_ERROR_PAIRING_NOT_ALLOWED	0x18
 
 
+/* Flow control modes */
+#define HCI_FLOW_CTL_MODE_PACKET_BASED	0x00
+#define HCI_FLOW_CTL_MODE_BLOCK_BASED	0x01
+
 /* -----  HCI Commands ---- */
 /* -----  HCI Commands ---- */
 #define HCI_OP_NOP			0x0000
 #define HCI_OP_NOP			0x0000
 
 

+ 4 - 0
net/bluetooth/hci_core.c

@@ -199,6 +199,8 @@ static void bredr_init(struct hci_dev *hdev)
 	__le16 param;
 	__le16 param;
 	__u8 flt_type;
 	__u8 flt_type;
 
 
+	hdev->flow_ctl_mode = HCI_FLOW_CTL_MODE_PACKET_BASED;
+
 	/* Mandatory initialization */
 	/* Mandatory initialization */
 
 
 	/* Reset */
 	/* Reset */
@@ -245,6 +247,8 @@ static void bredr_init(struct hci_dev *hdev)
 
 
 static void amp_init(struct hci_dev *hdev)
 static void amp_init(struct hci_dev *hdev)
 {
 {
+	hdev->flow_ctl_mode = HCI_FLOW_CTL_MODE_BLOCK_BASED;
+
 	/* Reset */
 	/* Reset */
 	hci_send_cmd(hdev, HCI_OP_RESET, 0, NULL);
 	hci_send_cmd(hdev, HCI_OP_RESET, 0, NULL);