diff options
Diffstat (limited to 'usr')
| -rw-r--r-- | usr/src/dkms_source_tree/hid-mosart.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/usr/src/dkms_source_tree/hid-mosart.c b/usr/src/dkms_source_tree/hid-mosart.c index 3ac9be6..4c56007 100644 --- a/usr/src/dkms_source_tree/hid-mosart.c +++ b/usr/src/dkms_source_tree/hid-mosart.c | |||
| @@ -92,6 +92,11 @@ static int mosart_input_mapping(struct hid_device *hdev, struct hid_input *hi, | |||
| 92 | case 0xff000000: | 92 | case 0xff000000: |
| 93 | /* ignore HID features */ | 93 | /* ignore HID features */ |
| 94 | return -1; | 94 | return -1; |
| 95 | |||
| 96 | case HID_UP_BUTTON: | ||
| 97 | /* ignore buttons */ | ||
| 98 | return -1; | ||
| 99 | |||
| 95 | } | 100 | } |
| 96 | 101 | ||
| 97 | return 0; | 102 | return 0; |
| @@ -232,6 +237,19 @@ static int mosart_probe(struct hid_device *hdev, const struct hid_device_id *id) | |||
| 232 | return ret; | 237 | return ret; |
| 233 | } | 238 | } |
| 234 | 239 | ||
| 240 | #ifdef CONFIG_PM | ||
| 241 | static int mosart_reset_resume(struct hid_device *hdev) | ||
| 242 | { | ||
| 243 | struct hid_report_enum *re = hdev->report_enum | ||
| 244 | + HID_FEATURE_REPORT; | ||
| 245 | struct hid_report *r = re->report_id_hash[7]; | ||
| 246 | |||
| 247 | r->field[0]->value[0] = 0x02; | ||
| 248 | usbhid_submit_report(hdev, r, USB_DIR_OUT); | ||
| 249 | return 0; | ||
| 250 | } | ||
| 251 | #endif | ||
| 252 | |||
| 235 | static void mosart_remove(struct hid_device *hdev) | 253 | static void mosart_remove(struct hid_device *hdev) |
| 236 | { | 254 | { |
| 237 | hid_hw_stop(hdev); | 255 | hid_hw_stop(hdev); |
| @@ -260,6 +278,9 @@ static struct hid_driver mosart_driver = { | |||
| 260 | .input_mapped = mosart_input_mapped, | 278 | .input_mapped = mosart_input_mapped, |
| 261 | .usage_table = mosart_grabbed_usages, | 279 | .usage_table = mosart_grabbed_usages, |
| 262 | .event = mosart_event, | 280 | .event = mosart_event, |
| 281 | #ifdef CONFIG_PM | ||
| 282 | .reset_resume = mosart_reset_resume, | ||
| 283 | #endif | ||
| 263 | }; | 284 | }; |
| 264 | 285 | ||
| 265 | static int __init mosart_init(void) | 286 | static int __init mosart_init(void) |
