From 3a81316ec687ab97765e46eebe3ec2c93db4106c Mon Sep 17 00:00:00 2001 From: Mat Martineau Date: Wed, 2 Nov 2011 16:18:36 -0700 Subject: [PATCH] --- yaml --- r: 277735 b: refs/heads/master c: 08add513caa8930b8f7b9d5837a7dda624741745 h: refs/heads/master i: 277733: 5f88d674f4faf9d6ff3b3bf07d3d31d9c4687738 277731: b9f8daeb8856571af6d3e37f5263808fa6ec8b67 277727: cbfee86248ff6ea8ae3bc462cb1b0049f162d7f4 v: v3 --- [refs] | 2 +- trunk/net/bluetooth/hci_core.c | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 9ecca07cb669..ad0bf58c5bf0 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 8d5a04a130e3493c17eae7a881102ab1a4283736 +refs/heads/master: 08add513caa8930b8f7b9d5837a7dda624741745 diff --git a/trunk/net/bluetooth/hci_core.c b/trunk/net/bluetooth/hci_core.c index 4221fd5b1f4b..b7f6b5bc1bb4 100644 --- a/trunk/net/bluetooth/hci_core.c +++ b/trunk/net/bluetooth/hci_core.c @@ -1410,7 +1410,7 @@ int hci_add_adv_entry(struct hci_dev *hdev, int hci_register_dev(struct hci_dev *hdev) { struct list_head *head = &hci_dev_list, *p; - int i, id = 0, error; + int i, id, error; BT_DBG("%p name %s bus %d owner %p", hdev, hdev->name, hdev->bus, hdev->owner); @@ -1418,6 +1418,11 @@ int hci_register_dev(struct hci_dev *hdev) if (!hdev->open || !hdev->close || !hdev->destruct) return -EINVAL; + /* Do not allow HCI_AMP devices to register at index 0, + * so the index can be used as the AMP controller ID. + */ + id = (hdev->dev_type == HCI_BREDR) ? 0 : 1; + write_lock_bh(&hci_dev_list_lock); /* Find first available device id */