rc-leadtek-y04g0051.c 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. // SPDX-License-Identifier: GPL-2.0-or-later
  2. /*
  3. * LeadTek Y04G0051 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. static struct rc_map_table leadtek_y04g0051[] = {
  10. { 0x0300, KEY_POWER2 },
  11. { 0x0303, KEY_SCREEN },
  12. { 0x0304, KEY_RIGHT },
  13. { 0x0305, KEY_NUMERIC_1 },
  14. { 0x0306, KEY_NUMERIC_2 },
  15. { 0x0307, KEY_NUMERIC_3 },
  16. { 0x0308, KEY_LEFT },
  17. { 0x0309, KEY_NUMERIC_4 },
  18. { 0x030a, KEY_NUMERIC_5 },
  19. { 0x030b, KEY_NUMERIC_6 },
  20. { 0x030c, KEY_UP },
  21. { 0x030d, KEY_NUMERIC_7 },
  22. { 0x030e, KEY_NUMERIC_8 },
  23. { 0x030f, KEY_NUMERIC_9 },
  24. { 0x0310, KEY_DOWN },
  25. { 0x0311, KEY_AGAIN },
  26. { 0x0312, KEY_NUMERIC_0 },
  27. { 0x0313, KEY_OK }, /* 1st ok */
  28. { 0x0314, KEY_MUTE },
  29. { 0x0316, KEY_OK }, /* 2nd ok */
  30. { 0x031e, KEY_VIDEO }, /* 2nd video */
  31. { 0x031b, KEY_AUDIO },
  32. { 0x031f, KEY_TEXT },
  33. { 0x0340, KEY_SLEEP },
  34. { 0x0341, KEY_DOT },
  35. { 0x0342, KEY_REWIND },
  36. { 0x0343, KEY_PLAY },
  37. { 0x0344, KEY_FASTFORWARD },
  38. { 0x0345, KEY_TIME },
  39. { 0x0346, KEY_STOP }, /* 2nd stop */
  40. { 0x0347, KEY_RECORD },
  41. { 0x0348, KEY_CAMERA },
  42. { 0x0349, KEY_ESC },
  43. { 0x034a, KEY_NEW },
  44. { 0x034b, KEY_RED },
  45. { 0x034c, KEY_GREEN },
  46. { 0x034d, KEY_YELLOW },
  47. { 0x034e, KEY_BLUE },
  48. { 0x034f, KEY_MENU },
  49. { 0x0350, KEY_STOP }, /* 1st stop */
  50. { 0x0351, KEY_CHANNEL },
  51. { 0x0352, KEY_VIDEO }, /* 1st video */
  52. { 0x0353, KEY_EPG },
  53. { 0x0354, KEY_PREVIOUS },
  54. { 0x0355, KEY_NEXT },
  55. { 0x0356, KEY_TV },
  56. { 0x035a, KEY_VOLUMEDOWN },
  57. { 0x035b, KEY_CHANNELUP },
  58. { 0x035e, KEY_VOLUMEUP },
  59. { 0x035f, KEY_CHANNELDOWN },
  60. };
  61. static struct rc_map_list leadtek_y04g0051_map = {
  62. .map = {
  63. .scan = leadtek_y04g0051,
  64. .size = ARRAY_SIZE(leadtek_y04g0051),
  65. .rc_proto = RC_PROTO_NEC,
  66. .name = RC_MAP_LEADTEK_Y04G0051,
  67. }
  68. };
  69. static int __init init_rc_map_leadtek_y04g0051(void)
  70. {
  71. return rc_map_register(&leadtek_y04g0051_map);
  72. }
  73. static void __exit exit_rc_map_leadtek_y04g0051(void)
  74. {
  75. rc_map_unregister(&leadtek_y04g0051_map);
  76. }
  77. module_init(init_rc_map_leadtek_y04g0051)
  78. module_exit(exit_rc_map_leadtek_y04g0051)
  79. MODULE_LICENSE("GPL");
  80. MODULE_AUTHOR("Antti Palosaari <[email protected]>");