xref: /qemu/docs/system/target-arm.rst (revision 324b2298feab35533d44301cfdae332c086463cf)
1*324b2298SPaolo Bonzini.. _ARM-System-emulator:
2*324b2298SPaolo Bonzini
3*324b2298SPaolo BonziniARM System emulator
4*324b2298SPaolo Bonzini-------------------
5*324b2298SPaolo Bonzini
6*324b2298SPaolo BonziniUse the executable ``qemu-system-arm`` to simulate a ARM machine. The
7*324b2298SPaolo BonziniARM Integrator/CP board is emulated with the following devices:
8*324b2298SPaolo Bonzini
9*324b2298SPaolo Bonzini-  ARM926E, ARM1026E, ARM946E, ARM1136 or Cortex-A8 CPU
10*324b2298SPaolo Bonzini
11*324b2298SPaolo Bonzini-  Two PL011 UARTs
12*324b2298SPaolo Bonzini
13*324b2298SPaolo Bonzini-  SMC 91c111 Ethernet adapter
14*324b2298SPaolo Bonzini
15*324b2298SPaolo Bonzini-  PL110 LCD controller
16*324b2298SPaolo Bonzini
17*324b2298SPaolo Bonzini-  PL050 KMI with PS/2 keyboard and mouse.
18*324b2298SPaolo Bonzini
19*324b2298SPaolo Bonzini-  PL181 MultiMedia Card Interface with SD card.
20*324b2298SPaolo Bonzini
21*324b2298SPaolo BonziniThe ARM Versatile baseboard is emulated with the following devices:
22*324b2298SPaolo Bonzini
23*324b2298SPaolo Bonzini-  ARM926E, ARM1136 or Cortex-A8 CPU
24*324b2298SPaolo Bonzini
25*324b2298SPaolo Bonzini-  PL190 Vectored Interrupt Controller
26*324b2298SPaolo Bonzini
27*324b2298SPaolo Bonzini-  Four PL011 UARTs
28*324b2298SPaolo Bonzini
29*324b2298SPaolo Bonzini-  SMC 91c111 Ethernet adapter
30*324b2298SPaolo Bonzini
31*324b2298SPaolo Bonzini-  PL110 LCD controller
32*324b2298SPaolo Bonzini
33*324b2298SPaolo Bonzini-  PL050 KMI with PS/2 keyboard and mouse.
34*324b2298SPaolo Bonzini
35*324b2298SPaolo Bonzini-  PCI host bridge. Note the emulated PCI bridge only provides access
36*324b2298SPaolo Bonzini   to PCI memory space. It does not provide access to PCI IO space. This
37*324b2298SPaolo Bonzini   means some devices (eg. ne2k_pci NIC) are not usable, and others (eg.
38*324b2298SPaolo Bonzini   rtl8139 NIC) are only usable when the guest drivers use the memory
39*324b2298SPaolo Bonzini   mapped control registers.
40*324b2298SPaolo Bonzini
41*324b2298SPaolo Bonzini-  PCI OHCI USB controller.
42*324b2298SPaolo Bonzini
43*324b2298SPaolo Bonzini-  LSI53C895A PCI SCSI Host Bus Adapter with hard disk and CD-ROM
44*324b2298SPaolo Bonzini   devices.
45*324b2298SPaolo Bonzini
46*324b2298SPaolo Bonzini-  PL181 MultiMedia Card Interface with SD card.
47*324b2298SPaolo Bonzini
48*324b2298SPaolo BonziniSeveral variants of the ARM RealView baseboard are emulated, including
49*324b2298SPaolo Bonzinithe EB, PB-A8 and PBX-A9. Due to interactions with the bootloader, only
50*324b2298SPaolo Bonzinicertain Linux kernel configurations work out of the box on these boards.
51*324b2298SPaolo Bonzini
52*324b2298SPaolo BonziniKernels for the PB-A8 board should have CONFIG_REALVIEW_HIGH_PHYS_OFFSET
53*324b2298SPaolo Bonzinienabled in the kernel, and expect 512M RAM. Kernels for The PBX-A9 board
54*324b2298SPaolo Bonzinishould have CONFIG_SPARSEMEM enabled, CONFIG_REALVIEW_HIGH_PHYS_OFFSET
55*324b2298SPaolo Bonzinidisabled and expect 1024M RAM.
56*324b2298SPaolo Bonzini
57*324b2298SPaolo BonziniThe following devices are emulated:
58*324b2298SPaolo Bonzini
59*324b2298SPaolo Bonzini-  ARM926E, ARM1136, ARM11MPCore, Cortex-A8 or Cortex-A9 MPCore CPU
60*324b2298SPaolo Bonzini
61*324b2298SPaolo Bonzini-  ARM AMBA Generic/Distributed Interrupt Controller
62*324b2298SPaolo Bonzini
63*324b2298SPaolo Bonzini-  Four PL011 UARTs
64*324b2298SPaolo Bonzini
65*324b2298SPaolo Bonzini-  SMC 91c111 or SMSC LAN9118 Ethernet adapter
66*324b2298SPaolo Bonzini
67*324b2298SPaolo Bonzini-  PL110 LCD controller
68*324b2298SPaolo Bonzini
69*324b2298SPaolo Bonzini-  PL050 KMI with PS/2 keyboard and mouse
70*324b2298SPaolo Bonzini
71*324b2298SPaolo Bonzini-  PCI host bridge
72*324b2298SPaolo Bonzini
73*324b2298SPaolo Bonzini-  PCI OHCI USB controller
74*324b2298SPaolo Bonzini
75*324b2298SPaolo Bonzini-  LSI53C895A PCI SCSI Host Bus Adapter with hard disk and CD-ROM
76*324b2298SPaolo Bonzini   devices
77*324b2298SPaolo Bonzini
78*324b2298SPaolo Bonzini-  PL181 MultiMedia Card Interface with SD card.
79*324b2298SPaolo Bonzini
80*324b2298SPaolo BonziniThe XScale-based clamshell PDA models (\"Spitz\", \"Akita\", \"Borzoi\"
81*324b2298SPaolo Bonziniand \"Terrier\") emulation includes the following peripherals:
82*324b2298SPaolo Bonzini
83*324b2298SPaolo Bonzini-  Intel PXA270 System-on-chip (ARM V5TE core)
84*324b2298SPaolo Bonzini
85*324b2298SPaolo Bonzini-  NAND Flash memory
86*324b2298SPaolo Bonzini
87*324b2298SPaolo Bonzini-  IBM/Hitachi DSCM microdrive in a PXA PCMCIA slot - not in \"Akita\"
88*324b2298SPaolo Bonzini
89*324b2298SPaolo Bonzini-  On-chip OHCI USB controller
90*324b2298SPaolo Bonzini
91*324b2298SPaolo Bonzini-  On-chip LCD controller
92*324b2298SPaolo Bonzini
93*324b2298SPaolo Bonzini-  On-chip Real Time Clock
94*324b2298SPaolo Bonzini
95*324b2298SPaolo Bonzini-  TI ADS7846 touchscreen controller on SSP bus
96*324b2298SPaolo Bonzini
97*324b2298SPaolo Bonzini-  Maxim MAX1111 analog-digital converter on |I2C| bus
98*324b2298SPaolo Bonzini
99*324b2298SPaolo Bonzini-  GPIO-connected keyboard controller and LEDs
100*324b2298SPaolo Bonzini
101*324b2298SPaolo Bonzini-  Secure Digital card connected to PXA MMC/SD host
102*324b2298SPaolo Bonzini
103*324b2298SPaolo Bonzini-  Three on-chip UARTs
104*324b2298SPaolo Bonzini
105*324b2298SPaolo Bonzini-  WM8750 audio CODEC on |I2C| and |I2S| busses
106*324b2298SPaolo Bonzini
107*324b2298SPaolo BonziniThe Palm Tungsten|E PDA (codename \"Cheetah\") emulation includes the
108*324b2298SPaolo Bonzinifollowing elements:
109*324b2298SPaolo Bonzini
110*324b2298SPaolo Bonzini-  Texas Instruments OMAP310 System-on-chip (ARM 925T core)
111*324b2298SPaolo Bonzini
112*324b2298SPaolo Bonzini-  ROM and RAM memories (ROM firmware image can be loaded with
113*324b2298SPaolo Bonzini   -option-rom)
114*324b2298SPaolo Bonzini
115*324b2298SPaolo Bonzini-  On-chip LCD controller
116*324b2298SPaolo Bonzini
117*324b2298SPaolo Bonzini-  On-chip Real Time Clock
118*324b2298SPaolo Bonzini
119*324b2298SPaolo Bonzini-  TI TSC2102i touchscreen controller / analog-digital converter /
120*324b2298SPaolo Bonzini   Audio CODEC, connected through MicroWire and |I2S| busses
121*324b2298SPaolo Bonzini
122*324b2298SPaolo Bonzini-  GPIO-connected matrix keypad
123*324b2298SPaolo Bonzini
124*324b2298SPaolo Bonzini-  Secure Digital card connected to OMAP MMC/SD host
125*324b2298SPaolo Bonzini
126*324b2298SPaolo Bonzini-  Three on-chip UARTs
127*324b2298SPaolo Bonzini
128*324b2298SPaolo BonziniNokia N800 and N810 internet tablets (known also as RX-34 and RX-44 /
129*324b2298SPaolo Bonzini48) emulation supports the following elements:
130*324b2298SPaolo Bonzini
131*324b2298SPaolo Bonzini-  Texas Instruments OMAP2420 System-on-chip (ARM 1136 core)
132*324b2298SPaolo Bonzini
133*324b2298SPaolo Bonzini-  RAM and non-volatile OneNAND Flash memories
134*324b2298SPaolo Bonzini
135*324b2298SPaolo Bonzini-  Display connected to EPSON remote framebuffer chip and OMAP on-chip
136*324b2298SPaolo Bonzini   display controller and a LS041y3 MIPI DBI-C controller
137*324b2298SPaolo Bonzini
138*324b2298SPaolo Bonzini-  TI TSC2301 (in N800) and TI TSC2005 (in N810) touchscreen
139*324b2298SPaolo Bonzini   controllers driven through SPI bus
140*324b2298SPaolo Bonzini
141*324b2298SPaolo Bonzini-  National Semiconductor LM8323-controlled qwerty keyboard driven
142*324b2298SPaolo Bonzini   through |I2C| bus
143*324b2298SPaolo Bonzini
144*324b2298SPaolo Bonzini-  Secure Digital card connected to OMAP MMC/SD host
145*324b2298SPaolo Bonzini
146*324b2298SPaolo Bonzini-  Three OMAP on-chip UARTs and on-chip STI debugging console
147*324b2298SPaolo Bonzini
148*324b2298SPaolo Bonzini-  Mentor Graphics \"Inventra\" dual-role USB controller embedded in a
149*324b2298SPaolo Bonzini   TI TUSB6010 chip - only USB host mode is supported
150*324b2298SPaolo Bonzini
151*324b2298SPaolo Bonzini-  TI TMP105 temperature sensor driven through |I2C| bus
152*324b2298SPaolo Bonzini
153*324b2298SPaolo Bonzini-  TI TWL92230C power management companion with an RTC on
154*324b2298SPaolo Bonzini   |I2C| bus
155*324b2298SPaolo Bonzini
156*324b2298SPaolo Bonzini-  Nokia RETU and TAHVO multi-purpose chips with an RTC, connected
157*324b2298SPaolo Bonzini   through CBUS
158*324b2298SPaolo Bonzini
159*324b2298SPaolo BonziniThe Luminary Micro Stellaris LM3S811EVB emulation includes the following
160*324b2298SPaolo Bonzinidevices:
161*324b2298SPaolo Bonzini
162*324b2298SPaolo Bonzini-  Cortex-M3 CPU core.
163*324b2298SPaolo Bonzini
164*324b2298SPaolo Bonzini-  64k Flash and 8k SRAM.
165*324b2298SPaolo Bonzini
166*324b2298SPaolo Bonzini-  Timers, UARTs, ADC and |I2C| interface.
167*324b2298SPaolo Bonzini
168*324b2298SPaolo Bonzini-  OSRAM Pictiva 96x16 OLED with SSD0303 controller on
169*324b2298SPaolo Bonzini   |I2C| bus.
170*324b2298SPaolo Bonzini
171*324b2298SPaolo BonziniThe Luminary Micro Stellaris LM3S6965EVB emulation includes the
172*324b2298SPaolo Bonzinifollowing devices:
173*324b2298SPaolo Bonzini
174*324b2298SPaolo Bonzini-  Cortex-M3 CPU core.
175*324b2298SPaolo Bonzini
176*324b2298SPaolo Bonzini-  256k Flash and 64k SRAM.
177*324b2298SPaolo Bonzini
178*324b2298SPaolo Bonzini-  Timers, UARTs, ADC, |I2C| and SSI interfaces.
179*324b2298SPaolo Bonzini
180*324b2298SPaolo Bonzini-  OSRAM Pictiva 128x64 OLED with SSD0323 controller connected via
181*324b2298SPaolo Bonzini   SSI.
182*324b2298SPaolo Bonzini
183*324b2298SPaolo BonziniThe Freecom MusicPal internet radio emulation includes the following
184*324b2298SPaolo Bonzinielements:
185*324b2298SPaolo Bonzini
186*324b2298SPaolo Bonzini-  Marvell MV88W8618 ARM core.
187*324b2298SPaolo Bonzini
188*324b2298SPaolo Bonzini-  32 MB RAM, 256 KB SRAM, 8 MB flash.
189*324b2298SPaolo Bonzini
190*324b2298SPaolo Bonzini-  Up to 2 16550 UARTs
191*324b2298SPaolo Bonzini
192*324b2298SPaolo Bonzini-  MV88W8xx8 Ethernet controller
193*324b2298SPaolo Bonzini
194*324b2298SPaolo Bonzini-  MV88W8618 audio controller, WM8750 CODEC and mixer
195*324b2298SPaolo Bonzini
196*324b2298SPaolo Bonzini-  128x64 display with brightness control
197*324b2298SPaolo Bonzini
198*324b2298SPaolo Bonzini-  2 buttons, 2 navigation wheels with button function
199*324b2298SPaolo Bonzini
200*324b2298SPaolo BonziniThe Siemens SX1 models v1 and v2 (default) basic emulation. The
201*324b2298SPaolo Bonziniemulation includes the following elements:
202*324b2298SPaolo Bonzini
203*324b2298SPaolo Bonzini-  Texas Instruments OMAP310 System-on-chip (ARM 925T core)
204*324b2298SPaolo Bonzini
205*324b2298SPaolo Bonzini-  ROM and RAM memories (ROM firmware image can be loaded with
206*324b2298SPaolo Bonzini   -pflash) V1 1 Flash of 16MB and 1 Flash of 8MB V2 1 Flash of 32MB
207*324b2298SPaolo Bonzini
208*324b2298SPaolo Bonzini-  On-chip LCD controller
209*324b2298SPaolo Bonzini
210*324b2298SPaolo Bonzini-  On-chip Real Time Clock
211*324b2298SPaolo Bonzini
212*324b2298SPaolo Bonzini-  Secure Digital card connected to OMAP MMC/SD host
213*324b2298SPaolo Bonzini
214*324b2298SPaolo Bonzini-  Three on-chip UARTs
215*324b2298SPaolo Bonzini
216*324b2298SPaolo BonziniA Linux 2.6 test image is available on the QEMU web site. More
217*324b2298SPaolo Bonziniinformation is available in the QEMU mailing-list archive.
218*324b2298SPaolo Bonzini
219*324b2298SPaolo BonziniThe following options are specific to the ARM emulation:
220*324b2298SPaolo Bonzini
221*324b2298SPaolo Bonzini``-semihosting``
222*324b2298SPaolo Bonzini   Enable semihosting syscall emulation.
223*324b2298SPaolo Bonzini
224*324b2298SPaolo Bonzini   On ARM this implements the \"Angel\" interface.
225*324b2298SPaolo Bonzini
226*324b2298SPaolo Bonzini   Note that this allows guest direct access to the host filesystem, so
227*324b2298SPaolo Bonzini   should only be used with trusted guest OS.
228