Ho letto la documentazione del kernel per hidraw e hiddev, e comprendo le differenze, ma mi chiedo come il kernel decida se un dispositivo deve essere mostrato come /dev/hidraw*o/dev/usb/hiddev*
Ho letto la documentazione del kernel per hidraw e hiddev, e comprendo le differenze, ma mi chiedo come il kernel decida se un dispositivo deve essere mostrato come /dev/hidraw*o/dev/usb/hiddev*
Risposte:
Viene passato come parametro per driver a hid_hw_start()/ hid_connect(). Per esempio:
hid-thingm.c: err = hid_hw_start(hdev, HID_CONNECT_HIDRAW);
Immagino che la maggior parte dei conducenti faccia qualcosa del genere:
hid-logitech-dj.c: retval = hid_hw_start(hdev, HID_CONNECT_DEFAULT);
E HID_CONNECT_DEFAULTcomprende HID_CONNECT_HIDRAW:
#define HID_CONNECT_DEFAULT (HID_CONNECT_HIDINPUT|HID_CONNECT_HIDRAW| \
HID_CONNECT_HIDDEV|HID_CONNECT_FF)
La stessa cosa accade per entrambi hidrawe hiddev.