/* SPDX-License-Identifier: GPL-2.0-only */ /* Copyright (c) 2022 Benjamin Tissoires */ #ifndef ____HID_BPF__H #define ____HID_BPF__H #define HID_BPF_DEVICE_EVENT "struct_ops/hid_device_event" #define HID_BPF_RDESC_FIXUP "struct_ops/hid_rdesc_fixup" #define HID_BPF_OPS(name) SEC(".struct_ops.link") \ struct hid_bpf_ops name #define hid_set_name(_hdev, _name) __builtin_memcpy(_hdev->name, _name, sizeof(_name)) struct hid_bpf_probe_args { unsigned int hid; unsigned int rdesc_size; unsigned char rdesc[4096]; int retval; }; #endif /* ____HID_BPF__H */