summaryrefslogtreecommitdiffstats
path: root/src/include/hw/mips
diff options
context:
space:
mode:
Diffstat (limited to 'src/include/hw/mips')
-rw-r--r--src/include/hw/mips/bios.h8
-rw-r--r--src/include/hw/mips/cpudevs.h17
-rw-r--r--src/include/hw/mips/mips.h23
3 files changed, 48 insertions, 0 deletions
diff --git a/src/include/hw/mips/bios.h b/src/include/hw/mips/bios.h
new file mode 100644
index 0000000..b4b88ac
--- /dev/null
+++ b/src/include/hw/mips/bios.h
@@ -0,0 +1,8 @@
+#include "cpu.h"
+
+#define BIOS_SIZE (4 * 1024 * 1024)
+#ifdef TARGET_WORDS_BIGENDIAN
+#define BIOS_FILENAME "mips_bios.bin"
+#else
+#define BIOS_FILENAME "mipsel_bios.bin"
+#endif
diff --git a/src/include/hw/mips/cpudevs.h b/src/include/hw/mips/cpudevs.h
new file mode 100644
index 0000000..b2626f2
--- /dev/null
+++ b/src/include/hw/mips/cpudevs.h
@@ -0,0 +1,17 @@
+#ifndef HW_MIPS_CPUDEVS_H
+#define HW_MIPS_CPUDEVS_H
+/* Definitions for MIPS CPU internal devices. */
+
+/* mips_addr.c */
+uint64_t cpu_mips_kseg0_to_phys(void *opaque, uint64_t addr);
+uint64_t cpu_mips_phys_to_kseg0(void *opaque, uint64_t addr);
+uint64_t cpu_mips_kvm_um_phys_to_kseg0(void *opaque, uint64_t addr);
+
+
+/* mips_int.c */
+void cpu_mips_irq_init_cpu(CPUMIPSState *env);
+
+/* mips_timer.c */
+void cpu_mips_clock_init(CPUMIPSState *);
+
+#endif
diff --git a/src/include/hw/mips/mips.h b/src/include/hw/mips/mips.h
new file mode 100644
index 0000000..e0065ce
--- /dev/null
+++ b/src/include/hw/mips/mips.h
@@ -0,0 +1,23 @@
+#ifndef HW_MIPS_H
+#define HW_MIPS_H
+/* Definitions for mips board emulation. */
+
+/* Kernels can be configured with 64KB pages */
+#define INITRD_PAGE_MASK (~((1 << 16) - 1))
+
+#include "exec/memory.h"
+
+/* gt64xxx.c */
+PCIBus *gt64120_register(qemu_irq *pic);
+
+/* bonito.c */
+PCIBus *bonito_init(qemu_irq *pic);
+
+/* rc4030.c */
+typedef struct rc4030DMAState *rc4030_dma;
+void rc4030_dma_read(void *dma, uint8_t *buf, int len);
+void rc4030_dma_write(void *dma, uint8_t *buf, int len);
+
+DeviceState *rc4030_init(rc4030_dma **dmas, MemoryRegion **dma_mr);
+
+#endif
OpenPOWER on IntegriCloud