mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-12 13:55:32 +00:00
![Sean Young](/assets/img/avatar_default.png)
Add support for BPF_PROG_LIRC_MODE2. This type of BPF program can call rc_keydown() to reported decoded IR scancodes, or rc_repeat() to report that the last key should be repeated. The bpf program can be attached to using the bpf(BPF_PROG_ATTACH) syscall; the target_fd must be the /dev/lircN device. Acked-by: Yonghong Song <yhs@fb.com> Signed-off-by: Sean Young <sean@mess.org> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
29 lines
645 B
C
29 lines
645 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
#ifndef _BPF_LIRC_H
|
|
#define _BPF_LIRC_H
|
|
|
|
#include <uapi/linux/bpf.h>
|
|
|
|
#ifdef CONFIG_BPF_LIRC_MODE2
|
|
int lirc_prog_attach(const union bpf_attr *attr);
|
|
int lirc_prog_detach(const union bpf_attr *attr);
|
|
int lirc_prog_query(const union bpf_attr *attr, union bpf_attr __user *uattr);
|
|
#else
|
|
static inline int lirc_prog_attach(const union bpf_attr *attr)
|
|
{
|
|
return -EINVAL;
|
|
}
|
|
|
|
static inline int lirc_prog_detach(const union bpf_attr *attr)
|
|
{
|
|
return -EINVAL;
|
|
}
|
|
|
|
static inline int lirc_prog_query(const union bpf_attr *attr,
|
|
union bpf_attr __user *uattr)
|
|
{
|
|
return -EINVAL;
|
|
}
|
|
#endif
|
|
|
|
#endif /* _BPF_LIRC_H */
|