hidbus(4): Add routine to check presence of collection of given usage
MFC after: 2 week
This commit is contained in:
parent
bbed4b41c9
commit
d51e437669
@ -172,6 +172,25 @@ hidbus_locate(const void *desc, hid_size_t size, int32_t u, enum hid_kind k,
|
||||
return (0);
|
||||
}
|
||||
|
||||
bool
|
||||
hidbus_is_collection(const void *desc, hid_size_t size, int32_t usage,
|
||||
uint8_t tlc_index)
|
||||
{
|
||||
struct hid_data *d;
|
||||
struct hid_item h;
|
||||
bool ret = false;
|
||||
|
||||
d = hid_start_parse(desc, size, 0);
|
||||
HIDBUS_FOREACH_ITEM(d, &h, tlc_index) {
|
||||
if (h.kind == hid_collection && h.usage == usage) {
|
||||
ret = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
hid_end_parse(d);
|
||||
return (ret);
|
||||
}
|
||||
|
||||
static device_t
|
||||
hidbus_add_child(device_t dev, u_int order, const char *name, int unit)
|
||||
{
|
||||
|
@ -152,6 +152,7 @@ int hidbus_locate(const void *desc, hid_size_t size, int32_t u,
|
||||
enum hid_kind k, uint8_t tlc_index, uint8_t index,
|
||||
struct hid_location *loc, uint32_t *flags, uint8_t *id,
|
||||
struct hid_absinfo *ai);
|
||||
bool hidbus_is_collection(const void *, hid_size_t, int32_t, uint8_t);
|
||||
|
||||
const struct hid_device_id *hidbus_lookup_id(device_t,
|
||||
const struct hid_device_id *, int);
|
||||
|
Loading…
Reference in New Issue
Block a user