As we have already mentioned, R&D work is always full of surprises, and so is our case. Now, we will go through the surprises I faced while creating this demo, and the solutions I used.
On my first set of images, the camera that I had with me was not being detected. On debugging a bit, I realized we are using the Yocto Project default kernel recipe,
linux-yocto. It does not enable kernel configurations required for multimedia applications to work. So, on connecting a camera to the board, only the following output was seen:
usb 2-1: new high-speed USB device number 2 using musb-hdrc
On debugging further, I came to know that V4l2 uses the UVC (USB Video Class) driver, which was missing in my build. I had to enable the following configurations. You can verify which configurations you already have enabled by running
menuconfig. Alternatively, you can look for them in the
.config file, which can be found at