MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


File Formats                                            sysbus(4)



NAME
     sysbus, isa - device tree  properties  for  ISA  bus  device
     drivers

DESCRIPTION
     Solaris for x86 supports  the ISA bus  as  the  system  bus.
     Drivers  for  devices on this buse use the device tree built
     by the booting  system  to  retrieve  the  necessary  system
     resources used by the driver. These resources include device
     I/O port addresses, any  interrupt  capabilities   that  the
     device  can  have,  any DMA channels it can require, and any
     memory-mapped addresses it can occupy.


     Configuration files for ISA device drivers are  only  neces-
     sary to describe properties used by a particular driver that
     are not part of the standard properties found in the  device
     tree.  See  driver.conf(4) for further details of configura-
     tion file syntax.


     The ISA nexus drivers all belong to class  sysbus.  All  bus
     drivers of class sysbus recognize the following properties:

     interrupts      An arbitrary-length array where each element
                     of the array represents a hardware interrupt
                     (IRQ) that is used by the device.   In  gen-
                     eral, this array only has one entry unless a
                     particular device uses more than one IRQ.

                     Solaris defaults all ISA interrupts  to  IPL
                     5.   This interrupt priority can be overrid-
                     den by placing an interrupt-priorities  pro-
                     perty  in  a .conf file for the driver. Each
                     entry in  the  array  of  integers  for  the
                     interrupt-priorities   property  is  matched
                     one-to-one with the elements in  the  inter-
                     rupts property to specify the IPL value that
                     is used by the system for this interrupt  in
                     this  driver. This is the priority that this
                     device's interrupt handler receives relative
                     to  the interrupt handlers of other drivers.
                     The priority is an integer from   1  to  16.
                     Generally,  disks are assigned a priority of
                     5, while mice and printers  are  lower,  and
                     serial  communication  devices  are  higher,
                     typically 7. 10 is reserved  by  the  system
                     and  must  not  be  used.  Priorities 11 and
                     greater are high level  priorities  and  are
                     generally      not      recommended     (see
                     ddiintrhilevel(9F)).




SunOS 5.11          Last change: 18 Nov 2004                    1






File Formats                                            sysbus(4)



                     The driver can refer to the elements of this
                     array  by  index using ddiaddintr(9F). The
                     index  into  the  array  is  passed  as  the
                     inumber argument of ddiaddintr().

                     Only devices that generate  interrupts  have
                     an interrupts property.


     reg             An arbitrary-length array where each element
                     of  the  array  consists  of  a  3-tuple  of
                     integers.  Each array  element  describes  a
                     contiguous  memory  address range associated
                     with the device on the bus.

                     The first integer of the tuple specifies the
                     memory  type, 0 specifies a memory range and
                     1 specifies an I/O range. The second integer
                     specifies  the  base  address  of the memory
                     range. The third  integer  of  each  3-tuple
                     specifies  the size, in bytes, of the mappa-
                     ble region.

                     The driver can refer to the elements of this
                     array  by  index,  and construct kernel map-
                     pings    to    these     addresses     using
                     ddimapregs(9F).  The  index into the array
                     is  passed  as  the   rnumber  argument   of
                     ddimapregs().

                     All  sysbus  devices  have  reg  properties.
                     The first tuple of this property  is used to
                     construct the address  part  of  the  device
                     name  under   /devices.  In the case of Plug
                     and Play ISA devices, the first tuple  is  a
                     special  tuple that does not denote a memory
                     range, but is used by  the  system  only  to
                     create  the address part of the device name.
                     This special  tuple  can  be  recognized  by
                     determining  if  the  top  bit  of the first
                     integer is set to a one.

                     The order of the tuples in the reg  property
                     is  determined by the boot system probe code
                     and depends on the characteristics  of  each
                     particular  device.   However,  the reg pro-
                     perty maintains the same  order  of  entries
                     from system boot to system boot.  The recom-
                     mended way to determine the reg property for
                     a   particular   device   is   to   use  the
                     prtconf(1M)  command  after  installing  the
                     particular   device.    The  output  of  the



SunOS 5.11          Last change: 18 Nov 2004                    2






File Formats                                            sysbus(4)



                     prtconf command can be examined to determine
                     the reg property for any installed device.

                     You can use the ddiget* and ddiput* family
                     of functions to access register space from a
                     high-level interrupt context.


     dma-channels    A list of integers that  specifies  the  DMA
                     channels  used  by this device. Only devices
                     that use DMA channels  have  a  dma-channels
                     property.


ATRIBUTES
     See attributes(5) for descriptions of the  following  attri-
     butes:



     
           ATRIBUTE TYPE               ATRIBUTE VALUE       
    
     Architecture                 x86                         
    


SEE ALSO
     prtconf(1M),   driver.conf(4),    scsi(4),    attributes(5),
     ddiaddintr(9F),   ddiintrhilevel(9F),  ddimapregs(9F),
     ddipropop(9F)


     Writing Device Drivers





















SunOS 5.11          Last change: 18 Nov 2004                    3



OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™