isa(5) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

isa(5)

sysbus(5)                        File Formats                        sysbus(5)



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 mem‐
       ory-mapped addresses it can occupy.


       Configuration files for  ISA  device  drivers  are  only  necessary  to
       describe  properties  used  by a particular driver that are not part of
       the standard properties found in the device  tree.  See  driver.conf(5)
       for further details of configuration 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 general, 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  overridden  by placing an
                       interrupt-priorities property 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 interrupts 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  pri‐
                       orities   and   are   generally  not  recommended  (see
                       ddi_intr_hilevel(9F)).

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

                       Only devices that generate interrupts  have  an  inter‐
                       rupts 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 mappable region.

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

                       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 deter‐
                       mined by the boot system probe code and depends on  the
                       characteristics of each particular device. However, the
                       reg property maintains the same order of  entries  from
                       system  boot  to  system  boot.  The recommended way to
                       determine the reg property for a particular  device  is
                       to use the prtconf(8) command after installing the par‐
                       ticular device. The output of the prtconf  command  can
                       be  examined  to  determine  the  reg  property for any
                       installed device.

                       You can use the ddi_get* and ddi_put* family  of  func‐
                       tions to access register space from a high-level inter‐
                       rupt 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.


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE  TYPEAT‐
       TRIBUTE VALUE _ Architecturex86


SEE ALSO
       driver.conf(5),  scsi(5),  attributes(7), prtconf(8), ddi_add_intr(9F),
       ddi_intr_hilevel(9F), ddi_map_regs(9F), ddi_prop_op(9F)


       Writing Device Drivers in Oracle Solaris 11.4



Oracle Solaris 11.4               18 Nov 2004                        sysbus(5)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3