#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "cpu.h"
#include "device.h"
#include "interrupt.h"
#include "machine.h"
#include "memory.h"
#include "misc.h"
#include "testmachine/dev_irqc.h"
Go to the source code of this file.
Classes | |
struct | irqc_data |
Macros | |
#define | N_IRQC_INTERRUPTS 32 |
Functions | |
void | irqc_interrupt_assert (struct interrupt *interrupt) |
void | irqc_interrupt_deassert (struct interrupt *interrupt) |
DEVICE_ACCESS (irqc) | |
DEVINIT (irqc) | |
#define N_IRQC_INTERRUPTS 32 |
Definition at line 46 of file dev_irqc.cc.
DEVICE_ACCESS | ( | irqc | ) |
Definition at line 81 of file dev_irqc.cc.
References data, DEV_IRQC_IRQ, DEV_IRQC_MASK, DEV_IRQC_UNMASK, irqc_data::enabled, fatal(), INTERRUPT_ASSERT, INTERRUPT_DEASSERT, irqc_data::irq, MEM_READ, MEM_WRITE, memory_readmax64(), memory_writemax64(), and irqc_data::status.
DEVINIT | ( | irqc | ) |
Definition at line 155 of file dev_irqc.cc.
References devinit::addr, CHECK_ALLOCATION, DEV_IRQC_LENGTH, DM_DEFAULT, irqc_data::enabled, interrupt::extra, interrupt::interrupt_assert, INTERRUPT_CONNECT, interrupt::interrupt_deassert, interrupt_handler_register(), devinit::interrupt_path, irqc_data::irq, irqc_interrupt_assert(), irqc_interrupt_deassert(), interrupt::line, devinit::machine, machine::memory, memory_device_register(), N_IRQC_INTERRUPTS, devinit::name, and interrupt::name.
void irqc_interrupt_assert | ( | struct interrupt * | interrupt | ) |
Definition at line 57 of file dev_irqc.cc.
References irqc_data::asserted, irqc_data::enabled, interrupt::extra, if(), INTERRUPT_ASSERT, irqc_data::irq, interrupt::line, and irqc_data::status.
Referenced by DEVINIT().
void irqc_interrupt_deassert | ( | struct interrupt * | interrupt | ) |
Definition at line 69 of file dev_irqc.cc.
References irqc_data::asserted, irqc_data::enabled, interrupt::extra, if(), INTERRUPT_DEASSERT, irqc_data::irq, interrupt::line, and irqc_data::status.
Referenced by DEVINIT().