I want to make some optimizations on camera kernel module so it can work better with a camera multiplexer module. There are 4 camera multiplexed by GPIO pins and some hardware.
I have cloned the v4l-utils (git://git.linuxtv.org/v4l-utils.git) so I can make my customizations. The problem is that I can't find the "entry point" in the sources in v4l2 for kernel module. I have read on some forums that it may actually be placed user space but I am suspicious about this as it is loaded like an kernel module (sudo modprobe bcm2835-v4l2).
Now the question is: where I can find the source for bcm2835-v4l2 kernel module so I can compile it myself? Where I can change the functions behind kernel interface which manage file operations (open, release, read, write etc let's say behind /dev/videoX)?
PS: The board is RPi 3b+ with Raspbian Stretch
1 Answer 1
The source for the bcm2835-v4l2 kernel module is in the linux staging tree at linux/drivers/staging/vc04_services/bcm2835-camera/
You can find it e.g. in the RPF Linux repository at https://github.com/raspberrypi/linux For the current RPF Linux kernel (4.14.y) it's at https://github.com/raspberrypi/linux/tree/rpi-4.14.y/drivers/staging/vc04_services/bcm2835-camera
It is also available in the upstream Linux repositories.
Explore related questions
See similar questions with these tags.