|
ReactOS 0.4.17-dev-1190-g4c812f4
|

Go to the source code of this file.
Classes | |
| struct | _HALP_IOAPIC_UNIT |
Macros | |
| #define | NDEBUG |
| #define | APIC_LAZY_IRQL |
| #define | ApicRaiseIrql ApicSetIrql |
Typedefs | |
| typedef struct _HALP_IOAPIC_UNIT | HALP_IOAPIC_UNIT |
| typedef struct _HALP_IOAPIC_UNIT * | PHALP_IOAPIC_UNIT |
| #define ApicRaiseIrql ApicSetIrql |
| typedef struct _HALP_IOAPIC_UNIT HALP_IOAPIC_UNIT |
| typedef struct _HALP_IOAPIC_UNIT * PHALP_IOAPIC_UNIT |
| FORCEINLINE KIRQL ApicGetCurrentIrql | ( | VOID | ) |
Definition at line 293 of file apic.c.
Referenced by HalBeginSystemInterrupt(), HalpApcInterruptHandler(), HalpDispatchInterruptHandler(), KeGetCurrentIrql(), KfLowerIrql(), and KfRaiseIrql().
| FORCEINLINE KIRQL ApicGetProcessorIrql | ( | VOID | ) |
Definition at line 285 of file apic.c.
Referenced by HalpApcInterruptHandler(), and HalpDispatchInterruptHandler().
Definition at line 632 of file apic.c.
Referenced by HalpInitializePICs().
Definition at line 374 of file apic.c.
| FORCEINLINE VOID ApicLowerIrql | ( | KIRQL | Irql | ) |
Definition at line 324 of file apic.c.
Referenced by HalEndSystemInterrupt(), HalpApcInterruptHandler(), HalpDispatchInterruptHandler(), and KfLowerIrql().
| FORCEINLINE IOAPIC_REDIRECTION_REGISTER ApicReadIORedirectionEntry | ( | _In_ ULONG | Input | ) |
Returns a redirection entry from the shadow table, without accessing the I/O APIC.
Definition at line 216 of file apic.c.
Referenced by HalBeginSystemInterrupt(), HalDisableSystemInterrupt(), and HalEnableSystemInterrupt().
| FORCEINLINE VOID ApicRequestSelfInterrupt | ( | IN UCHAR | Vector, |
| UCHAR | TriggerMode | ||
| ) |
Definition at line 225 of file apic.c.
Referenced by HalBeginSystemInterrupt(), and HalRequestSoftwareInterrupt().
| FORCEINLINE VOID ApicSendEOI | ( | void | ) |
Definition at line 278 of file apic.c.
Referenced by HalBeginSystemInterrupt(), HalEndSystemInterrupt(), HalpApcInterruptHandler(), HalpDispatchInterruptHandler(), and HalpSendEOI().
| FORCEINLINE VOID ApicSetIrql | ( | KIRQL | Irql | ) |
Definition at line 308 of file apic.c.
Referenced by ApicInitializeLocalApic().
| FORCEINLINE VOID ApicWriteIORedirectionEntry | ( | _In_ ULONG | Input, |
| _In_ IOAPIC_REDIRECTION_REGISTER | ReDirReg | ||
| ) |
Programs a redirection entry and records it in the shadow table.
Definition at line 187 of file apic.c.
Referenced by ApicInitializeIOApic(), HalDisableSystemInterrupt(), HalEnableSystemInterrupt(), and HalpAllocateSystemInterrupt().
Definition at line 1057 of file apic.c.
Referenced by HalpApcInterruptHandler(), HalpDispatchInterruptHandler(), and MpsTimerHandler().
Definition at line 1034 of file apic.c.
| BOOLEAN NTAPI HalEnableSystemInterrupt | ( | _In_ ULONG | Vector, |
| _In_ KIRQL | Irql, | ||
| _In_ KINTERRUPT_MODE | InterruptMode | ||
| ) |
Definition at line 953 of file apic.c.
Definition at line 1123 of file apic.c.
Referenced by MpsTimerHandler().
Definition at line 474 of file apic.c.
Referenced by HalEnableSystemInterrupt(), and HalpGetRootInterruptVector().
| VOID DECLSPEC_NORETURN FASTCALL HalpApcInterruptHandler | ( | IN PKTRAP_FRAME | TrapFrame | ) |
Definition at line 753 of file apic.c.
| VOID DECLSPEC_NORETURN FASTCALL HalpDispatchInterruptHandler | ( | IN PKTRAP_FRAME | TrapFrame | ) |
Definition at line 802 of file apic.c.
| FORCEINLINE BOOLEAN HalpFindIoApicInput | ( | _In_ ULONG | Input, |
| _Out_ PHALP_IOAPIC_UNIT * | Unit | ||
| ) |
Finds the I/O APIC that serves an input.
| [in] | Input | The global system interrupt to look up. |
| [out] | Unit | Receives the I/O APIC serving the input. |
Definition at line 158 of file apic.c.
Referenced by ApicWriteIORedirectionEntry(), HalpGetRootInterruptVector(), and HalpQueryVectorInput().
|
static |
Picks the polarity to program for an input.
| [in] | Input | The global system interrupt being enabled. |
| [in] | Mode | The trigger mode of the input. |
| [in] | Reported | The polarity reported by the ACPI driver, or InterruptPolarityUnknown. |
Definition at line 928 of file apic.c.
Referenced by HalEnableSystemInterrupt().
| ULONG NTAPI HalpGetRootInterruptVector | ( | _In_ ULONG | BusInterruptLevel, |
| _In_ ULONG | BusInterruptVector, | ||
| _Out_ PKIRQL | OutIrql, | ||
| _Out_ PKAFFINITY | OutAffinity | ||
| ) |
Definition at line 507 of file apic.c.
Referenced by HalGetInterruptVector(), and HalpGetSystemInterruptVector().
Definition at line 700 of file apic.c.
Referenced by HalInitSystem().
Definition at line 344 of file apic.c.
Referenced by HalpGetRootInterruptVector().
Maps an I/O APIC and adds it to the units in use.
| [in] | PhysicalBase | Physical address of the I/O APIC registers. |
| [in] | InputBase | Global system interrupt of the first redirection entry. |
Definition at line 587 of file apic.c.
Referenced by ApicInitializeIOApic().
|
static |
Asks the ACPI driver for the input of a vector it allocated.
| [in] | Vector | The interrupt vector to look up. |
| [out] | Input | Receives the global system interrupt of the vector. |
| [out] | Polarity | Receives the polarity reported for the input. |
Definition at line 884 of file apic.c.
Referenced by HalEnableSystemInterrupt().
Definition at line 360 of file apic.c.
Referenced by HalpGetRootInterruptVector().
Definition at line 353 of file apic.c.
Referenced by HalpGetRootInterruptVector().
Definition at line 122 of file apic.c.
Referenced by ApicInitializeIOApic(), and HalpMapIoApic().
Definition at line 133 of file apic.c.
Referenced by ApicWriteIORedirectionEntry().
Definition at line 1148 of file apic.c.
Definition at line 1165 of file apic.c.
Referenced by KeRaiseIrqlToDpcLevel(), and KeRaiseIrqlToSynchLevel().
| ULONG ApicVersion |
Definition at line 28 of file apic.c.
Referenced by ApicInitializeLocalApic(), and ApicStartApplicationProcessor().
|
extern |
Definition at line 19 of file misc.c.
Referenced by ApicInitializeIOApic(), and HalpGetInputPolarity().
| UCHAR HalpGsivToVector[256] |
Definition at line 32 of file apic.c.
Referenced by ApicInitializeIOApic(), HalEnableSystemInterrupt(), HalpAllocateSystemInterrupt(), HalpInitializePICs(), and HalpIrqToVector().
| ULONG HalpIoApicCount |
Definition at line 45 of file apic.c.
Referenced by ApicInitializeIOApic(), HalpFindIoApicInput(), and HalpMapIoApic().
| HALP_IOAPIC_UNIT HalpIoApics[HALP_MAX_IOAPICS] |
Definition at line 44 of file apic.c.
Referenced by ApicInitializeIOApic(), HalpFindIoApicInput(), and HalpMapIoApic().
| IOAPIC_REDIRECTION_REGISTER HalpIoApicShadow[HALP_MAX_INPUTS] |
Definition at line 56 of file apic.c.
Referenced by ApicInitializeIOApic(), ApicReadIORedirectionEntry(), and ApicWriteIORedirectionEntry().
| ULONG HalpMaxGsi |
Definition at line 48 of file apic.c.
Referenced by ApicReadIORedirectionEntry(), HalBeginSystemInterrupt(), HalDisableSystemInterrupt(), HalEnableSystemInterrupt(), HalpAllocateSystemInterrupt(), and HalpMapIoApic().
| UCHAR HalpVectorToIndex[256] |
Definition at line 31 of file apic.c.
Referenced by ApicInitializeIOApic(), HalBeginSystemInterrupt(), HalDisableSystemInterrupt(), HalEnableSystemInterrupt(), HalpAllocateSystemInterrupt(), HalpGetRootInterruptVector(), HalpInitializePICs(), and HalpVectorToIrq().