I'm trying to improve the situation regarding tearing on every SDL app I try in the Raspberry Pi framebuffer (no X for me, thanks), so I've been looking in the SDL 1.2.x fbcon backend, and I've found out that the culprit is this function's implementation in SDL_fbvideo.c:
- Code: Select all
static void FB_WaitVBL(_THIS)
#ifdef FBIOWAITRETRACE /* Heheh, this didn't make it into the main kernel */
ioctl(console_fd, FBIOWAITRETRACE, 0);
The comment was already there. Funny but sad...
The correct ioctl to use would be FBIO_WAITFORVSYNC.
I'd like to find out if this ioctl is implemented for the BCM2708 framebuffer, because I doubt it, but I can't find the Raspberry Pi's framebuffer driver in the mainline 3.6 kernel source three: I searched all over linux/src/video, but I couldn't find a single mention to BCM2708 framebuffer (according to raspbian's /sys/class/graphics/fb0/name).
So, can you point me where to look?