[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 04/28] hw/versatilepb: Don't prematurely explode QEM
From: |
Peter Maydell |
Subject: |
[Qemu-devel] [PATCH 04/28] hw/versatilepb: Don't prematurely explode QEMUMachineInitArgs |
Date: |
Tue, 30 Oct 2012 08:44:00 +0000 |
Don't explode QEMUMachineInitArgs before passing it to the common
versatile init function.
Signed-off-by: Peter Maydell <address@hidden>
---
hw/versatilepb.c | 44 +++++++++++---------------------------------
1 file changed, 11 insertions(+), 33 deletions(-)
diff --git a/hw/versatilepb.c b/hw/versatilepb.c
index e85f982..25e652b 100644
--- a/hw/versatilepb.c
+++ b/hw/versatilepb.c
@@ -167,11 +167,7 @@ static int vpb_sic_init(SysBusDevice *dev)
static struct arm_boot_info versatile_binfo;
-static void versatile_init(ram_addr_t ram_size,
- const char *boot_device,
- const char *kernel_filename, const char *kernel_cmdline,
- const char *initrd_filename, const char *cpu_model,
- int board_id)
+static void versatile_init(QEMUMachineInitArgs *args, int board_id)
{
ARMCPU *cpu;
MemoryRegion *sysmem = get_system_memory();
@@ -189,15 +185,15 @@ static void versatile_init(ram_addr_t ram_size,
int done_smc = 0;
DriveInfo *dinfo;
- if (!cpu_model) {
- cpu_model = "arm926";
+ if (!args->cpu_model) {
+ args->cpu_model = "arm926";
}
- cpu = cpu_arm_init(cpu_model);
+ cpu = cpu_arm_init(args->cpu_model);
if (!cpu) {
fprintf(stderr, "Unable to find CPU definition\n");
exit(1);
}
- memory_region_init_ram(ram, "versatile.ram", ram_size);
+ memory_region_init_ram(ram, "versatile.ram", args->ram_size);
vmstate_register_ram_global(ram);
/* ??? RAM should repeat to fill physical memory space. */
/* SDRAM at address zero. */
@@ -340,40 +336,22 @@ static void versatile_init(ram_addr_t ram_size,
fprintf(stderr, "qemu: Error registering flash memory.\n");
}
- versatile_binfo.ram_size = ram_size;
- versatile_binfo.kernel_filename = kernel_filename;
- versatile_binfo.kernel_cmdline = kernel_cmdline;
- versatile_binfo.initrd_filename = initrd_filename;
+ versatile_binfo.ram_size = args->ram_size;
+ versatile_binfo.kernel_filename = args->kernel_filename;
+ versatile_binfo.kernel_cmdline = args->kernel_cmdline;
+ versatile_binfo.initrd_filename = args->initrd_filename;
versatile_binfo.board_id = board_id;
arm_load_kernel(cpu, &versatile_binfo);
}
static void vpb_init(QEMUMachineInitArgs *args)
{
- ram_addr_t ram_size = args->ram_size;
- const char *cpu_model = args->cpu_model;
- const char *kernel_filename = args->kernel_filename;
- const char *kernel_cmdline = args->kernel_cmdline;
- const char *initrd_filename = args->initrd_filename;
- const char *boot_device = args->boot_device;
- versatile_init(ram_size,
- boot_device,
- kernel_filename, kernel_cmdline,
- initrd_filename, cpu_model, 0x183);
+ versatile_init(args, 0x183);
}
static void vab_init(QEMUMachineInitArgs *args)
{
- ram_addr_t ram_size = args->ram_size;
- const char *cpu_model = args->cpu_model;
- const char *kernel_filename = args->kernel_filename;
- const char *kernel_cmdline = args->kernel_cmdline;
- const char *initrd_filename = args->initrd_filename;
- const char *boot_device = args->boot_device;
- versatile_init(ram_size,
- boot_device,
- kernel_filename, kernel_cmdline,
- initrd_filename, cpu_model, 0x25e);
+ versatile_init(args, 0x25e);
}
static QEMUMachine versatilepb_machine = {
--
1.7.9.5
- [Qemu-devel] [PATCH 25/28] pflash_cfi01: Fix debug mode printfery, (continued)
- [Qemu-devel] [PATCH 25/28] pflash_cfi01: Fix debug mode printfery, Peter Maydell, 2012/10/30
- [Qemu-devel] [PATCH 15/28] hw/arm11mpcore: Use LOG_GUEST_ERROR rather than hw_error(), Peter Maydell, 2012/10/30
- [Qemu-devel] [PATCH 12/28] hw/pl080: Use LOG_GUEST_ERROR and LOG_UNIMP, Peter Maydell, 2012/10/30
- [Qemu-devel] [PATCH 06/28] hw/omap_sx1: Don't prematurely explode QEMUMachineInitArgs, Peter Maydell, 2012/10/30
- [Qemu-devel] [PATCH 02/28] hw/vexpress.c: Don't prematurely explode QEMUMachineInitArgs, Peter Maydell, 2012/10/30
- [Qemu-devel] [PATCH 22/28] pflash_cfi0x: remove unused base field, Peter Maydell, 2012/10/30
- [Qemu-devel] [PATCH 14/28] hw/pl190: Use LOG_UNIMP rather than hw_error(), Peter Maydell, 2012/10/30
- [Qemu-devel] [PATCH 19/28] hw/arm_sysctl: Use LOG_GUEST_ERROR, Peter Maydell, 2012/10/30
- [Qemu-devel] [PATCH 09/28] hw/exynos4_boards: Don't prematurely explode QEMUMachineInitArgs, Peter Maydell, 2012/10/30
- [Qemu-devel] [PATCH 27/28] vmstate: Add support for saving/loading bitmaps, Peter Maydell, 2012/10/30
- [Qemu-devel] [PATCH 04/28] hw/versatilepb: Don't prematurely explode QEMUMachineInitArgs,
Peter Maydell <=
- [Qemu-devel] [PATCH 01/28] hw/armv7m_nvic: Implement byte/halfword access for NVIC SCB_SHPRx registers, Peter Maydell, 2012/10/30
- [Qemu-devel] [PATCH 28/28] hw/sd.c: add SD card save/load support, Peter Maydell, 2012/10/30
- [Qemu-devel] [PATCH 20/28] hw/arm_l2x0: Use LOG_GUEST_ERROR, Peter Maydell, 2012/10/30
- [Qemu-devel] [PATCH 13/28] hw/pl110: Use LOG_GUEST_ERROR rather than hw_error(), Peter Maydell, 2012/10/30
- [Qemu-devel] [PATCH 21/28] hw/versatile_i2c: Use LOG_GUEST_ERROR, Peter Maydell, 2012/10/30
- [Qemu-devel] [PATCH 23/28] pflash_cfi01: remove unused total_len field, Peter Maydell, 2012/10/30
- [Qemu-devel] [PATCH 08/28] hw/mainstone: Don't prematurely explode QEMUMachineInitArgs, Peter Maydell, 2012/10/30
- [Qemu-devel] [PATCH 03/28] hw/realview.c: Don't prematurely explode QEMUMachineInitArgs, Peter Maydell, 2012/10/30
- [Qemu-devel] [PATCH 24/28] pflash_cfi0x: QOMified, Peter Maydell, 2012/10/30
- [Qemu-devel] [PATCH 17/28] hw/arm_timer: Use LOG_GUEST_ERROR and LOG_UNIMP, Peter Maydell, 2012/10/30