|
2ac567b7
|
2017-10-26T16:37:20
|
|
Fixed bug 3902 - Add a specific KMSDRM hint for low latency video
|
|
10376eb9
|
2017-10-21T04:20:57
|
|
Fixed bug 3901 - Fix vsync-ed pageflips on the KMSDRM video driver
Manuel
I noticed that, at least on Intel GPU hardware, passing SDL_RENDERER_PRESENTVSYNC would result on a static console instead of the program graphics.
That was due to the fact that calling drmModePageFlip() only works if we have previously set up CRTC to one of the GBM buffers with a drmModeSetCrtc() call, so now it's done and things work as expected.
The KMSDRM_GLES_SetupCrtc() call is done only one time, only when needed (when egl_swapinterval is not 0: when it's 0, there's no need for it because we flip by calling drmModePageFlip() anyway).
The place where KMSDRM_GLES_SetupCrtc() call is done may look strange, but it's right: it needs EGL completely ready because it needs to call eglSwapBuffers() internally to work (see more comments about it in the code).
|
|
c26946e9
|
2017-09-01T12:54:38
|
|
Fixed bug 3792 - [KMS/DRM] Wrong GBM format
Romain Tisserand
Using KMS/DRM driver from WIP SDL2.0.6 on Linux/ARM SoC RockChip RK3328 (ARM Mali 450 MP2 GPU).
The current code is using GBM_BO_FORMAT_XRGB8888 as GBM buffer format specifier.
The Mali driver (it has been confirmed some other vendor implementations too) expects GBM_FORMAT_XRGB8888.
The Mesa implementation is actually handling both values as the same, but it's not implemented like this into every gbm.h vendor header.
https://github.com/ideak/mesa/blob/master/src/gbm/backends/dri/gbm_dri.c
So with stock SDL2 on my card (Mali vendor implementation), it does not work, eglCreateWindowSurface fails, and gbm_is_format_supported fails too (with the BO variant).
It runs fine with GBM_FORMAT_XRGB8888.
Here is a link of the gbm.h from Mali user-space driver :
https://github.com/rockchip-linux/libmali/blob/rockchip/include/gbm.h
|
|
50efbda7
|
2017-08-28T00:43:14
|
|
Fixed mingw Windows build, since SDL_vulkan_internal.h includes windows.h
|
|
0d011ec6
|
2017-08-28T00:22:23
|
|
Renaming of guard header names to quiet -Wreserved-id-macro
|
|
a6dc4ed5
|
2017-08-21T17:22:00
|
|
kmsdrm: Remove moved file
|
|
11717184
|
2017-08-21T17:20:50
|
|
kmsdrm: Cleanup unused headers, rename SDL_kmsdrmevents_c.h -> SDL_kmsdrmevents.h
|
|
a05522a0
|
2017-08-11T10:05:45
|
|
Fixed bug 3723 - Possible double free in kmsdrm init code on certain errors
Simon Hug
KMSDRM_VideoInit allocates and frees some connectors and encoders but doesn't set the pointer to NULL after freeing. The cleanup code at the end may free one of those garbage pointer should an error happen in the initialization.
|
|
f216b446
|
2017-08-05T22:10:36
|
|
kmsdrm: Fixed crashes if allocating memory failed.
|
|
4723943b
|
2017-08-04T23:00:47
|
|
kmsdrm: Fixed compiling without OpenGL support.
|
|
86e95a60
|
2017-08-02T17:45:15
|
|
kmsdrm: Fix tearing in neverputt/ball
https://gfycat.com/FatalFarawayHeron
|
|
fca91451
|
2017-08-02T13:51:14
|
|
kmsdrm: Fix leaking SDL_VideoDevice*
|
|
4be06670
|
2017-08-02T10:24:47
|
|
Fixed potential free of uninitialized memory (thanks Simon!)
|
|
56363ebf
|
2017-08-02T10:22:48
|
|
Fixed bug 3690 - SDL2 KMS/DRM render context support
Manuel
The attached patch adds support for KMS/DRM context graphics.
It builds with no problem on X86_64 GNU/Linux systems, provided the needed libraries are present, and on ARM GNU/Linux systems that have KMS/DRM support and a GLES2 implementation.
Tested on Raspberry Pi: KMS/DRM is what the Raspberry Pi will use as default in the near future, once the propietary DispmanX API by Broadcom is overtaken by open graphics stack, it's possible to boot current Raspbian system in KMS mode by adding "dtoverlay=vc4-kms-v3d" to config.txt on Raspbian's boot partition.
X86 systems use KMS right away in every current GNU/Linux system.
Simple build instructions:
$./autogen.sh
$./configure --enable-video-kmsdrm
$make
|