Atlas - README.md
Home / ext / SDL / src / hidapi / netbsd Rendered HTML view | Size: 1219 bytes [Download] [Show on GitHub] [Search similar files] [Raw] [Raw (proxy)][FILE BEGIN]Implementation Notes
NetBSD maps every
uhidevdevice to one or moreuhiddevices. Eachuhiddevice only supports one report ID. The parent deviceuhidevcreates oneuhiddevice per report ID found in the hardware's report descriptor.In the event there are no report ID(s) found within the report descriptor, only one
uhiddevice with a report ID of0is created.In order to remain compatible with existing
hidapiAPIs, all theuhiddevices created by the parentuhidevdevice must be opened under the samehid_deviceinstance to ensure that we can route reports to their appropriateuhiddevice.Internally the
uhiddriver will insert the report ID as needed so we must also omit the report ID in any situation where thehidapiAPI expects it to be included in the report data stream.Given the design of
uhid, it must be augmented with extra platform specific APIs to ensure that the exact relationship betweenuhidevdevices anduhiddevices can be determined.The NetBSD implementation does this via the
drvctlkernel driver. At present there is no known way to do this on OpenBSD for auhidimplementation to be at the same level as the NetBSD one.[FILE END](C) 2025 0x4248 (C) 2025 4248 Media and 4248 Systems, All part of 0x4248 See LICENCE files for more information. Not all files are by 0x4248 always check Licencing.