87 lines · plain
1=============================2Frame Buffer device internals3=============================4 5This is a first start for some documentation about frame buffer device6internals.7 8Authors:9 10- Geert Uytterhoeven <geert@linux-m68k.org>, 21 July 199811- James Simmons <jsimmons@user.sf.net>, Nov 26 200212 13--------------------------------------------------------------------------------14 15Structures used by the frame buffer device API16==============================================17 18The following structures play a role in the game of frame buffer devices. They19are defined in <linux/fb.h>.20 211. Outside the kernel (user space)22 23 - struct fb_fix_screeninfo24 25 Device independent unchangeable information about a frame buffer device and26 a specific video mode. This can be obtained using the FBIOGET_FSCREENINFO27 ioctl.28 29 - struct fb_var_screeninfo30 31 Device independent changeable information about a frame buffer device and a32 specific video mode. This can be obtained using the FBIOGET_VSCREENINFO33 ioctl, and updated with the FBIOPUT_VSCREENINFO ioctl. If you want to pan34 the screen only, you can use the FBIOPAN_DISPLAY ioctl.35 36 - struct fb_cmap37 38 Device independent colormap information. You can get and set the colormap39 using the FBIOGETCMAP and FBIOPUTCMAP ioctls.40 41 422. Inside the kernel43 44 - struct fb_info45 46 Generic information, API and low level information about a specific frame47 buffer device instance (slot number, board address, ...).48 49 - struct `par`50 51 Device dependent information that uniquely defines the video mode for this52 particular piece of hardware.53 54 55Visuals used by the frame buffer device API56===========================================57 58 59Monochrome (FB_VISUAL_MONO01 and FB_VISUAL_MONO10)60--------------------------------------------------61Each pixel is either black or white.62 63 64Pseudo color (FB_VISUAL_PSEUDOCOLOR and FB_VISUAL_STATIC_PSEUDOCOLOR)65---------------------------------------------------------------------66The whole pixel value is fed through a programmable lookup table that has one67color (including red, green, and blue intensities) for each possible pixel68value, and that color is displayed.69 70 71True color (FB_VISUAL_TRUECOLOR)72--------------------------------73The pixel value is broken up into red, green, and blue fields.74 75 76Direct color (FB_VISUAL_DIRECTCOLOR)77------------------------------------78The pixel value is broken up into red, green, and blue fields, each of which79are looked up in separate red, green, and blue lookup tables.80 81 82Grayscale displays83------------------84Grayscale and static grayscale are special variants of pseudo color and static85pseudo color, where the red, green and blue components are always equal to86each other.87