1 /*
2  * Copyright (c) 2023 Nordic Semiconductor ASA
3  *
4  * SPDX-License-Identifier: Apache-2.0
5  */
6 
7 #include <stdlib.h>
8 #include <zephyr/device.h>
9 #include <zephyr/usb/class/usbd_hid.h>
10 
11 /*
12  * HID device driver API, we can keep internally as long as it is only used in
13  * USB.
14  */
15 
16 struct hid_device_driver_api {
17 	int (*enable_output)(const struct device *dev, const bool enable);
18 	int (*submit_report)(const struct device *dev,
19 			     const uint16_t size, const uint8_t *const report);
20 	int (*dev_register)(const struct device *dev,
21 			    const uint8_t *const rdesc, const uint16_t rsize,
22 			    const struct hid_device_ops *const ops);
23 };
24