|
The Pedigree Project 0.1
|
#include <IrqManager.h>
Collaboration diagram for IrqPolicy:Public Member Functions | |
| constexpr | IrqPolicy (IrqTrigger trigger, IrqControllerAck controllerAck, IrqLineRelease lineRelease) |
| constexpr IrqTrigger | trigger () const |
| constexpr IrqControllerAck | controllerAck () const |
| constexpr IrqLineRelease | lineRelease () const |
| constexpr bool | validForHard () const |
| constexpr bool | validForThreaded () const |
| constexpr bool | operator== (const IrqPolicy &other) const |
| constexpr bool | operator!= (const IrqPolicy &other) const |
Static Public Member Functions | |
| static constexpr IrqPolicy | edgeHard () |
| static constexpr IrqPolicy | edgeThreaded () |
| static constexpr IrqPolicy | levelHard () |
| static constexpr IrqPolicy | levelThreaded () |
| static constexpr IrqPolicy | pciIntxHard () |
| static constexpr IrqPolicy | pciIntxThreaded () |
| static constexpr IrqPolicy | syntheticHard () |
| static constexpr IrqPolicy | syntheticThreaded () |
Private Member Functions | |
| constexpr bool | valid () const |
Private Attributes | |
| IrqTrigger | m_Trigger |
| IrqControllerAck | m_ControllerAck |
| IrqLineRelease | m_LineRelease |
Orthogonal interrupt-line delivery policy.
The hard stage is either a HardIrqHandler callback or publication to an IrqHandler worker. Device acknowledgement remains the handler's responsibility: a split hard callback must quiesce its source before it defers, while a normal level-triggered worker runs with the controller line masked until it reports completion.
Definition at line 68 of file include/pedigree/kernel/machine/IrqManager.h.
|
inlineconstexpr |
Definition at line 70 of file include/pedigree/kernel/machine/IrqManager.h.
|
inlineconstexpr |
Definition at line 114 of file include/pedigree/kernel/machine/IrqManager.h.
|
inlinestaticconstexpr |
Definition at line 74 of file include/pedigree/kernel/machine/IrqManager.h.
|
inlinestaticconstexpr |
Definition at line 79 of file include/pedigree/kernel/machine/IrqManager.h.
|
inlinestaticconstexpr |
Definition at line 84 of file include/pedigree/kernel/machine/IrqManager.h.
|
inlinestaticconstexpr |
Definition at line 89 of file include/pedigree/kernel/machine/IrqManager.h.
|
inlineconstexpr |
Definition at line 118 of file include/pedigree/kernel/machine/IrqManager.h.
|
inlineconstexpr |
Definition at line 140 of file include/pedigree/kernel/machine/IrqManager.h.
|
inlineconstexpr |
Definition at line 135 of file include/pedigree/kernel/machine/IrqManager.h.
|
inlinestaticconstexpr |
Definition at line 94 of file include/pedigree/kernel/machine/IrqManager.h.
|
inlinestaticconstexpr |
Definition at line 98 of file include/pedigree/kernel/machine/IrqManager.h.
|
inlinestaticconstexpr |
Definition at line 102 of file include/pedigree/kernel/machine/IrqManager.h.
|
inlinestaticconstexpr |
Definition at line 106 of file include/pedigree/kernel/machine/IrqManager.h.
|
inlineconstexpr |
Definition at line 110 of file include/pedigree/kernel/machine/IrqManager.h.
|
inlineconstexprprivate |
Definition at line 145 of file include/pedigree/kernel/machine/IrqManager.h.
|
inlineconstexpr |
Definition at line 122 of file include/pedigree/kernel/machine/IrqManager.h.
|
inlineconstexpr |
Definition at line 128 of file include/pedigree/kernel/machine/IrqManager.h.
|
private |
Definition at line 156 of file include/pedigree/kernel/machine/IrqManager.h.
|
private |
Definition at line 157 of file include/pedigree/kernel/machine/IrqManager.h.
|
private |
Definition at line 155 of file include/pedigree/kernel/machine/IrqManager.h.