mirror of
https://git.proxmox.com/git/qemu
synced 2025-08-07 23:49:35 +00:00
hw/mainstone: Don't prematurely explode QEMUMachineInitArgs
Don't explode QEMUMachineInitArgs before passing it to mainstone_init(). Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
462b69bba3
commit
6efa6d5038
@ -95,10 +95,8 @@ static struct arm_boot_info mainstone_binfo = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
static void mainstone_common_init(MemoryRegion *address_space_mem,
|
static void mainstone_common_init(MemoryRegion *address_space_mem,
|
||||||
ram_addr_t ram_size,
|
QEMUMachineInitArgs *args,
|
||||||
const char *kernel_filename,
|
enum mainstone_model_e model, int arm_id)
|
||||||
const char *kernel_cmdline, const char *initrd_filename,
|
|
||||||
const char *cpu_model, enum mainstone_model_e model, int arm_id)
|
|
||||||
{
|
{
|
||||||
uint32_t sector_len = 256 * 1024;
|
uint32_t sector_len = 256 * 1024;
|
||||||
hwaddr mainstone_flash_base[] = { MST_FLASH_0, MST_FLASH_1 };
|
hwaddr mainstone_flash_base[] = { MST_FLASH_0, MST_FLASH_1 };
|
||||||
@ -108,6 +106,7 @@ static void mainstone_common_init(MemoryRegion *address_space_mem,
|
|||||||
int i;
|
int i;
|
||||||
int be;
|
int be;
|
||||||
MemoryRegion *rom = g_new(MemoryRegion, 1);
|
MemoryRegion *rom = g_new(MemoryRegion, 1);
|
||||||
|
const char *cpu_model = args->cpu_model;
|
||||||
|
|
||||||
if (!cpu_model)
|
if (!cpu_model)
|
||||||
cpu_model = "pxa270-c5";
|
cpu_model = "pxa270-c5";
|
||||||
@ -164,22 +163,16 @@ static void mainstone_common_init(MemoryRegion *address_space_mem,
|
|||||||
smc91c111_init(&nd_table[0], MST_ETH_PHYS,
|
smc91c111_init(&nd_table[0], MST_ETH_PHYS,
|
||||||
qdev_get_gpio_in(mst_irq, ETHERNET_IRQ));
|
qdev_get_gpio_in(mst_irq, ETHERNET_IRQ));
|
||||||
|
|
||||||
mainstone_binfo.kernel_filename = kernel_filename;
|
mainstone_binfo.kernel_filename = args->kernel_filename;
|
||||||
mainstone_binfo.kernel_cmdline = kernel_cmdline;
|
mainstone_binfo.kernel_cmdline = args->kernel_cmdline;
|
||||||
mainstone_binfo.initrd_filename = initrd_filename;
|
mainstone_binfo.initrd_filename = args->initrd_filename;
|
||||||
mainstone_binfo.board_id = arm_id;
|
mainstone_binfo.board_id = arm_id;
|
||||||
arm_load_kernel(mpu->cpu, &mainstone_binfo);
|
arm_load_kernel(mpu->cpu, &mainstone_binfo);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void mainstone_init(QEMUMachineInitArgs *args)
|
static void mainstone_init(QEMUMachineInitArgs *args)
|
||||||
{
|
{
|
||||||
ram_addr_t ram_size = args->ram_size;
|
mainstone_common_init(get_system_memory(), args, mainstone, 0x196);
|
||||||
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;
|
|
||||||
mainstone_common_init(get_system_memory(), ram_size, kernel_filename,
|
|
||||||
kernel_cmdline, initrd_filename, cpu_model, mainstone, 0x196);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static QEMUMachine mainstone2_machine = {
|
static QEMUMachine mainstone2_machine = {
|
||||||
|
Loading…
Reference in New Issue
Block a user