Pourquoi un appareil apparaît-il comme hidraw au lieu de hiddev?

8

J'ai lu la documentation du noyau pour hidraw et hiddev, et je comprends les différences, mais je me demande comment le noyau décide si un périphérique doit apparaître comme /dev/hidraw*ou/dev/usb/hiddev*

anderl.heckmaier
la source

Réponses:

1

Il est transmis en tant que paramètre par pilote à hid_hw_start()/ hid_connect(). Par exemple:

hid-thingm.c:   err = hid_hw_start(hdev, HID_CONNECT_HIDRAW);

Je suppose que la plupart des pilotes font quelque chose comme ceci:

hid-logitech-dj.c:  retval = hid_hw_start(hdev, HID_CONNECT_DEFAULT);

Et HID_CONNECT_DEFAULTcomprend HID_CONNECT_HIDRAW:

#define HID_CONNECT_DEFAULT     (HID_CONNECT_HIDINPUT|HID_CONNECT_HIDRAW| \
                HID_CONNECT_HIDDEV|HID_CONNECT_FF)

La même chose se produit exactement pour les deux hidrawet hiddev.

V13
la source