Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit dc946bd8 authored by David Herrmann's avatar David Herrmann Committed by Johan Hedberg
Browse files

Bluetooth: Remove __hci_dev_put/hold



Since we remove the owner field of hci_dev hci_dev_put and __hci_dev_put
do the same so we can merge them into one function. Same for
hci_dev_hold and __hci_dev_hold.

Signed-off-by: default avatarDavid Herrmann <dh.herrmann@googlemail.com>
Acked-by: default avatarMarcel Holtmann <marcel@holtmann.org>
Signed-off-by: default avatarJohan Hedberg <johan.hedberg@intel.com>
parent 4c724c71
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -1079,7 +1079,7 @@ static void btusb_disconnect(struct usb_interface *intf)

	hdev = data->hdev;

	__hci_dev_hold(hdev);
	hci_dev_hold(hdev);

	usb_set_intfdata(data->intf, NULL);

@@ -1093,7 +1093,7 @@ static void btusb_disconnect(struct usb_interface *intf)
	else if (data->isoc)
		usb_driver_release_interface(&btusb_driver, data->isoc);

	__hci_dev_put(hdev);
	hci_dev_put(hdev);

	hci_free_dev(hdev);
	kfree(data);
+2 −10
Original line number Diff line number Diff line
@@ -589,25 +589,17 @@ static inline void hci_conn_put(struct hci_conn *conn)
}

/* ----- HCI Devices ----- */
static inline void __hci_dev_put(struct hci_dev *d)
static inline void hci_dev_put(struct hci_dev *d)
{
	put_device(&d->dev);
}

/*
 * hci_dev_put and hci_dev_hold are macros to avoid dragging all the
 * overhead of all the modular infrastructure into this header.
 */
#define hci_dev_put(d) __hci_dev_put(d)

static inline struct hci_dev *__hci_dev_hold(struct hci_dev *d)
static inline struct hci_dev *hci_dev_hold(struct hci_dev *d)
{
	get_device(&d->dev);
	return d;
}

#define hci_dev_hold(d) __hci_dev_hold(d)

#define hci_dev_lock(d)		mutex_lock(&d->lock)
#define hci_dev_unlock(d)	mutex_unlock(&d->lock)

+2 −2
Original line number Diff line number Diff line
@@ -1654,7 +1654,7 @@ int hci_register_dev(struct hci_dev *hdev)
	schedule_work(&hdev->power_on);

	hci_notify(hdev, HCI_DEV_REG);
	__hci_dev_hold(hdev);
	hci_dev_hold(hdev);

	return id;

@@ -1717,7 +1717,7 @@ void hci_unregister_dev(struct hci_dev *hdev)
	hci_adv_entries_clear(hdev);
	hci_dev_unlock(hdev);

	__hci_dev_put(hdev);
	hci_dev_put(hdev);
}
EXPORT_SYMBOL(hci_unregister_dev);