Jump to content

Change compiled UVC to module

Recommended Posts

Hello. I use tinker board 2S.

Previously, I received following advice about UVC Cam.


uvcvideo is compiled into the kernel, tasks that are module-related cannot be supported as uvcvideo by default is not part of the module.



Now I tried to change uvc cam setting to module by following https://github.com/TinkerBoard/TinkerBoard/wiki/Developer-Guide.

However, I cannot find uvc related topic at

 make menuconfig

Please tell me the correct way to change .config in order to compiled uvcvideo driver to module.


Best regards,

Share this post

Link to post
Share on other sites

hello @sonyan11

for uvc option, the config has to be set with the command below before make menuconfig

tinker board linux 4.19:

make ARCH=arm64 tinker_board_2_defconfig

and then 

make menuconfig


Share this post

Link to post
Share on other sites

Dear @tooz,

Thank you very much for your comment.

I apologize for not presenting my environment first.  I use Kernel 4.4.

I have done the followings and still the UVC is not recognized as a module.

1. Installing the build tools

$ sudo apt-get install git-core gitk git-gui gcc-arm-linux-gnueabihf device-tree-compiler gcc-aarch64-linux-gnu mtools parted libssl-dev

2. Build Kernel

$ cd [source code]
$ make ARCH=arm64 tinker2_defconfig
$ make menuconfig

Modify USB Video Class to module.

Device Drivers> Multimedia Support > Media USB Adapters > USB Video Class [*] → [M]

$ make ARCH=arm64 rk3399-tinker_board_2.img CROSS_COMPILE=aarch64-linux-gnu- -j8

3. Install Kernel

$ sudo dd if=boot.img of=/dev/mmcblk1p4 status=progress && sync
$ sudo reboot

Please let me know if I am missing a process that we need.

Best regards,

Share this post

Link to post
Share on other sites

hello @sonyan11

i think you're able to modify uvcvideo driver to module mode through menuconfig, but tinker board 2s is not able to recognize the new module because the module driver is not updated to tinker board 2s.

to update tinker board 2s' module driver, please execute these two commands in the kernel directory of the source code,

make ARCH=arm64 modules

make ARCH=arm64 modules_install INSTALL_MOD_PATH={INSTALL_PATH}


and then update the \lib\modules\4.4.194\ kernel and \lib\modules\4.4.194\modules (of which from {INSTALL_PATH} )

onto tinker board 2s accordingly 



  • Thanks 1

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Create New...