mirror of
https://gitlab.com/qemu-project/qemu
synced 2024-11-05 20:35:44 +00:00
hw/xtensa_lx60: don't prematurely explode QEMUMachineInitArgs
Don't explode QEMUMachineInitArgs before passing it to lx_init. Signed-off-by: Max Filippov <jcmvbkbc@gmail.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
This commit is contained in:
parent
d1bd2423a9
commit
d64ed08eec
1 changed files with 7 additions and 23 deletions
|
@ -155,10 +155,7 @@ static void lx60_reset(void *opaque)
|
|||
cpu_reset(CPU(cpu));
|
||||
}
|
||||
|
||||
static void lx_init(const LxBoardDesc *board,
|
||||
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)
|
||||
static void lx_init(const LxBoardDesc *board, QEMUMachineInitArgs *args)
|
||||
{
|
||||
#ifdef TARGET_WORDS_BIGENDIAN
|
||||
int be = 1;
|
||||
|
@ -171,6 +168,9 @@ static void lx_init(const LxBoardDesc *board,
|
|||
MemoryRegion *ram, *rom, *system_io;
|
||||
DriveInfo *dinfo;
|
||||
pflash_t *flash = NULL;
|
||||
const char *cpu_model = args->cpu_model;
|
||||
const char *kernel_filename = args->kernel_filename;
|
||||
const char *kernel_cmdline = args->kernel_cmdline;
|
||||
int n;
|
||||
|
||||
if (!cpu_model) {
|
||||
|
@ -194,7 +194,7 @@ static void lx_init(const LxBoardDesc *board,
|
|||
}
|
||||
|
||||
ram = g_malloc(sizeof(*ram));
|
||||
memory_region_init_ram(ram, "lx60.dram", ram_size);
|
||||
memory_region_init_ram(ram, "lx60.dram", args->ram_size);
|
||||
vmstate_register_ram_global(ram);
|
||||
memory_region_add_subregion(system_memory, 0, ram);
|
||||
|
||||
|
@ -271,38 +271,22 @@ static void lx_init(const LxBoardDesc *board,
|
|||
|
||||
static void xtensa_lx60_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;
|
||||
static const LxBoardDesc lx60_board = {
|
||||
.flash_size = 0x400000,
|
||||
.flash_sector_size = 0x10000,
|
||||
.sram_size = 0x20000,
|
||||
};
|
||||
lx_init(&lx60_board, ram_size, boot_device,
|
||||
kernel_filename, kernel_cmdline,
|
||||
initrd_filename, cpu_model);
|
||||
lx_init(&lx60_board, args);
|
||||
}
|
||||
|
||||
static void xtensa_lx200_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;
|
||||
static const LxBoardDesc lx200_board = {
|
||||
.flash_size = 0x1000000,
|
||||
.flash_sector_size = 0x20000,
|
||||
.sram_size = 0x2000000,
|
||||
};
|
||||
lx_init(&lx200_board, ram_size, boot_device,
|
||||
kernel_filename, kernel_cmdline,
|
||||
initrd_filename, cpu_model);
|
||||
lx_init(&lx200_board, args);
|
||||
}
|
||||
|
||||
static QEMUMachine xtensa_lx60_machine = {
|
||||
|
|
Loading…
Reference in a new issue