media: rc: make scancodes 64 bit
There are many protocols that encode more than 32 bit. We want 64 bit support so that BPF IR decoders can decode more than 32 bit. None of the existing kernel IR decoders/encoders support 64 bit, for now. The MSC_SCAN event can only contain 32 bit scancodes, so we only generate MSC_SCAN events if the scancode fits into 32 bits. The full 64 bit scancode can be read from the lirc chardev. Signed-off-by: Sean Young <sean@mess.org> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
This commit is contained in:

committed by
Mauro Carvalho Chehab

parent
00c43088aa
commit
e6c6d7d4a1
@@ -192,7 +192,7 @@ struct rc_dev {
|
||||
struct timer_list timer_repeat;
|
||||
u32 last_keycode;
|
||||
enum rc_proto last_protocol;
|
||||
u32 last_scancode;
|
||||
u64 last_scancode;
|
||||
u8 last_toggle;
|
||||
u32 timeout;
|
||||
u32 min_timeout;
|
||||
@@ -284,12 +284,12 @@ int devm_rc_register_device(struct device *parent, struct rc_dev *dev);
|
||||
void rc_unregister_device(struct rc_dev *dev);
|
||||
|
||||
void rc_repeat(struct rc_dev *dev);
|
||||
void rc_keydown(struct rc_dev *dev, enum rc_proto protocol, u32 scancode,
|
||||
void rc_keydown(struct rc_dev *dev, enum rc_proto protocol, u64 scancode,
|
||||
u8 toggle);
|
||||
void rc_keydown_notimeout(struct rc_dev *dev, enum rc_proto protocol,
|
||||
u32 scancode, u8 toggle);
|
||||
u64 scancode, u8 toggle);
|
||||
void rc_keyup(struct rc_dev *dev);
|
||||
u32 rc_g_keycode_from_table(struct rc_dev *dev, u32 scancode);
|
||||
u32 rc_g_keycode_from_table(struct rc_dev *dev, u64 scancode);
|
||||
|
||||
/*
|
||||
* From rc-raw.c
|
||||
|
Reference in New Issue
Block a user