target/mips: Make check_cp0_enabled() return a boolean
[qemu/ar7.git] / docs / system / target-mips.rst
blob138441bdec1c2a155a2eb40e3dd3e050aca2e293
1 .. _MIPS-System-emulator:
3 MIPS System emulator
4 --------------------
6 Four executables cover simulation of 32 and 64-bit MIPS systems in both
7 endian options, ``qemu-system-mips``, ``qemu-system-mipsel``
8 ``qemu-system-mips64`` and ``qemu-system-mips64el``. Five different
9 machine types are emulated:
11 -  A generic ISA PC-like machine \"mips\"
13 -  The MIPS Malta prototype board \"malta\"
15 -  An ACER Pica \"pica61\". This machine needs the 64-bit emulator.
17 -  MIPS emulator pseudo board \"mipssim\"
19 -  A MIPS Magnum R4000 machine \"magnum\". This machine needs the
20    64-bit emulator.
22 The generic emulation is supported by Debian 'Etch' and is able to
23 install Debian into a virtual disk image. The following devices are
24 emulated:
26 -  A range of MIPS CPUs, default is the 24Kf
28 -  PC style serial port
30 -  PC style IDE disk
32 -  NE2000 network card
34 The Malta emulation supports the following devices:
36 -  Core board with MIPS 24Kf CPU and Galileo system controller
38 -  PIIX4 PCI/USB/SMbus controller
40 -  The Multi-I/O chip's serial device
42 -  PCI network cards (PCnet32 and others)
44 -  Malta FPGA serial device
46 -  Cirrus (default) or any other PCI VGA graphics card
48 The Boston board emulation supports the following devices:
50 -  Xilinx FPGA, which includes a PCIe root port and an UART
52 -  Intel EG20T PCH connects the I/O peripherals, but only the SATA bus
53    is emulated
55 The ACER Pica emulation supports:
57 -  MIPS R4000 CPU
59 -  PC-style IRQ and DMA controllers
61 -  PC Keyboard
63 -  IDE controller
65 The MIPS Magnum R4000 emulation supports:
67 -  MIPS R4000 CPU
69 -  PC-style IRQ controller
71 -  PC Keyboard
73 -  SCSI controller
75 -  G364 framebuffer
77 The Fuloong 2E emulation supports:
79 -  Loongson 2E CPU
81 -  Bonito64 system controller as North Bridge
83 -  VT82C686 chipset as South Bridge
85 -  RTL8139D as a network card chipset
87 The Loongson-3 virtual platform emulation supports:
89 -  Loongson 3A CPU
91 -  LIOINTC as interrupt controller
93 -  GPEX and virtio as peripheral devices
95 -  Both KVM and TCG supported
97 The mipssim pseudo board emulation provides an environment similar to
98 what the proprietary MIPS emulator uses for running Linux. It supports:
100 -  A range of MIPS CPUs, default is the 24Kf
102 -  PC style serial port
104 -  MIPSnet network emulation
106 .. include:: cpu-models-mips.rst.inc
108 .. _nanoMIPS-System-emulator:
110 nanoMIPS System emulator
111 ~~~~~~~~~~~~~~~~~~~~~~~~
113 Executable ``qemu-system-mipsel`` also covers simulation of 32-bit
114 nanoMIPS system in little endian mode:
116 -  nanoMIPS I7200 CPU
118 Example of ``qemu-system-mipsel`` usage for nanoMIPS is shown below:
120 Download ``<disk_image_file>`` from
121 https://mipsdistros.mips.com/LinuxDistro/nanomips/buildroot/index.html.
123 Download ``<kernel_image_file>`` from
124 https://mipsdistros.mips.com/LinuxDistro/nanomips/kernels/v4.15.18-432-gb2eb9a8b07a1-20180627102142/index.html.
126 Start system emulation of Malta board with nanoMIPS I7200 CPU::
128    qemu-system-mipsel -cpu I7200 -kernel <kernel_image_file> \
129        -M malta -serial stdio -m <memory_size> -hda <disk_image_file> \
130        -append "mem=256m@0x0 rw console=ttyS0 vga=cirrus vesa=0x111 root=/dev/sda"