Enable flash emulation in a PC system using pflash_cfi01. v10: * Rebase to HEAD * "decouple vmstate from memory API" as in c5705a7 * Break changes into smaller pieces
v9: * Add pc-1.1 * pc-1.0 uses previous rom firmware init code path v8: * Cleanup two chunks of debug code (printf messages) * Fix comment in pc.h (pcflash.c => pc_sysfw.c) v7: * Do not add system firmware to qemu roms * If kvm is enabled, copy pflash drive contents into a read-only ram region, since kvm cannot currently execute code from a pflash device. * Rename pcflash.c to pc_sysfw.c v6: * Rebase for memory API * pflash_cfi01: Set error in status register when a write to erase is attempted in read-only mode. * Add system firmware to qemu roms v5: * Enable pflash read-only mode * Enable -drive with if=pflash to define system firmware image v4: * Rebase v3: * Fix code style issues * Add additional comments v2: * Convert debug printf to DPRINTF Jordan Justen (8): blockdev: allow read-only pflash devices pflash_cfi01/02: support read-only pflash devices vl: make find_default_machine externally visible hw/pc: move rom init to pc_sysfw.c hw/pc_sysfw: Support system flash memory with pflash hw/pc_piix: remove is_default for pc-0.15 hw/pc_piix: add pc-1.1 pc: enable system flash for pc-1.1 Makefile.target | 1 + blockdev.c | 3 +- default-configs/i386-softmmu.mak | 1 + default-configs/x86_64-softmmu.mak | 1 + hw/boards.h | 1 + hw/pc.c | 59 +-------- hw/pc.h | 7 +- hw/pc_piix.c | 43 +++++-- hw/pc_sysfw.c | 256 ++++++++++++++++++++++++++++++++++++ hw/pflash_cfi01.c | 44 ++++-- hw/pflash_cfi02.c | 83 +++++++------ vl.c | 2 +- 12 files changed, 384 insertions(+), 117 deletions(-) create mode 100644 hw/pc_sysfw.c