diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 19:13:39 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 19:13:39 +0000 |
commit | 18d2dadb3c9132b52fdc88f509ea9005b9eebd5f (patch) | |
tree | 8e399598f572b2e88c16ddd26fb1fe601dd0e64b /usbhid-dump/src/misc.h | |
parent | Initial commit. (diff) | |
download | usbutils-18d2dadb3c9132b52fdc88f509ea9005b9eebd5f.tar.xz usbutils-18d2dadb3c9132b52fdc88f509ea9005b9eebd5f.zip |
Adding upstream version 1:017.upstream/1%017upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r-- | usbhid-dump/src/misc.h | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/usbhid-dump/src/misc.h b/usbhid-dump/src/misc.h new file mode 100644 index 0000000..17b7e6a --- /dev/null +++ b/usbhid-dump/src/misc.h @@ -0,0 +1,70 @@ +// SPDX-License-Identifier: GPL-2.0-or-later +/* + * usbhid-dump - miscellaneous declarations + * + * Copyright (C) 2010 Nikolai Kondrashov <spbnick@gmail.com> + */ + +#ifndef __UHD_MISC_H__ +#define __UHD_MISC_H__ + +#include <stdint.h> + +#ifdef __cplusplus +extern "C" { +#endif + +#pragma pack(1) + +/** HID extra descriptor record */ +typedef struct uhd_hid_descriptor_extra uhd_hid_descriptor_extra; + +struct uhd_hid_descriptor_extra { + uint8_t bDescriptorType; + uint16_t wDescriptorLength; +}; + +/** HID class-specific descriptor */ +typedef struct uhd_hid_descriptor uhd_hid_descriptor; + +struct uhd_hid_descriptor { + uint8_t bLength; + uint8_t bDescriptorType; + uint16_t bcdHID; + uint8_t bCountryCode; + uint8_t bNumDescriptors; + uhd_hid_descriptor_extra extra[1]; +}; + +#pragma pack() + +/** + * Maximum descriptor size. + * + * @note 4096 here is maximum control buffer length. + */ +#define UHD_MAX_DESCRIPTOR_SIZE 4096 + +/** Generic USB I/O timeout, ms */ +#define UHD_IO_TIMEOUT 1000 + +/** Wildcard bus number */ +#define UHD_BUS_NUM_ANY 0 + +/** Wildcard device address */ +#define UHD_DEV_ADDR_ANY 0 + +/** Wildcard vendor ID */ +#define UHD_VID_ANY 0 + +/** Wildcard product ID */ +#define UHD_PID_ANY 0 + +/** Wildcard interface number */ +#define UHD_IFACE_NUM_ANY UINT8_MAX + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* __UHD_MISC_H__ */ |