frame-buffer.rst 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. Frame Buffer Library
  2. ====================
  3. The frame buffer drivers depend heavily on four data structures. These
  4. structures are declared in include/linux/fb.h. They are fb_info,
  5. fb_var_screeninfo, fb_fix_screeninfo and fb_monospecs. The last
  6. three can be made available to and from userland.
  7. fb_info defines the current state of a particular video card. Inside
  8. fb_info, there exists a fb_ops structure which is a collection of
  9. needed functions to make fbdev and fbcon work. fb_info is only visible
  10. to the kernel.
  11. fb_var_screeninfo is used to describe the features of a video card
  12. that are user defined. With fb_var_screeninfo, things such as depth
  13. and the resolution may be defined.
  14. The next structure is fb_fix_screeninfo. This defines the properties
  15. of a card that are created when a mode is set and can't be changed
  16. otherwise. A good example of this is the start of the frame buffer
  17. memory. This "locks" the address of the frame buffer memory, so that it
  18. cannot be changed or moved.
  19. The last structure is fb_monospecs. In the old API, there was little
  20. importance for fb_monospecs. This allowed for forbidden things such as
  21. setting a mode of 800x600 on a fix frequency monitor. With the new API,
  22. fb_monospecs prevents such things, and if used correctly, can prevent a
  23. monitor from being cooked. fb_monospecs will not be useful until
  24. kernels 2.5.x.
  25. Frame Buffer Memory
  26. -------------------
  27. .. kernel-doc:: drivers/video/fbdev/core/fbmem.c
  28. :export:
  29. Frame Buffer Colormap
  30. ---------------------
  31. .. kernel-doc:: drivers/video/fbdev/core/fbcmap.c
  32. :export:
  33. Frame Buffer Video Mode Database
  34. --------------------------------
  35. .. kernel-doc:: drivers/video/fbdev/core/modedb.c
  36. :internal:
  37. .. kernel-doc:: drivers/video/fbdev/core/modedb.c
  38. :export:
  39. Frame Buffer Macintosh Video Mode Database
  40. ------------------------------------------
  41. .. kernel-doc:: drivers/video/fbdev/macmodes.c
  42. :export:
  43. Frame Buffer Fonts
  44. ------------------
  45. Refer to the file lib/fonts/fonts.c for more information.