24 #include <linux/module.h>
26 #define RC5_SZ_NBITS 15
27 #define RC5_UNIT 888888
28 #define RC5_BIT_START (1 * RC5_UNIT)
29 #define RC5_BIT_END (1 * RC5_UNIT)
47 struct rc5_sz_dec *
data = &dev->
raw->rc5_sz;
54 if (!is_timing_event(ev)) {
64 IR_dprintk(2,
"RC5-sz decode started at state %i (%uus %s)\n",
70 switch (data->state) {
94 if (!is_transition(&ev, &dev->
raw->prev_ev))
97 if (data->count == data->wanted_bits)
110 command = (data->bits & 0x0003F) >> 0;
111 system = (data->bits & 0x02FC0) >> 6;
112 toggle = (data->bits & 0x01000) ? 1 : 0;
113 scancode = system << 6 |
command;
115 IR_dprintk(1,
"RC5-sz scancode 0x%04x (toggle: %u)\n",
124 IR_dprintk(1,
"RC5-sz decode failed at state %i (%uus %s)\n",
132 .decode = ir_rc5_sz_decode,
135 static int __init ir_rc5_sz_decode_init(
void)
143 static void __exit ir_rc5_sz_decode_exit(
void)