intro(9S)




NAME

     Intro, intro - introduction to kernel  data  structures  and
     properties


DESCRIPTION

     Section  9P  describes  kernel  properties  used  by  device
     drivers.  Section  9S  describes the data structures used by
     drivers to share information between the driver and the ker-
     nel.  See  Intro(9E) for an overview of device driver inter-
     faces.

     In Section 9S, reference pages contain the  following  head-
     ings:

        o  NAME summarizes the purpose of the structure  or  pro-
           perty.

        o  SYNOPSIS lists  the  include  file  that  defines  the
           structure or property.

        o  INTERFACE LEVEL describes any  architecture  dependen-
           cies.

        o  DESCRIPTION provides  general  information  about  the
           structure or property.

        o  STRUCTURE  MEMBERS  lists  all  accessible   structure
           members (for Section 9S).

        o  SEE ALSO gives sources for further information.

     Of the preceding headings, Section 9P reference  pages  con-
     tain the NAME, DESCRIPTION, and SEE ALSO fields.

     Every driver MUST include <sys/ddi.h> and <sys/sunddi.h>, in
     that order, and as final entries.

     The  following  table  summarizes  the  STREAMS   structures
     described in Section 9S.

     ____________________________________________________________
    |          Structure          |             Type            |
    |_____________________________|_____________________________|
    | copyreq                     | DDI/DKI                     |
    |_____________________________|_____________________________|
    | copyresp                    | DDI/DKI                     |
    |_____________________________|_____________________________|
    | datab                       | DDI/DKI                     |
    |_____________________________|_____________________________|
    | fmodsw                      | Solaris DDI                 |
    |_____________________________|_____________________________|
    | free_rtn                    | DDI/DKI                     |
    |_____________________________|_____________________________|
    | iocblk                      | DDI/DKI                     |
    |_____________________________|_____________________________|
    | linkblk                     | DDI/DKI                     |
    |_____________________________|_____________________________|
    | module_info                 | DDI/DKI                     |
    |_____________________________|_____________________________|
    | msgb                        | DDI/DKI                     |
    |_____________________________|_____________________________|
    | qband                       | DDI/DKI                     |
    |_____________________________|_____________________________|
    | qinit                       | DDI/DKI                     |
    |_____________________________|_____________________________|
    | queclass                    | Solaris DDI                 |
    |_____________________________|_____________________________|
    | queue                       | DDI/DKI                     |
    |_____________________________|_____________________________|
    | streamtab                   | DDI/DKI                     |
    |_____________________________|_____________________________|
    | stroptions                  | DDI/DKI                     |
    |_____________________________|_____________________________|

     The following  table  summarizes  structures  that  are  not
     specific to STREAMS I/O.


     ____________________________________________________________
               Structure                        Type
     ____________________________________________________________
      aio_req                       Solaris DDI
     ____________________________________________________________
      buf                           DDI/DKI
     ____________________________________________________________
      cb_ops                        Solaris DDI
     ____________________________________________________________
      ddi_device_acc_attr           Solaris DDI
     ____________________________________________________________
      ddi_dma_attr                  Solaris DDI
     ____________________________________________________________
      ddi_dma_cookie                Solaris DDI
     ____________________________________________________________
      ddi_dma_lim_sparc             Solaris SPARC DDI
     ____________________________________________________________
      ddi_dma_lim_x86               Solaris x86 DDI
     ____________________________________________________________
      ddi_dma_req                   Solaris DDI
     ____________________________________________________________
      ddi_dmae_req                  Solaris x86 DDI
     ____________________________________________________________
      ddi_idevice_cookie            Solaris DDI
     ____________________________________________________________
      ddi_mapdev_ctl                Solaris DDI
     ____________________________________________________________
      devmap_callback_ctl           Solaris DDI
     ____________________________________________________________
      dev_ops                       Solaris DDI
     ____________________________________________________________
      iovec                         DDI/DKI
     ____________________________________________________________
      kstat                         Solaris DDI
     ____________________________________________________________
      kstat_intr                    Solaris DDI
     ____________________________________________________________
      kstat_io                      Solaris DDI
     ____________________________________________________________
      kstat_named                   Solaris DDI
     ____________________________________________________________
      map                           DDI/DKI
     ____________________________________________________________
      modldrv                       Solaris DDI
     ____________________________________________________________
      modlinkage                    Solaris DDI
     ____________________________________________________________
      modlstrmod                    Solaris DDI
     ____________________________________________________________
      scsi_address                  Solaris DDI
     ____________________________________________________________
      scsi_arq_status               Solaris DDI

     ____________________________________________________________
    | scsi_device                 | Solaris DDI                 |
    |_____________________________|_____________________________|
    | scsi_extended_sense         | Solaris DDI                 |
    |_____________________________|_____________________________|
    | scsi_hba_tran               | Solaris DDI                 |
    |_____________________________|_____________________________|
    | scsi_inquiry                | Solaris DDI                 |
    |_____________________________|_____________________________|
    | scsi_pkt                    | Solaris DDI                 |
    |_____________________________|_____________________________|
    | scsi_status                 | Solaris DDI                 |
    |_____________________________|_____________________________|
    | uio                         | DDI/DKI                     |
    |_____________________________|_____________________________|


SEE ALSO

     Intro(9E)


NOTES

     Do not declare arrays of  structures  as  the  size  of  the
     structures  can  change  between  releases. Rely only on the
     structure members listed in this chapter and not on unlisted
     members or the position of a member in a structure.


LIST OF FUNCTIONS

     Name  Description

     aio_req(9S)
           asynchronous I/O request structure

     buf(9S)
           block I/O data transfer structure

     cb_ops(9S)
           character/block entry points structure

     copyreq(9S)
           STREAMS  data  structure  for  the  M_COPYIN  and  the
           M_COPYOUT message types

     copyresp(9S)
           STREAMS data structure for the M_IOCDATA message type

     datab(9S)
           STREAMS message data structure

     ddi_device_acc_attr(9S)
           data access attributes structure

     ddi_dma_attr(9S)
           DMA attributes structure

     ddi_dma_cookie(9S)
           DMA address cookie

     ddi_dma_lim(9S)
           See ddi_dma_lim_sparc(9S)

     ddi_dma_lim_sparc(9S)
           SPARC DMA limits structure

     ddi_dma_lim_x86(9S)
            DMA limits structure

     ddi_dma_req(9S)
           DMA Request structure

     ddi_dmae_req(9S)
           DMA engine request structure

     ddi_idevice_cookie(9S)
           device interrupt cookie

     ddi_mapdev_ctl(9S)
           device mapping-control structure

     dev_ops(9S)
           device operations structure

     devmap_callback_ctl(9S)
           device mapping-control structure

     fmodsw(9S)
           STREAMS module declaration structure

     free_rtn(9S)
           structure that specifies  a  driver's  message-freeing
           routine

     gld_mac_info(9S)
           Generic LAN Driver MAC info data structure

     gld_stats(9S)
           Generic LAN Driver statistics data structure

     iocblk(9S)
           STREAMS data structure for the M_IOCTL message type

     iovec(9S)
           data storage structure for I/O using uio

     kstat(9S)
           kernel statistics structure

     kstat_intr(9S)
           structure for interrupt kstats

     kstat_io(9S)
           structure for I/O kstats

     kstat_named(9S)
           structure for named kstats

     linkblk(9S)
           STREAMS data structure sent to multiplexor drivers  to
           indicate a link

     mblk(9S)
           See msgb(9S)

     modldrv(9S)
           linkage structure for loadable drivers

     modlinkage(9S)
           module linkage structure

     modlstrmod(9S)
           linkage structure for loadable STREAMS modules

     module_info(9S)
           STREAMS driver identification and limit  value  struc-
           ture

     msgb(9S)
           STREAMS message block structure

     qband(9S)
           STREAMS queue flow control information structure

     qinit(9S)
           STREAMS queue processing procedures structure

     queclass(9S)
           a STREAMS macro that returns the queue  message  class
           definitions for a given message block

     queue(9S)
           STREAMS queue structure

     scsi_address(9S)
           SCSI address structure

     scsi_arq_status(9S)
           SCSI auto request sense structure

     scsi_asc_key_strings(9S)
           SCSI ASC ASCQ to message structure

     scsi_device(9S)
           SCSI device structure

     scsi_extended_sense(9S)
           SCSI extended sense structure

     scsi_hba_tran(9S)
           SCSI Host Bus Adapter (HBA)  driver  transport  vector
           structure

     scsi_inquiry(9S)
           SCSI inquiry structure

     scsi_pkt(9S)
           SCSI packet structure

     scsi_status(9S)
           SCSI status structure

     streamtab(9S)
           STREAMS entity declaration structure

     stroptions(9S)
           options structure for M_SETOPTS message

     tuple(9S)
           card information structure (CIS) access structure

     uio(9S)
           scatter/gather I/O request structure


Man(1) output converted with man2html