1 FBIO(7I)                        Ioctl Requests                        FBIO(7I)
   2 
   3 NAME
   4      fbio - frame buffer control operations
   5 
   6 DESCRIPTION
   7      The frame buffers provided with this release support the same general
   8      interface that is defined by <sys/fbio.h>.    Each responds to an FBIOGTYPE
   9      ioctl(2) request which returns information in a fbtype structure.
  10 
  11      Each device has an FBTYPE which is used by higher-level software to
  12      determine how to perform graphics functions.  Each device is used by
  13      opening it, doing an FBIOGTYPE ioctl(2) to see which frame buffer type is
  14      present, and thereby selecting the appropriate device-management
  15      routines.
  16 
  17      FBIOGINFO returns information specific to the GS accelerator.
  18 
  19      FBIOSVIDEO and FBIOGVIDEO are general-purpose ioctl(2) requests for
  20      controlling possible video features of frame buffers.  These ioctl(2)
  21      requests either set or return the value of a flags integer.  At this
  22      point, only the FBVIDEO_ON option is available, controlled by FBIOSVIDEO.
  23      FBIOGVIDEO returns the current video state.
  24 
  25      The FBIOSATTR and FBIOGATTR ioctl(2) requests allow access to special
  26      features of newer frame buffers.  They use the fbsattr and fbgattr
  27      structures.
  28 
  29      Some color frame buffers support the FBIOPUTCMAP and FBIOGETCMAP ioctl(2)
  30      requests, which provide access to the colormap.  They use the fbcmap
  31      structure.
  32 
  33      Also, some framebuffers with multiple colormaps will either encode the
  34      colormap identifier in the high-order bits of the "index" field in the
  35      fbcmap structure, or use the FBIOPUTCMAPI and FBIOGETCMAPI ioctl(2)
  36      requests.
  37 
  38      FBIOVERTICAL is used to wait for the start of the next vertical retrace
  39      period.
  40 
  41      FBIOVRTOFFSET Returns the offset to a read-only "vertical retrace page"
  42      for those framebuffers that support it.  This vertical retrace page may
  43      be mapped into user space with mmap(2).  The first word of the vertical
  44      retrace page (type unsigned int) is a counter that is incremented every
  45      time there is a vertical retrace.  The user process can use this counter
  46      in a variety of ways.
  47 
  48      FBIOMONINFO returns a mon_info structure which contains information about
  49      the monitor attached to the framebuffer, if available.
  50 
  51      FBIOSCURSOR, FBIOGCURSOR, FBIOSCURPOS and FBIOGCURPOS are used to control
  52      the hardware cursor for those framebuffers that have this feature.
  53      FBIOGCURMAX returns the maximum sized cursor supported by the
  54      framebuffer.  Attempts to create a cursor larger than this will fail.
  55 
  56      Finally FBIOSDEVINFO and FBIOGDEVINFO are used to transfer variable-
  57      length, device-specific information into and out of framebuffers.
  58 
  59 SEE ALSO
  60      ioctl(2), mmap(2), cgsix(7D)
  61 
  62 BUGS
  63      The FBIOSATTR and FBIOGATTR ioctl(2) requests are only supported by frame
  64      buffers which emulate older frame buffer types.  If a frame buffer
  65      emulates another frame buffer, FBIOGTYPE returns the emulated type.  To
  66      get the real type, use FBIOGATTR.
  67 
  68      The FBIOGCURPOS ioctl was incorrectly defined in previous operating
  69      systems, and older code running in binary compatibility mode may get
  70      incorrect results.
  71 
  72 illumos                        October 22, 2017                        illumos