ddi_intr_hilevel(9f) 맨 페이지 - 윈디하나의 솔라나라

개요

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

ddi_intr_hilevel(9f)

ddi_intr_hilevel(9F)           Kernel Functions           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 De‐
       vice Drivers in Oracle Solaris 11.4 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  in‐
       terrupt 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 de‐
       vices they support will always generate low level  interrupts,  however
       some  devices, for example those using SBus or VME bus level 6 or 7 in‐
       terrupts 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(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 _ Interface StabilityObsolete


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


       Writing Device Drivers in Oracle Solaris 11.4

Oracle Solaris 11.4               16 Jan 2006             ddi_intr_hilevel(9F)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3