I tried the built-in demo application capturevpedisplay in AM5728 EVM,
but some problem occurred as below:
root@am57xx-evm:~# capturevpedisplay 1920 1080 yuyv 1920 1080 uyvy 0 1 -s 26:1920x1080
vpe:/dev/video0 open success!!!
vip open success!!!
using 1 connectors, 1920x1080 display, multiplanar: 1
vip: G_FMT(start): width = 1920, height = 1080, 4cc = YUYV
vpe i/p: G_FMT: width = 1920, height = 1080, 4cc = YUYV
vpe o/p: G_FMT: width = 1920, height = 1080, 4cc = UYVY
streaming started...
ERROR:post_vid_buffer:418: failed to enable plane 33: Invalid argument
disp post vid buf failed
We tested this application in two monitors, which are CHIMEI TL-42S400T and Sony KDL-42W700B).
Since the app runs normally in Sony monitor, but CHIMEI monitor, I think this problem should be in kernel.
Then I turn on the drm.debug and check the kernel message, as shown below:
Added [CRTC:28] ed492800 state to d1df0340
Jan 9 06:39:13 am57xx-evm user.debug kernel: [ 618.907194] [drm:drm_atomic_set_crtc_for_plane] Link plane state d1de9400 to [CRTC:28]
Jan 9 06:39:13 am57xx-evm user.debug kernel: [ 618.907200] [drm:drm_framebuffer_reference] ed93ad00: FB ID: 55 (2)
Jan 9 06:39:13 am57xx-evm user.debug kernel: [ 618.907207] [drm:drm_atomic_set_fb_for_plane] Set [FB:55] for plane state d1de9400
Jan 9 06:39:13 am57xx-evm user.debug kernel: [ 618.907214] [drm:drm_atomic_check_only] checking d1df0340
Jan 9 06:39:13 am57xx-evm user.debug kernel: [ 618.907226] [drm:drm_atomic_helper_check_planes] [PLANE:33] atomic driver check failed
Jan 9 06:39:13 am57xx-evm user.debug kernel: [ 618.907232] [drm:drm_atomic_state_clear] Clearing atomic state d1df0340
Jan 9 06:39:13 am57xx-evm user.debug kernel: [ 618.907240] [drm:drm_framebuffer_unreference] ed93ad00: FB ID: 55 (3)
Jan 9 06:39:13 am57xx-evm user.debug kernel: [ 618.907246] [drm:drm_atomic_state_free] Freeing atomic state d1df0340
Jan 9 06:39:13 am57xx-evm user.debug kernel: [ 618.907255] [drm:drm_framebuffer_unreference] ed93ad00: FB ID: 55 (2)
Jan 9 06:39:13 am57xx-evm user.debug kernel: [ 618.907264] [drm:drm_ioctl] ret = -22
Jan 9 06:39:13 am57xx-evm user.debug kernel: [ 618.921069] [drm:drm_vm_close_locked] 0xb5bcd000,0x003f5000
Jan 9 06:39:13 am57xx-evm user.debug kernel: [ 618.921957] [drm:drm_release] open_count = 1
Jan 9 06:39:13 am57xx-evm user.debug kernel: [ 618.921966] [drm:dev_preclose] preclose: dev=ed945000
Jan 9 06:39:13 am57xx-evm user.debug kernel: [ 618.922008] [drm:drm_release] pid = 1242, device = 0xe200, open_count = 1
Jan 9 06:39:13 am57xx-evm user.debug kernel: [ 618.922019] [drm:drm_framebuffer_unreference] ed542c00: FB ID: 0 (1)
Jan 9 06:39:13 am57xx-evm user.debug kernel: [ 618.922027] [drm:omap_framebuffer_destroy] destroy: FB ID: 0 (ed542c00)
Jan 9 06:39:13 am57xx-evm user.debug kernel: [ 618.922036] [drm:drm_framebuffer_unreference] ed93af00: FB ID: 0 (1)
Jan 9 06:39:13 am57xx-evm user.debug kernel: [ 618.922042] [drm:omap_framebuffer_destroy] destroy: FB ID: 0 (ed93af00)
Jan 9 06:39:13 am57xx-evm user.debug kernel: [ 618.922050] [drm:drm_framebuffer_unreference] ed93ab00: FB ID: 0 (1)
Jan 9 06:39:13 am57xx-evm user.debug kernel: [ 618.922056] [drm:omap_framebuffer_destroy] destroy: FB ID: 0 (ed93ab00)
Any ideas to solve this problem?
Thanks in advance.
Sincerely,
Dwayne