[Bluetooth] Integrate low-level connections into the driver model

This patch integrates the low-level connections (ACL and SCO) into the
driver model. Every connection is presented as device with the parent
set to its host controller device.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This commit is contained in:
Marcel Holtmann
2006-07-06 12:38:46 +02:00
committed by David S. Miller
parent 4d0eb0049c
commit b219e3ac66
3 changed files with 90 additions and 3 deletions

View File

@ -179,6 +179,8 @@ struct hci_conn *hci_conn_add(struct hci_dev *hdev, int type, bdaddr_t *dst)
if (hdev->notify)
hdev->notify(hdev, HCI_NOTIFY_CONN_ADD);
hci_conn_add_sysfs(conn);
tasklet_enable(&hdev->tx_task);
return conn;
@ -211,6 +213,8 @@ int hci_conn_del(struct hci_conn *conn)
tasklet_disable(&hdev->tx_task);
hci_conn_del_sysfs(conn);
hci_conn_hash_del(hdev, conn);
if (hdev->notify)
hdev->notify(hdev, HCI_NOTIFY_CONN_DEL);
@ -221,7 +225,9 @@ int hci_conn_del(struct hci_conn *conn)
hci_dev_put(hdev);
kfree(conn);
/* will free via device release */
put_device(&conn->dev);
return 0;
}