Bluetooth: Move hci_pend_le_conn_* functions to different location
authorMarcel Holtmann <marcel@holtmann.org>
Sun, 29 Jun 2014 11:41:49 +0000 (13:41 +0200)
committerMarcel Holtmann <marcel@holtmann.org>
Thu, 3 Jul 2014 15:42:49 +0000 (17:42 +0200)
The hci_pend_le_conn_* function should be placed before their actual
users. So move them before hci_conn_params_* functions.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
net/bluetooth/hci_core.c

index 3ee2885..ffee5f5 100644 (file)
@@ -3414,6 +3414,78 @@ static bool is_identity_address(bdaddr_t *addr, u8 addr_type)
        return false;
 }
 
+/* This function requires the caller holds hdev->lock */
+struct bdaddr_list *hci_pend_le_conn_lookup(struct hci_dev *hdev,
+                                           bdaddr_t *addr, u8 addr_type)
+{
+       struct bdaddr_list *entry;
+
+       list_for_each_entry(entry, &hdev->pend_le_conns, list) {
+               if (bacmp(&entry->bdaddr, addr) == 0 &&
+                   entry->bdaddr_type == addr_type)
+                       return entry;
+       }
+
+       return NULL;
+}
+
+/* This function requires the caller holds hdev->lock */
+void hci_pend_le_conn_add(struct hci_dev *hdev, bdaddr_t *addr, u8 addr_type)
+{
+       struct bdaddr_list *entry;
+
+       entry = hci_pend_le_conn_lookup(hdev, addr, addr_type);
+       if (entry)
+               goto done;
+
+       entry = kzalloc(sizeof(*entry), GFP_KERNEL);
+       if (!entry) {
+               BT_ERR("Out of memory");
+               return;
+       }
+
+       bacpy(&entry->bdaddr, addr);
+       entry->bdaddr_type = addr_type;
+
+       list_add(&entry->list, &hdev->pend_le_conns);
+
+       BT_DBG("addr %pMR (type %u)", addr, addr_type);
+
+done:
+       hci_update_background_scan(hdev);
+}
+
+/* This function requires the caller holds hdev->lock */
+void hci_pend_le_conn_del(struct hci_dev *hdev, bdaddr_t *addr, u8 addr_type)
+{
+       struct bdaddr_list *entry;
+
+       entry = hci_pend_le_conn_lookup(hdev, addr, addr_type);
+       if (!entry)
+               goto done;
+
+       list_del(&entry->list);
+       kfree(entry);
+
+       BT_DBG("addr %pMR (type %u)", addr, addr_type);
+
+done:
+       hci_update_background_scan(hdev);
+}
+
+/* This function requires the caller holds hdev->lock */
+void hci_pend_le_conns_clear(struct hci_dev *hdev)
+{
+       struct bdaddr_list *entry, *tmp;
+
+       list_for_each_entry_safe(entry, tmp, &hdev->pend_le_conns, list) {
+               list_del(&entry->list);
+               kfree(entry);
+       }
+
+       BT_DBG("All LE pending connections cleared");
+}
+
 /* This function requires the caller holds hdev->lock */
 int hci_conn_params_add(struct hci_dev *hdev, bdaddr_t *addr, u8 addr_type,
                        u8 auto_connect, u16 conn_min_interval,
@@ -3492,78 +3564,6 @@ void hci_conn_params_clear(struct hci_dev *hdev)
        BT_DBG("All LE connection parameters were removed");
 }
 
-/* This function requires the caller holds hdev->lock */
-struct bdaddr_list *hci_pend_le_conn_lookup(struct hci_dev *hdev,
-                                           bdaddr_t *addr, u8 addr_type)
-{
-       struct bdaddr_list *entry;
-
-       list_for_each_entry(entry, &hdev->pend_le_conns, list) {
-               if (bacmp(&entry->bdaddr, addr) == 0 &&
-                   entry->bdaddr_type == addr_type)
-                       return entry;
-       }
-
-       return NULL;
-}
-
-/* This function requires the caller holds hdev->lock */
-void hci_pend_le_conn_add(struct hci_dev *hdev, bdaddr_t *addr, u8 addr_type)
-{
-       struct bdaddr_list *entry;
-
-       entry = hci_pend_le_conn_lookup(hdev, addr, addr_type);
-       if (entry)
-               goto done;
-
-       entry = kzalloc(sizeof(*entry), GFP_KERNEL);
-       if (!entry) {
-               BT_ERR("Out of memory");
-               return;
-       }
-
-       bacpy(&entry->bdaddr, addr);
-       entry->bdaddr_type = addr_type;
-
-       list_add(&entry->list, &hdev->pend_le_conns);
-
-       BT_DBG("addr %pMR (type %u)", addr, addr_type);
-
-done:
-       hci_update_background_scan(hdev);
-}
-
-/* This function requires the caller holds hdev->lock */
-void hci_pend_le_conn_del(struct hci_dev *hdev, bdaddr_t *addr, u8 addr_type)
-{
-       struct bdaddr_list *entry;
-
-       entry = hci_pend_le_conn_lookup(hdev, addr, addr_type);
-       if (!entry)
-               goto done;
-
-       list_del(&entry->list);
-       kfree(entry);
-
-       BT_DBG("addr %pMR (type %u)", addr, addr_type);
-
-done:
-       hci_update_background_scan(hdev);
-}
-
-/* This function requires the caller holds hdev->lock */
-void hci_pend_le_conns_clear(struct hci_dev *hdev)
-{
-       struct bdaddr_list *entry, *tmp;
-
-       list_for_each_entry_safe(entry, tmp, &hdev->pend_le_conns, list) {
-               list_del(&entry->list);
-               kfree(entry);
-       }
-
-       BT_DBG("All LE pending connections cleared");
-}
-
 static void inquiry_complete(struct hci_dev *hdev, u8 status)
 {
        if (status) {