qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH] QEMU: ARM: boot: Load kernel at an Image friend


From: Peter Crosthwaite
Subject: Re: [Qemu-devel] [PATCH] QEMU: ARM: boot: Load kernel at an Image friendly address
Date: Wed, 23 Apr 2014 12:20:00 +1000

On Thu, Apr 17, 2014 at 11:34 PM, Christopher Covington
<address@hidden> wrote:
> On 04/17/2014 06:02 AM, Peter Maydell wrote:
>> On 2 April 2014 13:47, Peter Maydell <address@hidden> wrote:
>>> On 2 April 2014 13:11, Peter Crosthwaite <address@hidden> wrote:
>>>> Like others, I have been carrying this change locally. Good to see it up!
>>>
>>> Why are you all booting raw Images anyway (just out of curiosity)?
>>
>> Given the recent feedback from the kernel mailing list (viz "don't boot
>> Image unless you really know what you're doing, the correct load
>> image may change randomly depending what other board support
>> is in a multikernel image, etc") maybe we should just remove the
>> Image booting support instead? Clearly nobody who hasn't locally
>> patched QEMU is using it at the moment...
>
> An opportunity for a fresh start at low-level loading facilities, should
> anyone be inclined to pursue it, sounds good to me.
>

FWIW, im already using my own bootloader out of tree that cuts in on
this lower level. I'm getting close to be able to throw away -kernel
and friends completely. To implement I have it as a QOMified device so
you just add it on the command line:

qemu-system-foo -device loader,image=/path/to/file[,addr=0xdeadbeef][,cpunr=X]

To load a particular image to a particular CPU (and it is repeatable).

You can:

1: Load elfs and uImages (addr= is ignored)
2: Load raw or zImages
3: Load data files at arbitrary addresses (cpunr= is ignored)

With this, you can BYO secondary bootloops or even run multiple guests
of different CPUs. You can also boot on a non-zeroth CPU. You can
place raw images wherever you want (the issue in this thread). You can
also load in firmware to ROMs.

I then have a tiny hack to make -kernel optional for all ARM.
Bootloader works for at least ARM and Microblaze, haven't tested for
others yet.

Regards,
Peter

> Christopher
>
> --
> Employee of Qualcomm Innovation Center, Inc.
> Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
> hosted by the Linux Foundation.
>



reply via email to

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