zephyr/subsys/usb/device_next/class/usbd_hid_internal.h
Johann Fischer c0e8f0d96b usb: device_next: add initial HID device support
Add initial HID device support. Unlike the existing HID implementation,
the new implementation uses a devicetree to instantiate a HID device.
To the user, the HID device appears as a normal Zephyr RTOS device.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2024-05-14 18:24:45 -04:00

24 lines
640 B
C

/*
* Copyright (c) 2023 Nordic Semiconductor ASA
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stdlib.h>
#include <zephyr/device.h>
#include <zephyr/usb/class/usbd_hid.h>
/*
* HID device driver API, we can keep internally as long as it is only used in
* USB.
*/
struct hid_device_driver_api {
int (*enable_output)(const struct device *dev, const bool enable);
int (*submit_report)(const struct device *dev,
const uint16_t size, const uint8_t *const report);
int (*dev_register)(const struct device *dev,
const uint8_t *const rdesc, const uint16_t rsize,
const struct hid_device_ops *const ops);
};