diff options
Diffstat (limited to 'drivers/hid/hid-wiimote-ext.c')
| -rw-r--r-- | drivers/hid/hid-wiimote-ext.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/drivers/hid/hid-wiimote-ext.c b/drivers/hid/hid-wiimote-ext.c index 8ddabb7944a..aa958706c0e 100644 --- a/drivers/hid/hid-wiimote-ext.c +++ b/drivers/hid/hid-wiimote-ext.c @@ -1,6 +1,6 @@ /* - * HID driver for Nintendo Wii / Wii U peripheral extensions - * Copyright (c) 2011-2013 David Herrmann <dh.herrmann@gmail.com> + * HID driver for Nintendo Wiimote extension devices + * Copyright (c) 2011 David Herrmann */ /* @@ -564,6 +564,11 @@ static DEVICE_ATTR(extension, S_IRUGO, wiiext_show, NULL); static int wiiext_input_open(struct input_dev *dev) { struct wiimote_ext *ext = input_get_drvdata(dev); + int ret; + + ret = hid_hw_open(ext->wdata->hdev); + if (ret) + return ret; atomic_inc(&ext->opened); wiiext_schedule(ext); @@ -577,11 +582,17 @@ static void wiiext_input_close(struct input_dev *dev) atomic_dec(&ext->opened); wiiext_schedule(ext); + hid_hw_close(ext->wdata->hdev); } static int wiiext_mp_open(struct input_dev *dev) { struct wiimote_ext *ext = input_get_drvdata(dev); + int ret; + + ret = hid_hw_open(ext->wdata->hdev); + if (ret) + return ret; atomic_inc(&ext->mp_opened); wiiext_schedule(ext); @@ -595,6 +606,7 @@ static void wiiext_mp_close(struct input_dev *dev) atomic_dec(&ext->mp_opened); wiiext_schedule(ext); + hid_hw_close(ext->wdata->hdev); } /* Initializes the extension driver of a wiimote */ |
