找到解决办法了!!!方法是单独编译驱动文件。
在wsl中的ubuntu系统中,到sdk(自行下载对应版本)的内核文件夹,执行以下命令。(前提是已经通过repo安装了sdk,并且安装了全部的依赖,包括Python2)
administrator@PV-X00199943:~/kernel-6.1$
make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabihf- prepare
SYNC include/config/auto.conf.cmd
CC scripts/mod/empty.o
MKELF scripts/mod/elfconfig.h
HOSTCC scripts/mod/modpost.o
CC scripts/mod/devicetable-offsets.s
HOSTCC scripts/mod/file2alias.o
HOSTCC scripts/mod/sumversion.o
HOSTLD scripts/mod/modpost
CC kernel/bounds.s
CC arch/arm/kernel/asm-offsets.s
CALL scripts/checksyscalls.sh
administrator@PV-X00199943:~/kernel-6.1$
make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabihf- modules_prepare
CALL scripts/checksyscalls.sh
LDS scripts/module.lds
administrator@PV-X00199943:~/kernel-6.1$
sed -i 's/# CONFIG_USB_VIDEO_CLASS is not set/CONFIG_USB_VIDEO_CLASS=m/' .config
administrator@PV-X00199943:~/kernel-6.1$ sed -i 's/CONFIG_USB_VIDEO_CLASS=y/CONFIG_USB_VIDEO_CLASS=m/' .config
administrator@PV-X00199943:~/kernel-6.1$ sed -i 's/# CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV is not set/CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=m/' .config
administrator@PV-X00199943:~/kernel-6.1$ sed -i 's/# CONFIG_MEDIA_USB_SUPPORT is not set/CONFIG_MEDIA_USB_SUPPORT=y/' .config
administrator@PV-X00199943:~/kernel-6.1$
make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabihf- olddefconfig
#
# No change to .config
#
administrator@PV-X00199943:~/kernel-6.1$
cat .config | grep USB_VIDEO_CLASS
CONFIG_USB_VIDEO_CLASS=m
CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y
administrator@PV-X00199943:~/kernel-6.1$
make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabihf- M=drivers/media/usb/uvc uvcvideo.ko
CC [M] drivers/media/usb/uvc/uvc_driver.o
CC [M] drivers/media/usb/uvc/uvc_queue.o
CC [M] drivers/media/usb/uvc/uvc_v4l2.o
CC [M] drivers/media/usb/uvc/uvc_video.o
CC [M] drivers/media/usb/uvc/uvc_ctrl.o
CC [M] drivers/media/usb/uvc/uvc_status.o
CC [M] drivers/media/usb/uvc/uvc_isight.o
CC [M] drivers/media/usb/uvc/uvc_debugfs.o
CC [M] drivers/media/usb/uvc/uvc_metadata.o
CC [M] drivers/media/usb/uvc/uvc_entity.o
LD [M] drivers/media/usb/uvc/uvcvideo.o
make[1]: 'drivers/media/usb/uvc/uvcvideo.mod' is up to date.
MODPOST drivers/media/usb/uvc/Module.symvers
CC [M] drivers/media/usb/uvc/uvcvideo.mod.o
LD [M] drivers/media/usb/uvc/uvcvideo.ko
administrator@PV-X00199943:~/kernel-6.1$
find . -name uvcvideo.ko
# 出现下面内容代表单独的uvc驱动编译成功!
./drivers/media/usb/uvc/uvcvideo.ko
#需要的可以下载此附件,但不保证有效,因为内核版本不一样可能导致此驱动无法使用。
-
- uvc.ko文件
Downloaded 113 times
#放入到板子驱动的路径
/usr/lib/modules/6.1.99/kernel/drivers/usb/uvc/uvcvideo.ko
#安装驱动
insmod /usr/lib/modules/6.1.99/kernel/drivers/usb/uvc/uvcvideo.ko
#查看驱动
lsmod | grep uvcvideo
#出现下面内容就代表 成功加载!
uvcvideo 114688 0 - Live 0x...
#查看摄像头
ls /dev/video*
#出现 /dev/video0 / /dev/video1 就完全正常了。
#然后就可以使用摄像头了。
#相应地,也可以通过此方式编译其它内核未预先编译的驱动文件。大部分应该是可以正常被驱动起来的。