]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - net/bluetooth/hci_sysfs.c
[Bluetooth] Attach host adapters to the Bluetooth bus
[linux-2.6-omap-h63xx.git] / net / bluetooth / hci_sysfs.c
index 801d687ea4efbdf84d7b6982a5dda5607c2d9644..359e3440cf292fff35b0a37938f19a1479a39ff6 100644 (file)
@@ -305,7 +305,7 @@ int hci_register_sysfs(struct hci_dev *hdev)
 
        BT_DBG("%p name %s type %d", hdev, hdev->name, hdev->type);
 
-       dev->class = bt_class;
+       dev->bus = &bt_bus;
        dev->parent = hdev->parent;
 
        strlcpy(dev->bus_id, hdev->name, BUS_ID_SIZE);
@@ -322,6 +322,10 @@ int hci_register_sysfs(struct hci_dev *hdev)
                if (device_create_file(dev, bt_attrs[i]) < 0)
                        BT_ERR("Failed to create device attribute");
 
+       if (sysfs_create_link(&bt_class->subsys.kset.kobj,
+                               &dev->kobj, kobject_name(&dev->kobj)) < 0)
+               BT_ERR("Failed to create class symlink");
+
        return 0;
 }
 
@@ -329,6 +333,9 @@ void hci_unregister_sysfs(struct hci_dev *hdev)
 {
        BT_DBG("%p name %s type %d", hdev, hdev->name, hdev->type);
 
+       sysfs_remove_link(&bt_class->subsys.kset.kobj,
+                                       kobject_name(&hdev->dev.kobj));
+
        device_del(&hdev->dev);
 }