From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Paolo Sabatino <paolo.sabatino@gmail.com>
Date: Fri, 10 Jun 2022 15:59:15 +0000
Subject: add xt-q8l-v10 keymap and makefile

---
 drivers/media/rc/keymaps/Makefile        |  1 +
 drivers/media/rc/keymaps/rc-xt-q8l-v10.c | 76 ++++++++++
 include/media/rc-map.h                   |  1 +
 3 files changed, 78 insertions(+)

diff --git a/drivers/media/rc/keymaps/Makefile b/drivers/media/rc/keymaps/Makefile
index f513ff5caf4e..198ef8bc2614 100644
--- a/drivers/media/rc/keymaps/Makefile
+++ b/drivers/media/rc/keymaps/Makefile
@@ -136,4 +136,5 @@ obj-$(CONFIG_RC_MAP) += \
 			rc-x96max.o \
 			rc-xbox-360.o \
 			rc-xbox-dvd.o \
+			rc-xt-q8l-v10.o \
 			rc-zx-irdec.o
diff --git a/drivers/media/rc/keymaps/rc-xt-q8l-v10.c b/drivers/media/rc/keymaps/rc-xt-q8l-v10.c
new file mode 100644
index 000000000000..19c7d9ec8325
--- /dev/null
+++ b/drivers/media/rc/keymaps/rc-xt-q8l-v10.c
@@ -0,0 +1,76 @@
+// SPDX-License-Identifier: GPL-2.0+
+// rc-xt-q8l-v10.c - Keytable for xt-q8l-v10 tv box remote controller
+//
+// keymap imported from ir-keymaps.c
+//
+// Copyright (c) 2018 Paolo Sabatino
+
+#include <media/rc-map.h>
+#include <linux/module.h>
+
+/*
+
+*/
+
+static struct rc_map_table xt_q8l_v10[] = {
+	
+	{ 0xcc1d11, KEY_ENTER },
+	{ 0xcc1d00, KEY_POWER },
+	{ 0xcc1d15, KEY_PLAYPAUSE },
+	{ 0xcc1d16, KEY_STOP },
+	{ 0xcc1d06, KEY_PREVIOUSSONG },
+	{ 0xcc1d0a, KEY_NEXTSONG },
+	{ 0xcc1d41, KEY_1 },
+	{ 0xcc1d45, KEY_2 },
+	{ 0xcc1d4d, KEY_3 },
+	{ 0xcc1d42, KEY_4 },
+	{ 0xcc1d46, KEY_5 },
+	{ 0xcc1d4e, KEY_6 },
+	{ 0xcc1d43, KEY_7 },
+	{ 0xcc1d47, KEY_8 },
+	{ 0xcc1d4f, KEY_9 },
+	{ 0xcc1d49, KEY_0 },
+	{ 0xcc1d4a, KEY_BACKSPACE },
+	{ 0xcc1d48, KEY_F6 },
+	{ 0xcc1d03, KEY_HOME },
+	{ 0xcc1d0f, KEY_BACK },
+	{ 0xcc1d40, KEY_MENU },
+	{ 0xcc1d4c, KEY_TEXT },
+	{ 0xcc1d10, KEY_LEFT },
+	{ 0xcc1d12, KEY_RIGHT },
+	{ 0xcc1d44, KEY_DOWN },
+	{ 0xcc1d07, KEY_UP },
+	{ 0xcc1d02, KEY_VOLUMEDOWN },
+	{ 0xcc1d0c, KEY_MUTE },
+	{ 0xcc1d0e, KEY_VOLUMEUP },
+	{ 0xcc1d01, KEY_F1 },
+	{ 0xcc1d05, KEY_F2 },
+	{ 0xcc1d09, KEY_F3 },
+	{ 0xcc1d0d, KEY_F4 },
+	
+};
+
+static struct rc_map_list xt_q8l_v10_map = {
+	.map = {
+		.scan     = xt_q8l_v10,
+		.size     = ARRAY_SIZE(xt_q8l_v10),
+		.rc_proto = RC_PROTO_NEC,	/* Legacy IR type */
+		.name     = RC_MAP_XT_Q8L_V10,
+	}
+};
+
+static int __init init_rc_map_xt_q8l_v10(void)
+{
+	return rc_map_register(&xt_q8l_v10_map);
+}
+
+static void __exit exit_rc_map_xt_q8l_v10(void)
+{
+	rc_map_unregister(&xt_q8l_v10_map);
+}
+
+module_init(init_rc_map_xt_q8l_v10)
+module_exit(exit_rc_map_xt_q8l_v10)
+
+MODULE_LICENSE("GPL");
+MODULE_AUTHOR("Paolo Sabatino");
diff --git a/include/media/rc-map.h b/include/media/rc-map.h
index 793b54342dff..ef7f3710eafe 100644
--- a/include/media/rc-map.h
+++ b/include/media/rc-map.h
@@ -343,6 +343,7 @@ struct rc_map *rc_map_get(const char *name);
 #define RC_MAP_X96MAX                    "rc-x96max"
 #define RC_MAP_XBOX_360                  "rc-xbox-360"
 #define RC_MAP_XBOX_DVD                  "rc-xbox-dvd"
+#define RC_MAP_XT_Q8L_V10                "rc-xt-q8l-v10"
 #define RC_MAP_ZX_IRDEC                  "rc-zx-irdec"
 
 /*
-- 
Armbian

