This is a cache of https://discuss.96boards.org/t/v4l-subdev-is-not-listed-under-dev-v4l/5181. It is a snapshot of the page at 2024-11-01T08:49:14.340+0000.
V4l-subdev is not listed under /dev/v4l - DragonBoard410c - 96Boards Forum

V4l-subdev is not listed under /dev/v4l

I am using Dragon Board 410C and I download and flashed image from the same website only. The board is working fine. But the v4l-subdev are not listed under /dev/v4l and /dev/media is also not there.
Please help me to resolve this issue. without v4l-subdev I cannot generate CSID test pattern.

Please refer to the documentation: https://www.96boards.org/documentation/consumer/dragonboard410c/guides/camera-module.md.html
You mostly need to enable camera in the device tree.

other related thread: CSID Test Generator - #3 by mpatils97379

Hi I have gone through all the steps mentioned in the link CSID Test Generator…
But nothing is happening.
And for generating test pattern we require v4l-subdev2. https://www.96boards.org/documentation/consumer/dragonboard410c/guides/camera-module.md.html

But v4l-subdev is not there in my dragon board. That is the problem which I am facing.

Please help me.

AFAIK, you need to add a sensor in your device tree even if you’re only using the CSID test generator. Please attach you’re device tree changes (pastebin…). Which version of the kernel are you running/building ?

4.14.0-qcomlt-arm64 is the kernel…
And sensor ov5645 is enabled in the device tree,. Still I am not getting v4l-subdev
Under /dev/v4l only by-path is there.

&camss {
status = “ok”;

    ports {
            #address-cells = <1>;
            #size-cells = <0>;
            port@0 {
                    reg = <0>;
                    csiphy0_ep: endpoint {
                            clock-lanes = <1>;
                            data-lanes = <0 2>;
                            remote-endpoint = <&ov5645_ep>;
                            status = "okay";
                    };
            };
            port@1 {
                    reg = <1>;
                    csiphy1_ep: endpoint {
                            clock-lanes = <1>;
                            data-lanes = <0 2>;
                            remote-endpoint = <&ov5645_2_ep>;
                            status = "okay";
                    };
            };
    };

};

&cci {
status = “ok”;

    camera_rear@76 {
            compatible = "ovti,ov5645";
            reg = <0x76>;

            enable-gpios = <&msmgpio 34 GPIO_ACTIVE_HIGH>;
            reset-gpios = <&msmgpio 35 GPIO_ACTIVE_LOW>;
            pinctrl-names = "default";
            pinctrl-0 = <&camera_rear_default>;

            clocks = <&gcc GCC_CAMSS_MCLK0_CLK>;
            clock-names = "xclk";
            clock-frequency = <23880000>;

            vdddo-supply = <&camera_vdddo_1v8>;
            vdda-supply = <&camera_vdda_2v8>;
            vddd-supply = <&camera_vddd_1v5>;

            status = "okay";

            port {
                    ov5645_ep: endpoint {
                            clock-lanes = <1>;
                            data-lanes = <0 2>;
                            remote-endpoint = <&csiphy0_ep>;
                    };
            };
    };

Ok, looks good, you should have some message related to ov5645 in dmesg.
If you want to use CSID without any camera sensor you will need to apply the extra-step (revert a patch) mentioned in the following topic: CSID Test Generator - #4 by todortomov

Hi…
Thank you so much…
I followed all steps with Inforce board and Dragon board. With Inforce board it is working and I could generate the test pattern also. But with Dragon Board I was unable to, and nothing is there in the dmesg output related to ov5645.

The number of camera sensor physically connected must match the number of sensors enabled in the device tree (unless you revert the patch which Loic pointed).
How many camera sensors do you have physically connected to the board?

hi,
I didnt connect camera sensor. But without connecting the sensor the inforce board is able to generate the test pattern. It is having v4l-subdev also.

  1. SOFTWARE RELEASE INFORMATION
    The following instructions assume that you are working from an ubuntu 14.04 (or later) system. The steps
    for other systems will be similar, and should be easily discerned from what follows.
    2.1 BUILD AND RUN IMAGES
    A. Package Description
    The binaries and source directories are packaged into the tarball called:
    IFC6309_Debian_Linux_BSP_880531_V2.6
    Meta-Binaries Directory:
    This package contains the meta-binaries from Linaro’s 18.01 release.
    Source Directory:
    This package also contains the kernel sources/patches with the necessary tools to build kernel and to customize the Debian rootfs image.
    Binaries directory:
    This package contains the below pre-built binaries:
     LK apps boot-loader image.
     Kernel boot image that includes prebuilt kernel with Inforce’s patches applied on 4.14.0 based
    kernel from Linaro.
     alip rootfs image that includes a minimal desktop environment GUI using LXQt.

Is there any problem with any one of the directories. Or is the problem with the compatibility.

Could you help me to get these directories.??

Ok. For Dragonboard. If you didn’t connect any camera sensor, then:

  • do not enable any camera sensor or camss port in the device tree. Leave it as it is by default.
  • do the extra step pointed by Loic above (revert part of a patch): CSID Test Generator - #4 by todortomov
    This way the CAMSS driver will register, you will have the nodes in /dev/ and will be able to use the test generator.