Hi Dmitry,
> > This also means that the current keyboard and mouse
> > input devices will become a HID driver.
>
> Are you talking about usbmouse and usbkbd?
no, because if I recall correctly these are the boot mode drivers and
actually not used at all in any modern distribution.
For me the task of converting HID reports into input events shouldn't be
actually the job of the HID core layer. My understanding is that the HID
core should support multiple transport layers. This is currently
achieved through the hid_device abstraction and used by the USB and by
the Bluetooth subsystem. This is the lower interface to HID. On the
upper interface I like to see a driver like interface. So we can
register specific drivers that can handle specific use cases or vendor
specific reports. For standard keyboard and mouse reports we however
should have a standard driver that can handle most of them.
For identification we actually do have the bus type, vendor id and
product id available. We also can register drivers for specific report
ids or usages.
I do like the HID simple driver idea, but it is not a simple driver, it
should be a generic driver interface.