Print this page
12315 errors in section 7i of the manual

Split Close
Expand all
Collapse all
          --- old/usr/src/man/man7i/visual_io.7i.man.txt
          +++ new/usr/src/man/man7i/visual_io.7i.man.txt
↓ open down ↓ 20 lines elided ↑ open up ↑
  21   21       the mouse tracking performance is improved.  The remaining set supports
  22   22       the device acting as the system console device.  Use of this set is
  23   23       optional, but if a graphics device is to be used as the system console
  24   24       device, it must implement these ioctls.
  25   25  
  26   26       The VISUAL environment also defines interfaces for non-ioctl entry points
  27   27       into the driver that the illumos operating environment calls when it is
  28   28       running in standalone mode (for example, when using a stand-alone
  29   29       debugger, entering the PROM monitor, or when the system panicking).
  30   30       These are also known as "Polled I/O" entry points, which operate under an
  31      -     an explicit set of restrictions, described below.
       31 +     explicit set of restrictions, described below.
  32   32  
  33   33  IOCTLS
  34   34       VIS_GETIDENTIFIER  This ioctl(2) returns an identifier string to uniquely
  35   35                          identify a device used in the illumos VISUAL
  36   36                          environment.  This is a mandatory ioctl and must
  37   37                          return a unique string.  We suggest that the name be
  38      -                        formed as <companysymbol><devicetype>.  For example,
  39      -                        the cgsix(7D) driver returns SUNWcg6.
       38 +                        formed as <companysymbol><devicetype>.
  40   39  
  41   40                          VIS_GETIDENTIFIER takes a vis_identifier structure as
  42   41                          its parameter.  This structure has the form:
  43   42  
  44   43                            #define VIS_MAXNAMELEN 128
  45   44                            struct vis_identifier {
  46   45                                   char name[VIS_MAXNAMELEN];
  47   46                            };
  48   47  
  49   48       VIS_GETCURSOR
↓ open down ↓ 284 lines elided ↑ open up ↑
 334  333                          starting position of the console device.
 335  334  
 336  335                          t_row and t_col define the upper left corner of the
 337  336                          destination rectangle of the copy.  The entire
 338  337                          rectangle is copied to this location.  If mode in the
 339  338                          VIS_DEVINIT ioctl was set to VIS_TEXT, t_row, and
 340  339                          t_col are defined to be character offsets from the
 341  340                          starting position of the console device.  If mode in
 342  341                          the VIS_DEVINIT ioctl was set to VIS_PIXEL, t_row, and
 343  342                          t_col are defined to be pixel offsets from the
 344      -                        starting position of the onssole device.
      343 +                        starting position of the console device.
 345  344  
 346  345                          direction specifies which way to do the copy.  If
 347  346                          direction is VIS_COPY_FORWARD the graphics driver
 348  347                          should copy data from position (s_row, s_col) in the
 349  348                          source rectangle to position (t_row, t_col) in the
 350  349                          destination rectangle.  If direction is
 351  350                          VIS_COPY_BACKWARDS the graphics driver should copy
 352  351                          data from position (e_row, e_col) in the source
 353  352                          rectangle to position (t_row+(e_row-s_row),
 354  353                          t_col+(e_col-s_col)) in the destination rectangle.
↓ open down ↓ 14 lines elided ↑ open up ↑
 369  368       The vis_polledio structure is passed from the driver to the illumos
 370  369       operating environment, conveying the entry point addresses of three
 371  370       functions which perform the same operations of their similarly named
 372  371       ioctl counterparts.  The rendering parameters for each entry point are
 373  372       derived from the same structure passed as the respective ioctl.  See the
 374  373       Console Optional Ioctls section of this manpage for an explanation of the
 375  374       specific function each of the entry points, display(), copy(), and
 376  375       cursor() are required to implement.  In addition to performing the
 377  376       prescribed function of their ioctl counterparts, the standalone vectors
 378  377       operate in a special context and must adhere to a strict set of rules.
 379      -     The polled I/O vectors are called directly whenever the system is quisced
 380      -     (running in a limited context) and must send output to the display.
 381      -     Standalone mode describes the state in which the system is running in
 382      -     single-threaded mode and only one processor is active.  illumos operating
 383      -     environment services are stopped, along with all other threads on the
 384      -     system, prior to entering any of the polled I/O interfaces.  The polled
 385      -     I/O vectors are called when the system is running in a standalone
 386      -     debugger, when executing the PROM monitor (OBP) or when panicking.
      378 +     The polled I/O vectors are called directly whenever the system is
      379 +     quiesced (running in a limited context) and must send output to the
      380 +     display.  Standalone mode describes the state in which the system is
      381 +     running in single-threaded mode and only one processor is active.
      382 +     illumos operating environment services are stopped, along with all other
      383 +     threads on the system, prior to entering any of the polled I/O
      384 +     interfaces.  The polled I/O vectors are called when the system is running
      385 +     in a standalone debugger, when executing the PROM monitor (OBP) or when
      386 +     panicking.
 387  387  
 388  388       The following restrictions must be observed in the polled I/O functions:
 389  389  
 390  390             1.   The driver must not allocate memory.
 391  391  
 392  392             2.   The driver must not wait on mutexes.
 393  393  
 394  394             3.   The driver must not wait for interrupts.
 395  395  
 396  396             4.   The driver must not call any DDI or LDI services.
↓ open down ↓ 14 lines elided ↑ open up ↑
 411  411  NOTES
 412  412       On SPARC systems, compatible drivers supporting the kernel terminal
 413  413       emulator should export the tem-support DDI property.  tem-support
 414  414       indicates that the driver supports the kernel terminal emulator.  By
 415  415       exporting tem-support it's possible to avoid premature handling of an
 416  416       incompatible driver.
 417  417  
 418  418       tem-support  This DDI property, set to 1, means driver is compatible with
 419  419                    the console kernel framebuffer interface.
 420  420  
 421      -illumos                         August 31, 2018                        illumos
      421 +illumos                        February 17, 2020                       illumos
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX