1 // SPDX-License-Identifier: GPL-2.0 2 // test ir decoder 3 // 4 // Copyright (C) 2018 Sean Young <sean@mess.org> 5 6 #include <linux/bpf.h> 7 #include <linux/lirc.h> 8 #include "bpf_helpers.h" 9 10 SEC("lirc_mode2") bpf_decoder(unsigned int * sample)11int bpf_decoder(unsigned int *sample) 12 { 13 if (LIRC_IS_PULSE(*sample)) { 14 unsigned int duration = LIRC_VALUE(*sample); 15 16 if (duration & 0x10000) 17 bpf_rc_keydown(sample, 0x40, duration & 0xffff, 0); 18 } 19 20 return 0; 21 } 22 23 char _license[] SEC("license") = "GPL"; 24