I don't know is this problem pure OS or Hardware related, but since the
board I have is BBB, I think I will try to get some help here.
My BBB is A5C version and my Linux distribution is stock Angstrom v2012.12.
The problem is I can't set proper framebuffer settings in my C application.
I open the /dev/fb0, then I get the fixed and variable screnn info by
ioctls (*FBIOGET_FSCREENINFO *and *FBIOGET_VSCREENINFO*).
After these calls I can read that:
fb_fix_screeninfo.smem_len = 2621440
fb_fix_screeninfo.line_length = 2560
My target resolution is 1280x1024, but I want to use double buffering, so
xres_virtual should be 2560.
The color depth is going to be 8bit.
So I calculate if I can use these parameters.
2560 * 1024 * (8/8) = 2621440 which is equal to FB memory, so I think it
should work fine.
*My code is:*
vinfo.bits_per_pixel = 8;
vinfo.xres = 1280;
vinfo.yres = 1024;
vinfo.xres_virtual = 2560;
vinfo.yres_virtual = 1024;
if (ioctl(fb, FBIOPUT_VSCREENINFO, &vinfo))
{
printf("Error setting variable information. %d\n", errno);
return 1;
}
*Result:*
This ioctl results in error and errno is set to 22 (Invalid argument).
What am I doing wrong here?
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.