summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSzymon Dziok <b0hoon@o2.pl>2014-10-03 00:20:09 +0200
committerSzymon Dziok <b0hoon@o2.pl>2014-10-03 00:20:09 +0200
commit193ea0909d05607466ba8fb6448a0e21c322bf14 (patch)
tree6ffd098e6ef6c710ac73898409866c2c2dfcb33e
parent174523ab58a6bfede3d11ee38b9288e899188584 (diff)
downloadrockbox-193ea0909d05607466ba8fb6448a0e21c322bf14.tar.gz
rockbox-193ea0909d05607466ba8fb6448a0e21c322bf14.zip
Samsung yh820/yh92x: add HID keymaps.
Change-Id: I575e0e858aef0090d6864837d40a7b51e996ab43
-rw-r--r--apps/keymaps/keymap-yh8xx_yh9xx.c104
-rw-r--r--firmware/export/config/samsungyh820.h2
-rw-r--r--firmware/export/config/samsungyh920.h1
-rw-r--r--firmware/export/config/samsungyh925.h2
4 files changed, 107 insertions, 2 deletions
diff --git a/apps/keymaps/keymap-yh8xx_yh9xx.c b/apps/keymaps/keymap-yh8xx_yh9xx.c
index eb5c969cac..c2616c08c3 100644
--- a/apps/keymaps/keymap-yh8xx_yh9xx.c
+++ b/apps/keymaps/keymap-yh8xx_yh9xx.c
@@ -327,6 +327,96 @@ static const struct button_mapping button_context_radio[] = {
327}; /* button_context_radio */ 327}; /* button_context_radio */
328#endif 328#endif
329 329
330#ifdef USB_ENABLE_HID
331static const struct button_mapping button_context_usb_hid[] = {
332 { ACTION_USB_HID_MODE_SWITCH_NEXT, BUTTON_REC|BUTTON_FFWD|BUTTON_REL, BUTTON_REC|BUTTON_FFWD },
333 { ACTION_USB_HID_MODE_SWITCH_NEXT, BUTTON_REC|BUTTON_FFWD|BUTTON_REPEAT,BUTTON_REC|BUTTON_FFWD },
334 { ACTION_USB_HID_MODE_SWITCH_PREV, BUTTON_REC|BUTTON_REW|BUTTON_REL, BUTTON_REC|BUTTON_REW },
335 { ACTION_USB_HID_MODE_SWITCH_PREV, BUTTON_REC|BUTTON_REW|BUTTON_REPEAT, BUTTON_REC|BUTTON_REW },
336
337 LAST_ITEM_IN_LIST
338}; /* button_context_usb_hid */
339
340static const struct button_mapping button_context_usb_hid_mode_multimedia[] = {
341 { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_DOWN, BUTTON_NONE },
342 { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE },
343 { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_UP, BUTTON_NONE },
344 { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE },
345 { ACTION_USB_HID_MULTIMEDIA_VOLUME_MUTE, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT },
346 { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_PLAY_PAUSE, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY },
347 { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT },
348 { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_PREV, BUTTON_REW|BUTTON_REL, BUTTON_REW },
349 { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_NEXT, BUTTON_FFWD|BUTTON_REL, BUTTON_FFWD },
350
351 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID)
352}; /* button_context_usb_hid_mode_multimedia */
353
354static const struct button_mapping button_context_usb_hid_mode_presentation[] = {
355 { ACTION_USB_HID_PRESENTATION_SLIDESHOW_START, BUTTON_PLAY|BUTTON_REL, BUTTON_RIGHT },
356 { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_REC|BUTTON_REL, BUTTON_REC },
357 { ACTION_USB_HID_PRESENTATION_SLIDE_PREV, BUTTON_REW|BUTTON_REL, BUTTON_REW },
358 { ACTION_USB_HID_PRESENTATION_SLIDE_NEXT, BUTTON_FFWD|BUTTON_REL, BUTTON_FFWD },
359 { ACTION_USB_HID_PRESENTATION_SLIDE_FIRST, BUTTON_REW|BUTTON_REPEAT, BUTTON_REW },
360 { ACTION_USB_HID_PRESENTATION_SLIDE_LAST, BUTTON_FFWD|BUTTON_REPEAT, BUTTON_FFWD },
361 { ACTION_USB_HID_PRESENTATION_SCREEN_BLACK, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT },
362 { ACTION_USB_HID_PRESENTATION_SCREEN_WHITE, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT },
363 { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_UP, BUTTON_NONE },
364 { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE },
365 { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_DOWN, BUTTON_NONE },
366 { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE },
367 { ACTION_USB_HID_PRESENTATION_MOUSE_CLICK, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT },
368 { ACTION_USB_HID_PRESENTATION_MOUSE_OVER, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT },
369
370 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID)
371}; /* button_context_usb_hid_mode_presentation */
372
373static const struct button_mapping button_context_usb_hid_mode_browser[] = {
374 { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_UP, BUTTON_NONE },
375 { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE },
376 { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_DOWN, BUTTON_NONE },
377 { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE },
378
379 { ACTION_USB_HID_BROWSER_SCROLL_PAGE_UP, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT },
380 { ACTION_USB_HID_BROWSER_SCROLL_PAGE_DOWN, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT },
381
382 { ACTION_USB_HID_BROWSER_ZOOM_IN, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT },
383 { ACTION_USB_HID_BROWSER_ZOOM_OUT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT },
384 { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_LEFT|BUTTON_DOWN|BUTTON_REPEAT, BUTTON_LEFT|BUTTON_DOWN },
385
386 { ACTION_USB_HID_BROWSER_TAB_PREV, BUTTON_REW|BUTTON_REL, BUTTON_REW },
387 { ACTION_USB_HID_BROWSER_TAB_NEXT, BUTTON_FFWD|BUTTON_REL, BUTTON_FFWD },
388 { ACTION_USB_HID_BROWSER_TAB_CLOSE, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY },
389 { ACTION_USB_HID_BROWSER_HISTORY_BACK, BUTTON_REW|BUTTON_REPEAT, BUTTON_REW },
390 { ACTION_USB_HID_BROWSER_HISTORY_FORWARD, BUTTON_FFWD|BUTTON_REPEAT, BUTTON_FFWD },
391 { ACTION_USB_HID_BROWSER_VIEW_FULL_SCREEN, BUTTON_REC|BUTTON_REL, BUTTON_REC },
392
393 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID)
394}; /* button_context_usb_hid_mode_browser */
395
396#ifdef HAVE_USB_HID_MOUSE
397static const struct button_mapping button_context_usb_hid_mode_mouse[] = {
398 { ACTION_USB_HID_MOUSE_UP, BUTTON_UP, BUTTON_NONE },
399 { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE },
400 { ACTION_USB_HID_MOUSE_DOWN, BUTTON_DOWN, BUTTON_NONE },
401 { ACTION_USB_HID_MOUSE_DOWN_REP, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE },
402 { ACTION_USB_HID_MOUSE_LEFT, BUTTON_LEFT, BUTTON_NONE },
403 { ACTION_USB_HID_MOUSE_LEFT_REP, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE },
404 { ACTION_USB_HID_MOUSE_RIGHT, BUTTON_RIGHT, BUTTON_NONE },
405 { ACTION_USB_HID_MOUSE_RIGHT_REP, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE },
406 { ACTION_USB_HID_MOUSE_BUTTON_LEFT, BUTTON_REW, BUTTON_NONE },
407 { ACTION_USB_HID_MOUSE_BUTTON_LEFT_REL, BUTTON_REW|BUTTON_REL, BUTTON_NONE },
408 { ACTION_USB_HID_MOUSE_BUTTON_RIGHT, BUTTON_FFWD, BUTTON_NONE },
409 { ACTION_USB_HID_MOUSE_BUTTON_RIGHT_REL, BUTTON_FFWD|BUTTON_REL, BUTTON_NONE },
410 { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_REC|BUTTON_UP, BUTTON_NONE },
411 { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_REC|BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE },
412 { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_REC|BUTTON_DOWN, BUTTON_NONE },
413 { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_REC|BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE },
414
415 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID)
416}; /* button_context_usb_hid_mode_mouse */
417#endif
418#endif
419
330const struct button_mapping* get_context_mapping(int context) 420const struct button_mapping* get_context_mapping(int context)
331{ 421{
332 switch (context) 422 switch (context)
@@ -377,6 +467,20 @@ const struct button_mapping* get_context_mapping(int context)
377 case CONTEXT_FM: 467 case CONTEXT_FM:
378 return button_context_radio; 468 return button_context_radio;
379#endif 469#endif
470#ifdef USB_ENABLE_HID
471 case CONTEXT_USB_HID:
472 return button_context_usb_hid;
473 case CONTEXT_USB_HID_MODE_MULTIMEDIA:
474 return button_context_usb_hid_mode_multimedia;
475 case CONTEXT_USB_HID_MODE_PRESENTATION:
476 return button_context_usb_hid_mode_presentation;
477 case CONTEXT_USB_HID_MODE_BROWSER:
478 return button_context_usb_hid_mode_browser;
479#ifdef HAVE_USB_HID_MOUSE
480 case CONTEXT_USB_HID_MODE_MOUSE:
481 return button_context_usb_hid_mode_mouse;
482#endif
483#endif
380 } 484 }
381 return button_context_standard; 485 return button_context_standard;
382} 486}
diff --git a/firmware/export/config/samsungyh820.h b/firmware/export/config/samsungyh820.h
index 08bba1a910..74b5a77004 100644
--- a/firmware/export/config/samsungyh820.h
+++ b/firmware/export/config/samsungyh820.h
@@ -163,9 +163,9 @@
163/* enable these for the experimental usb stack */ 163/* enable these for the experimental usb stack */
164#define HAVE_USBSTACK 164#define HAVE_USBSTACK
165#define USE_ROCKBOX_USB 165#define USE_ROCKBOX_USB
166/* todo - check */
167#define USB_VENDOR_ID 0x04e8 166#define USB_VENDOR_ID 0x04e8
168#define USB_PRODUCT_ID 0x5023 167#define USB_PRODUCT_ID 0x5023
168#define HAVE_USB_HID_MOUSE
169 169
170/* Define this if you have adjustable CPU frequency */ 170/* Define this if you have adjustable CPU frequency */
171#define HAVE_ADJUSTABLE_CPU_FREQ 171#define HAVE_ADJUSTABLE_CPU_FREQ
diff --git a/firmware/export/config/samsungyh920.h b/firmware/export/config/samsungyh920.h
index f9d47008fb..9b378c8ffe 100644
--- a/firmware/export/config/samsungyh920.h
+++ b/firmware/export/config/samsungyh920.h
@@ -181,6 +181,7 @@
181#define USE_ROCKBOX_USB 181#define USE_ROCKBOX_USB
182#define USB_VENDOR_ID 0x04e8 182#define USB_VENDOR_ID 0x04e8
183#define USB_PRODUCT_ID 0x5022 183#define USB_PRODUCT_ID 0x5022
184#define HAVE_USB_HID_MOUSE
184 185
185/* Define this if you have adjustable CPU frequency */ 186/* Define this if you have adjustable CPU frequency */
186#define HAVE_ADJUSTABLE_CPU_FREQ 187#define HAVE_ADJUSTABLE_CPU_FREQ
diff --git a/firmware/export/config/samsungyh925.h b/firmware/export/config/samsungyh925.h
index 26311cc5fb..45a2d5937e 100644
--- a/firmware/export/config/samsungyh925.h
+++ b/firmware/export/config/samsungyh925.h
@@ -170,9 +170,9 @@
170/* enable these for the experimental usb stack */ 170/* enable these for the experimental usb stack */
171#define HAVE_USBSTACK 171#define HAVE_USBSTACK
172#define USE_ROCKBOX_USB 172#define USE_ROCKBOX_USB
173/* todo - check */
174#define USB_VENDOR_ID 0x04e8 173#define USB_VENDOR_ID 0x04e8
175#define USB_PRODUCT_ID 0x5024 174#define USB_PRODUCT_ID 0x5024
175#define HAVE_USB_HID_MOUSE
176 176
177/* Define this if you have adjustable CPU frequency */ 177/* Define this if you have adjustable CPU frequency */
178#define HAVE_ADJUSTABLE_CPU_FREQ 178#define HAVE_ADJUSTABLE_CPU_FREQ