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.

Linux/AM3358: Multimedia issues

Hi,

While I am waiting for am572x booting problem response from another thread I switched to BBB sdk AM335

The board is Beaglebone black.
The SDK is the am335 latest

root@am335x-evm:~# uname -a
Linux am335x-evm 4.14.79-ge669d52447 #3 PREEMPT Sun Jun 23 15:57:11 EDT 2019 armv7l GNU/Linux
root@am335x-evm:~# 

I stopped weston but EGL info gave me this

root@am335x-evm:~# eglinfo 

eglGetConfigs():
======================================================================

**********************************
EGL config number: 0
EGL vendor string: Imagination Technologies
EGL version string: 1.4 build 1.14@3699939 (MAIN)
EGL extensions: EGL_IMG_client_api_ogl EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_vg_parent_image EGL_IMG_cl_image EGL_KHR_fence_sync EGL_IMG_context_priority EGL_IMG_hibernate_process EGL_IMG_image_plane_attribs EGL_KHR_surfaceless_context EGL_KHR_wait_sync EGL_KHR_create_context EGL_WL_bind_wayland_display EGL_EXT_image_dma_buf_import
EGL client APIs are: OpenGL_ES 

EGL config Attributes:
 EGL_CONFIG_ID = 0x1 
 EGL_BUFFER_SIZE = 0x20 
 EGL_RED_SIZE = 0x8 
 EGL_GREEN_SIZE = 0x8 
 EGL_BLUE_SIZE = 0x8 
 EGL_LUMINANCE_SIZE = 0x0 
 EGL_ALPHA_SIZE = 0x8 
 EGL_ALPHA_MASK_SIZE = 0x0 
 EGL_BIND_TO_TEXTURE_RGB = 0x1 
 EGL_BIND_TO_TEXTURE_RGBA = 0x1 
 EGL_COLOR_BUFFER_TYPE = 0x308e 
 EGL_CONFIG_CAVEAT = 0x3038 
 EGL_CONFORMANT = 0x1 
 EGL_DEPTH_SIZE = 0x18 
 EGL_LEVEL = 0x0 
 EGL_MAX_PBUFFER_WIDTH = 0x800 
 EGL_MAX_PBUFFER_HEIGHT = 0x800 
 EGL_MAX_PBUFFER_PIXELS = 0x400000 
 EGL_MAX_SWAP_INTERVAL = 0xa 
 EGL_MIN_SWAP_INTERVAL = 0x1 
 EGL_NATIVE_RENDERABLE = 0x0 
 EGL_NATIVE_VISUAL_ID = 0x0 
 EGL_NATIVE_VISUAL_TYPE = 0x0 
 EGL_RENDERABLE_TYPE = 0x1  EGL_OPENGL_ES_BIT 
 EGL_SAMPLE_BUFFERS = 0x0 
 EGL_SAMPLES = 0x0 
 EGL_STENCIL_SIZE = 0x8 
 EGL_SURFACE_TYPE = 0x5  EGL_PBUFFER_BIT  EGL_WINDOW_BIT 
 EGL_TRANSPARENT_TYPE = 0x3038 
 EGL_TRANSPARENT_RED_VALUE = 0x0 
 EGL_TRANSPARENT_GREEN_VALUE = 0x0 
 EGL_TRANSPARENT_BLUE_VALUE = 0x0 

Creating Window surface..
PVR:(Error): WSEGL_CreateWindowDrawable: Couldn't set CRTC: Invalid argument [0, ]
Unable to create surface
    egl error 'EGL_BAD_ALLOC' (0x3003)
root@am335x-evm:~# 

kmscube yields this

root@am335x-evm:~# kmscube 
trying to load module omapdrm...failed.
trying to load module tilcdc...success.
### Display [0]: CRTC = 28, Connector = 30, format = 0x36314752
	Mode chosen [1360x768] : Clock => 85500, Vertical refresh => 60, Type => 72
	Horizontal => 1360, 1616, 1728, 1792, 0
	Vertical => 768, 786, 792, 795, 0
### Primary display => ConnectorId = 30, Resolution = 1360x768
failed to load module: /usr/lib/gbm/gbm_dri.so: cannot open shared object file: No such file or directory
failed to load module: /usr/lib/gbm/gbm_gallium_drm.so: cannot open shared object file: No such file or directory
loaded module : gbm_pvr.so
found valid GBM backend : gbm_pvr.so
Using display 0x1 with EGL version 1.4
EGL Version "1.4 build 1.14@3699939 (MAIN)"
EGL Vendor "Imagination Technologies"
EGL Extensions "EGL_IMG_client_api_ogl EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_vg_parent_image EGL_IMG_cl_image EGL_KHR_fence_sync EGL_IMG_context_priority EGL_IMG_hibernate_process EGL_IMG_image_plane_attribs EGL_KHR_surfaceless_context EGL_KHR_wait_sync EGL_KHR_create_context EGL_WL_bind_wayland_display EGL_EXT_image_dma_buf_import"
display 0 failed to set mode: Invalid argument
root@am335x-evm:~# 

root@am335x-evm:~# gles1test1 f
PVR:(Error): WSEGL_CreateWindowDrawable: Couldn't set CRTC: Invalid argument [0, ]
'eglCreateWindowSurface' returned egl error 'EGL_BAD_ALLOC' (0x3003)
root@am335x-evm:~# 

A minimal c++ QDialog

root@am335x-evm:~# export QT_QPA_PLATFORM=eglfs  
root@am335x-evm:~# ./widgetdlgcpp 
PVR:(Error): WSEGL_CreateWindowDrawable: Couldn't set CRTC: Invalid argument [0, ]
EGL Error : Could not create the egl surface: error = 0x3003

Aborted (core dumped)
root@am335x-evm:~# 

Only this works

root@am335x-evm:~# export QT_QPA_PLATFORM=linuxfb
root@am335x-evm:~# ./widgetdlgcpp 

More info:

root@am335x-evm:/usr/share/qt5/examples/opengl/cube# modetest
trying to open device 'i915'...failed
trying to open device 'amdgpu'...failed
trying to open device 'radeon'...failed
trying to open device 'nouveau'...failed
trying to open device 'vmwgfx'...failed
trying to open device 'omapdrm'...failed
trying to open device 'exynos'...failed
trying to open device 'tilcdc'...done
Encoders:
id	crtc	type	possible crtcs	possible clones	
29	28	TMDS	0x00000001	0x00000000

Connectors:
id	encoder	status		name		size (mm)	modes	encoders
30	29	connected	HDMI-A-1       	360x210		19	29
  modes:
	name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot)
  1360x768 60 1360 1616 1728 1792 768 786 792 795 85500 flags: phsync, pvsync; type: preferred, driver
  1280x768 75 1280 1360 1488 1696 768 771 778 805 102250 flags: nhsync, pvsync; type: driver
  1280x720 60 1280 1390 1430 1650 720 725 730 750 74250 flags: phsync, pvsync; type: driver
  1280x720 60 1280 1390 1430 1650 720 725 730 750 74176 flags: phsync, pvsync; type: driver
  1024x768 75 1024 1040 1136 1312 768 769 772 800 78750 flags: phsync, pvsync; type: driver
  1024x768 70 1024 1048 1184 1328 768 771 777 806 75000 flags: nhsync, nvsync; type: driver
  1024x768 60 1024 1048 1184 1344 768 771 777 806 65000 flags: nhsync, nvsync; type: driver
  800x600 75 800 816 896 1056 600 601 604 625 49500 flags: phsync, pvsync; type: driver
  800x600 60 800 840 968 1056 600 601 605 628 40000 flags: phsync, pvsync; type: driver
  800x600 56 800 824 896 1024 600 601 603 625 36000 flags: phsync, pvsync; type: driver
  720x480 60 720 736 798 858 480 489 495 525 27027 flags: nhsync, nvsync; type: driver
  720x480 60 720 736 798 858 480 489 495 525 27000 flags: nhsync, nvsync; type: driver
  720x480i 60 720 739 801 858 480 488 494 525 13514 flags: nhsync, nvsync, interlace, dblclk; type: driver
  720x480i 60 720 739 801 858 480 488 494 525 13500 flags: nhsync, nvsync, interlace, dblclk; type: driver
  640x480 75 640 656 720 840 480 481 484 500 31500 flags: nhsync, nvsync; type: driver
  640x480 73 640 664 704 832 480 489 492 520 31500 flags: nhsync, nvsync; type: driver
  640x480 60 640 656 752 800 480 490 492 525 25200 flags: nhsync, nvsync; type: driver
  640x480 60 640 656 752 800 480 490 492 525 25175 flags: nhsync, nvsync; type: driver
  720x400 70 720 738 846 900 400 412 414 449 28320 flags: nhsync, pvsync; type: driver
  props:
	1 EDID:
		flags: immutable blob
		blobs:

		value:
			00ffffffffffff000859320001000000
			01150103812415780ade58a3544c9926
			0f4547af4e0001010101010101010101
			010101010101662150b051001b300070
			2644c48e2100001ef12700a051002530
			5080370080802100001c000000fc004e
			532d3135453732304131320a000000fd
			00304c0f440f000a20202020202001aa
			02032073488504030201060710260907
			071107508301000067030c001000b82d
			011d007251d01e206e285500c48e2100
			001e8c0ad08a20e02d10103e9600138e
			21000018011d8018711c1620582c2500
			c48e2100009e00000000000000000000
			00000000000000000000000000000000
			00000000000000000000000000000057
	2 DPMS:
		flags: enum
		enums: On=0 Standby=1 Suspend=2 Off=3
		value: 0
	5 link-status:
		flags: enum
		enums: Good=0 Bad=1
		value: 0

CRTCs:
id	fb	pos	size
28	47	(0,0)	(1360x768)
  1360x768 60 1360 1616 1728 1792 768 786 792 795 85500 flags: phsync, pvsync; type: preferred, driver
  props:

Planes:
id	crtc	fb	CRTC x,y	x,y	gamma size	possible crtcs
27	28	47	0,0		0,0	0       	0x00000001
  formats: RG16 BG24 XB24
  props:
	6 type:
		flags: immutable enum
		enums: Overlay=0 Primary=1 Cursor=2
		value: 1

Frame buffers:
id	size	pitch



EGL INFO STRACE attached

3225.eglinfo.log

eglGetConfigs():
======================================================================

**********************************
EGL config number: 0
EGL vendor string: Imagination Technologies
EGL version string: 1.4 build 1.14@3699939 (MAIN)
EGL extensions: EGL_IMG_client_api_ogl EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_vg_parent_image EGL_IMG_cl_image EGL_KHR_fence_sync EGL_IMG_context_priority EGL_IMG_hibernate_process EGL_IMG_image_plane_attribs EGL_KHR_surfaceless_context EGL_KHR_wait_sync EGL_KHR_create_context EGL_WL_bind_wayland_display EGL_EXT_image_dma_buf_import
EGL client APIs are: OpenGL_ES 

EGL config Attributes:
 EGL_CONFIG_ID = 0x1 
 EGL_BUFFER_SIZE = 0x20 
 EGL_RED_SIZE = 0x8 
 EGL_GREEN_SIZE = 0x8 
 EGL_BLUE_SIZE = 0x8 
 EGL_LUMINANCE_SIZE = 0x0 
 EGL_ALPHA_SIZE = 0x8 
 EGL_ALPHA_MASK_SIZE = 0x0 
 EGL_BIND_TO_TEXTURE_RGB = 0x1 
 EGL_BIND_TO_TEXTURE_RGBA = 0x1 
 EGL_COLOR_BUFFER_TYPE = 0x308e 
 EGL_CONFIG_CAVEAT = 0x3038 
 EGL_CONFORMANT = 0x1 
 EGL_DEPTH_SIZE = 0x18 
 EGL_LEVEL = 0x0 
 EGL_MAX_PBUFFER_WIDTH = 0x800 
 EGL_MAX_PBUFFER_HEIGHT = 0x800 
 EGL_MAX_PBUFFER_PIXELS = 0x400000 
 EGL_MAX_SWAP_INTERVAL = 0xa 
 EGL_MIN_SWAP_INTERVAL = 0x1 
 EGL_NATIVE_RENDERABLE = 0x0 
 EGL_NATIVE_VISUAL_ID = 0x0 
 EGL_NATIVE_VISUAL_TYPE = 0x0 
 EGL_RENDERABLE_TYPE = 0x1  EGL_OPENGL_ES_BIT 
 EGL_SAMPLE_BUFFERS = 0x0 
 EGL_SAMPLES = 0x0 
 EGL_STENCIL_SIZE = 0x8 
 EGL_SURFACE_TYPE = 0x5  EGL_PBUFFER_BIT  EGL_WINDOW_BIT 
 EGL_TRANSPARENT_TYPE = 0x3038 
 EGL_TRANSPARENT_RED_VALUE = 0x0 
 EGL_TRANSPARENT_GREEN_VALUE = 0x0 
 EGL_TRANSPARENT_BLUE_VALUE = 0x0 

Creating Window surface..
PVR:(Error): WSEGL_CreateWindowDrawable: Couldn't set CRTC: Invalid argument [0, ]
Unable to create surface
    egl error 'EGL_BAD_ALLOC' (0x3003)