Separate media node not created for camera sensors on db820c 4.14 kernel


#1

Hi all,
i enabled both front and rear cameras and both sensors are probed successfully.
but why only one media node /dev/media0 is created. why not /dev/media1 created???

output of media-ctl -p

  • entity 226: ov5645 3-003a (1 pad, 1 link)
    type V4L2 subdev subtype Sensor flags 0
    device node name /dev/v4l-subdev19
    pad0: Source
    [fmt:UYVY8_2X8/1920x1080 field:none colorspace:srgb
    crop:(0,0)/1920x1080]
    -> “msm_csiphy2”:0 [ENABLED,IMMUTABLE]

  • entity 228: ov5640 3-003b (1 pad, 1 link)
    type V4L2 subdev subtype Sensor flags 0
    device node name /dev/v4l-subdev20
    pad0: Source
    [fmt:UYVY8_2X8/2592x1944 field:none colorspace:srgb
    crop:(0,0)/2592x1944]
    -> “msm_csiphy0”:0 [ENABLED,IMMUTABLE]

can anyone suggest what should be done to have two separate media nodes for both sensors?


#2

On Dragonboard 410c and 820c, /dev/media0 is an interface for the entire camera-subsystem exposing the hardware topology using the media entities [1] and allowing to configure the pipeline, this results in different v4l2 sub-devices as well (e.g. for sensors, CSID, VFE…).

Video stream(s) ends to four different v4l2 devices (/dev/videoX) [2], one pixel interface (stream goes through the image processing pipeline) and three raw interfaces (stream bypass the processing pipeline).

You need to configure your pipeline before being able to grab frames [3].

[1] https://linuxtv.org/downloads/v4l-dvb-apis/uapi/v4l/dev-subdev.html
[2] https://linuxtv.org/downloads/v4l-dvb-apis/v4l-drivers/qcom_camss.html
[3] https://www.96boards.org/documentation/consumer/dragonboard410c/guides/camera-module.md.html