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

개요

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

sysbus(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 de‐
       vices  on  this  bus use the device tree built by the booting system to
       retrieve the necessary system resources used by the driver.  These  re‐
       sources  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  de‐
       scribe  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 ar‐
                       ray represents a hardware interrupt (IRQ) that is  used
                       by  the device. In general, this array only has one en‐
                       try unless a particular device uses more than one IRQ.

                       Solaris defaults all ISA interrupts to IPL 5. This  in‐
                       terrupt priority can be overridden by placing an inter‐
                       rupt-priorities  property  in a .conf file for the dri‐
                       ver. Each entry in the array of integers for the inter‐
                       rupt-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 priorities and are gener‐
                       ally 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 ar‐
                       ray  consists of a 3-tuple of integers. Each array ele‐
                       ment describes a contiguous memory address range  asso‐
                       ciated 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 tu‐
                       ple that does not denote a memory range, but is used by
                       the system only to create the address part of  the  de‐
                       vice  name. This special tuple can be recognized by de‐
                       termining 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 de‐
                       termine the reg property for a particular device is  to
                       use the prtconf(8) command after installing the partic‐
                       ular  device.  The output of the prtconf command can be
                       examined to determine the  reg  property  for  any  in‐
                       stalled 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               14 Dec 2023                        sysbus(5)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3