Iros
 
Loading...
Searching...
No Matches
irq_controller.h File Reference
#include "di/any/prelude.h"
#include "di/sync/prelude.h"
#include "di/util/prelude.h"

Go to the source code of this file.

Classes

struct  iris::GlobalIrqNumberTag
 
struct  iris::IrqLineTag
 
struct  iris::IrqLineRange
 
struct  iris::detail::SendEoiFunction
 
struct  iris::detail::EnableIrqLine
 
struct  iris::detail::DisableIrqLine
 
struct  iris::detail::ResponsibleIrqLineRange
 

Namespaces

namespace  iris
 
namespace  iris::detail
 

Typedefs

using iris::GlobalIrqNumber = di::StrongInt<GlobalIrqNumberTag>
 
using iris::IrqLine = di::StrongInt<IrqLineTag>
 
using iris::IrqControllerInterface
 
using iris::IrqController = di::AnyInline<IrqControllerInterface>
 

Functions

auto iris::irq_controller_for_interrupt_number (GlobalIrqNumber irq_number) -> Expected< di::Synchronized< IrqController > & >
 

Variables

constexpr auto iris::send_eoi = detail::SendEoiFunction {}
 
constexpr auto iris::enable_irq_line = detail::EnableIrqLine {}
 
constexpr auto iris::disable_irq_line = detail::DisableIrqLine {}
 
constexpr auto iris::responsible_irq_line_range = detail::ResponsibleIrqLineRange {}