b324cf67ef
Mirrors Linux 7.1 drivers/hid/hid-quirks.c. Adds: - HidQuirkFlags bitflags (24 bits matching include/linux/hid.h, with bit gaps at 0/8/9/15/24-27 for removed/renamed upstream flags) - HidQuirkEntry struct (vendor:u16, product:u16, flags:HidQuirkFlags) - hid_table.rs with 191 compiled-in entries (hid_quirks[] array, lines 27-223 of Linux 7.1 source). 2 of the 191 are HID_BLUETOOTH_DEVICE and kept for forward compatibility with the Bluetooth HID transport - 5 F_NN const helpers for the unique multi-flag OR combinations (NOGET|MULTI_INPUT, NO_INIT_REPORTS|ALWAYS_POLL, etc.) - HID_QUIRK_FLAG_NAMES const (24 names) for TOML parsing - load_hid_quirks(), read_toml_hid_entries(), parse_hid_toml() — the [[hid_quirk]] TOML section mirrors [[usb_quirk]] structure - lookup_hid_quirks(vendor, product) public API mirrors lookup_usb_quirks Test count: 106 -> 114 (+8 R10 tests). Clippy: 30 warnings (was 29; +1 from new load_hid_quirks Result<_, ()>). Note: the upstream 24-flag count is exact (matches include/linux/hid.h), but only 9 of the 24 are actually populated in hid_quirks[]. The other 15 are reserved for future hardware and runtime TOML overrides. Consumer wiring (lookup_hid_quirks call site in usbhidd/evdevd) is out of scope for this commit and tracked in local/docs/IRQ-AND-LOWLEVEL-CONTROLLERS-ENHANCEMENT-PLAN.md.