From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:51359) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Rv9Eb-0005Qo-RT for qemu-devel@nongnu.org; Wed, 08 Feb 2012 10:15:07 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Rv9EV-0006C3-Lf for qemu-devel@nongnu.org; Wed, 08 Feb 2012 10:15:01 -0500 Received: from mail-bk0-f45.google.com ([209.85.214.45]:63762) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Rv9EV-0006Bu-E6 for qemu-devel@nongnu.org; Wed, 08 Feb 2012 10:14:55 -0500 Received: by bkue19 with SMTP id e19so486668bku.4 for ; Wed, 08 Feb 2012 07:14:54 -0800 (PST) MIME-Version: 1.0 In-Reply-To: <201202081456.08096.paul@codesourcery.com> References: <1328687721-16030-1-git-send-email-peter.crosthwaite@petalogix.com> <201202081420.54442.paul@codesourcery.com> <201202081456.08096.paul@codesourcery.com> Date: Thu, 9 Feb 2012 01:14:54 +1000 Message-ID: From: Peter Crosthwaite Content-Type: multipart/alternative; boundary=0015175cda0298625604b8755b26 Subject: Re: [Qemu-devel] [RFC PATCH] arm boot: added QOM device definition List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paul Brook Cc: peter.maydell@linaro.org, aliguori@us.ibm.com, Alexander Graf , qemu-devel@nongnu.org --0015175cda0298625604b8755b26 Content-Type: text/plain; charset=ISO-8859-1 So here are some of the problems im trying to solve with the bootloader: Smp bootstrap secondary CPUs while loading an elf (currently elfs will be assumed to be not kernels). Change the kernel, initrd and dtb load address on the command line. Use my own SMP secondary bootloop. My intention with this patch was to set myself to do boot parameterizations on the command line by just adding them as qdev props to the arm_linux_loader and set them using -device instantiation. E.G. -device arm_boot_loader,initrd_addr=0x10000000. But if I take the approach you are suggesting, the for this initrd load address option, I would need to add myself a command line option, fetch that command line option in every arm machine model and then pass it to arm_load_kernel. The change pattern is huge and is intrusive to every arm machine model. Whereas what I am suggesting would limit changes to only the bootloader device. 2012/2/9 Paul Brook > > Its the other problem I am more worried about, i.e. when I -device > > instantiate my bootloader with an existing machine how do I get my > ram_size > > and board_ID? The no machine opts for devices policy makes this > impossible > > such that I would have to pass in board_id and ram_size to > > the boot-loader on the command line. Is there any acceptable way where > the > > machine model can make something globally available to devices for the > > purpose of instantiating them with -device? > > I'm not convinved this is a problem worth solving. i.e. is it really worth > consirering the bootloader a user-replaceable part of the machine (without > actually changing the machine description)? Making our bootloader not suck > seems a better option. > > Paul > --0015175cda0298625604b8755b26 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable So here are some of the problems im trying to solve with the bootloader:
Smp bootstrap secondary CPUs while loading an elf (currently elfs will= be assumed to be not kernels).
Change the kernel, initrd and dtb load = address on the command line.
Use my own SMP secondary bootloop.

My intenti= on with this patch was to set myself to do boot parameterizations on the co= mmand line by just adding them as qdev props to the arm_linux_loader and se= t them using -device instantiation. E.G. -device arm_boot_loader,initrd_add= r=3D0x10000000. But if I take the approach you are suggesting, the for this= initrd load address option, I would need to add myself a command line opti= on, fetch that command line option in every arm machine model and then pass= it to arm_load_kernel. The change pattern is huge and is intrusive to ever= y arm machine model. Whereas what I am suggesting would limit changes to on= ly the bootloader device.

2012/2/9 Paul Brook <paul@codesourcery.com>=
> Its the other problem I am more worried about, i.e. = when I -device
> instantiate my bootloader with an existing machine how do I get my ram= _size
> and board_ID? The no machine opts for devices policy makes this imposs= ible
> such that I would have to pass in board_id and ram_size to
> the boot-loader on the command line. Is there any acceptable way where= the
> machine model can make something globally available to devices for the=
> purpose of instantiating them with -device?

I'm not convinved this is a problem worth solving. i.e. is it rea= lly worth
consirering the bootloader a user-replaceable part of the machine (without<= br> actually changing the machine description)? =A0Making our bootloader not su= ck
seems a better option.

Paul

--0015175cda0298625604b8755b26--