Bluetooth: Disconnect HIDRAW devices on disconnect
Currently the HID subsystem will create HIDRAW devices for the transport driver, but it will not disconnect them. Until the HID subsytem gets fixed, ensure that HIDRAW and HIDDEV devices are disconnected when the Bluetooth HID device gets removed. Based on a patch from Brian Rogers <brian@xyzw.org> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This commit is contained in:
parent
290ba20081
commit
364f63519d
|
@ -40,6 +40,7 @@
|
|||
|
||||
#include <linux/input.h>
|
||||
#include <linux/hid.h>
|
||||
#include <linux/hidraw.h>
|
||||
|
||||
#include <net/bluetooth/bluetooth.h>
|
||||
#include <net/bluetooth/hci_core.h>
|
||||
|
@ -574,6 +575,8 @@ static int hidp_session(void *arg)
|
|||
if (session->hid) {
|
||||
if (session->hid->claimed & HID_CLAIMED_INPUT)
|
||||
hidinput_disconnect(session->hid);
|
||||
if (session->hid->claimed & HID_CLAIMED_HIDRAW)
|
||||
hidraw_disconnect(session->hid);
|
||||
hid_destroy_device(session->hid);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue