Sony IMX224 to h264 example fails

cancel
Showing results for 
Search instead for 
Did you mean: 

Sony IMX224 to h264 example fails

629 Views
nbutts
Contributor I

I am using R2018.1 release. I've created an example project from the isp_sonyimx224_h264enc demo. I made no changes to the project. I compiled it, download it to the target, and tried to run it. 

I get the following results:

root@s32v234sbc:/home# ./s32ds_isp_sonyimx224_h264enc.elf

**************************************************************
** H264 encoder demo
** Description:
** o Sony imx224 camera (on MipiCsi_0) expected as image input.
** o ISP generates histogram for AEC, converts pixel format from
** RGB to YUV420 and trigers H264 encoding.
** o H264Encoded stream data are located in SRAM.
**
** Usage:
** o 1 parameter: number of frames to be captured and encoded.
** o no params => 200 frames will be captured and encoded.
**
**************************************************************
**
** 200 frames will be encoded.
**
**************************************************************

Press Ctrl+C to terminate the demo.
[ 1952.368371] /ssd/.jenkins_home/workspace/alb_package/vsdk_installation/s32v234_sdk/libs/isp/sequencer/kernel/build-v234ce-gnu-linux-d/../src/seq_func.c: 1534/SEQ_DRV_MsgSend : [Error]: FAILED to send the message.
[ 2238.988513] Probing I2c client @ 0x1a on I2C bus #0.
[ 2239.012171] Generic camera I2c driver added successfully.
VMAX = 745, Lines = 729, OB = 2
Framebuffer mapped at 0x7fa5309000.
../src/sdi.cpp: 1641/SeqEventHandler : [Error]: *** Other error message received.
../src/sdi.cpp: 1642/SeqEventHandler : [Error]: *** Sequencer error text:
../src/sdi.cpp: 1650/SeqEventHandler : [Error]: FDMA queue full
../../../../../libs/isp/sequencer/user/src/seq_user.cpp: 1040/SEQ_GraphStop : [Error]: Graph STOP failed: -1
../src/sdi.cpp: 1234/Stop : [Error]: Failed to stop the grabbing sequence.
Failed to stop grabber.
Demo execution failed.
root@s32v234sbc:/home#

Why do the example projects not work? Is there a new release that fixes this issue? 

0 Kudos
3 Replies

385 Views
jiri_kral
NXP Employee
NXP Employee

Hi, 

I assume that you are using s32v234 SBC EVB. What is your Linux BSP version? 

Jiri

0 Kudos

385 Views
nskang
Contributor II

Hi, Jiri Kral,

Kernel panic problem is cleared after inserting the cse.bin to boot partition.

so, KRAM_BASE is restored to original value (0x7C01A000u).

but, "Buffer Overrun" problem still occurs .

In my case,

when a elf file (with ISP feature) is launched first time. "Buffer Overrun" occurs. 

after that, "FDMA queue full" error occurs instead of "Buffer Overrun"

please, check below message.

many thanks,

namsu,

-------------- below ---------------

(without ISP feature)

---------- first ------------------------
root@s32v234sbc:~/vsdk# ./apex_face_detection_cv.elf
custom implementation finished
cascade classifier finished
OpenCV implementation finished
APEX implementation finished
custom host implementation: 0.096294s.
cascade classifier implementation: 0.056675s.
APEX implementation: 0.089926s.
OpenCV implementation: 0.031774s.
Framebuffer mapped at 0x7f8c398000.
Program Ended [SUCCESS]


----------- second -----------------------
root@s32v234sbc:~/vsdk# ./apex_face_detection_cv.elf
custom implementation finished
cascade classifier finished
OpenCV implementation finished
APEX implementation finished
custom host implementation: 0.090556s.
cascade classifier implementation: 0.011422s.
APEX implementation: 0.089908s.
OpenCV implementation: 0.009940s.
Framebuffer mapped at 0x7fb4720000.
Program Ended [SUCCESS]

(with ISP feature)
---------- first ------------------------
root@s32v234sbc:~/vsdk# ./apex_isp_face_detection_cv.elf
Press Ctrl+C to terminate the demo.
Framebuffer mapped at 0x7f8824b000.
[ 48.022826] Probing I2c client @ 0x1a on I2C bus #0.
[ 48.027703] Generic camera I2c driver added successfully.
VMAX = 745, Lines = 729, OB = 2
../src/sdi.cpp: 1545/SeqEventHandler : [Error]: *** Other error message received.
../src/sdi.cpp: 1546/SeqEventHandler : [Error]: *** Sequencer error text:
../src/sdi.cpp: 1554/SeqEventHandler : [Error]: Buffer overrun
Id:6
Frm:0
Inp:400
Prod:M0
Max:256
Wrt:400

Failed to pop the RGB frame.
../../../../../libs/isp/sequencer/user/src/seq_user.cpp: 1040/SEQ_GraphStop : [Error]: Graph STOP failed: -1
../src/sdi.cpp: 1198/Stop : [Error]: Failed to stop the grabbing sequence.


----------- second -----------------------
root@s32v234sbc:~/vsdk# ./apex_isp_face_detection_cv.elf
Press Ctrl+C to terminate the demo.
Framebuffer mapped at 0x7fb1daa000.
[ 49.270789] /home/nskang/NXP/S32DS_Vision_v2018.R1/S32DS/s32v234_sdk/libs/isp/sequencer/kernel/build-v234ce-gnu-linux-d/../src/seq_func.c: 1534/SEQ_DRV_MsgSend : [Error]: FAILED to send the message.
[ 51.538296] Probing I2c client @ 0x1a on I2C bus #0.
[ 51.560757] Generic camera I2c driver added successfully.
VMAX = 745, Lines = 729, OB = 2
../src/sdi.cpp: 1545/SeqEventHandler : [Error]: *** Other error message received.
../src/sdi.cpp: 1546/SeqEventHandler : [Error]: *** Sequencer error text:
../src/sdi.cpp: 1554/SeqEventHandler : [Error]: FDMA queue full
Failed to pop the RGB frame.
../../../../../libs/isp/sequencer/user/src/seq_user.cpp: 1040/SEQ_GraphStop : [Error]: Graph STOP failed: -1
../src/sdi.cpp: 1198/Stop : [Error]: Failed to stop the grabbing sequence.

0 Kudos

385 Views
nskang
Contributor II

Hi, 

I have similar problem. 

I'm using s32v234 SBC with Linux  v4.19.59_bsp23.0

(w/ Vision_Version 2018.R1/s32v234_sdk)

* Before compiling driver(seq.ko,csi.ko .....)

Only changed KRAM_BASE value in "include/isp_hw.h" from 0x7C01A000u to 0x7C021000u for clearing the kernel panic problem(when loading seq.ko on booting). 

please, let me know how to fix below problem.

* I use the "ISP_graph_tool_in-depth_tutorial_102318.pdf" document for building "ISP_test_application.elf"

----------- below ------------------

root@s32v234sbc:~# ./ISP_test_application.elf
Press Ctrl+C to terminate the demo.
Framebuffer mapped at 0x7f8b680000.
[ 23.275232] Probing I2c client @ 0x1a on I2C bus #0.
[ 23.281091] Generic camera I2c driver added successfully.
../src/sdi.cpp: 1641/SeqEventHandler : [Error]: *** Other error message received.
../src/sdi.cpp: 1642/SeqEventHandler : [Error]: *** Sequencer error text:
../src/sdi.cpp: 1650/SeqEventHandler : [Error]: Buffer overrun
Id:0
Frm:0
Inp:32
Prod:M0
Max:32
Wrt:32

../../../../../libs/isp/sequencer/user/src/seq_user.cpp: 1040/SEQ_GraphStop : [Error]: Graph STOP failed: -1
../src/sdi.cpp: 1234/Stop : [Error]: Failed to stop the grabbing sequence.

regards,

namsu

0 Kudos