The frame buffers provided with this release support the same general interface that is defined by <sys/fbio.h>. Each responds to an FBIOGTYPE ioctl(2) request which returns information in a fbtype structure.
Each device has an FBTYPE which is used by higher-level software to determine how to perform graphics functions. Each device is used by opening it, doing
an FBIOGTYPE ioctl() to see which frame buffer type is present, and thereby selecting the appropriate device-management routines.
FBIOGINFO returns information specific to the GS accelerator.
FBIOSVIDEO and FBIOGVIDEO are general-purpose ioctl() requests for controlling possible video
features of frame buffers. These ioctl() requests either set or return the value of a flags integer. At this point, only the FBVIDEO_ON option
is available, controlled by FBIOSVIDEO. FBIOGVIDEO returns the current video state.
The FBIOSATTR and FBIOGATTR ioctl() requests allow access to special features of newer frame
buffers. They use the fbsattr and fbgattr structures.
Some color frame buffers support the FBIOPUTCMAP and FBIOGETCMAP ioctl() requests, which provide
access to the colormap. They use the fbcmap structure.
Also, some framebuffers with multiple colormaps will either encode the colormap identifier in the high-order bits of the "index" field in the fbcmap structure, or use the FBIOPUTCMAPI and FBIOGETCMAPI ioctl() requests.
FBIOVERTICAL is used to wait for the start of the next vertical retrace period.
FBIOVRTOFFSET Returns the offset to a read-only vertical retrace page for those framebuffers that support it. This vertical retrace
page may be mapped into user space with mmap(2). The first word
of the vertical retrace page (type unsigned int) is a counter that is incremented every time there is a vertical retrace. The user process can use this counter in a variety of ways.
FBIOMONINFO returns a mon_info structure which contains information about the monitor attached to the framebuffer, if available.
FBIOSCURSOR, FBIOGCURSOR, FBIOSCURPOS and FBIOGCURPOS are used to control the hardware cursor for those framebuffers that have this feature. FBIOGCURMAX returns the maximum sized cursor supported
by the framebuffer. Attempts to create a cursor larger than this will fail.
Finally FBIOSDEVINFO and FBIOGDEVINFO are used to transfer variable-length, device-specific information into and
out of framebuffers.
|