summaryrefslogtreecommitdiffstats
path: root/include/media/rc-map.h
diff options
context:
space:
mode:
authorDavid Härdeman <david@hardeman.nu>2014-04-04 01:31:25 +0200
committerMauro Carvalho Chehab <m.chehab@samsung.com>2014-07-24 01:05:56 +0200
commit4dd9bb91bb5dc44e3f8c23c60a0ba432e50d7488 (patch)
treeeadbd0f9d33fc8e5da28a03356170cdee7404b3b /include/media/rc-map.h
parent[media] bt8xx: fixup RC5 decoding (diff)
downloadlinux-4dd9bb91bb5dc44e3f8c23c60a0ba432e50d7488.tar.xz
linux-4dd9bb91bb5dc44e3f8c23c60a0ba432e50d7488.zip
[media] rc-core: improve ir-kbd-i2c get_key functions
The arguments used for ir-kbd-i2c's get_key() functions are not really suited for rc-core and the ir_raw/ir_key distinction is just confusing. Convert all of them to return a protocol/scancode/toggle triple instead. Signed-off-by: David Härdeman <david@hardeman.nu> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Diffstat (limited to 'include/media/rc-map.h')
-rw-r--r--include/media/rc-map.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/include/media/rc-map.h b/include/media/rc-map.h
index e5aa2409c0ea..894c7e4c409b 100644
--- a/include/media/rc-map.h
+++ b/include/media/rc-map.h
@@ -62,6 +62,16 @@ enum rc_type {
RC_BIT_RC6_0 | RC_BIT_RC6_6A_20 | RC_BIT_RC6_6A_24 | \
RC_BIT_RC6_6A_32 | RC_BIT_RC6_MCE | RC_BIT_SHARP)
+#define RC_SCANCODE_UNKNOWN(x) (x)
+#define RC_SCANCODE_OTHER(x) (x)
+#define RC_SCANCODE_NEC(addr, cmd) (((addr) << 8) | (cmd))
+#define RC_SCANCODE_NECX(addr, cmd) (((addr) << 8) | (cmd))
+#define RC_SCANCODE_NEC32(data) ((data) & 0xffffffff)
+#define RC_SCANCODE_RC5(sys, cmd) (((sys) << 8) | (cmd))
+#define RC_SCANCODE_RC5_SZ(sys, cmd) (((sys) << 8) | (cmd))
+#define RC_SCANCODE_RC6_0(sys, cmd) (((sys) << 8) | (cmd))
+#define RC_SCANCODE_RC6_6A(vendor, sys, cmd) (((vendor) << 16) | ((sys) << 8) | (cmd))
+
struct rc_map_table {
u32 scancode;
u32 keycode;