rc-msi-digivox-iii.c 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. // SPDX-License-Identifier: GPL-2.0-or-later
  2. /*
  3. * MSI DIGIVOX mini III remote controller keytable
  4. *
  5. * Copyright (C) 2010 Antti Palosaari <[email protected]>
  6. */
  7. #include <media/rc-map.h>
  8. #include <linux/module.h>
  9. /* MSI DIGIVOX mini III */
  10. /* Uses NEC extended 0x61d6. */
  11. /* This remote seems to be same as rc-kworld-315u.c. Anyhow, add new remote
  12. since rc-kworld-315u.c lacks NEC extended address byte. */
  13. static struct rc_map_table msi_digivox_iii[] = {
  14. { 0x61d601, KEY_VIDEO }, /* Source */
  15. { 0x61d602, KEY_NUMERIC_3 },
  16. { 0x61d603, KEY_POWER }, /* ShutDown */
  17. { 0x61d604, KEY_NUMERIC_1 },
  18. { 0x61d605, KEY_NUMERIC_5 },
  19. { 0x61d606, KEY_NUMERIC_6 },
  20. { 0x61d607, KEY_CHANNELDOWN }, /* CH- */
  21. { 0x61d608, KEY_NUMERIC_2 },
  22. { 0x61d609, KEY_CHANNELUP }, /* CH+ */
  23. { 0x61d60a, KEY_NUMERIC_9 },
  24. { 0x61d60b, KEY_ZOOM }, /* Zoom */
  25. { 0x61d60c, KEY_NUMERIC_7 },
  26. { 0x61d60d, KEY_NUMERIC_8 },
  27. { 0x61d60e, KEY_VOLUMEUP }, /* Vol+ */
  28. { 0x61d60f, KEY_NUMERIC_4 },
  29. { 0x61d610, KEY_ESC }, /* [back up arrow] */
  30. { 0x61d611, KEY_NUMERIC_0 },
  31. { 0x61d612, KEY_OK }, /* [enter arrow] */
  32. { 0x61d613, KEY_VOLUMEDOWN }, /* Vol- */
  33. { 0x61d614, KEY_RECORD }, /* Rec */
  34. { 0x61d615, KEY_STOP }, /* Stop */
  35. { 0x61d616, KEY_PLAY }, /* Play */
  36. { 0x61d617, KEY_MUTE }, /* Mute */
  37. { 0x61d618, KEY_UP },
  38. { 0x61d619, KEY_DOWN },
  39. { 0x61d61a, KEY_LEFT },
  40. { 0x61d61b, KEY_RIGHT },
  41. { 0x61d61c, KEY_RED },
  42. { 0x61d61d, KEY_GREEN },
  43. { 0x61d61e, KEY_YELLOW },
  44. { 0x61d61f, KEY_BLUE },
  45. { 0x61d643, KEY_POWER2 }, /* [red power button] */
  46. };
  47. static struct rc_map_list msi_digivox_iii_map = {
  48. .map = {
  49. .scan = msi_digivox_iii,
  50. .size = ARRAY_SIZE(msi_digivox_iii),
  51. .rc_proto = RC_PROTO_NECX,
  52. .name = RC_MAP_MSI_DIGIVOX_III,
  53. }
  54. };
  55. static int __init init_rc_map_msi_digivox_iii(void)
  56. {
  57. return rc_map_register(&msi_digivox_iii_map);
  58. }
  59. static void __exit exit_rc_map_msi_digivox_iii(void)
  60. {
  61. rc_map_unregister(&msi_digivox_iii_map);
  62. }
  63. module_init(init_rc_map_msi_digivox_iii)
  64. module_exit(exit_rc_map_msi_digivox_iii)
  65. MODULE_LICENSE("GPL");
  66. MODULE_AUTHOR("Antti Palosaari <[email protected]>");