162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0+ 262306a36Sopenharmony_ci// iodata-bctv7e.h - Keytable for iodata_bctv7e Remote Controller 362306a36Sopenharmony_ci// 462306a36Sopenharmony_ci// keymap imported from ir-keymaps.c 562306a36Sopenharmony_ci// 662306a36Sopenharmony_ci// Copyright (c) 2010 by Mauro Carvalho Chehab 762306a36Sopenharmony_ci 862306a36Sopenharmony_ci#include <media/rc-map.h> 962306a36Sopenharmony_ci#include <linux/module.h> 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_ci/* IO-DATA BCTV7E Remote */ 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_cistatic struct rc_map_table iodata_bctv7e[] = { 1462306a36Sopenharmony_ci { 0x40, KEY_TV }, 1562306a36Sopenharmony_ci { 0x20, KEY_RADIO }, /* FM */ 1662306a36Sopenharmony_ci { 0x60, KEY_EPG }, 1762306a36Sopenharmony_ci { 0x00, KEY_POWER }, 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ci /* Keys 0 to 9 */ 2062306a36Sopenharmony_ci { 0x44, KEY_NUMERIC_0 }, /* 10 */ 2162306a36Sopenharmony_ci { 0x50, KEY_NUMERIC_1 }, 2262306a36Sopenharmony_ci { 0x30, KEY_NUMERIC_2 }, 2362306a36Sopenharmony_ci { 0x70, KEY_NUMERIC_3 }, 2462306a36Sopenharmony_ci { 0x48, KEY_NUMERIC_4 }, 2562306a36Sopenharmony_ci { 0x28, KEY_NUMERIC_5 }, 2662306a36Sopenharmony_ci { 0x68, KEY_NUMERIC_6 }, 2762306a36Sopenharmony_ci { 0x58, KEY_NUMERIC_7 }, 2862306a36Sopenharmony_ci { 0x38, KEY_NUMERIC_8 }, 2962306a36Sopenharmony_ci { 0x78, KEY_NUMERIC_9 }, 3062306a36Sopenharmony_ci 3162306a36Sopenharmony_ci { 0x10, KEY_L }, /* Live */ 3262306a36Sopenharmony_ci { 0x08, KEY_TIME }, /* Time Shift */ 3362306a36Sopenharmony_ci 3462306a36Sopenharmony_ci { 0x18, KEY_PLAYPAUSE }, /* Play */ 3562306a36Sopenharmony_ci 3662306a36Sopenharmony_ci { 0x24, KEY_ENTER }, /* 11 */ 3762306a36Sopenharmony_ci { 0x64, KEY_ESC }, /* 12 */ 3862306a36Sopenharmony_ci { 0x04, KEY_M }, /* Multi */ 3962306a36Sopenharmony_ci 4062306a36Sopenharmony_ci { 0x54, KEY_VIDEO }, 4162306a36Sopenharmony_ci { 0x34, KEY_CHANNELUP }, 4262306a36Sopenharmony_ci { 0x74, KEY_VOLUMEUP }, 4362306a36Sopenharmony_ci { 0x14, KEY_MUTE }, 4462306a36Sopenharmony_ci 4562306a36Sopenharmony_ci { 0x4c, KEY_VCR }, /* SVIDEO */ 4662306a36Sopenharmony_ci { 0x2c, KEY_CHANNELDOWN }, 4762306a36Sopenharmony_ci { 0x6c, KEY_VOLUMEDOWN }, 4862306a36Sopenharmony_ci { 0x0c, KEY_ZOOM }, 4962306a36Sopenharmony_ci 5062306a36Sopenharmony_ci { 0x5c, KEY_PAUSE }, 5162306a36Sopenharmony_ci { 0x3c, KEY_RED }, /* || (red) */ 5262306a36Sopenharmony_ci { 0x7c, KEY_RECORD }, /* recording */ 5362306a36Sopenharmony_ci { 0x1c, KEY_STOP }, 5462306a36Sopenharmony_ci 5562306a36Sopenharmony_ci { 0x41, KEY_REWIND }, /* backward << */ 5662306a36Sopenharmony_ci { 0x21, KEY_PLAY }, 5762306a36Sopenharmony_ci { 0x61, KEY_FASTFORWARD }, /* forward >> */ 5862306a36Sopenharmony_ci { 0x01, KEY_NEXT }, /* skip >| */ 5962306a36Sopenharmony_ci}; 6062306a36Sopenharmony_ci 6162306a36Sopenharmony_cistatic struct rc_map_list iodata_bctv7e_map = { 6262306a36Sopenharmony_ci .map = { 6362306a36Sopenharmony_ci .scan = iodata_bctv7e, 6462306a36Sopenharmony_ci .size = ARRAY_SIZE(iodata_bctv7e), 6562306a36Sopenharmony_ci .rc_proto = RC_PROTO_UNKNOWN, /* Legacy IR type */ 6662306a36Sopenharmony_ci .name = RC_MAP_IODATA_BCTV7E, 6762306a36Sopenharmony_ci } 6862306a36Sopenharmony_ci}; 6962306a36Sopenharmony_ci 7062306a36Sopenharmony_cistatic int __init init_rc_map_iodata_bctv7e(void) 7162306a36Sopenharmony_ci{ 7262306a36Sopenharmony_ci return rc_map_register(&iodata_bctv7e_map); 7362306a36Sopenharmony_ci} 7462306a36Sopenharmony_ci 7562306a36Sopenharmony_cistatic void __exit exit_rc_map_iodata_bctv7e(void) 7662306a36Sopenharmony_ci{ 7762306a36Sopenharmony_ci rc_map_unregister(&iodata_bctv7e_map); 7862306a36Sopenharmony_ci} 7962306a36Sopenharmony_ci 8062306a36Sopenharmony_cimodule_init(init_rc_map_iodata_bctv7e) 8162306a36Sopenharmony_cimodule_exit(exit_rc_map_iodata_bctv7e) 8262306a36Sopenharmony_ci 8362306a36Sopenharmony_ciMODULE_LICENSE("GPL"); 8462306a36Sopenharmony_ciMODULE_AUTHOR("Mauro Carvalho Chehab"); 85