When building the camera driver module, /dev/video0 instead of/dev/v4l-subdev0 is created.

Hi.

i2c camera driver is implemented and used.
so
/dev/video0 /dev/video1 is normal and you can control the camera.

By the way
Build the same i2c camera driver into ‘Module’
Insmod the module

/dev/video0 does not occur
/dev/v4l-subdev0 is created.

Is there a difference when using Module (*.ko)?
I really want help.

Thank you.

Hi
Current NV camera framework not support loadable kernel module yet.

That was indeed the case with L4T 28, but I was able to build a loadable kernel
module that created a video input device with L4T 32_1. Note that in my case the
i2c device was a dummy device and never accessed (control of the video capture
hardware was done elsewhere), so this might not be applicable to other applications.

Note that during development some of the errors would cause the v4l-subdev to be
created but not the /dev/video device.

@cobrien
Could you take time to trace the video_register_device to check why the video node not create.

There were several problems I ran into porting to 32_1 that caused device
registration to fail (i.e. no /dev/video0 created). Mostly it had to do
with pixel formats.

There’s more information here:

https://devtalk.nvidia.com/default/topic/1051203/csi-video-input-problem-pxl_sof-trace-no-rtcpu-information-/?offset=5#5336277