This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Problem in running VIP/VPE sample application - Capturing through LVDS camera

Prodigy 190 points

Replies: 0

Views: 585

Hello All,


I am using DRA7xx EVM HW & GLSDK 6_04_00_02 SW  to test the VIP/VPE applications using the LVDS Camera.

I did rebuild of kernel based on the steps provided in the developers guide,(applied LVDS camera patch)

http://processors.wiki.ti.com/index.php/DRA7xx_GLSDK_Software_Developers_Guide#Running_VIP.2FVPE_application

With the dmabuftest same application , the frame capture from Cameras is not consistent , it doesn't work most of the time.

It looks like some issue with start-up sync/timing of the application.

target# dmabuftest -s 4:800x480 -d /dev/video1 -c 1280x720@YUYV

Test execution log ,

==============================

root@dra7xx-evm:~# dmabuftest -s 4:800x480 -d /dev/video1 -c 1280x720@YUYV
Opening Display..
[  177.770477]
[  177.773223] =============================================
[  177.778900] [ INFO: possible recursive locking detected ]
[  177.784606] 3.8.13-53394-g2c871a8-dirty #1 Tainted: G           O
[  177.791046] ---------------------------------------------
[  177.796752] dmabuftest/1951 is trying to acquire lock:
[  177.802185]  (psPVRSRVMutex){+.+.+.}, at: [<bf016d74>] DebugMemAllocRecordAdd+0x38/0x130 [omapdrm_pvr]
[  177.812072]
[  177.812072] but task is already holding lock:
[  177.818237]  (psPVRSRVMutex){+.+.+.}, at: [<bf015618>] PVRSRVOpen+0x18/0xf0 [omapdrm_pvr]
[  177.826904]
[  177.826904] other info that might help us debug this:
[  177.833801]  Possible unsafe locking scenario:
[  177.833801]
[  177.840057]        CPU0
[  177.842651]        ----
[  177.845214]   lock(psPVRSRVMutex);
[  177.848815]   lock(psPVRSRVMutex);
[  177.852416]
[  177.852416]  *** DEADLOCK ***
[  177.852416]
[  177.858673]  May be due to missing lock nesting notation
[  177.858673]
[  177.865844] 2 locks held by dmabuftest/1951:
[  177.870361]  #0:  (drm_global_mutex){+.+.+.}, at: [<c035ba48>] drm_stub_open+0x38/0x144
[  177.878845]  #1:  (psPVRSRVMutex){+.+.+.}, at: [<bf015618>] PVRSRVOpen+0x18/0xf0 [omapdrm_pvr]
[  177.887969]
[  177.887969] stack backtrace:
[  177.892608] [<c001b528>] (unwind_backtrace+0x0/0xf0) from [<c009528c>] (__lock_acquire+0x1414/0x1a9c)
[  177.902313] [<c009528c>] (__lock_acquire+0x1414/0x1a9c) from [<c0095e2c>] (lock_acquire+0x9c/0x128)
[  177.911865] [<c0095e2c>] (lock_acquire+0x9c/0x128) from [<c0633714>] (mutex_lock_nested+0x50/0x3a4)
[  177.921447] [<c0633714>] (mutex_lock_nested+0x50/0x3a4) from [<bf016d74>] (DebugMemAllocRecordAdd+0x38/0x130 [omapdrm_pvr])
[  177.933258] [<bf016d74>] (DebugMemAllocRecordAdd+0x38/0x130 [omapdrm_pvr]) from [<bf0170e4>] (_KMallocWrapper+0x44/0x50 [omapdrm_pvr])
[  177.946075] [<bf0170e4>] (_KMallocWrapper+0x44/0x50 [omapdrm_pvr]) from [<bf012a04>] (OSAllocMem_Impl+0x58/0x68 [omapdrm_pvr])
[  177.958129] [<bf012a04>] (OSAllocMem_Impl+0x58/0x68 [omapdrm_pvr]) from [<bf020b44>] (PVRSRVPerProcessDataConnect+0x74/0x154 [omapdrm_pvr])
[  177.971374] [<bf020b44>] (PVRSRVPerProcessDataConnect+0x74/0x154 [omapdrm_pvr]) from [<bf015628>] (PVRSRVOpen+0x28/0xf0 [omapdrm_pvr])
[  177.984191] [<bf015628>] (PVRSRVOpen+0x28/0xf0 [omapdrm_pvr]) from [<bf031440>] (PVRSRVDrmOpen+0xc8/0xf0 [omapdrm_pvr])
[  177.995635] [<bf031440>] (PVRSRVDrmOpen+0xc8/0xf0 [omapdrm_pvr]) from [<c036f17c>] (dev_open+0x98/0x108)
[  178.005615] [<c036f17c>] (dev_open+0x98/0x108) from [<c035b690>] (drm_open+0x200/0x580)
[  178.014068] [<c035b690>] (drm_open+0x200/0x580) from [<c035bad0>] (drm_stub_open+0xc0/0x144)
[  178.023010] [<c035bad0>] (drm_stub_open+0xc0/0x144) from [<c0111cf4>] (chrdev_open+0x88/0x16c)
[  178.032073] [<c0111cf4>] (chrdev_open+0x88/0x16c) from [<c010c380>] (do_dentry_open+0x1fc/0x274)
[  178.041351] [<c010c380>] (do_dentry_open+0x1fc/0x274) from [<c010c42c>] (finish_open+0x34/0x4c)
[  178.050537] [<c010c42c>] (finish_open+0x34/0x4c) from [<c011a9c4>] (do_last.isra.27+0x4ec/0xbac)
[  178.059814] [<c011a9c4>] (do_last.isra.27+0x4ec/0xbac) from [<c011b12c>] (path_openat+0xa8/0x480)
[  178.069183] [<c011b12c>] (path_openat+0xa8/0x480) from [<c011b7c0>] (do_filp_open+0x2c/0x80)
[  178.078094] [<c011b7c0>] (do_filp_open+0x2c/0x80) from [<c010d510>] (do_sys_open+0xe4/0x174)
[  178.087005] [<c010d510>] (do_sys_open+0xe4/0x174) from [<c0013800>] (ret_fast_syscall+0x0/0x3c)
using 1 connectors, 800x480 display, multiplanar[  178.098205] dra7xx-vip vip1-0: vip_open: Created stream instance eaae4000
: 1
Opening V4L2..
[  178.109527] dra7xx-vip vip1-0: vip_s_fmt_vid_cap: Setting format for type 1, wxh: 1280x720, fmt: 1448695129
[  178.121948] ov1063x 1-0038: r3003 = 20 , r3004 = 3
[  178.148986] ov1063x 1-0038: width x height = 500 x 2d0
[  178.157562] ov1063x 1-0038: hts x vts = 6f6 x 380
[  178.703094] dra7xx-vip vip1-0: vip_queue_setup: get 6 buffer(s) of size 1843200 each.
Exported buffer fd = 6

Exported buffer fd = 8

Exported buffer fd = 10

Exported buffer fd = 12

Exported buffer fd = 14

Exported buffer fd = 16

==============================

Does anyone have gone through similar observations ?

Also may I know how to make sure other cores are loaded and running properly ( IPU & DSP ) ?

Thanks,

Kanagarajan