~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/fb/internals.rst

Version: ~ [ linux-6.11.5 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.58 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.114 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.169 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.228 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.284 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.322 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 =============================
  2 Frame Buffer device internals
  3 =============================
  4 
  5 This is a first start for some documentation about frame buffer device
  6 internals.
  7 
  8 Authors:
  9 
 10 - Geert Uytterhoeven <geert@linux-m68k.org>, 21 July 1998
 11 - James Simmons <jsimmons@user.sf.net>, Nov 26 2002
 12 
 13 --------------------------------------------------------------------------------
 14 
 15 Structures used by the frame buffer device API
 16 ==============================================
 17 
 18 The following structures play a role in the game of frame buffer devices. They
 19 are defined in <linux/fb.h>.
 20 
 21 1. Outside the kernel (user space)
 22 
 23   - struct fb_fix_screeninfo
 24 
 25     Device independent unchangeable information about a frame buffer device and
 26     a specific video mode. This can be obtained using the FBIOGET_FSCREENINFO
 27     ioctl.
 28 
 29   - struct fb_var_screeninfo
 30 
 31     Device independent changeable information about a frame buffer device and a
 32     specific video mode. This can be obtained using the FBIOGET_VSCREENINFO
 33     ioctl, and updated with the FBIOPUT_VSCREENINFO ioctl. If you want to pan
 34     the screen only, you can use the FBIOPAN_DISPLAY ioctl.
 35 
 36   - struct fb_cmap
 37 
 38     Device independent colormap information. You can get and set the colormap
 39     using the FBIOGETCMAP and FBIOPUTCMAP ioctls.
 40 
 41 
 42 2. Inside the kernel
 43 
 44   - struct fb_info
 45 
 46     Generic information, API and low level information about a specific frame
 47     buffer device instance (slot number, board address, ...).
 48 
 49   - struct `par`
 50 
 51     Device dependent information that uniquely defines the video mode for this
 52     particular piece of hardware.
 53 
 54 
 55 Visuals used by the frame buffer device API
 56 ===========================================
 57 
 58 
 59 Monochrome (FB_VISUAL_MONO01 and FB_VISUAL_MONO10)
 60 --------------------------------------------------
 61 Each pixel is either black or white.
 62 
 63 
 64 Pseudo color (FB_VISUAL_PSEUDOCOLOR and FB_VISUAL_STATIC_PSEUDOCOLOR)
 65 ---------------------------------------------------------------------
 66 The whole pixel value is fed through a programmable lookup table that has one
 67 color (including red, green, and blue intensities) for each possible pixel
 68 value, and that color is displayed.
 69 
 70 
 71 True color (FB_VISUAL_TRUECOLOR)
 72 --------------------------------
 73 The pixel value is broken up into red, green, and blue fields.
 74 
 75 
 76 Direct color (FB_VISUAL_DIRECTCOLOR)
 77 ------------------------------------
 78 The pixel value is broken up into red, green, and blue fields, each of which
 79 are looked up in separate red, green, and blue lookup tables.
 80 
 81 
 82 Grayscale displays
 83 ------------------
 84 Grayscale and static grayscale are special variants of pseudo color and static
 85 pseudo color, where the red, green and blue components are always equal to
 86 each other.

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php