일부 장치가 udevadm 정보에서 DRIVER==""를 생성하는 이유는 무엇입니까?

일부 장치가 udevadm 정보에서 DRIVER==""를 생성하는 이유는 무엇입니까?

목표는 실제로 매우 간단합니다. Linux에서 USB 카메라가 작동하도록 만드는 것입니다. uvc, uv4l(bcm2835 커널 모듈인 것 같습니다)을 설치한 후에도 여전히 작동하지 않습니다.

현재 설치 및 디버깅 중에 다음 문자 파일이 생성되었습니다.

crw-rw-rw-  1 root video   240,   0 Jul  4 20:24 video0
crw-rw-rw-+ 1 root video    81,   0 Jul  4 20:24 video10
crw-rw-rw-+ 1 root video    81,   1 Jul  4 20:24 video11
crw-rw-rw-+ 1 root video    81,   2 Jul  4 20:24 video12
crw-rw-rw-  1 root video   239,   0 Jul  4 23:01 uv4l

마지막 uv4l은 uv4l명령을 실행한 후에만 나타나고 재부팅 후에는 사라집니다.

dd나 다른 프로그램을 사용하여 char 파일을 호출하면 Input/output error. 아마도 char 파일이 커널 모듈에 제대로 등록되지 않은 것 같습니다.

이것은 다음의 출력입니다 udevadm info -a -n /dev/uv4l.

Udevadm info starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.

  looking at device '/devices/virtual/cuse/uv4l':
    KERNEL=="uv4l"
    SUBSYSTEM=="cuse"
    DRIVER==""

deviceuv4l char 파일과 관련된 드라이버에는 아무것도 없으며 그 아래에 폴더 도 없습니다 ./sys/dev/char/major#:minor#/이 답변. 동일한 상황이 char 파일에도 적용됩니다 videoX.

이것은 내 추측이 정확하다는 것을 의미합니까? UVC 드라이버가 제대로 설치되지 않았나요?

다음은 관련 출력입니다 lsmod.

bcm2835_codec          36864  0
bcm2835_v4l2           45056  0
v4l2_mem2mem           24576  1 bcm2835_codec
v4l2_common            16384  1 bcm2835_v4l2
videobuf2_vmalloc      16384  1 bcm2835_v4l2
bcm2835_mmal_vchiq     32768  2 bcm2835_codec,bcm2835_v4l2
videobuf2_dma_contig    20480  1 bcm2835_codec
videobuf2_memops       16384  2 videobuf2_dma_contig,videobuf2_vmalloc
videobuf2_v4l2         24576  3 bcm2835_codec,bcm2835_v4l2,v4l2_mem2mem
videobuf2_common       45056  4 bcm2835_codec,bcm2835_v4l2,v4l2_mem2mem,videobuf2_v4l2
snd_bcm2835            24576  1
videodev              200704  6 bcm2835_codec,v4l2_common,videobuf2_common,bcm2835_v4l2,v4l2_mem2mem,videobuf2_v4l2
snd_pcm               102400  2 snd_usb_audio,snd_bcm2835
media                  36864  2 videodev,v4l2_mem2mem

cat /proc/devices다음을 간략하게 표시합니다 .

81 video4linux
239 uv4l
240 video0

필요한 커널 모듈이 모두 설치된 것 같습니다. 왜 이러한 드라이버와 문자 파일이 연결되어 있지 않습니까? 아니면 여기서 몇 가지 기본 개념을 오해하고 있습니까? 감사해요.

관련 정보