Hello,
We have an AM62A7 design using 2GB of memory and we are trying to run the IMX219 capture pipeline as described in the AM62A Linux Academy:
https://dev.ti.com/tirex/explore/node?node=A__ATmvgyzeqCfCvoHoyFGZGw__AM62A-ACADEMY__WeZ9SsL__LATEST
We are using the TI AM62A7 PROCESSOR SDK version 9.00 with 6.1.46-00014 kernel (pulled from TI's branch, ti-linux-6.1.y).
Below is the low of the attempt to run the example gstreamer pipeline. In addition, it looks like there may be a problem with the rpmsg / firmware load in the remoteproc log.
Can you please advise how to proceed?
-Mike
am62axx-evm login: root
CSI Camera 0 detected
device = /dev/video-rpi-cam0
name = imx219
format = [fmt:SRGGB8_1X8/1920x1080]
subdev_id = /dev/v4l-rpi-subdev0
isp_required = yes
root@am62axx-evm:/opt/edgeai-gst-apps
root@am62axx-evm:/opt/edgeai-gst-apps# !447
media-ctl -p
Media controller API version 6.1.46
Media device information
------------------------
driver j721e-csi2rx
model TI-CSI2RX
serial
bus info platform:30102000.ticsi2rx
hw revision 0x1
driver version 6.1.46
Device topology
- entity 1: 30102000.ticsi2rx (7 pads, 7 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.30101000.csi-bridge":1 [ENABLED,IMMUTABLE]
pad1: Source
[stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
-> "30102000.ticsi2rx context 0":0 [ENABLED,IMMUTABLE]
pad2: Source
-> "30102000.ticsi2rx context 1":0 [ENABLED,IMMUTABLE]
pad3: Source
-> "30102000.ticsi2rx context 2":0 [ENABLED,IMMUTABLE]
pad4: Source
-> "30102000.ticsi2rx context 3":0 [ENABLED,IMMUTABLE]
pad5: Source
-> "30102000.ticsi2rx context 4":0 [ENABLED,IMMUTABLE]
pad6: Source
-> "30102000.ticsi2rx context 5":0 [ENABLED,IMMUTABLE]
- entity 9: cdns_csi2rx.30101000.csi-bridge (5 pads, 2 links, 1 route)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev1
routes:
0/0 -> 1/0 [ACTIVE]
pad0: Sink
[stream:0 fmt:SRGGB8_1X8/1920x1080 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range]
<- "imx219 1-0010":0 [ENABLED,IMMUTABLE]
pad1: Source
[stream:0 fmt:SRGGB8_1X8/1920x1080 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range]
-> "30102000.ticsi2rx":0 [ENABLED,IMMUTABLE]
pad2: Source
pad3: Source
pad4: Source
- entity 15: imx219 1-0010 (1 pad, 1 link, 0 route)
type V4L2 subdev subtype Sensor flags 0
device node name /dev/v4l-subdev2
pad0: Source
[stream:0 fmt:SRGGB8_1X8/1920x1080 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range
crop.bounds:(8,8)/3280x2464
crop:(688,700)/1920x1080]
-> "cdns_csi2rx.30101000.csi-bridge":0 [ENABLED,IMMUTABLE]
- entity 21: 30102000.ticsi2rx context 0 (1 pad, 1 link, 0 route)
type Node subtype V4L flags 0
device node name /dev/video3
pad0: Sink
<- "30102000.ticsi2rx":1 [ENABLED,IMMUTABLE]
- entity 27: 30102000.ticsi2rx context 1 (1 pad, 1 link, 0 route)
type Node subtype V4L flags 0
device node name /dev/video4
pad0: Sink
<- "30102000.ticsi2rx":2 [ENABLED,IMMUTABLE]
- entity 33: 30102000.ticsi2rx context 2 (1 pad, 1 link, 0 route)
type Node subtype V4L flags 0
device node name /dev/video5
pad0: Sink
<- "30102000.ticsi2rx":3 [ENABLED,IMMUTABLE]
- entity 39: 30102000.ticsi2rx context 3 (1 pad, 1 link, 0 route)
type Node subtype V4L flags 0
device node name /dev/video6
pad0: Sink
<- "30102000.ticsi2rx":4 [ENABLED,IMMUTABLE]
- entity 45: 30102000.ticsi2rx context 4 (1 pad, 1 link, 0 route)
type Node subtype V4L flags 0
device node name /dev/video7
pad0: Sink
<- "30102000.ticsi2rx":5 [ENABLED,IMMUTABLE]
- entity 51: 30102000.ticsi2rx context 5 (1 pad, 1 link, 0 route)
type Node subtype V4L flags 0
device node name /dev/video8
pad0: Sink
<- "30102000.ticsi2rx":6 [ENABLED,IMMUTABLE]
root@am62axx-evm:/opt/edgeai-gst-apps# media-ctl -V '"imx219 1-0010":0 [fmt:SRGGB10_1X10/1920x1080 field:none]'
root@am62axx-evm:/opt/edgeai-gst-apps# gst-launch-1.0 -v v4l2src device=/dev/video2 io-mode=dmabuf-import ! video/x-bayer, width=1920, height=1080, framerate=30/1, format=rggb10 ! tiovxisp sink_0::device=/dev/v4l-subdev2 sensor-name="SENSOR_SONY_IMX219_RPI" dcc-isp-file=/opt/imaging/imx219/dcc_viss_10b.bin sink_0::dcc-2a-file=/opt/imaging/imx219/dcc_2a_10b.bin format-msb=9 ! video/x-raw, format=NV12, width=1920, height=1080, framerate=30/1 ! kmssink driver-name=tidss
APP: Init ... !!!
MEM: Init ... !!!
MEM: Initialized DMA HEAP (fd=6) !!!
MEM: Init ... Done !!!
IPC: Init ... !!!
_rpmsg_char_find_ctrldev: could not find the matching rpmsg_ctrl device for virtio0.rpmsg_chrdev.-1.13
IPC: ERROR: Unable to create TX channels for CPU [mcu1_0] !!!
IPC: Init ... Done !!!
APP: ERROR: IPC init failed !!!
REMOTE_SERVICE: Init ... !!!
_rpmsg_char_find_ctrldev: could not find the matching rpmsg_ctrl device for virtio0.rpmsg_chrdev.-1.21
_rpmsg_char_find_ctrldev: could not find the matching rpmsg_ctrl device for virtio1.rpmsg_chrdev.-1.21
REMOTE_SERVICE: Init ... Done !!!
94495.337274 s: GTC Frequency = 200 MHz
APP: Init ... Done !!!
94495.339371 s: VX_ZONE_INIT:Enabled
94495.339410 s: VX_ZONE_ERROR:Enabled
94495.339420 s: VX_ZONE_WARNING:Enabled
94495.341238 s: VX_ZONE_INIT:[tivxInitLocal:130] Initialization Done !!!
94495.342588 s: VX_ZONE_INIT:[tivxHostInitLocal:96] Initialization Done for HOST !!!
Setting pipeline to PAUSED ...
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Device '/dev/video2' is not a capture device.
Additional debug info:
../gst-plugins-good-1.20.6/sys/v4l2/v4l2_calls.c(629): gst_v4l2_open (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
Capabilities: 0x4204000
ERROR: pipeline doesn't want to preroll.
Failed to set pipeline to PAUSED.
Setting pipeline to NULL ...
Freeing pipeline ...
94495.437406 s: VX_ZONE_ERROR:[vxGetStatus:700] Reference is NULL
94495.437443 s: VX_ZONE_INIT:[tivxHostDeInitLocal:110] De-Initialization Done for HOST !!!
94495.441969 s: VX_ZONE_INIT:[tivxDeInitLocal:193] De-Initialization Done !!!
APP: Deinit ... !!!
REMOTE_SERVICE: Deinit ... !!!
REMOTE_SERVICE: Deinit ... Done !!!
IPC: Deinit ... !!!
Caught SIGSEGV
#0 0x0000ffffa4eb91d8 in wait4 () from /lib/libc.so.6
#1 0x0000ffffa5054358 in g_on_error_stack_trace ()
#2 0x00000000004053a4 in ?? ()
#3 <signal handler called>
#4 0x0000ffffa4e81ae4 in ?? () from /lib/libc.so.6
#5 0x0000ffffa365a6bc in appIpcDeleteRpmsgRxTask ()
#6 0x0000ffffa3659bf0 in appIpcDeInit ()
#7 0x0000ffffa36609f8 in appCommonDeInit ()
#8 0x0000ffffa490950c in ?? () from /usr/lib/libgsttiovx-1.0.so.1
#9 0x0000ffffa4fcd120 in g_object_unref () from /usr/lib/libgobject-2.0.so.0
#10 0x0000ffffa490cb94 in ?? () from /usr/lib/libgsttiovx-1.0.so.1
#11 0x0000ffffa4fcd120 in g_object_unref () from /usr/lib/libgobject-2.0.so.0
#12 0x0000ffffa520214c in ?? () from /usr/lib/libgstreamer-1.0.so.0
#13 0x0000ffffa51d276c in ?? () from /usr/lib/libgstreamer-1.0.so.0
#14 0x0000ffffa4fcd01c in g_object_unref () from /usr/lib/libgobject-2.0.so.0
#15 0x0000ffffa51bd0b8 in gst_object_replace ()
#16 0x0000ffffa51ebcac in ?? () from /usr/lib/libgstreamer-1.0.so.0
#17 0x0000ffffa4fcd01c in g_object_unref () from /usr/lib/libgobject-2.0.so.0
#18 0x0000000000404244 in ?? ()
#19 0x0000ffffa4e2b230 in ?? () from /lib/libc.so.6
#20 0x0000ffffa4e2b30c in __libc_start_main () from /lib/libc.so.6
#21 0x00000000004045f0 in _start ()
Spinning. Please run 'gdb gst-launch-1.0 1433' to continue debugging, Ctrl-C to quit, or Ctrl-\ to dump core.
^C
Clean up and exit while handling signal 2
Application did not close some rpmsg_char devices
root@am62axx-evm:/opt/edgeai-gst-apps# dmesg | grep remoteproc
[ 5.737546] k3-dsp-rproc 7e000000.dsp: configured DSP for remoteproc mode
[ 5.737741] remoteproc remoteproc0: 7e000000.dsp is available
[ 5.758091] platform 79000000.r5f: configured R5F for remoteproc mode
[ 5.763803] remoteproc remoteproc1: 79000000.r5f is available
[ 5.791105] remoteproc remoteproc2: 78000000.r5f is available
[ 5.798936] remoteproc remoteproc2: attaching to 78000000.r5f
[ 5.799267] remoteproc remoteproc1: powering up 79000000.r5f
[ 5.815486] remoteproc remoteproc0: powering up 7e000000.dsp
[ 5.819829] remoteproc remoteproc1: Booting fw image am62a-mcu-r5f0_0-fw, size 523192
[ 5.831234] remoteproc remoteproc0: Booting fw image am62a-c71_0-fw, size 6897744
[ 5.835154] remoteproc remoteproc2: remote processor 78000000.r5f is now attached
[ 5.864258] remoteproc remoteproc1: bad phdr da 0x9c900000 mem 0x8c
[ 5.878247] remoteproc remoteproc1: Failed to load program segments: -22
[ 6.019954] remoteproc remoteproc0: remote processor 7e000000.dsp is now up
root@am62axx-evm:/opt/edgeai-gst-apps#