26 lines
467 B
C++
26 lines
467 B
C++
#ifndef _OMAP35X_INTC_HH_
|
|
#define _OMAP35X_INTC_HH_
|
|
|
|
#include <functional>
|
|
#include <memory>
|
|
#include <cstdint>
|
|
|
|
using int_handler_t = std::function<void (void)>;
|
|
|
|
class OMAP35x_intc_impl;
|
|
|
|
class OMAP35x_intc {
|
|
public:
|
|
OMAP35x_intc(uintptr_t base);
|
|
~OMAP35x_intc();
|
|
|
|
void register_handler(int irq, int_handler_t const& handler, int prio);
|
|
void enable_int(int irq);
|
|
void disable_int(int irq);
|
|
|
|
private:
|
|
std::unique_ptr<OMAP35x_intc_impl> impl_;
|
|
};
|
|
|
|
#endif
|