Part Number: TDA4VM-Q1
Hi,
I'm running camera through DS90UB962 using virtual channel.
I want change the format configuration but after setting, the DS90UB962 not update new format.
But both DS90UB953 and camera have been updated.
Here's the original format configuration:
root@tda-4vm:/opt/edgeai-gst-apps# media-ctl -p
Media controller API version 5.10.162
Media device information
------------------------
driver j721e-csi2rx
model TI-CSI2RX
serial
bus info platform:4500000.ticsi2rx
hw revision 0x1
driver version 5.10.162
Device topology
- entity 1: 4500000.ticsi2rx (17 pads, 17 links, 1 route)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev0
routes:
0/0 -> 1/0 [ACTIVE]
pad0: Sink
[stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
<- "cdns_csi2rx.4504000.csi-bridge":1 [ENABLED,IMMUTABLE]
pad1: Source
[stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
-> "4500000.ticsi2rx context 0":0 [ENABLED,IMMUTABLE]
pad2: Source
-> "4500000.ticsi2rx context 1":0 [ENABLED,IMMUTABLE]
pad3: Source
-> "4500000.ticsi2rx context 2":0 [ENABLED,IMMUTABLE]
pad4: Source
-> "4500000.ticsi2rx context 3":0 [ENABLED,IMMUTABLE]
pad5: Source
-> "4500000.ticsi2rx context 4":0 [ENABLED,IMMUTABLE]
pad6: Source
-> "4500000.ticsi2rx context 5":0 [ENABLED,IMMUTABLE]
pad7: Source
-> "4500000.ticsi2rx context 6":0 [ENABLED,IMMUTABLE]
pad8: Source
-> "4500000.ticsi2rx context 7":0 [ENABLED,IMMUTABLE]
pad9: Source
-> "4500000.ticsi2rx context 8":0 [ENABLED,IMMUTABLE]
pad10: Source
-> "4500000.ticsi2rx context 9":0 [ENABLED,IMMUTABLE]
pad11: Source
-> "4500000.ticsi2rx context 10":0 [ENABLED,IMMUTABLE]
pad12: Source
-> "4500000.ticsi2rx context 11":0 [ENABLED,IMMUTABLE]
pad13: Source
-> "4500000.ticsi2rx context 12":0 [ENABLED,IMMUTABLE]
pad14: Source
-> "4500000.ticsi2rx context 13":0 [ENABLED,IMMUTABLE]
pad15: Source
-> "4500000.ticsi2rx context 14":0 [ENABLED,IMMUTABLE]
pad16: Source
-> "4500000.ticsi2rx context 15":0 [ENABLED,IMMUTABLE]
- entity 19: cdns_csi2rx.4504000.csi-bridge (5 pads, 2 links, 0 route)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev1
pad0: Sink
[stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
<- "ds90ub960 5-0030":4 [ENABLED,IMMUTABLE]
pad1: Source
[stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
-> "4500000.ticsi2rx":0 [ENABLED,IMMUTABLE]
pad2: Source
[stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
pad3: Source
[stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
pad4: Source
[stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
- entity 25: ds90ub960 5-0030 (6 pads, 2 links, 1 route)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev2
routes:
0/0 -> 4/0 [ACTIVE]
pad0: Sink
[stream:0 fmt:UYVY8_2X8/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range]
<- "ds90ub953 5-0054":1 [ENABLED,IMMUTABLE]
pad1: Sink
pad2: Sink
pad3: Sink
pad4: Source
[stream:0 fmt:UYVY8_2X8/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range]
-> "cdns_csi2rx.4504000.csi-bridge":0 [ENABLED,IMMUTABLE]
pad5: Source
- entity 34: ds90ub953 5-0054 (2 pads, 2 links, 1 route)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev3
routes:
0/0 -> 1/0 [ACTIVE]
pad0: Sink
[stream:0 fmt:UYVY8_2X8/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range]
<- "tevi-ap1302 6-003d":0 [ENABLED,IMMUTABLE]
pad1: Source
[stream:0 fmt:UYVY8_2X8/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:full-[ 251.815789] tevi-ap1302 6-003d: ops_get_fmt()
range]
-> "ds90ub960 5-0030":0 [ENABLED,IMMUTABLE]
- entit[ 251.825614] tevi-ap1302 6-003d: ops_get_frame_interval()
y 39: tevi-ap1302 6-003d (1 pad, 1 link, 2 routes)
type V4L2 subdev subtype Sensor flags 0
device node name /dev/v4l-subdev4
routes:
0/0 -> 0/0 [ACTIVE, IMMUTABLE, SOURCE]
0/0 -> 0/1 [INACTIVE, IMMUTABLE, SOURCE]
pad0: Source
[stream:0 fmt:UYVY8_2X8/640x480@1/30 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range]
-> "ds90ub953 5-0054":0 [ENABLED,IMMUTABLE]
- entity 45: 4500000.ticsi2rx context 0 (1 pad, 1 link, 0 route)
type Node subtype V4L flags 0
device node name /dev/video2
pad0: Sink
<- "4500000.ticsi2rx":1 [ENABLED,IMMUTABLE]
- entity 51: 4500000.ticsi2rx context 1 (1 pad, 1 link, 0 route)
type Node subtype V4L flags 0
device node name /dev/video3
pad0: Sink
<- "4500000.ticsi2rx":2 [ENABLED,IMMUTABLE]
- entity 57: 4500000.ticsi2rx context 2 (1 pad, 1 link, 0 route)
type Node subtype V4L flags 0
device node name /dev/video4
pad0: Sink
<- "4500000.ticsi2rx":3 [ENABLED,IMMUTABLE]
- entity 63: 4500000.ticsi2rx context 3 (1 pad, 1 link, 0 route)
type Node subtype V4L flags 0
device node name /dev/video5
pad0: Sink
<- "4500000.ticsi2rx":4 [ENABLED,IMMUTABLE]
- entity 69: 4500000.ticsi2rx context 4 (1 pad, 1 link, 0 route)
type Node subtype V4L flags 0
device node name /dev/video6
pad0: Sink
<- "4500000.ticsi2rx":5 [ENABLED,IMMUTABLE]
Configure formats to 1280x720:
root@tda-4vm:/opt/edgeai-gst-apps# media-ctl --set-v4l2 "'tevi-ap1302 6-003d':0 [fmt:UYVY8_2X8/1280x720@1/30 field:none]" [ 3319.943133] tevi-ap1302 6-003d: ops_set_fmt() [ 3319.947495] tevi-ap1302 6-003d: ops_set_fmt() selected mode index [1] [ 3319.953940] tevi-ap1302 6-003d: ops_set_frame_interval() [ 3319.959278] ds90ub953 5-0054: ub953_set_fmt() [ 3319.963632] ds90ub953 5-0054: v4l2_subdev_get_fmt: pad=0x00
Therefore format configuration:
root@tda-4vm:/opt/edgeai-gst-apps# media-ctl -p
Media controller API version 5.10.162
Media device information
------------------------
driver j721e-csi2rx
model TI-CSI2RX
serial
bus info platform:4500000.ticsi2rx
hw revision 0x1
driver version 5.10.162
Device topology
- entity 1: 4500000.ticsi2rx (17 pads, 17 links, 1 route)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev0
routes:
0/0 -> 1/0 [ACTIVE]
pad0: Sink
[stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
<- "cdns_csi2rx.4504000.csi-bridge":1 [ENABLED,IMMUTABLE]
pad1: Source
[stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
-> "4500000.ticsi2rx context 0":0 [ENABLED,IMMUTABLE]
pad2: Source
-> "4500000.ticsi2rx context 1":0 [ENABLED,IMMUTABLE]
pad3: Source
-> "4500000.ticsi2rx context 2":0 [ENABLED,IMMUTABLE]
pad4: Source
-> "4500000.ticsi2rx context 3":0 [ENABLED,IMMUTABLE]
pad5: Source
-> "4500000.ticsi2rx context 4":0 [ENABLED,IMMUTABLE]
pad6: Source
-> "4500000.ticsi2rx context 5":0 [ENABLED,IMMUTABLE]
pad7: Source
-> "4500000.ticsi2rx context 6":0 [ENABLED,IMMUTABLE]
pad8: Source
-> "4500000.ticsi2rx context 7":0 [ENABLED,IMMUTABLE]
pad9: Source
-> "4500000.ticsi2rx context 8":0 [ENABLED,IMMUTABLE]
pad10: Source
-> "4500000.ticsi2rx context 9":0 [ENABLED,IMMUTABLE]
pad11: Source
-> "4500000.ticsi2rx context 10":0 [ENABLED,IMMUTABLE]
pad12: Source
-> "4500000.ticsi2rx context 11":0 [ENABLED,IMMUTABLE]
pad13: Source
-> "4500000.ticsi2rx context 12":0 [ENABLED,IMMUTABLE]
pad14: Source
-> "4500000.ticsi2rx context 13":0 [ENABLED,IMMUTABLE]
pad15: Source
-> "4500000.ticsi2rx context 14":0 [ENABLED,IMMUTABLE]
pad16: Source
-> "4500000.ticsi2rx context 15":0 [ENABLED,IMMUTABLE]
- entity 19: cdns_csi2rx.4504000.csi-bridge (5 pads, 2 links, 0 route)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev1
pad0: Sink
[stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
<- "ds90ub960 5-0030":4 [ENABLED,IMMUTABLE]
pad1: Source
[stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
-> "4500000.ticsi2rx":0 [ENABLED,IMMUTABLE]
pad2: Source
[stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
pad3: Source
[stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
pad4: Source
[stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
- entity 25: ds90ub960 5-0030 (6 pads, 2 links, 1 route)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev2
routes:
0/0 -> 4/0 [ACTIVE]
pad0: Sink
[stream:0 fmt:UYVY8_2X8/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range]
<- "ds90ub953 5-0054":1 [ENABLED,IMMUTABLE]
pad1: Sink
pad2: Sink
pad3: Sink
pad4: Source
[stream:0 fmt:UYVY8_2X8/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range]
-> "cdns_csi2rx.4504000.csi-bridge":0 [ENABLED,IMMUTABLE]
pad5: Source
- entity 34: ds90ub953 5-0054 (2 pads, 2 links, 1 route)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev3
routes:
0/0 -> 1/0 [ACTIVE]
pad0: Sink
[stream:0 fmt:UYVY8_2X8/1280x720 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range]
<- "tevi-ap1302 6-003d":0 [ENABLED,IMMUTABLE]
pad1: Source
[stream:0 fmt:UYVY8_2X8/1280x720 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization[ 1927.555972] tevi-ap1302 6-003d: ops_get_fmt()
:full-range]
-> "ds90ub960 5-0030":0 [ENABLED,IMMUTABLE]
-[ 1927.565855] tevi-ap1302 6-003d: ops_get_frame_interval()
entity 39: tevi-ap1302 6-003d (1 pad, 1 link, 2 routes)
type V4L2 subdev subtype Sensor flags 0
device node name /dev/v4l-subdev4
routes:
0/0 -> 0/0 [ACTIVE, IMMUTABLE, SOURCE]
0/0 -> 0/1 [INACTIVE, IMMUTABLE, SOURCE]
pad0: Source
[stream:0 fmt:UYVY8_2X8/1280x720@1/30 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range]
-> "ds90ub953 5-0054":0 [ENABLED,IMMUTABLE]
- entity 45: 4500000.ticsi2rx context 0 (1 pad, 1 link, 0 route)
type Node subtype V4L flags 0
device node name /dev/video2
pad0: Sink
<- "4500000.ticsi2rx":1 [ENABLED,IMMUTABLE]
- entity 51: 4500000.ticsi2rx context 1 (1 pad, 1 link, 0 route)
type Node subtype V4L flags 0
device node name /dev/video3
pad0: Sink
<- "4500000.ticsi2rx":2 [ENABLED,IMMUTABLE]
- entity 57: 4500000.ticsi2rx context 2 (1 pad, 1 link, 0 route)
type Node subtype V4L flags 0
device node name /dev/video4
pad0: Sink
<- "4500000.ticsi2rx":3 [ENABLED,IMMUTABLE]
- entity 63: 4500000.ticsi2rx context 3 (1 pad, 1 link, 0 route)
type Node subtype V4L flags 0
device node name /dev/video5
pad0: Sink
<- "4500000.ticsi2rx":4 [ENABLED,IMMUTABLE]
Camera cannot open if I do not update DS90UB962 formt configuration, although it make sense because format is wrong...
Update DS90UB962 formt configuration:
root@tda-4vm:/opt/edgeai-gst-apps# media-ctl --set-v4l2 "'ds90ub960 5-0030':0 [fmt:UYVY8_2X8/1280x720@1/30 field:none]"
[ 3084.551574] ds90ub960 5-0030: ub960_set_fmt()
[ 3084.555933] ds90ub960 5-0030: v4l2_subdev_get_fmt: pad=0x00
Unable to setup formats: Inappropriate ioctl for device (25)
Final format configuration:
root@tda-4vm:/opt/edgeai-gst-apps# media-ctl -p
Media controller API version 5.10.162[ 4023.062726] tevi-ap1302 6-003d: ops_get_fmt()
Media device information
------------------------
driver j721e-csi2rx
model TI-CSI2RX
serial
bus info platform:4500000.ticsi2rx
hw revision 0x1
driver version 5.10.162
Device topology
- entity 1: 4500000.ticsi2rx (17 pads, 17 links, 1 route)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev0
routes:
0/0 -> 1/0 [ACTIVE]
pad0: Sink
[stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
<- "cdns_csi2rx.4504000.csi-bridge":1 [ENABLED,IMMUTABLE]
pad1: Source
[stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
-> "4500000.ticsi2rx context 0":0 [ENABLED,IMMUTABLE]
pad2: Source
-> "4500000.ticsi2rx context 1":0 [ENABLED,IMMUTABLE]
pad3: Source
-> "4500000.ticsi2rx context 2":0 [ENABLED,IMMUTABLE]
pad4: Source
-> "4500000.ticsi2rx context 3":0 [ENABLED,IMMUTABLE]
pad5: Source
-> "4500000.ticsi2rx context 4":0 [ENABLED,IMMUTABLE]
pad6: Source
-> "4500000.ticsi2rx context 5":0 [ENABLED,IMMUTABLE]
pad7: Source
-> "4500000.ticsi2rx context 6":0 [ENABLED,IMMUTABLE]
pad8: Source
-> "4500000.ticsi2rx context 7":0 [ENABLED,IMMUTABLE]
pad9: Source
-> "4500000.ticsi2rx context 8":0 [ENABLED,IMMUTABLE]
pad10: Source
-> "4500000.ticsi2rx context 9":0 [ENABLED,IMMUTABLE]
pad11: Source
-> "4500000.ticsi2rx context 10":0 [ENABLED,IMMUTABLE]
pad12: Source
-> "4500000.ticsi2rx context 11":0 [ENABLED,IMMUTABLE]
pad13: Source
-> "4500000.ticsi2rx context 12":0 [ENABLED,IMMUTABLE]
pad14: Source
-> "4500000.ticsi2rx context 13":0 [ENABLED,IMMUTABLE]
pad15: Source
-> "4500000.ticsi2rx context 14":0 [ENABLED,IMMUTABLE]
pad16: Source
-> "4500000.ticsi2rx context 15":0 [ENABLED,IMMUTABLE]
- entity 19: cdns_csi2rx.4504000.csi-bridge (5 pads, 2 links, 0 route)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev1
pad0: Sink
[stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
<- "ds90ub960 5-0030":4 [ENABLED,IMMUTABLE]
pad1: Source
[stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
-> "4500000.ticsi2rx":0 [ENABLED,IMMUTABLE]
pad2: Source
[stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
pad3: Source
[stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
pad4: Source
[stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
- entity 25: ds90ub960 5-0030 (6 pads, 2 links, 1 route)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev2
routes:
0/0 -> 4/0 [ACTIVE]
pad0: Sink
[stream:0 fmt:UYVY8_2X8/1280x720 field:none]
<- "ds90ub953 5-0054":1 [ENABLED,IMMUTABLE]
pad1: Sink
pad2: Sink
pad3: Sink
pad4: Source
[stream:0 fmt:UYVY8_2X8/1280x720 field:none]
-> "cdns_csi2rx.4504000.csi-bridge":0 [ENABLED,IMMUTABLE]
pad5: Source
- entity 34: ds90ub953 5-0054 (2 pads, 2 links, 1 route)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev3
routes:
0/0 -> 1/0 [ACTIVE]
pad0: Sink
[stream:0 fmt:UYVY8_2X8/1280x720 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range]
<- "tevi-ap1302 6-003d":0 [ENABLED,IMMUTABLE]
pad1: Source
[stream:0 fmt:UYVY8_2X8/1280x720 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range]
-> "ds90ub960 5-0030":0 [ENABLED,IMMUTABLE]
- entity 39: tevi-ap1302 6-003d (1 pad, 1 link, 2 routes)
type V4L2 subdev subtype Sensor flags 0
device node name /dev/v4l-subdev4
routes:
0/0 -> 0/0 [ACTIVE, IMMUTABLE, SOURCE]
0/0 -> 0/1 [INACTIVE, IMMUTABLE, SOURCE]
pad0: Source
[stream:0 fmt:UYVY8_2X8/1280x720@1/30 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range]
-> "ds90ub953 5-0054":0 [ENABLED,IMMUTABLE]
- entity 45: 4500000.ticsi2rx context 0 (1 pad, 1 link, 0 route)
type Node subtype V4L flags 0
device node name /dev/video2
pad0: Sink
<- "4500000.ticsi2rx":1 [ENABLED,IMMUTABLE]
- entity 51: 4500000.ticsi2rx context 1 (1 pad, 1 link, 0 route)
type Node subtype V4L flags 0
device node name /dev/video3
pad0: Sink
<- "4500000.ticsi2rx":2 [ENABLED,IMMUTABLE]
- entity 57: 4500000.ticsi2rx context 2 (1 pad, 1 link, 0 route)
type Node subtype V4L flags 0
device node name /dev/video4
pad0: Sink
<- "4500000.ticsi2rx":3 [ENABLED,IMMUTABLE]
- entity 63: 4500000.ticsi2rx context 3 (1 pad, 1 link, 0 route)
type Node subtype V4L flags 0
device node name /dev/video5
pad0: Sink
<- "4500000.ticsi2rx":4 [ENABLED,IMMUTABLE]
- entity 69: 4500000.ticsi2rx context 4 (1 pad, 1 link, 0 route)
type Node subtype V4L flags 0
device node name /dev/video6
pad0: Sink
<- "4500000.ticsi2rx":5 [ENABLED,IMMUTABLE]
After the settings are completed, the camera can operate normally.
But why can 4500000.ticsi2rx & cdns_csi2rx.4504000.csi-bridge not be upgraded ?
And I also cannot get why DS90UB962 need update itself, but DS90UB953 doesn't have to do that ?