qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PULL 20/22] hw/arm/boot: arm_load_kernel implemented a


From: Peter Maydell
Subject: Re: [Qemu-devel] [PULL 20/22] hw/arm/boot: arm_load_kernel implemented as a machine init done notifier
Date: Fri, 12 Jun 2015 11:04:42 +0100

On 12 June 2015 at 09:53, Eric Auger <address@hidden> wrote:
> On 06/12/2015 10:25 AM, Eric Auger wrote:
>>>  I think it is because this is now delaying
>>> arm_load_kernel_notify call until after rom_load_all. From vl.c:
>>>
>>>     if (rom_load_all() != 0) {
>>>         fprintf(stderr, "rom loading failed\n");
>>>         exit(1);
>>>     }
>>>
>>>     /* TODO: once all bus devices are qdevified, this should be done
>>>      * when bus is created by qdev.c */
>>>     qemu_register_reset(qbus_reset_all_fn, sysbus_get_default());
>>>     qemu_run_machine_init_done_notifiers();
>>>
>>> the machine_init_done_notifiers are called after the rom_load_all()
>>> call which does the image loading.
>
> Isn't the actual rom loading done in a reset notifier? If confirmed the
> problem comes from the fact the order of registration of reset notifiers
> for rom_reset and do_cpu_reset has swapped?

Yes, actual writing of rom data to ram happens in rom_reset_all().
This does seem to be called after arm_load_kernel_notify and
before do_cpu_reset, which is the order I would expect we require...

-- PMM



reply via email to

[Prev in Thread] Current Thread [Next in Thread]