Bluetooth: Remove redundant hdev->parent field
authorDavid Herrmann <dh.herrmann@googlemail.com>
Fri, 9 Mar 2012 14:53:42 +0000 (15:53 +0100)
committerGustavo Padovan <gustavo@padovan.org>
Wed, 9 May 2012 03:41:30 +0000 (00:41 -0300)
We initialize the "struct device" in hci_alloc_dev() for a long time now
so we can access hdev->dev.parent directly. Hence, we can drop the
temporary field hdev->parent which is used in no other place than
hci_add_sysfs().

SET_HCIDEV_DEV() is never called after registering a device by the
drivers so we do not overwrite internal device-state. Furthermore,
hdev->dev is initialized to 0 by kzalloc() inside hci_alloc_dev() so the
default behavior with dev.parent = NULL is kept.

Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
Acked-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
drivers/bluetooth/hci_ldisc.c
include/net/bluetooth/hci_core.h
net/bluetooth/hci_sysfs.c

index 98a8c05d4f23a038dfa020cd98930c9d52283844..e564579a6115989cb7857ca298eaee4ab43ca2ec 100644 (file)
@@ -388,7 +388,7 @@ static int hci_uart_register_dev(struct hci_uart *hu)
        hdev->close = hci_uart_close;
        hdev->flush = hci_uart_flush;
        hdev->send  = hci_uart_send_frame;
-       hdev->parent = hu->tty->dev;
+       SET_HCIDEV_DEV(hdev, hu->tty->dev);
 
        if (test_bit(HCI_UART_RAW_DEVICE, &hu->hdev_flags))
                set_bit(HCI_QUIRK_RAW_DEVICE, &hdev->quirks);
index 0eec5dbaee0f28470fc56920bf7a77d49c696412..c80a9684a14482ccbf30f4da6ee5ffcfb9de1ec6 100644 (file)
@@ -263,7 +263,6 @@ struct hci_dev {
 
        struct dentry           *debugfs;
 
-       struct device           *parent;
        struct device           dev;
 
        struct rfkill           *rfkill;
@@ -709,7 +708,7 @@ void hci_conn_init_sysfs(struct hci_conn *conn);
 void hci_conn_add_sysfs(struct hci_conn *conn);
 void hci_conn_del_sysfs(struct hci_conn *conn);
 
-#define SET_HCIDEV_DEV(hdev, pdev) ((hdev)->parent = (pdev))
+#define SET_HCIDEV_DEV(hdev, pdev) ((hdev)->dev.parent = (pdev))
 
 /* ----- LMP capabilities ----- */
 #define lmp_rswitch_capable(dev)   ((dev)->features[0] & LMP_RSWITCH)
index bc154298979a8278efa4611309e025d663f056bc..60b93d8219ef00216dd7a68f97e4da36727ac766 100644 (file)
@@ -533,7 +533,6 @@ int hci_add_sysfs(struct hci_dev *hdev)
 
        BT_DBG("%p name %s bus %d", hdev, hdev->name, hdev->bus);
 
-       dev->parent = hdev->parent;
        dev_set_name(dev, "%s", hdev->name);
 
        err = device_add(dev);