From edce2cee192d6ead0e0ffa911713796680d17d17 Mon Sep 17 00:00:00 2001 From: Benjamin Tissoires Date: Fri, 14 Aug 2015 23:01:35 -0400 Subject: [PATCH] Add ratbag_hidraw_output_report to send an output report Still not fully implemented (should be just a write, but I have nothing to test right now). Signed-off-by: Benjamin Tissoires --- src/libratbag-hidraw.c | 8 ++++++++ src/libratbag-hidraw.h | 11 +++++++++++ 2 files changed, 19 insertions(+) diff --git a/src/libratbag-hidraw.c b/src/libratbag-hidraw.c index 402c44ed..476e80dd 100644 --- a/src/libratbag-hidraw.c +++ b/src/libratbag-hidraw.c @@ -105,3 +105,11 @@ int ratbag_hidraw_raw_request(struct ratbag *ratbag, unsigned char reportnum, return -EINVAL; } + +int ratbag_hidraw_output_report(struct ratbag *ratbag, __u8 *buf, size_t len) +{ + if (len < 1 || len > HID_MAX_BUFFER_SIZE || !buf || ratbag->hidraw_fd < 0) + return -EINVAL; + + return -ENOTSUP; +} diff --git a/src/libratbag-hidraw.h b/src/libratbag-hidraw.h index 53a94d30..ba35555b 100644 --- a/src/libratbag-hidraw.h +++ b/src/libratbag-hidraw.h @@ -52,4 +52,15 @@ int ratbag_open_hidraw(struct ratbag *ratbag); int ratbag_hidraw_raw_request(struct ratbag *ratbag, unsigned char reportnum, __u8 *buf, size_t len, unsigned char rtype, int reqtype); +/** + * ratbag_hidraw_output_report - send output report to device + * + * @hdev: hid device + * @buf: raw data to transfer + * @len: length of buf + * + * @return: count of data transfered, negative if error + */ +int ratbag_hidraw_output_report(struct ratbag *ratbag, __u8 *buf, size_t len); + #endif /* LIBRATBAG_HIDRAW_H */