rc-terratec-slim-2.c 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. /*
  2. * TerraTec remote controller keytable
  3. *
  4. * Copyright (C) 2011 Martin Groszhauser <mgroszhauser@gmail.com>
  5. * Copyright (C) 2011 Antti Palosaari <crope@iki.fi>
  6. *
  7. * This program is free software; you can redistribute it and/or modify
  8. * it under the terms of the GNU General Public License as published by
  9. * the Free Software Foundation; either version 2 of the License, or
  10. * (at your option) any later version.
  11. *
  12. * This program is distributed in the hope that it will be useful,
  13. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  15. * GNU General Public License for more details.
  16. *
  17. * You should have received a copy of the GNU General Public License along
  18. * with this program; if not, write to the Free Software Foundation, Inc.,
  19. * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  20. */
  21. #include <media/rc-map.h>
  22. #include <linux/module.h>
  23. /*
  24. * TerraTec slim remote, 6 rows, 3 columns.
  25. * Keytable from Martin Groszhauser <mgroszhauser@gmail.com>
  26. */
  27. static struct rc_map_table terratec_slim_2[] = {
  28. { 0x8001, KEY_MUTE }, /* MUTE */
  29. { 0x8002, KEY_VOLUMEDOWN },
  30. { 0x8003, KEY_CHANNELDOWN },
  31. { 0x8004, KEY_1 },
  32. { 0x8005, KEY_2 },
  33. { 0x8006, KEY_3 },
  34. { 0x8007, KEY_4 },
  35. { 0x8008, KEY_5 },
  36. { 0x8009, KEY_6 },
  37. { 0x800a, KEY_7 },
  38. { 0x800c, KEY_ZOOM }, /* [fullscreen] */
  39. { 0x800d, KEY_0 },
  40. { 0x800e, KEY_AGAIN }, /* [two arrows forming a circle] */
  41. { 0x8012, KEY_POWER2 }, /* [red power button] */
  42. { 0x801a, KEY_VOLUMEUP },
  43. { 0x801b, KEY_8 },
  44. { 0x801e, KEY_CHANNELUP },
  45. { 0x801f, KEY_9 },
  46. };
  47. static struct rc_map_list terratec_slim_2_map = {
  48. .map = {
  49. .scan = terratec_slim_2,
  50. .size = ARRAY_SIZE(terratec_slim_2),
  51. .rc_type = RC_TYPE_NEC,
  52. .name = RC_MAP_TERRATEC_SLIM_2,
  53. }
  54. };
  55. static int __init init_rc_map_terratec_slim_2(void)
  56. {
  57. return rc_map_register(&terratec_slim_2_map);
  58. }
  59. static void __exit exit_rc_map_terratec_slim_2(void)
  60. {
  61. rc_map_unregister(&terratec_slim_2_map);
  62. }
  63. module_init(init_rc_map_terratec_slim_2)
  64. module_exit(exit_rc_map_terratec_slim_2)
  65. MODULE_LICENSE("GPL");
  66. MODULE_AUTHOR("Antti Palosaari <crope@iki.fi>");