All of lore.kernel.org
 help / color / mirror / Atom feed
From: "H. Peter Anvin" <hpa@linux.intel.com>
To: Grant Likely <grant.likely@secretlab.ca>
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
	Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	devicetree-discuss@lists.ozlabs.org, x86@kernel.org,
	linux-kernel@vger.kernel.org, sodaville@linutronix.de
Subject: Re: [sodaville] [PATCH 02/11] x86: Add device tree support
Date: Thu, 30 Dec 2010 16:51:05 -0800	[thread overview]
Message-ID: <4D1D28F9.7010808@linux.intel.com> (raw)
In-Reply-To: <20101230082654.GB11721@angua.secretlab.ca>

On 12/30/2010 12:26 AM, Grant Likely wrote:
> 
> Since Linux on x86 has pretty much always depended on a two stage boot
> (firmware boots a bootloader like grub which in turn boots the
> kernel), then what is the use case for pursuing an in-kernel dtb
> linkage?  simpleimage was used on powerpc for the use-case where there
> is no 2nd stage bootloader, but instead only the kernel which is
> booted from some firmware that is non-upgradeable (or at least too
> risky to upgrade).  Same with the cuImages.  The wrapper is
> effectively a 2nd stage bootloader to adapt from what older u-boot
> provides and what the kernel needs.
> 
> What is the boot sequence for the embedded x86 platforms?  Is there
> still a bootloader?  If so, what prevents always depending on the
> bootloader to pass in the device tree blob?  If the bootloader is
> software (not firmware) then it should be something we have control
> over when shipping a distribution.
> 
> BTW, don't take microblaze as the example to be emulated.  Some of
> the things it does for device tree support is not scalable, like
> linking the .dtbs directly into the kernel.
> 
> John Bonesio has also prototyped doing a similar zImage bootwrapper on
> arm which allows a dtb to be concatenated to the kernel image and
> updated before passing it to the kernel.  As it stands, there are no
> plans to use in-kernel .dtb linking on ARM.
> 
> I know it's not very fair to bring up these issues again right before
> the merge window opens.  I got myself overcommitted and dropped the
> ball over the last 1.5 months and I beg forgiveness.  However, I do
> want to make sure that the right decision is made and I'd be happier
> if a consistent scheme is used for passing the .dtb on all
> architectures.
> 

There are a number of different boot loader solutions in use on embedded
platforms, as much as we would like to avoid it.

However, the ability to link in the dtb will provide a
architecture-neutral option of last resort.  I'm not saying it's a good
option, but it's better than random ad hoc stuff, and if that means that
it will only ever be used during in-lab platform bringup, *that is still
a huge win*.

	-hpa

WARNING: multiple messages have this Message-ID (diff)
From: "H. Peter Anvin" <hpa-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
To: Grant Likely <grant.likely-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org>
Cc: Sebastian Andrzej Siewior
	<bigeasy-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org>,
	x86-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	sodaville-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org,
	devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org
Subject: Re: [sodaville] [PATCH 02/11] x86: Add device tree support
Date: Thu, 30 Dec 2010 16:51:05 -0800	[thread overview]
Message-ID: <4D1D28F9.7010808@linux.intel.com> (raw)
In-Reply-To: <20101230082654.GB11721-MrY2KI0G/OVr83L8+7iqerDks+cytr/Z@public.gmane.org>

On 12/30/2010 12:26 AM, Grant Likely wrote:
> 
> Since Linux on x86 has pretty much always depended on a two stage boot
> (firmware boots a bootloader like grub which in turn boots the
> kernel), then what is the use case for pursuing an in-kernel dtb
> linkage?  simpleimage was used on powerpc for the use-case where there
> is no 2nd stage bootloader, but instead only the kernel which is
> booted from some firmware that is non-upgradeable (or at least too
> risky to upgrade).  Same with the cuImages.  The wrapper is
> effectively a 2nd stage bootloader to adapt from what older u-boot
> provides and what the kernel needs.
> 
> What is the boot sequence for the embedded x86 platforms?  Is there
> still a bootloader?  If so, what prevents always depending on the
> bootloader to pass in the device tree blob?  If the bootloader is
> software (not firmware) then it should be something we have control
> over when shipping a distribution.
> 
> BTW, don't take microblaze as the example to be emulated.  Some of
> the things it does for device tree support is not scalable, like
> linking the .dtbs directly into the kernel.
> 
> John Bonesio has also prototyped doing a similar zImage bootwrapper on
> arm which allows a dtb to be concatenated to the kernel image and
> updated before passing it to the kernel.  As it stands, there are no
> plans to use in-kernel .dtb linking on ARM.
> 
> I know it's not very fair to bring up these issues again right before
> the merge window opens.  I got myself overcommitted and dropped the
> ball over the last 1.5 months and I beg forgiveness.  However, I do
> want to make sure that the right decision is made and I'd be happier
> if a consistent scheme is used for passing the .dtb on all
> architectures.
> 

There are a number of different boot loader solutions in use on embedded
platforms, as much as we would like to avoid it.

However, the ability to link in the dtb will provide a
architecture-neutral option of last resort.  I'm not saying it's a good
option, but it's better than random ad hoc stuff, and if that means that
it will only ever be used during in-lab platform bringup, *that is still
a huge win*.

	-hpa

  parent reply	other threads:[~2010-12-31  0:51 UTC|newest]

Thread overview: 111+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-11-25 17:39 Add device tree support for x86 Sebastian Andrzej Siewior
2010-11-25 17:39 ` [PATCH 01/11] x86/kernel: remove conditional early remap in parse_e820_ext Sebastian Andrzej Siewior
2010-12-08  8:38   ` [sodaville] " Sebastian Andrzej Siewior
2010-12-08 14:15     ` Thomas Gleixner
2010-12-15 23:28   ` H. Peter Anvin
2010-12-16  9:55     ` Sebastian Andrzej Siewior
2010-11-25 17:39 ` [PATCH 02/11] x86: Add device tree support Sebastian Andrzej Siewior
2010-11-25 17:39   ` Sebastian Andrzej Siewior
2010-11-25 22:53   ` Sam Ravnborg
2010-11-25 22:53     ` Sam Ravnborg
2010-11-26  9:06     ` Sebastian Andrzej Siewior
2010-11-26  9:06       ` Sebastian Andrzej Siewior
2010-11-26 21:42   ` Benjamin Herrenschmidt
2010-11-26 21:42     ` Benjamin Herrenschmidt
2010-11-28 13:49     ` Sebastian Andrzej Siewior
2010-11-28 13:49       ` Sebastian Andrzej Siewior
2010-11-28 22:28       ` Benjamin Herrenschmidt
2010-11-28 22:28         ` Benjamin Herrenschmidt
2010-12-30  8:26       ` Grant Likely
2010-12-30  8:26         ` Grant Likely
2010-12-30  8:45         ` Rob Landley
2010-12-30 20:58           ` Grant Likely
2010-12-30 20:58             ` Grant Likely
2011-01-03 16:05             ` [sodaville] " H. Peter Anvin
2011-01-03 16:19               ` H. Peter Anvin
2011-01-03 17:52                 ` Grant Likely
2011-01-03 17:52                   ` Grant Likely
2011-01-03 18:06                   ` H. Peter Anvin
2011-01-03 18:10                     ` H. Peter Anvin
2011-01-03 18:10                       ` H. Peter Anvin
2010-12-30 20:57         ` Grant Likely
2010-12-30 20:57           ` Grant Likely
2010-12-31  0:51         ` H. Peter Anvin [this message]
2010-12-31  0:51           ` [sodaville] " H. Peter Anvin
2010-11-25 17:39 ` [PATCH 03/11] x86/dtb: Add a device tree for CE4100 Sebastian Andrzej Siewior
2010-11-25 17:39   ` Sebastian Andrzej Siewior
2010-11-26 21:57   ` Benjamin Herrenschmidt
2010-11-26 21:57     ` Benjamin Herrenschmidt
2010-11-28 16:04     ` Sebastian Andrzej Siewior
2010-11-28 16:04       ` Sebastian Andrzej Siewior
2010-11-28 22:53       ` Benjamin Herrenschmidt
2010-11-28 22:53         ` Benjamin Herrenschmidt
2010-11-29  1:34         ` Mitch Bradley
2010-11-29 18:26           ` [sodaville] " H. Peter Anvin
2010-11-29 20:03             ` Benjamin Herrenschmidt
2010-11-29 19:44           ` Sebastian Andrzej Siewior
2010-11-29 19:44             ` Sebastian Andrzej Siewior
2010-12-02  0:40             ` David Gibson
2010-12-02  0:40               ` David Gibson
2010-11-29 19:07         ` Scott Wood
2010-11-29 19:07           ` Scott Wood
2010-11-29 20:05           ` Benjamin Herrenschmidt
2010-11-29 20:32             ` Mitch Bradley
2010-11-29 20:44               ` Benjamin Herrenschmidt
2010-11-29 20:44                 ` Benjamin Herrenschmidt
2010-11-29 21:32                 ` Mitch Bradley
2010-11-29 21:32                   ` Mitch Bradley
2010-11-29 23:47                 ` Alan Cox
2010-11-30  2:50                   ` Benjamin Herrenschmidt
2010-11-30  2:50                     ` Benjamin Herrenschmidt
2010-11-30 11:20                     ` Sebastian Andrzej Siewior
2010-11-30 11:20                       ` Sebastian Andrzej Siewior
2010-11-29 23:42               ` Alan Cox
2010-11-30 21:18                 ` [sodaville] " H. Peter Anvin
2010-11-30 11:51               ` Sebastian Andrzej Siewior
2010-11-30 11:51                 ` Sebastian Andrzej Siewior
2010-11-30 20:31                 ` Benjamin Herrenschmidt
2010-11-30 20:31                   ` Benjamin Herrenschmidt
2010-11-29 23:58           ` David Gibson
2010-11-29 23:58             ` David Gibson
2010-11-29 19:36         ` [sodaville] " Sebastian Andrzej Siewior
2010-11-29 20:14           ` Benjamin Herrenschmidt
2010-11-29  2:22     ` David Gibson
2010-11-29  2:22       ` David Gibson
2010-11-25 17:39 ` [PATCH 04/11] x86/dtb: add irq host abstraction Sebastian Andrzej Siewior
2010-11-25 17:39   ` Sebastian Andrzej Siewior
2010-11-25 19:30   ` Jon Loeliger
2010-11-26 14:19     ` Sebastian Andrzej Siewior
2010-11-26 14:19       ` Sebastian Andrzej Siewior
2010-11-26 21:36       ` Benjamin Herrenschmidt
2010-11-26 21:36         ` Benjamin Herrenschmidt
2010-12-01 10:31         ` [sodaville] " Sebastian Andrzej Siewior
2010-12-01 10:31           ` Sebastian Andrzej Siewior
2010-11-27  3:11       ` Jon Loeliger
2010-11-27  3:11         ` Jon Loeliger
2010-11-25 17:39 ` [PATCH 05/11] x86/dtb: add early parsing of APIC and IO APIC Sebastian Andrzej Siewior
2010-11-25 17:39   ` Sebastian Andrzej Siewior
2010-11-25 17:39 ` [PATCH 06/11] x86/dtb: add support hpet Sebastian Andrzej Siewior
2010-11-25 17:39   ` Sebastian Andrzej Siewior
2010-11-25 17:39 ` [PATCH 07/11] x86/dtb: add support for PCI devices backed by dtb nodes Sebastian Andrzej Siewior
2010-11-25 17:39   ` Sebastian Andrzej Siewior
2010-11-27 22:33   ` Benjamin Herrenschmidt
2010-11-27 22:33     ` Benjamin Herrenschmidt
2010-11-28 14:04     ` Sebastian Andrzej Siewior
2010-11-28 14:04       ` Sebastian Andrzej Siewior
2010-11-28 22:32       ` Benjamin Herrenschmidt
2010-11-28 22:32         ` Benjamin Herrenschmidt
2010-12-02 16:17         ` Sebastian Andrzej Siewior
2010-12-02 16:17           ` Sebastian Andrzej Siewior
2010-11-25 17:39 ` [PATCH 08/11] x86/dtb: Add generic bus probe Sebastian Andrzej Siewior
2010-11-25 17:39   ` Sebastian Andrzej Siewior
2010-11-25 17:39 ` [PATCH 09/11] x86/ioapic: Add OF bindings for IO-APIC Sebastian Andrzej Siewior
2010-11-25 17:39   ` Sebastian Andrzej Siewior
2010-11-25 17:40 ` [PATCH 10/11] x86/io_apic: add simply id set Sebastian Andrzej Siewior
2010-11-25 21:04   ` Yinghai Lu
2010-11-26 11:03     ` Sebastian Andrzej Siewior
2010-11-26 16:50     ` [PATCH] x86/io_apic: split setup_ioapic_ids_from_mpc() into a non-checkign version Sebastian Andrzej Siewior
2010-12-06 13:33       ` [tip:x86/apic] x86: io_apic: Split setup_ioapic_ids_from_mpc() tip-bot for Sebastian Andrzej Siewior
2010-12-07  8:59         ` [PATCH -v2] x86, ioapic: Don't write io_apic ID if it is not changed Yinghai Lu
2010-12-09 20:56           ` [tip:x86/apic-cleanups] x86, ioapic: Avoid writing io_apic id if already correct tip-bot for Yinghai Lu
2010-11-25 17:40 ` [PATCH 11/11] x86/ce4100: use OF for ioapic Sebastian Andrzej Siewior

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4D1D28F9.7010808@linux.intel.com \
    --to=hpa@linux.intel.com \
    --cc=benh@kernel.crashing.org \
    --cc=bigeasy@linutronix.de \
    --cc=devicetree-discuss@lists.ozlabs.org \
    --cc=grant.likely@secretlab.ca \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sodaville@linutronix.de \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.