xemu/hw
Cédric Le Goater 1a15311a12 hw/arm/aspeed: add a 'execute-in-place' property to boot directly from CE0
The overhead for the OpenBMC firmware images using the a custom U-Boot
is around 2 seconds, which is fine, but with a U-Boot from mainline,
it takes an extra 50 seconds or so to reach Linux. A quick survey on
the number of reads performed on the flash memory region gives the
following figures :

  OpenBMC U-Boot      922478 (~ 3.5 MBytes)
  Mainline U-Boot   20569977 (~ 80  MBytes)

QEMU must be trashing the TCG TBs and reloading text very often. Some
addresses are read more than 250.000 times. Until we find a solution
to improve boot time, execution from MMIO is not activated by default.

Setting this option also breaks migration compatibility.

Signed-off-by: Cédric Le Goater <clg@kaod.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-id: 20200114103433.30534-5-clg@kaod.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2020-01-30 16:02:02 +00:00
..
9pfs * Register qdev properties as class properties (Marc-André) 2020-01-27 09:44:04 +00:00
acpi * Register qdev properties as class properties (Marc-André) 2020-01-27 09:44:04 +00:00
adc Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
alpha hw/core/loader: Let load_elf() populate a field with CPU-specific flags 2020-01-29 19:28:52 +01:00
arm hw/arm/aspeed: add a 'execute-in-place' property to boot directly from CE0 2020-01-30 16:02:02 +00:00
audio qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
block qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
bt Remove the core bluetooth code 2019-12-17 09:01:14 +01:00
char * Register qdev properties as class properties (Marc-André) 2020-01-27 09:44:04 +00:00
core hw/core/or-irq: Fix incorrect assert forbidding num-lines == MAX_OR_LINES 2020-01-30 16:02:01 +00:00
cpu qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
cris hw/core/loader: Let load_elf() populate a field with CPU-specific flags 2020-01-29 19:28:52 +01:00
display hppa: Add emulation of Artist graphics 2020-01-27 10:49:51 -08:00
dma * Register qdev properties as class properties (Marc-André) 2020-01-27 09:44:04 +00:00
gpio qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
hppa hw/core/loader: Let load_elf() populate a field with CPU-specific flags 2020-01-29 19:28:52 +01:00
hyperv hyperv: Use auto rcu_read macros 2019-12-17 19:33:52 +01:00
i2c qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
i386 hw/core/loader: Let load_elf() populate a field with CPU-specific flags 2020-01-29 19:28:52 +01:00
ide ide: Fix incorrect handling of some PRDTs in ide_dma_cb() 2020-01-27 17:07:31 -05:00
input hppa: add emulation of LASI PS2 controllers 2020-01-27 10:49:51 -08:00
intc s390x: adapter routes error handling 2020-01-27 12:13:09 +01:00
ipack qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
ipmi qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
isa qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
lm32 hw/core/loader: Let load_elf() populate a field with CPU-specific flags 2020-01-29 19:28:52 +01:00
m68k hw/core/loader: Let load_elf() populate a field with CPU-specific flags 2020-01-29 19:28:52 +01:00
mem qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
microblaze hw/core/loader: Let load_elf() populate a field with CPU-specific flags 2020-01-29 19:28:52 +01:00
mips hw/core/loader: Let load_elf() populate a field with CPU-specific flags 2020-01-29 19:28:52 +01:00
misc * Register qdev properties as class properties (Marc-André) 2020-01-27 09:44:04 +00:00
moxie hw/core/loader: Let load_elf() populate a field with CPU-specific flags 2020-01-29 19:28:52 +01:00
net ftgmac100: check RX and TX buffer alignment 2020-01-30 16:02:02 +00:00
nios2 hw/core/loader: Let load_elf() populate a field with CPU-specific flags 2020-01-29 19:28:52 +01:00
nubus hw/m68k: add Nubus support 2019-10-28 19:06:47 +01:00
nvram qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
openrisc hw/core/loader: Let load_elf() populate a field with CPU-specific flags 2020-01-29 19:28:52 +01:00
pci qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
pci-bridge qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
pci-host hw/core/loader: Let load_elf() populate a field with CPU-specific flags 2020-01-29 19:28:52 +01:00
pcmcia Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
ppc hw/core/loader: Let load_elf() populate a field with CPU-specific flags 2020-01-29 19:28:52 +01:00
rdma qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
riscv hw/core/loader: Let load_elf() populate a field with CPU-specific flags 2020-01-29 19:28:52 +01:00
rtc qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
s390x hw/core/loader: Let load_elf() populate a field with CPU-specific flags 2020-01-29 19:28:52 +01:00
scsi qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
sd hw/sd: Configure number of slots exposed by the ASPEED SDHCI model 2020-01-30 16:02:02 +00:00
semihosting semihosting: add qemu_semihosting_console_inc for SYS_READC 2020-01-09 11:41:29 +00:00
sh4 sm501: make SerialMM a child, export chardev property 2020-01-07 17:24:29 +04:00
smbios smbios:ipmi: Ignore IPMI devices with no fwinfo function 2019-09-20 14:08:10 -05:00
sparc hw/core/loader: Let load_elf() populate a field with CPU-specific flags 2020-01-29 19:28:52 +01:00
sparc64 hw/core/loader: Let load_elf() populate a field with CPU-specific flags 2020-01-29 19:28:52 +01:00
ssi qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
timer qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
tpm tpm-ppi: page-align PPI RAM 2020-01-29 07:27:07 -05:00
tricore hw/core/loader: Let load_elf() populate a field with CPU-specific flags 2020-01-29 19:28:52 +01:00
unicore32 Include hw/irq.h a lot less 2019-08-16 13:31:52 +02:00
usb qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
vfio qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
virtio * Register qdev properties as class properties (Marc-André) 2020-01-27 09:44:04 +00:00
watchdog qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
xen qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
xenpv Include sysemu/sysemu.h a lot less 2019-08-16 13:31:53 +02:00
xtensa hw/core/loader: Let load_elf() populate a field with CPU-specific flags 2020-01-29 19:28:52 +01:00
Kconfig Remove the core bluetooth code 2019-12-17 09:01:14 +01:00
Makefile.objs Remove the core bluetooth code 2019-12-17 09:01:14 +01:00