Commit 6bf5b4e8a85a46b5f41eeea0910327608924b382

Authored by ths
1 parent 94ced075

MIPSsim pseudo machine emulation.


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3400 c046a42c-6fe2-441c-8c8c-71466251a162
Makefile.target
@@ -478,11 +478,12 @@ VL_OBJS+= ppc4xx_devs.o ppc405_uc.o ppc405_boards.o @@ -478,11 +478,12 @@ VL_OBJS+= ppc4xx_devs.o ppc405_uc.o ppc405_boards.o
478 CPPFLAGS += -DHAS_AUDIO -DHAS_AUDIO_CHOICE 478 CPPFLAGS += -DHAS_AUDIO -DHAS_AUDIO_CHOICE
479 endif 479 endif
480 ifeq ($(TARGET_BASE_ARCH), mips) 480 ifeq ($(TARGET_BASE_ARCH), mips)
481 -VL_OBJS+= mips_r4k.o mips_malta.o mips_pica61.o 481 +VL_OBJS+= mips_r4k.o mips_malta.o mips_pica61.o mips_mipssim.o
482 VL_OBJS+= mips_timer.o mips_int.o dma.o vga.o serial.o i8254.o i8259.o 482 VL_OBJS+= mips_timer.o mips_int.o dma.o vga.o serial.o i8254.o i8259.o
483 VL_OBJS+= jazz_led.o 483 VL_OBJS+= jazz_led.o
484 VL_OBJS+= ide.o gt64xxx.o pckbd.o ps2.o fdc.o mc146818rtc.o usb-uhci.o acpi.o ds1225y.o 484 VL_OBJS+= ide.o gt64xxx.o pckbd.o ps2.o fdc.o mc146818rtc.o usb-uhci.o acpi.o ds1225y.o
485 VL_OBJS+= piix_pci.o smbus_eeprom.o parallel.o mixeng.o cirrus_vga.o $(SOUND_HW) $(AUDIODRV) 485 VL_OBJS+= piix_pci.o smbus_eeprom.o parallel.o mixeng.o cirrus_vga.o $(SOUND_HW) $(AUDIODRV)
  486 +VL_OBJS+= mipsnet.o
486 CPPFLAGS += -DHAS_AUDIO 487 CPPFLAGS += -DHAS_AUDIO
487 endif 488 endif
488 ifeq ($(TARGET_BASE_ARCH), cris) 489 ifeq ($(TARGET_BASE_ARCH), cris)
qemu-doc.texi
@@ -2036,6 +2036,8 @@ A generic ISA PC-like machine "mips" @@ -2036,6 +2036,8 @@ A generic ISA PC-like machine "mips"
2036 The MIPS Malta prototype board "malta" 2036 The MIPS Malta prototype board "malta"
2037 @item 2037 @item
2038 An ACER Pica "pica61" 2038 An ACER Pica "pica61"
  2039 +@item
  2040 +MIPS MIPSsim emulator pseudo board "mipssim"
2039 @end itemize 2041 @end itemize
2040 2042
2041 The generic emulation is supported by Debian 'Etch' and is able to 2043 The generic emulation is supported by Debian 'Etch' and is able to
@@ -2044,7 +2046,7 @@ emulated: @@ -2044,7 +2046,7 @@ emulated:
2044 2046
2045 @itemize @minus 2047 @itemize @minus
2046 @item 2048 @item
2047 -MIPS 24Kf CPU 2049 +A range of MIPS CPUs, default is the 24Kf
2048 @item 2050 @item
2049 PC style serial port 2051 PC style serial port
2050 @item 2052 @item
@@ -2083,6 +2085,17 @@ PC Keyboard @@ -2083,6 +2085,17 @@ PC Keyboard
2083 IDE controller 2085 IDE controller
2084 @end itemize 2086 @end itemize
2085 2087
  2088 +The MIPSsim emulation supports:
  2089 +
  2090 +@itemize @minus
  2091 +@item
  2092 +A range of MIPS CPUs, default is the 24Kf
  2093 +@item
  2094 +PC style serial port
  2095 +@item
  2096 +MIPSnet network emulation
  2097 +@end itemize
  2098 +
2086 @node ARM System emulator 2099 @node ARM System emulator
2087 @section ARM System emulator 2100 @section ARM System emulator
2088 2101
@@ -7365,6 +7365,7 @@ void register_machines(void) @@ -7365,6 +7365,7 @@ void register_machines(void)
7365 qemu_register_machine(&mips_machine); 7365 qemu_register_machine(&mips_machine);
7366 qemu_register_machine(&mips_malta_machine); 7366 qemu_register_machine(&mips_malta_machine);
7367 qemu_register_machine(&mips_pica61_machine); 7367 qemu_register_machine(&mips_pica61_machine);
  7368 + qemu_register_machine(&mips_mipssim_machine);
7368 #elif defined(TARGET_SPARC) 7369 #elif defined(TARGET_SPARC)
7369 #ifdef TARGET_SPARC64 7370 #ifdef TARGET_SPARC64
7370 qemu_register_machine(&sun4u_machine); 7371 qemu_register_machine(&sun4u_machine);
@@ -1068,6 +1068,9 @@ void pci_pcnet_init(PCIBus *bus, NICInfo *nd, int devfn); @@ -1068,6 +1068,9 @@ void pci_pcnet_init(PCIBus *bus, NICInfo *nd, int devfn);
1068 void lance_init(NICInfo *nd, target_phys_addr_t leaddr, void *dma_opaque, 1068 void lance_init(NICInfo *nd, target_phys_addr_t leaddr, void *dma_opaque,
1069 qemu_irq irq, qemu_irq *reset); 1069 qemu_irq irq, qemu_irq *reset);
1070 1070
  1071 +/* mipsnet.c */
  1072 +void mipsnet_init(int base, qemu_irq irq, NICInfo *nd);
  1073 +
1071 /* vmmouse.c */ 1074 /* vmmouse.c */
1072 void *vmmouse_init(void *m); 1075 void *vmmouse_init(void *m);
1073 1076
@@ -1190,12 +1193,15 @@ extern QEMUMachine mips_machine; @@ -1190,12 +1193,15 @@ extern QEMUMachine mips_machine;
1190 /* mips_malta.c */ 1193 /* mips_malta.c */
1191 extern QEMUMachine mips_malta_machine; 1194 extern QEMUMachine mips_malta_machine;
1192 1195
1193 -/* mips_int.c */  
1194 -extern void cpu_mips_irq_init_cpu(CPUState *env);  
1195 -  
1196 /* mips_pica61.c */ 1196 /* mips_pica61.c */
1197 extern QEMUMachine mips_pica61_machine; 1197 extern QEMUMachine mips_pica61_machine;
1198 1198
  1199 +/* mips_mipssim.c */
  1200 +extern QEMUMachine mips_mipssim_machine;
  1201 +
  1202 +/* mips_int.c */
  1203 +extern void cpu_mips_irq_init_cpu(CPUState *env);
  1204 +
1199 /* mips_timer.c */ 1205 /* mips_timer.c */
1200 extern void cpu_mips_clock_init(CPUState *); 1206 extern void cpu_mips_clock_init(CPUState *);
1201 extern void cpu_mips_irqctrl_init (void); 1207 extern void cpu_mips_irqctrl_init (void);