ReactOS  0.4.15-dev-5488-ge316d61
halirq.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define VECTOR2IRQ(vector)   HalpVectorToIrq(vector)
 
#define VECTOR2IRQL(vector)   HalpVectorToIrql(vector)
 
#define IRQ2VECTOR(irq)   HalpIrqToVector(irq)
 

Functions

UCHAR FASTCALL HalpIrqToVector (UCHAR Irq)
 
KIRQL FASTCALL HalpVectorToIrql (UCHAR Vector)
 
UCHAR FASTCALL HalpVectorToIrq (UCHAR Vector)
 

Macro Definition Documentation

◆ IRQ2VECTOR

#define IRQ2VECTOR (   irq)    HalpIrqToVector(irq)

Definition at line 27 of file halirq.h.

◆ VECTOR2IRQ

#define VECTOR2IRQ (   vector)    HalpVectorToIrq(vector)

Definition at line 25 of file halirq.h.

◆ VECTOR2IRQL

#define VECTOR2IRQL (   vector)    HalpVectorToIrql(vector)

Definition at line 26 of file halirq.h.

Function Documentation

◆ HalpIrqToVector()

UCHAR FASTCALL HalpIrqToVector ( UCHAR  Irq)

Definition at line 257 of file apic.c.

258 {
260 
261  /* Read low dword of the redirection entry */
262  ReDirReg.Long0 = IOApicRead(IOAPIC_REDTBL + 2 * Irq);
263 
264  /* Return the vector */
265  return (UCHAR)ReDirReg.Vector;
266 }
#define IOAPIC_REDTBL
Definition: apicp.h:287
unsigned char UCHAR
Definition: xmlstorage.h:181
FORCEINLINE ULONG IOApicRead(UCHAR Register)
Definition: apic.c:94

Referenced by HalpGetRootInterruptVector().

◆ HalpVectorToIrq()

UCHAR FASTCALL HalpVectorToIrq ( UCHAR  Vector)

Definition at line 277 of file apic.c.

278 {
279  return HalpVectorToIndex[Vector];
280 }
UCHAR HalpVectorToIndex[256]
Definition: apic.c:28
_In_ PKSERVICE_ROUTINE _In_opt_ PVOID _In_opt_ PKSPIN_LOCK _In_ ULONG Vector
Definition: iofuncs.h:800

Referenced by HalpGetRootInterruptVector().

◆ HalpVectorToIrql()

KIRQL FASTCALL HalpVectorToIrql ( UCHAR  Vector)

Definition at line 270 of file apic.c.

271 {
272  return TprToIrql(Vector);
273 }
#define TprToIrql(Tpr)
Definition: apicp.h:55

Referenced by HalpGetRootInterruptVector().