ddi_intr_hilevel man page on OpenIndiana

Man page or keyword search:  
man Server   20441 pages
apropos Keyword Search (all sections)
Output format
OpenIndiana logo
[printable version]

ddi_intr_hilevel(9F)	 Kernel Functions for Drivers	  ddi_intr_hilevel(9F)

NAME
       ddi_intr_hilevel - indicate interrupt handler type

SYNOPSIS
       #include <sys/ddi.h>
       #include <sys/sunddi.h>

       int ddi_intr_hilevel(dev_info_t *dip, uint_t inumber);

INTERFACE LEVEL
       Solaris DDI specific (Solaris DDI). This interface is obsolete. Use the
       new interrupt interfaces referenced  in	Intro(9F).  Refer  to  Writing
       Device Drivers for more information.

PARAMETERS
       dip	  Pointer to dev_info structure.

       inumber	  Interrupt number.

DESCRIPTION
       The  ddi_intr_hilevel()	function  returns  non-zero  if	 the specified
       interrupt is a "high level" interrupt.

       High level interrupts must be handled  without  using  system  services
       that  manipulate thread or process states, because these interrupts are
       not blocked by the scheduler.

       In addition, high level interrupt handlers must take care to do a mini‐
       mum of work because they are not preemptable.

       A  typical  high level interrupt handler would put data into a circular
       buffer and schedule a soft interrupt by calling ddi_trigger_softintr().
       The  circular buffer could be protected by using a mutex that was prop‐
       erly initialized for the interrupt handler.

       The  ddi_intr_hilevel()	 function   can	  be   used   before   calling
       ddi_add_intr()  to  decide  which  type	of interrupt handler should be
       used. Most device drivers are designed  with  the  knowledge  that  the
       devices they support will always generate low level interrupts, however
       some devices, for example those using SBus or VME  bus  level  6	 or  7
       interrupts must use this test because on some machines those interrupts
       are high level (above the scheduler level) and on other	machines  they
       are not.

RETURN VALUES
       non-zero	   indicates a high-level interrupt.

CONTEXT
       These  functions can be called from useruser, interrupt, or kernel con‐
       text.

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

       ┌─────────────────────────────┬─────────────────────────────┐
       │      ATTRIBUTE TYPE	     │	    ATTRIBUTE VALUE	   │
       ├─────────────────────────────┼─────────────────────────────┤
       │Interface Stability	     │Obsolete			   │
       └─────────────────────────────┴─────────────────────────────┘

SEE ALSO
       ddi_add_intr(9F), Intro(9F), mutex(9F)

       Writing Device Drivers

SunOS 5.11			  16 Jan 2006		  ddi_intr_hilevel(9F)
[top]

List of man pages available for OpenIndiana

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net