Writing Device Drivers
    
Numbers and Symbols
 
 64-bit device drivers ( Index Term Link ) ( Index Term Link )
    
A
 
 add_drv(1M) command ( Index Term Link )
 
 address spaces ( Index Term Link )
 
 aphysio(9F) routine ( Index Term Link )
 
 aread(9E) entry point ( Index Term Link )
 
 ASSERT(9F) macro ( Index Term Link )
 
 associating kernel memory with user applications ( Index Term Link )
 
 asynchronous communication drivers, testing ( Index Term Link )
 
 asynchronous data transfers ( Index Term Link )
 
 attach(9E) entry point ( Index Term Link )
 
 auto-request sense mode ( Index Term Link )
 
 autoconfiguration
  of block devices ( Index Term Link )
  of character devices ( Index Term Link )
  overview ( Index Term Link )
  routines ( Index Term Link )
  of SCSI devices ( Index Term Link ) ( Index Term Link )
 
 autoshutdown threshold ( Index Term Link )
 
 autovectored interrupts ( Index Term Link )
 
 awrite(9E) entry point ( Index Term Link )
    
B
 
 binary compatibility ( Index Term Link )
 
 biodone(9F) routine ( Index Term Link )
 
 block driver
  autoconfiguration of ( Index Term Link )
  buf(9S) structure ( Index Term Link )
  cb_ops(9S) structure ( Index Term Link )
  overview ( Index Term Link )
  slice number ( Index Term Link )
 
 block driver entry points ( Index Term Link )
  close(9E) ( Index Term Link )
  open(9E) ( Index Term Link )
  strategy(9E) ( Index Term Link )
 
 buf(9S) structure ( Index Term Link )
 
 buffer allocation, DMA ( Index Term Link )
 
 burst sizes, DMA ( Index Term Link )
 
 bus
  architectures ( Index Term Link )
   ISA ( Index Term Link )
   PCI ( Index Term Link )
   SBus ( Index Term Link )
  SCSI ( Index Term Link )
 
 bus-master DMA ( Index Term Link ) ( Index Term Link )
 
 bus nexus device drivers ( Index Term Link )
 
 byte ordering ( Index Term Link )
 
 byte-stream I/O ( Index Term Link )
    
C
 
 cache, description of ( Index Term Link )
 
 callback functions ( Index Term Link ) ( Index Term Link )
 
 cb_ops(9S) structure ( Index Term Link )
 
 character device driver
  aphysio(9F) routine ( Index Term Link )
  autoconfiguration of ( Index Term Link )
  cb_ops(9S) structure ( Index Term Link )
  close(9E) entry point ( Index Term Link )
  data transfers ( Index Term Link )
  device polling ( Index Term Link )
  entry points for ( Index Term Link )
  I/O control mechanism ( Index Term Link )
  memory mapping ( Index Term Link )
  minphys(9F) routine ( Index Term Link )
  open(9E) entry point ( Index Term Link )
  overview ( Index Term Link )
  physio(9F) routine ( Index Term Link )
  strategy(9E) entry point ( Index Term Link )
 
 cloning SCSI HBA driver ( Index Term Link )
 
 close(9E) entry point ( Index Term Link ) ( Index Term Link )
 
 cmn_err(9F) routine ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
 
 compiling and linking a driver ( Index Term Link )
 
 condition variables
  and mutex locks ( Index Term Link )
  routines ( Index Term Link )
 
 .conf files ( Index Term Link )
 
 configuration entry points
  attach(9E) ( Index Term Link )
  detach(9E) ( Index Term Link )
  getinfo(9E) ( Index Term Link )
 
 configuration files, hardware
  See hardware configuration files
 
 context management
  See device context management
 
 context of device driver ( Index Term Link )
 
 cookies, DMA ( Index Term Link )
 
 copying data
  copyin(9F) routine ( Index Term Link )
  copyout(9F) routine ( Index Term Link )
 
 core dumps, saving ( Index Term Link )
 
 cv_ functions
  cv_destroy(9F)() ( Index Term Link )
  cv_init(9F)() ( Index Term Link )
  cv_signal(9F)() ( Index Term Link )
  cv_timedwait(9F)() ( Index Term Link )
  cv_timedwait_sig(9F)() ( Index Term Link )
  cv_wait(9F)() ( Index Term Link )
  cv_wait_sig(9F)() ( Index Term Link )
    
D
 
 data alignment for SPARC ( Index Term Link )
 
 data corruption
  detecting ( Index Term Link ) ( Index Term Link )
 
 data storage classes ( Index Term Link )
 
 data structures
  dev_ops(9S) ( Index Term Link )
  modldrv(9S) ( Index Term Link )
 
 data transfers, character drivers ( Index Term Link )
 
 DDI, access mechanism ( Index Term Link )
 
 ddi_ functions
  ddi_add_intr(9F)() ( Index Term Link )
  ddi_create_minor_node(9F)() ( Index Term Link )
  ddi_dev_is_needed(9F)() ( Index Term Link )
  ddi_dma_getwin(9F)() ( Index Term Link )
  ddi_dma_nextseg(9F)() ( Index Term Link )
  ddi_enter_critical(9F)() ( Index Term Link )
  ddi_prop_get_int(9F)() ( Index Term Link )
  ddi_prop_lookup(9F)() ( Index Term Link )
  ddi_prop_op(9F)() ( Index Term Link )
  ddi_regs_map_setup(9F)() ( Index Term Link )
  ddi_umem_alloc(9F)() ( Index Term Link )
  ddi_umem_free(9F)() ( Index Term Link )
 
 ddi_check_acc_handle() ( Index Term Link )
 
 ddi_check_dma_handle() ( Index Term Link )
 
 DDI-compliant drivers
  byte ordering ( Index Term Link )
  compliance testing ( Index Term Link )
 
 DDI/DKI
  and disk performance ( Index Term Link )
  overview ( Index Term Link )
 
 ddi_dma_attr structure ( Index Term Link )
 
 ddi_dma_sync() ( Index Term Link )
 
 ddi_get() ( Index Term Link )
 
 DDI_INFO_DEVT2DEVINFO ( Index Term Link )
 
 DDI_INFO_DEVT2INSTANCE ( Index Term Link )
 
 DDI_INTR_UNCLAIMED ( Index Term Link )
 
 ddi_peek() ( Index Term Link )
 
 ddi_poke() ( Index Term Link )
 
 ddi_put() ( Index Term Link )
 
 ddi_regs_map_setup() ( Index Term Link )
 
 ddi_rep_get() ( Index Term Link )
 
 ddi_rep_put() ( Index Term Link )
 
 DDI_RESUME command ( Index Term Link )
 
 DDI_SUSPEND command ( Index Term Link )
 
 debugging
  ASSERT(9F) macro ( Index Term Link )
  booting an alternate kernel ( Index Term Link )
  coding hints ( Index Term Link )
  conditional compilation ( Index Term Link )
  kadb(1) ( Index Term Link )
  SCSI target driver ( Index Term Link )
  setting breakpoints ( Index Term Link ) ( Index Term Link )
  setting up a tip(1) connection ( Index Term Link )
  tools ( Index Term Link )
  using the SPARC PROM for device debugging ( Index Term Link )
 
 detach(9E) entry point ( Index Term Link )
 
 dev_ops(9S) structure ( Index Term Link )
 
 devfsadm(1M) command ( Index Term Link )
 
 device, hung ( Index Term Link )
 
 device access
  system calls ( Index Term Link ) ( Index Term Link )
 
 device configuration, entry points ( Index Term Link )
 
 device context management ( Index Term Link )
  entry points ( Index Term Link )
  model ( Index Term Link )
  operation ( Index Term Link )
 
 device driver
  See also loading drivers
  64-bit drivers
   See also 64-bit device drivers
  64-bit drivers ( Index Term Link ) ( Index Term Link )
  binding to device node ( Index Term Link )
  block driver ( Index Term Link )
  context ( Index Term Link )
  debugging ( Index Term Link )
   coding hints ( Index Term Link )
   setting up a tip(1) connection ( Index Term Link )
   tools ( Index Term Link )
   using the PROM ( Index Term Link )
  definition of ( Index Term Link )
  entry points ( Index Term Link )
  error handling ( Index Term Link )
  header files ( Index Term Link )
  instances ( Index Term Link )
  loadable interface ( Index Term Link )
  module configuration ( Index Term Link )
  overview ( Index Term Link )
  packaging ( Index Term Link )
  printing messages ( Index Term Link )
  source files ( Index Term Link )
  standard character driver ( Index Term Link )
  testing ( Index Term Link )
  types of ( Index Term Link )
 
 device information
  binding a driver to a device ( Index Term Link )
  self-identifying ( Index Term Link )
  tree structure ( Index Term Link ) ( Index Term Link )
 
 device interrupt handling
  See interrupt handling
 
 device interrupts
  See interrupts
 
 device memory
  D_DEVMAP flag in cb_ops(9S) ( Index Term Link )
  mapping ( Index Term Link ) ( Index Term Link )
 
 device number ( Index Term Link )
 
 device polling
  in character drivers ( Index Term Link )
  chpoll(9E) entry point ( Index Term Link )
  poll(2) system call ( Index Term Link )
 
 device power management
  components ( Index Term Link )
  definition of ( Index Term Link )
  dependency ( Index Term Link )
  entry points ( Index Term Link )
  interfaces ( Index Term Link )
  model ( Index Term Link )
  power levels ( Index Term Link )
  state transitions ( Index Term Link )
 
 device power management functions
  pm_busy_component(9F)() ( Index Term Link )
  pm_idle_component(9F)() ( Index Term Link )
  power(9E) ( Index Term Link )
 
 device registers, mapping ( Index Term Link )
 
 device state in power management ( Index Term Link )
 
 device tree ( Index Term Link )
 
 devmap_ entry points
  devmap(9E) ( Index Term Link )
  devmap_access(9E) ( Index Term Link ) ( Index Term Link )
  devmap_contextmgt(9E) ( Index Term Link )
  devmap_dup(9E) ( Index Term Link )
  devmap_map(9E) ( Index Term Link )
  devmap_unmap(9E) ( Index Term Link )
 
 devmap_ functions
  devmap_devmem_setup(9F)() ( Index Term Link )
  devmap_load(9F)() ( Index Term Link )
  devmap_umem_setup(9F)() ( Index Term Link )
  devmap_unload(9F)() ( Index Term Link )
 
 disk
  I/O controls ( Index Term Link )
  performance ( Index Term Link )
 
 disk drivers, testing ( Index Term Link )
 
 DKI
  See DDI/DKI
 
 DMA ( Index Term Link )
  buffer allocation ( Index Term Link )
  burst sizes ( Index Term Link )
  callbacks ( Index Term Link )
  cookie ( Index Term Link ) ( Index Term Link )
  freeing handle ( Index Term Link )
  freeing resources ( Index Term Link )
  handle ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
  isolating ( Index Term Link )
  object ( Index Term Link )
  object locking ( Index Term Link )
  operations ( Index Term Link )
  physical addresses ( Index Term Link )
  private buffer allocation ( Index Term Link )
  register structure ( Index Term Link )
  resource allocation ( Index Term Link )
  restrictions ( Index Term Link )
  transfers ( Index Term Link ) ( Index Term Link )
  types of ( Index Term Link )
  virtual addresses ( Index Term Link )
  windows ( Index Term Link ) ( Index Term Link )
 
 driver binding name ( Index Term Link )
 
 driver.conf files ( Index Term Link )
 
 driver entry points
  attach(9E) ( Index Term Link ) ( Index Term Link )
  for block drivers ( Index Term Link )
  for character drivers ( Index Term Link )
  detach(9E) ( Index Term Link ) ( Index Term Link )
  ioctl(9E) ( Index Term Link )
  power(9E) ( Index Term Link )
  probe(9E) ( Index Term Link )
 
 driver module entry points, definition of ( Index Term Link )
 
 drv_usecwait(9F) ( Index Term Link )
 
 dump(9E) entry point ( Index Term Link )
 
 DVMA
  SBus slots supporting ( Index Term Link )
  virtual addresses ( Index Term Link )
 
 dynamic memory allocation ( Index Term Link )
    
E
 
 entry points
  See also driver entry points
  for block drivers ( Index Term Link )
  for character drivers ( Index Term Link )
  for device power management ( Index Term Link )
  device context management ( Index Term Link )
  for device configuration ( Index Term Link )
  SCSA HBA summary ( Index Term Link )
  for system power management ( Index Term Link )
 
 error handling ( Index Term Link )
 
 error messages, printing ( Index Term Link ) ( Index Term Link )
 
 /etc/system file ( Index Term Link )
 
 exporting device memory to user applications ( Index Term Link )
 
 external registers ( Index Term Link )
    
F
 
 faults
  containment of ( Index Term Link ) ( Index Term Link )
  detection by hardware ( Index Term Link )
 
 faulty hardware, alternative strategies for ( Index Term Link )
 
 file system I/O ( Index Term Link )
 
 _fini(9E) ( Index Term Link ) ( Index Term Link )
 
 first-party DMA ( Index Term Link ) ( Index Term Link )
 
 flow of control for power management ( Index Term Link )
    
G
 
 getinfo(9E) entry point ( Index Term Link )
 
 graphics devices, device context management of ( Index Term Link )
    
H
 
 handle, DMA ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
 
 hardware configuration files ( Index Term Link ) ( Index Term Link )
  PCI devices ( Index Term Link )
  SBus devices ( Index Term Link )
  SCSI target devices ( Index Term Link )
 
 hardware context ( Index Term Link )
 
 hardware state in power management ( Index Term Link )
 
 HBA driver
  See SCSI HBA driver
 
 header files for device drivers ( Index Term Link )
 
 host bus adapter transport layer ( Index Term Link )
    
I
 
 I/O
  asynchronous data transfers ( Index Term Link ) ( Index Term Link )
  byte stream ( Index Term Link )
  disk controls ( Index Term Link )
  DMA transfers ( Index Term Link )
  file system structure ( Index Term Link )
  miscellaneous control of ( Index Term Link )
  multiplexing ( Index Term Link )
  programmed transfers ( Index Term Link )
  scatter/gather structures ( Index Term Link )
  synchronous data transfers ( Index Term Link ) ( Index Term Link )
 
 IA processor
  byte ordering ( Index Term Link )
  data alignment ( Index Term Link )
  floating point operations ( Index Term Link )
 
 _info(9E) ( Index Term Link )
 
 _init(9E) ( Index Term Link ) ( Index Term Link )
 
 instance numbers ( Index Term Link )
 
 integrity checks ( Index Term Link )
 
 internal mode registers ( Index Term Link )
 
 internal sequencing logic ( Index Term Link )
 
 interrupt handlers, responsibilities of ( Index Term Link )
 
 interrupt handling
  ddi_add_intr(9F)() ( Index Term Link )
  high-level interrupts ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
  overview ( Index Term Link )
  registering an interrupt handler ( Index Term Link )
  software interrupts ( Index Term Link ) ( Index Term Link )
 
 interrupt property ( Index Term Link )
 
 interrupt property ( Index Term Link )
 
 interrupts ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
  common problems with ( Index Term Link )
  description of ( Index Term Link )
  interrupt numbers ( Index Term Link )
  priority levels ( Index Term Link )
  specification ( Index Term Link )
  types of ( Index Term Link )
 
 ioctl(9E) entry point ( Index Term Link )
 
 IOMMU ( Index Term Link )
 
 iovec(9S) structure ( Index Term Link )
 
 ISA bus ( Index Term Link )
 
 isolating DMA ( Index Term Link )
    
K
 
 kadb(1M) command ( Index Term Link )
 
 kernel
  resources ( Index Term Link )
  threads ( Index Term Link ) ( Index Term Link )
 
 kernel, definition of ( Index Term Link )
 
 kernel memory, associating with user applications ( Index Term Link )
 
 kernel memory allocation ( Index Term Link )
 
 kernel modules, directory of ( Index Term Link )
 
 kmem_alloc(9F) ( Index Term Link )
    
L
 
 leaf drivers ( Index Term Link )
 
 linking a driver ( Index Term Link )
 
 loading drivers
  add_drv(1M) command ( Index Term Link )
  compiling a driver ( Index Term Link )
  hardware configuration file ( Index Term Link )
  linking a driver ( Index Term Link )
 
 loading modules ( Index Term Link ) ( Index Term Link )
 
 locking primitives, types of ( Index Term Link )
 
 locks
  mutex ( Index Term Link )
  scheme for ( Index Term Link )
 
 loops ( Index Term Link ) ( Index Term Link )
    
M
 
 M_ERROR ( Index Term Link )
 
 memory, allocation of ( Index Term Link )
 
 memory management unit ( Index Term Link )
 
 memory mapping
  device context management of ( Index Term Link )
  device memory management ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
 
 memory model
  SPARC ( Index Term Link )
  store buffers ( Index Term Link )
 
 minor device node ( Index Term Link )
 
 minphys(9F) routine ( Index Term Link )
 
 mmap(2) system call ( Index Term Link )
 
 mod_install(9F) ( Index Term Link )
 
 moddebug kernel variable ( Index Term Link )
 
 modldrv(9S) structure ( Index Term Link )
 
 modlinkage(9S) structure ( Index Term Link )
 
 module directory ( Index Term Link )
 
 modunload(1M) command ( Index Term Link )
 
 mount(2) system call ( Index Term Link )
 
 multiplexing I/O ( Index Term Link )
 
 multiprocessor considerations ( Index Term Link )
 
 multithreading
  and condition variables ( Index Term Link )
  D_MP flag in cb_ops(9S) ( Index Term Link )
  and locking primitives ( Index Term Link )
  thread synchronization ( Index Term Link )
 
 mutex
  functions ( Index Term Link )
  high-level ( Index Term Link )
  locks ( Index Term Link )
  related panics ( Index Term Link )
  routines ( Index Term Link )
    
N
 
 network drivers, testing ( Index Term Link )
 
 node types ( Index Term Link )
 
 normal interrupts ( Index Term Link )
    
O
 
 object locking ( Index Term Link )
 
 open(2) system call ( Index Term Link ) ( Index Term Link )
    
P
 
 packaging ( Index Term Link )
 
 panic ( Index Term Link )
 
 partial store ordering ( Index Term Link )
 
 PCI bus ( Index Term Link )
  configuration address space ( Index Term Link )
  configuration base address registers ( Index Term Link )
  hardware configuration files ( Index Term Link )
  I/O address space ( Index Term Link )
  memory address space ( Index Term Link )
 
 PCI devices ( Index Term Link )
 
 physical DMA ( Index Term Link )
 
 physio(9F) routine ( Index Term Link )
 
 PIO ( Index Term Link )
 
 pointers ( Index Term Link )
 
 power management
  See also device power management
  See also system power management
  flow of control ( Index Term Link )
  system ( Index Term Link )
 
 print(9E) entry point ( Index Term Link )
 
 printing messages ( Index Term Link )
 
 probe(9E) entry point ( Index Term Link ) ( Index Term Link )
 
 process layout ( Index Term Link )
 
 processor issues
  IA ( Index Term Link )
  SPARC ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
 
 programmed I/O ( Index Term Link )
 
 PROM commands ( Index Term Link )
 
 prop_op(9E) ( Index Term Link )
 
 properties
  class property ( Index Term Link )
  ddi_prop_op(9F) ( Index Term Link )
  device node name property ( Index Term Link )
  overview ( Index Term Link ) ( Index Term Link )
  pm-hardware-state property ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
  prtconf(1M) ( Index Term Link )
  reg property ( Index Term Link )
  reporting device properties ( Index Term Link )
  SCSI HBA properties ( Index Term Link )
  SCSI target driver ( Index Term Link )
  types of ( Index Term Link ) ( Index Term Link )
 
 protocol stack ( Index Term Link )
 
 prtconf(1M) ( Index Term Link )
 
 prtconf(1M) ( Index Term Link )
 
 pseudo device driver ( Index Term Link ) ( Index Term Link )
 
 putnext ( Index Term Link )
    
Q
 
 queuing ( Index Term Link )
    
R
 
 read(9E) entry point ( Index Term Link )
 
 readers/writer locks ( Index Term Link )
 
 received data ( Index Term Link )
 
 reg property ( Index Term Link )
 
 register structure, DMA ( Index Term Link )
    
S
 
 S_IFCHR ( Index Term Link )
 
 saving core dumps ( Index Term Link )
 
 SBus
  address bits ( Index Term Link )
  geographical addressing ( Index Term Link )
  hardware configuration files ( Index Term Link )
  physical address space ( Index Term Link )
 
 SBus slots supporting DVMA ( Index Term Link )
 
 scatter/gather I/O ( Index Term Link )
 
 SCSA ( Index Term Link ) ( Index Term Link )
  global data definitions ( Index Term Link )
  HBA transport layer ( Index Term Link )
  interfaces ( Index Term Link )
 
 SCSI
  architecture ( Index Term Link )
  bus ( Index Term Link )
 
 scsi_ functions
  scsi_abort(9F) ( Index Term Link )
 
 scsi_ functions
  scsi_alloc_consistent_buf(9F)() ( Index Term Link )
  scsi_destroy_pkt(9F)() ( Index Term Link )
  scsi_dmafree(9F)() ( Index Term Link )
  scsi_free_consistent_buf(9F)() ( Index Term Link )
  scsi_ifgetcap(9F)() ( Index Term Link )
  scsi_ifsetcap(9F()) ( Index Term Link )
  scsi_init_pkt(9F)() ( Index Term Link )
 
 scsi_ functions
  scsi_poll(9F) ( Index Term Link )
 
 scsi_ functions
  scsi_probe(9F)() ( Index Term Link )
 
 scsi_ functions
  scsi_reset(9F) ( Index Term Link )
 
 scsi_ functions
  scsi_setup_cdb(9F)() ( Index Term Link )
  scsi_sync_pkt(9F)() ( Index Term Link ) ( Index Term Link )
  scsi_transport(9F)() ( Index Term Link )
  scsi_unprobe(9F)() ( Index Term Link )
  summary list ( Index Term Link )
 
 scsi_address(9S) structure ( Index Term Link )
 
 scsi_device(9S) structure ( Index Term Link ) ( Index Term Link )
 
 scsi_hba_ functions
  scsi_hba_attach_setup(9F)() ( Index Term Link )
  scsi_hba_lookup_capstr(9F)() ( Index Term Link )
  scsi_hba_pkt_alloc(9F)() ( Index Term Link )
 
 scsi_hba_ functions, scsi_hba_pkt_free(9F)() ( Index Term Link )
 
 scsi_hba_ functions
  scsi_hba_probe(9F)() ( Index Term Link )
  summary list ( Index Term Link )
 
 SCSI HBA driver
  abort and reset management ( Index Term Link )
  autoconfiguration ( Index Term Link )
  capability management ( Index Term Link )
  cloning ( Index Term Link )
  command state structure ( Index Term Link )
  command timeout ( Index Term Link )
  command transport ( Index Term Link )
  configuration properties ( Index Term Link )
  data structures ( Index Term Link )
  DMA resources ( Index Term Link )
  driver instance initialization ( Index Term Link )
  entry points summary ( Index Term Link )
  header files ( Index Term Link )
  and hot-plugging ( Index Term Link )
  initializing a transport structure ( Index Term Link )
  installation ( Index Term Link )
  interrupt handling ( Index Term Link )
  module initialization ( Index Term Link )
  overview ( Index Term Link ) ( Index Term Link )
  properties ( Index Term Link )
  resource allocation ( Index Term Link )
 
 SCSI HBA driver entry points
  by category ( Index Term Link )
  tran_abort(9E) ( Index Term Link )
  tran_dmafree(9E) ( Index Term Link )
  tran_getcap(9E) ( Index Term Link )
  tran_init_pkt(9E) ( Index Term Link )
  tran_reset(9E) ( Index Term Link )
  tran_reset_notify(9E) ( Index Term Link )
  tran_setcap(9E) ( Index Term Link )
  tran_start(9E) ( Index Term Link )
  tran_sync_pkt(9E) ( Index Term Link )
  tran_tgt_free(9E) ( Index Term Link )
  tran_tgt_init(9E) ( Index Term Link )
  tran_tgt_probe(9E) ( Index Term Link )
 
 scsi_hba_tran(9S) structure ( Index Term Link ) ( Index Term Link )
 
 scsi_pkt(9S) structure ( Index Term Link ) ( Index Term Link )
 
 SCSI target driver
  auto-request sense mode ( Index Term Link )
  autoconfiguration of ( Index Term Link )
  building a command ( Index Term Link )
  callback routine ( Index Term Link )
  data structures ( Index Term Link )
  debugging ( Index Term Link )
  initializing a command descriptor block ( Index Term Link )
  overview ( Index Term Link )
  properties ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
  resource allocation ( Index Term Link )
  reusing packets ( Index Term Link )
  SCSI routines ( Index Term Link )
  transporting a command ( Index Term Link )
 
 segmap(9E) entry point ( Index Term Link ) ( Index Term Link )
 
 self-identifying devices ( Index Term Link )
 
 slice number for block devices ( Index Term Link )
 
 soft interrupts ( Index Term Link )
 
 source compatibility ( Index Term Link )
 
 source files for device drivers ( Index Term Link )
 
 SPARC processor
  byte ordering ( Index Term Link )
  data alignment ( Index Term Link )
  floating point operations ( Index Term Link )
  multiply and divide instructions ( Index Term Link )
  register windows ( Index Term Link )
  structure member alignment ( Index Term Link )
 
 special files ( Index Term Link )
 
 state structure ( Index Term Link ) ( Index Term Link )
 
 store buffers ( Index Term Link )
 
 strategy(9E) entry point
  block drivers ( Index Term Link )
  character drivers ( Index Term Link )
 
 streams ( Index Term Link ) ( Index Term Link )
 
 STREAMS
  cb_ops(9S) structure ( Index Term Link )
  drivers ( Index Term Link )
 
 SYNC_FOR_DEV ( Index Term Link )
 
 synchronous data transfers ( Index Term Link )
 
 system call, description of ( Index Term Link )
 
 system integrity ( Index Term Link )
 
 system power management ( Index Term Link )
  entry points ( Index Term Link )
  model ( Index Term Link )
  policy ( Index Term Link )
  saving hardware state ( Index Term Link )
    
T
 
 tagged queuing ( Index Term Link )
 
 tape drivers, testing ( Index Term Link )
 
 testing ( Index Term Link )
  asynchronous communication drivers ( Index Term Link )
  configuration ( Index Term Link )
  DDI compliance ( Index Term Link )
  disk drivers ( Index Term Link )
  functionality ( Index Term Link )
  installation and packaging ( Index Term Link )
  network drivers ( Index Term Link )
  tape drivers ( Index Term Link )
 
 third-party DMA ( Index Term Link ) ( Index Term Link )
 
 thread synchronization
  condition variables ( Index Term Link )
  mutex_init(9F) ( Index Term Link )
  mutex locks ( Index Term Link )
  per instance mutex ( Index Term Link )
  readers/writer locks ( Index Term Link )
 
 threads, pre-emption of ( Index Term Link )
 
 tip(1) connection ( Index Term Link )
 
 total store ordering ( Index Term Link )
 
 tran_abort(9E) entry point ( Index Term Link )
 
 tran_destroy_pkt(9E) entry point ( Index Term Link )
 
 tran_dmafree(9E) entry point ( Index Term Link )
 
 tran_getcap(9E) entry point ( Index Term Link )
 
 tran_init_pkt(9E) entry point ( Index Term Link )
 
 tran_reset(9E) entry point ( Index Term Link )
 
 tran_reset_notify(9E) entry point ( Index Term Link )
 
 tran_setcap(9E) entry point ( Index Term Link )
 
 tran_start(9E) entry point ( Index Term Link )
 
 tran_sync_pkt(9E) entry point ( Index Term Link )
    
U
 
 uio(9S) data structure ( Index Term Link )
 
 uiomove(9F) routine ( Index Term Link )
 
 unloading drivers ( Index Term Link )
 
 untagged queuing ( Index Term Link )
    
V
 
 vectored I/O ( Index Term Link )
 
 virtual addresses ( Index Term Link )
 
 virtual DMA ( Index Term Link )
 
 virtual memory, memory management unit (MMU) ( Index Term Link )
 
 virtual memory address spaces ( Index Term Link )
    
W
 
 windows, DMA ( Index Term Link )
 
 wput ( Index Term Link ) ( Index Term Link )
 
 write(2) system call ( Index Term Link )
 
 write(9E) entry point ( Index Term Link )