DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

intr(D2sdi)


intr -- handle Host Bus Adapter interrupts

Synopsis

See intr(D2) for synopsis, return values, context, and general usage information about this entry point.

Description

The HBA driver's intr( ) routine is responsible for acknowledging and processing the device interrupt. The sdi_callback(D3sdi) routine must be called to pass the interrupt completion information up to the target driver.

Usage

Because interrupts can be shared, all HBA driver interrupt routines must determine, from internal status, whether or not an interrupt is pending for a device it controls whose IRQ (interrupt) matches vect. After processing the interrupt, the routine should check the controller to verify that the requested operation has completed successfully. If neither case is true, the routine should return without displaying a message, and should not modify the system state affecting the interrupt being processed.

Upon completion of the interrupt processing, the HBA interrupt routine must put the appropriate return completion code into the scb(D4sdi) and sfb(D4sdi) structures, and call the target driver interrupt handler through sdi_callback(D3sdi) giving the sb pointer as the argument. This completes interrupt processing for a successfully completed job, and the HBA interrupt routine can send the next job or just return.

If the job did not complete successfully, the HBA interrupt routine must return the appropriate sc_comp_code(D5sdi) error return code in the scb(D4sdi) and sfb(D4sdi) structures. The target driver can then respond to the error by retrying the job or issuing a request sense, as appropriate.

Version applicability

sdi: 1, 2, 3, 4 HBA drivers.

See Also

intr(D2), sc_comp_code(D5sdi), scb(D4sdi), sdi_callback(D3sdi), sfb(D4sdi)
19 June 2005
© 2005 The SCO Group, Inc. All rights reserved.
OpenServer 6 and UnixWare (SVR5) HDK - June 2005