opnsense-src/share
Vladimir Kondratyev fd6690e2d5 hidraw(4): Add additional hidraw input/output report ioctls
to Linux hidraw compatibility API.

Respective Linux commit f43d3870cafa made by Dean Camera message is:

Currently the hidraw module can only read and write feature HID reports on
demand, via dedicated ioctls. Input reports are read from the device through
the read() interface, while output reports are written through the write
interface().

This is insufficient; it is desirable in many situations to be able to read and
write input and output reports through the control interface to cover
additional scenarios:

  - Reading an input report by its report ID, to get initial state
  - Writing an input report, to set initial input state in the device
  - Reading an output report by its report ID, to obtain current state
  - Writing an output report by its report ID, out of band

This patch adds these missing ioctl requests to read and write the remaining
HID report types. Note that not all HID backends will neccesarily support this
(e.g. while the USB link layer supports setting Input reports, others may not).

FreeBSD native uhid(4) compatible API already has similar ioctls.

MFC after:	3 days
2025-04-27 12:07:35 +03:00
..
colldef Remove residual blank line at start of Makefile 2024-07-15 16:43:39 -06:00
colldef_unicode locales: update unicode version 16 and CLDR to version 45 2024-10-14 10:43:39 +02:00
ctypedef ctypedef: Remove || true from localedef command to reveal error sooner 2024-10-15 18:39:31 +08:00
dict Remove residual blank line at start of Makefile 2024-07-15 16:43:39 -06:00
doc iwlwififw: remove Intel iwlwifi firmware from src.git 2025-04-10 13:32:49 +00:00
dtrace ipfw.d: Add required dependency declarations 2024-12-16 22:09:39 +00:00
examples examples/csh: Case insensitive search in pager 2025-04-19 12:41:40 -04:00
firmwares iwm: Stop shipping firmware as kernel module 2024-12-16 10:44:47 +01:00
i18n Remove residual blank line at start of Makefile 2024-07-15 16:43:39 -06:00
keys Remove residual blank line at start of Makefile 2024-07-15 16:43:39 -06:00
man hidraw(4): Add additional hidraw input/output report ioctls 2025-04-27 12:07:35 +03:00
misc share/misc/committers-src.dot: correct the date for ivy 2025-04-19 04:19:31 +01:00
mk Use .pieo extension for WITH_PIE bsd.prog.mk output 2025-04-25 19:51:55 +02:00
monetdef
monetdef_unicode locales: add missing af_ZA.UTF8 2024-10-14 11:56:30 +02:00
msgdef
msgdef_unicode
numericdef Remove residual blank line at start of Makefile 2024-07-15 16:43:39 -06:00
numericdef_unicode locales: update unicode version 16 and CLDR to version 45 2024-10-14 10:43:39 +02:00
security Remove residual blank line at start of Makefile 2024-07-15 16:43:39 -06:00
sendmail
skel Remove residual blank line at start of Makefile 2024-07-15 16:43:39 -06:00
snmp Remove residual blank line at start of Makefile 2024-07-15 16:43:39 -06:00
syscons Remove residual blank line at start of Makefile 2024-07-15 16:43:39 -06:00
tabset Remove residual blank line at start of Makefile 2024-07-15 16:43:39 -06:00
termcap termcap: add entry for Alacritty 2025-04-16 21:57:03 +02:00
tests Remove residual blank line at start of Makefile 2024-07-15 16:43:39 -06:00
timedef timedef: remove redundancy in Catalan date_fmt definitions 2024-11-13 16:12:42 -06:00
vt vt: add US International keymap 2025-04-22 10:07:09 -06:00
zoneinfo zoneinfo: also install tzdata.zi and version 2025-04-01 16:09:37 +08:00
Makefile iwm: Stop shipping firmware as kernel module 2024-12-16 10:44:47 +01:00
Makefile.inc Remove residual blank line at start of Makefile 2024-07-15 16:43:39 -06:00