|
ReactOS 0.4.17-dev-684-ga6524ef
|
#include <ntoskrnl.h>#include <debug.h>
Go to the source code of this file.
Macros | |
| #define | NDEBUG |
Functions | |
| NTSTATUS NTAPI | IopArbIrqUnpackRequirements (_In_ PIO_RESOURCE_DESCRIPTOR IoDescriptor, _Out_ PUINT64 OutMinimumAddress, _Out_ PUINT64 OutMaximumAddress, _Out_ PUINT64 OutLength, _Out_ PUINT64 OutAlignment) |
| NTSTATUS NTAPI | IopArbIrqPackResource (_In_ PIO_RESOURCE_DESCRIPTOR IoDescriptor, _In_ UINT64 Start, _Out_ PCM_PARTIAL_RESOURCE_DESCRIPTOR CmDescriptor) |
| NTSTATUS NTAPI | IopArbIrqUnpackResource (_In_ PCM_PARTIAL_RESOURCE_DESCRIPTOR CmDescriptor, _Out_ PUINT64 Start, _Out_ PUINT64 OutLength) |
| INT32 NTAPI | IopArbIrqScoreRequirement (_In_ PIO_RESOURCE_DESCRIPTOR IoDescriptor) |
| NTSTATUS NTAPI | IopArbIrqTranslateOrdering (_Out_ PIO_RESOURCE_DESCRIPTOR OutIoDescriptor, _In_ PIO_RESOURCE_DESCRIPTOR IoDescriptor) |
| NTSTATUS NTAPI | IopArbIrqInitialize (VOID) |
| Initialize the root IRQ arbiter. | |
Variables | |
| ARBITER_INSTANCE | IopRootIrqArbiter |
Initialize the root IRQ arbiter.
This is the fallback that sits at the top of the tree and takes over when no closer arbiter claims the request, e.g root-enumerated / HAL legacy devices (ISA-style, directly under the root), and platforms or boot paths where no bus driver above the device provides an interrupt arbiter (e.g. no ACPI _PRT routing in effect).
In those cases the arbitrated "vectors" are the legacy ISA IRQ lines, which is why IopArbIrqTranslateOrdering maps the ordering table through HalGetInterruptVector for the ISA bus. Otherwise, such devices would have nowhere to arbitrate their interrupts. (So this is purely for legacy PIC + No ACPI)
| STATUS_SUCCESS | |
| STATUS_UNSUCCESSFUL | |
| STATUS_INSUFFICIENT_RESOURCES |
Definition at line 149 of file arbirq.c.
Referenced by IopInitializeArbiters().
| NTSTATUS NTAPI IopArbIrqPackResource | ( | _In_ PIO_RESOURCE_DESCRIPTOR | IoDescriptor, |
| _In_ UINT64 | Start, | ||
| _Out_ PCM_PARTIAL_RESOURCE_DESCRIPTOR | CmDescriptor | ||
| ) |
Definition at line 41 of file arbirq.c.
Referenced by IopArbIrqInitialize().
| INT32 NTAPI IopArbIrqScoreRequirement | ( | _In_ PIO_RESOURCE_DESCRIPTOR | IoDescriptor | ) |
Definition at line 76 of file arbirq.c.
Referenced by IopArbIrqInitialize().
| NTSTATUS NTAPI IopArbIrqTranslateOrdering | ( | _Out_ PIO_RESOURCE_DESCRIPTOR | OutIoDescriptor, |
| _In_ PIO_RESOURCE_DESCRIPTOR | IoDescriptor | ||
| ) |
Definition at line 87 of file arbirq.c.
Referenced by IopArbIrqInitialize().
| NTSTATUS NTAPI IopArbIrqUnpackRequirements | ( | _In_ PIO_RESOURCE_DESCRIPTOR | IoDescriptor, |
| _Out_ PUINT64 | OutMinimumAddress, | ||
| _Out_ PUINT64 | OutMaximumAddress, | ||
| _Out_ PUINT64 | OutLength, | ||
| _Out_ PUINT64 | OutAlignment | ||
| ) |
Definition at line 22 of file arbirq.c.
Referenced by IopArbIrqInitialize().
| NTSTATUS NTAPI IopArbIrqUnpackResource | ( | _In_ PCM_PARTIAL_RESOURCE_DESCRIPTOR | CmDescriptor, |
| _Out_ PUINT64 | Start, | ||
| _Out_ PUINT64 | OutLength | ||
| ) |
Definition at line 61 of file arbirq.c.
Referenced by IopArbIrqInitialize().
|
extern |
Definition at line 24 of file pnpinit.c.
Referenced by IopArbIrqInitialize().