CVSROOT: /cvs Module name: src Changes by: j...@cvs.openbsd.org 2018/08/25 12:32:05
Modified files: sys/dev/hid : hidmt.c hidmtvar.h sys/dev/i2c : ihidev.c ihidev.h imt.c sys/dev/usb : uhidev.c uhidev.h Log message: Move HID->bus constant conversion for HID report types out of ihidev into hidmt. The HID code uses hid_feature, hid_input, and hid_output constants to refer to report types internally that then need to be converted to their bus-level counterparts before actually getting sent out (so hid_feature becomes UHID_FEATURE_REPORT for USB, I2C_HID_REPORT_TYPE_FEATURE for i2c). This conversion was hard-coded in ihidev but ihidev_[gs]et_report should assume the type passed is already an i2c-level define, not a hid one. This is how uhidev does it. Add a conversion routine callback that any hidmt callers need to set so that hidmt can convert hid constants to the bus-level versions. Also add a similar conversion function to uhidev. ok deraadt