diff options
author | Tatsuya S <tatsuya.s2862@gmail.com> | 2025-01-06 10:49:11 +0300 |
---|---|---|
committer | Jiri Kosina <jkosina@suse.com> | 2025-02-07 18:03:31 +0300 |
commit | c600a55922640b1c4dcfdc5a694cadd2dd9d1599 (patch) | |
tree | abe76d26d3c61f44253a03cb1d81f4cb20648e9e | |
parent | 27c02784773a69fd896e42f3cec73be8c5c83c1f (diff) | |
download | linux-c600a55922640b1c4dcfdc5a694cadd2dd9d1599.tar.xz |
HID: core: Add reserved item tag for main items
For main items, separate warning of reserved item tag from
warning of unknown item tag.
This comes from 6.2.2.4 Main Items of Device Class Definition
for HID 1.11 specification.
Signed-off-by: Tatsuya S <tatsuya.s2862@gmail.com>
Signed-off-by: Jiri Kosina <jkosina@suse.com>
-rw-r--r-- | drivers/hid/hid-core.c | 6 | ||||
-rw-r--r-- | include/linux/hid.h | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c index 4497b50799db..4741ff626771 100644 --- a/drivers/hid/hid-core.c +++ b/drivers/hid/hid-core.c @@ -657,7 +657,11 @@ static int hid_parser_main(struct hid_parser *parser, struct hid_item *item) ret = hid_add_field(parser, HID_FEATURE_REPORT, data); break; default: - hid_warn(parser->device, "unknown main item tag 0x%x\n", item->tag); + if (item->tag >= HID_MAIN_ITEM_TAG_RESERVED_MIN && + item->tag <= HID_MAIN_ITEM_TAG_RESERVED_MAX) + hid_warn(parser->device, "reserved main item tag 0x%x\n", item->tag); + else + hid_warn(parser->device, "unknown main item tag 0x%x\n", item->tag); ret = 0; } diff --git a/include/linux/hid.h b/include/linux/hid.h index cdc0dc13c87f..3f01cd77f6d4 100644 --- a/include/linux/hid.h +++ b/include/linux/hid.h @@ -81,6 +81,8 @@ struct hid_item { #define HID_MAIN_ITEM_TAG_FEATURE 11 #define HID_MAIN_ITEM_TAG_BEGIN_COLLECTION 10 #define HID_MAIN_ITEM_TAG_END_COLLECTION 12 +#define HID_MAIN_ITEM_TAG_RESERVED_MIN 13 +#define HID_MAIN_ITEM_TAG_RESERVED_MAX 15 /* * HID report descriptor main item contents |