[media] media: rc: add raw decoder for Sharp protocol
authorJames Hogan <james.hogan@imgtec.com>
Fri, 17 Jan 2014 13:58:48 +0000 (10:58 -0300)
committerMauro Carvalho Chehab <m.chehab@samsung.com>
Tue, 4 Feb 2014 17:43:13 +0000 (15:43 -0200)
Add a raw decoder for the Sharp protocol. It uses a pulse distance
modulation with a pulse of 320us and a bit period of 2ms for a logical 1
and 1ms for a logical 0. The first part of the message consists of a
5-bit address, an 8-bit command, and two other bits, followed by a 40ms
gap before the echo message which is an inverted version of the main
message except for the address bits.

Signed-off-by: James Hogan <james.hogan@imgtec.com>
Cc: Mauro Carvalho Chehab <m.chehab@samsung.com>
Cc: linux-media@vger.kernel.org
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
drivers/media/rc/Kconfig
drivers/media/rc/Makefile
drivers/media/rc/ir-sharp-decoder.c [new file with mode: 0644]
drivers/media/rc/rc-core-priv.h

index 904f113..3b25887 100644 (file)
@@ -106,6 +106,15 @@ config IR_SANYO_DECODER
           uses the Sanyo protocol (Sanyo, Aiwa, Chinon remotes),
           and you need software decoding support.
 
+config IR_SHARP_DECODER
+       tristate "Enable IR raw decoder for the Sharp protocol"
+       depends on RC_CORE
+       default y
+
+       ---help---
+          Enable this option if you have an infrared remote control which
+          uses the Sharp protocol, and you need software decoding support.
+
 config IR_MCE_KBD_DECODER
        tristate "Enable IR raw decoder for the MCE keyboard/mouse protocol"
        depends on RC_CORE
index f4eb32c..36dafed 100644 (file)
@@ -11,6 +11,7 @@ obj-$(CONFIG_IR_JVC_DECODER) += ir-jvc-decoder.o
 obj-$(CONFIG_IR_SONY_DECODER) += ir-sony-decoder.o
 obj-$(CONFIG_IR_RC5_SZ_DECODER) += ir-rc5-sz-decoder.o
 obj-$(CONFIG_IR_SANYO_DECODER) += ir-sanyo-decoder.o
+obj-$(CONFIG_IR_SHARP_DECODER) += ir-sharp-decoder.o
 obj-$(CONFIG_IR_MCE_KBD_DECODER) += ir-mce_kbd-decoder.o
 obj-$(CONFIG_IR_LIRC_CODEC) += ir-lirc-codec.o
 
Simple merge
Simple merge