1#include "uhid_output.h"
2
3#include <assert.h>
4#include <inttypes.h>
5
6#include "uhid/keyboard_uhid.h"
7#include "util/log.h"
8
9void
10sc_uhid_devices_init(struct sc_uhid_devices *devices,
11 struct sc_keyboard_uhid *keyboard) {
12 devices->keyboard = keyboard;
13}
14
15void
16sc_uhid_devices_process_hid_output(struct sc_uhid_devices *devices, uint16_t id,
17 const uint8_t *data, size_t size) {
18 if (id == SC_HID_ID_KEYBOARD) {
19 if (devices->keyboard) {
20 sc_keyboard_uhid_process_hid_output(devices->keyboard, data, size);
21 } else {
22 LOGW("Unexpected keyboard HID output without UHID keyboard");
23 }
24 } else {
25 LOGW("HID output ignored for id %" PRIu16, id);
26 }
27}
28