1324b2298SPaolo Bonzini.. _MIPS-System-emulator: 2324b2298SPaolo Bonzini 3324b2298SPaolo BonziniMIPS System emulator 4324b2298SPaolo Bonzini-------------------- 5324b2298SPaolo Bonzini 6324b2298SPaolo BonziniFour executables cover simulation of 32 and 64-bit MIPS systems in both 7324b2298SPaolo Bonziniendian options, ``qemu-system-mips``, ``qemu-system-mipsel`` 8324b2298SPaolo Bonzini``qemu-system-mips64`` and ``qemu-system-mips64el``. Five different 9324b2298SPaolo Bonzinimachine types are emulated: 10324b2298SPaolo Bonzini 11324b2298SPaolo Bonzini- The MIPS Malta prototype board \"malta\" 12324b2298SPaolo Bonzini 13324b2298SPaolo Bonzini- An ACER Pica \"pica61\". This machine needs the 64-bit emulator. 14324b2298SPaolo Bonzini 15324b2298SPaolo Bonzini- MIPS emulator pseudo board \"mipssim\" 16324b2298SPaolo Bonzini 17324b2298SPaolo Bonzini- A MIPS Magnum R4000 machine \"magnum\". This machine needs the 18324b2298SPaolo Bonzini 64-bit emulator. 19324b2298SPaolo Bonzini 20324b2298SPaolo BonziniThe Malta emulation supports the following devices: 21324b2298SPaolo Bonzini 22324b2298SPaolo Bonzini- Core board with MIPS 24Kf CPU and Galileo system controller 23324b2298SPaolo Bonzini 24324b2298SPaolo Bonzini- PIIX4 PCI/USB/SMbus controller 25324b2298SPaolo Bonzini 26324b2298SPaolo Bonzini- The Multi-I/O chip's serial device 27324b2298SPaolo Bonzini 28324b2298SPaolo Bonzini- PCI network cards (PCnet32 and others) 29324b2298SPaolo Bonzini 30324b2298SPaolo Bonzini- Malta FPGA serial device 31324b2298SPaolo Bonzini 32324b2298SPaolo Bonzini- Cirrus (default) or any other PCI VGA graphics card 33324b2298SPaolo Bonzini 34324b2298SPaolo BonziniThe Boston board emulation supports the following devices: 35324b2298SPaolo Bonzini 36324b2298SPaolo Bonzini- Xilinx FPGA, which includes a PCIe root port and an UART 37324b2298SPaolo Bonzini 38324b2298SPaolo Bonzini- Intel EG20T PCH connects the I/O peripherals, but only the SATA bus 39324b2298SPaolo Bonzini is emulated 40324b2298SPaolo Bonzini 41324b2298SPaolo BonziniThe ACER Pica emulation supports: 42324b2298SPaolo Bonzini 43324b2298SPaolo Bonzini- MIPS R4000 CPU 44324b2298SPaolo Bonzini 45324b2298SPaolo Bonzini- PC-style IRQ and DMA controllers 46324b2298SPaolo Bonzini 47324b2298SPaolo Bonzini- PC Keyboard 48324b2298SPaolo Bonzini 49324b2298SPaolo Bonzini- IDE controller 50324b2298SPaolo Bonzini 51324b2298SPaolo BonziniThe MIPS Magnum R4000 emulation supports: 52324b2298SPaolo Bonzini 53324b2298SPaolo Bonzini- MIPS R4000 CPU 54324b2298SPaolo Bonzini 55324b2298SPaolo Bonzini- PC-style IRQ controller 56324b2298SPaolo Bonzini 57324b2298SPaolo Bonzini- PC Keyboard 58324b2298SPaolo Bonzini 59324b2298SPaolo Bonzini- SCSI controller 60324b2298SPaolo Bonzini 61324b2298SPaolo Bonzini- G364 framebuffer 62324b2298SPaolo Bonzini 63c3a09ff6SPhilippe Mathieu-DaudéThe Fuloong 2E emulation supports: 64324b2298SPaolo Bonzini 65324b2298SPaolo Bonzini- Loongson 2E CPU 66324b2298SPaolo Bonzini 67324b2298SPaolo Bonzini- Bonito64 system controller as North Bridge 68324b2298SPaolo Bonzini 69324b2298SPaolo Bonzini- VT82C686 chipset as South Bridge 70324b2298SPaolo Bonzini 71324b2298SPaolo Bonzini- RTL8139D as a network card chipset 72324b2298SPaolo Bonzini 73*c7784e42SHuacai ChenThe Loongson-3 virtual platform emulation supports: 74*c7784e42SHuacai Chen 75*c7784e42SHuacai Chen- Loongson 3A CPU 76*c7784e42SHuacai Chen 77*c7784e42SHuacai Chen- LIOINTC as interrupt controller 78*c7784e42SHuacai Chen 79*c7784e42SHuacai Chen- GPEX and virtio as peripheral devices 80*c7784e42SHuacai Chen 81*c7784e42SHuacai Chen- Both KVM and TCG supported 82*c7784e42SHuacai Chen 83324b2298SPaolo BonziniThe mipssim pseudo board emulation provides an environment similar to 84324b2298SPaolo Bonziniwhat the proprietary MIPS emulator uses for running Linux. It supports: 85324b2298SPaolo Bonzini 86324b2298SPaolo Bonzini- A range of MIPS CPUs, default is the 24Kf 87324b2298SPaolo Bonzini 88324b2298SPaolo Bonzini- PC style serial port 89324b2298SPaolo Bonzini 90324b2298SPaolo Bonzini- MIPSnet network emulation 91324b2298SPaolo Bonzini 92324b2298SPaolo Bonzini.. include:: cpu-models-mips.rst.inc 93324b2298SPaolo Bonzini 94324b2298SPaolo Bonzini.. _nanoMIPS-System-emulator: 95324b2298SPaolo Bonzini 96324b2298SPaolo BonzininanoMIPS System emulator 97324b2298SPaolo Bonzini~~~~~~~~~~~~~~~~~~~~~~~~ 98324b2298SPaolo Bonzini 99324b2298SPaolo BonziniExecutable ``qemu-system-mipsel`` also covers simulation of 32-bit 100324b2298SPaolo BonzininanoMIPS system in little endian mode: 101324b2298SPaolo Bonzini 102324b2298SPaolo Bonzini- nanoMIPS I7200 CPU 103324b2298SPaolo Bonzini 104324b2298SPaolo BonziniExample of ``qemu-system-mipsel`` usage for nanoMIPS is shown below: 105324b2298SPaolo Bonzini 106324b2298SPaolo BonziniDownload ``<disk_image_file>`` from 107324b2298SPaolo Bonzinihttps://mipsdistros.mips.com/LinuxDistro/nanomips/buildroot/index.html. 108324b2298SPaolo Bonzini 109324b2298SPaolo BonziniDownload ``<kernel_image_file>`` from 110324b2298SPaolo Bonzinihttps://mipsdistros.mips.com/LinuxDistro/nanomips/kernels/v4.15.18-432-gb2eb9a8b07a1-20180627102142/index.html. 111324b2298SPaolo Bonzini 112324b2298SPaolo BonziniStart system emulation of Malta board with nanoMIPS I7200 CPU:: 113324b2298SPaolo Bonzini 114324b2298SPaolo Bonzini qemu-system-mipsel -cpu I7200 -kernel <kernel_image_file> \ 115324b2298SPaolo Bonzini -M malta -serial stdio -m <memory_size> -hda <disk_image_file> \ 116324b2298SPaolo Bonzini -append "mem=256m@0x0 rw console=ttyS0 vga=cirrus vesa=0x111 root=/dev/sda" 117