デバイスがhiddevの代わりにhidrawとして表示されるのはなぜですか?

デバイスがhiddevの代わりにhidrawとして表示されるのはなぜですか?

/dev/hidraw*hidrawとhiddevのカーネルドキュメントを読んで、2つの違いを理解していますが、デバイスが表示されるかどうか、カーネルがどのように決定するかを知りたいです。/dev/usb/hiddev*

ベストアンサー1

これは各ドライバのパラメータとしてhid_hw_start()/に渡されますhid_connect()。たとえば、

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

私はほとんどのドライバーがこれをやっていると思います。

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

以下HID_CONNECT_DEFAULTが含まれますHID_CONNECT_HIDRAW

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

hidraw両方とも同じことが起こりますhiddev

おすすめ記事