#include <stdio.h>#include <stdlib.h>#include <string.h>#include "console.h"#include "cpu.h"#include "device.h"#include "devices.h"#include "interrupt.h"#include "machine.h"#include "memory.h"#include "misc.h"#include "timer.h"#include "thirdparty/bcureg.h"#include "thirdparty/vripreg.h"#include "thirdparty/vrkiureg.h"#include "thirdparty/vr_rtcreg.h"Go to the source code of this file.
Classes | |
| struct | vr41xx_data |
Macros | |
| #define | DEV_VR41XX_TICKSHIFT 14 |
| #define | DEV_VR41XX_LENGTH 0x800 /* TODO? */ |
Functions | |
| void | vr41xx_vrip_interrupt_assert (struct interrupt *interrupt) |
| void | vr41xx_vrip_interrupt_deassert (struct interrupt *interrupt) |
| void | vr41xx_giu_interrupt_assert (struct interrupt *interrupt) |
| void | vr41xx_giu_interrupt_deassert (struct interrupt *interrupt) |
| DEVICE_TICK (vr41xx) | |
| DEVICE_ACCESS (vr41xx) | |
| struct vr41xx_data * | dev_vr41xx_init (struct machine *machine, struct memory *mem, int cpumodel) |
| #define DEV_VR41XX_LENGTH 0x800 /* TODO? */ |
Definition at line 59 of file dev_vr41xx.cc.
| #define DEV_VR41XX_TICKSHIFT 14 |
Definition at line 57 of file dev_vr41xx.cc.
| struct vr41xx_data* dev_vr41xx_init | ( | struct machine * | machine, |
| struct memory * | mem, | ||
| int | cpumodel | ||
| ) |
Definition at line 673 of file dev_vr41xx.cc.
References machine::bootstrap_cpu, CHECK_ALLOCATION, console_start_slave_inputonly(), vr41xx_data::cpu_irq, vr41xx_data::cpumodel, dev_ram_init(), DEV_RAM_MIRROR, DEV_VR41XX_LENGTH, DEV_VR41XX_TICKSHIFT, device_add(), DM_DEFAULT, interrupt::extra, vr41xx_data::giu_irq, x11_md::in_use, interrupt::interrupt_assert, INTERRUPT_CONNECT, interrupt::interrupt_deassert, interrupt_handler_register(), vr41xx_data::kiu_console_handle, vr41xx_data::kiu_irq, vr41xx_data::kiu_offset, interrupt::line, machine_add_tickfunction(), machine::main_console_handle, memory_device_register(), interrupt::name, machine::path, vr41xx_data::timer_irq, vr41xx_giu_interrupt_assert(), vr41xx_giu_interrupt_deassert(), vr41xx_vrip_interrupt_assert(), vr41xx_vrip_interrupt_deassert(), VRIP_INTR_ETIMER, VRIP_INTR_GIU, VRIP_INTR_KIU, VRIP_INTR_SIU, and machine::x11_md.
Referenced by MACHINE_SETUP().
| DEVICE_ACCESS | ( | vr41xx | ) |
Definition at line 480 of file dev_vr41xx.cc.
References data, vr41xx_data::kiu_offset, MEM_WRITE, and memory_readmax64().
| DEVICE_TICK | ( | vr41xx | ) |
Definition at line 400 of file dev_vr41xx.cc.
References x11_md::in_use, INTERRUPT_ASSERT, cpu::machine, vr41xx_data::pending_timer_interrupts, vr41xx_data::timer_irq, and machine::x11_md.
| void vr41xx_giu_interrupt_assert | ( | struct interrupt * | interrupt | ) |
Definition at line 123 of file dev_vr41xx.cc.
References interrupt::extra, vr41xx_data::giu_irq, vr41xx_data::giuint, vr41xx_data::giumask, INTERRUPT_ASSERT, and interrupt::line.
Referenced by dev_vr41xx_init().
| void vr41xx_giu_interrupt_deassert | ( | struct interrupt * | interrupt | ) |
Definition at line 131 of file dev_vr41xx.cc.
References interrupt::extra, vr41xx_data::giu_irq, vr41xx_data::giuint, vr41xx_data::giumask, INTERRUPT_DEASSERT, and interrupt::line.
Referenced by dev_vr41xx_init().
| void vr41xx_vrip_interrupt_assert | ( | struct interrupt * | interrupt | ) |
Definition at line 95 of file dev_vr41xx.cc.
References vr41xx_data::cpu_irq, interrupt::extra, if(), INTERRUPT_ASSERT, interrupt::line, vr41xx_data::msysint1, vr41xx_data::msysint2, vr41xx_data::sysint1, and vr41xx_data::sysint2.
Referenced by dev_vr41xx_init().
| void vr41xx_vrip_interrupt_deassert | ( | struct interrupt * | interrupt | ) |
Definition at line 106 of file dev_vr41xx.cc.
References vr41xx_data::cpu_irq, interrupt::extra, if(), INTERRUPT_DEASSERT, interrupt::line, vr41xx_data::msysint1, vr41xx_data::msysint2, vr41xx_data::sysint1, and vr41xx_data::sysint2.
Referenced by dev_vr41xx_init().
1.8.17