linux-mips
[Top] [All Lists]

Re: Creating infrastructure to allow one kernel for multiple machines

To: Martin Michlmayr <tbm@cyrius.com>
Subject: Re: Creating infrastructure to allow one kernel for multiple machines
From: Ralf Baechle <ralf@linux-mips.org>
Date: Sat, 3 Mar 2007 15:03:14 +0000
Cc: linux-mips@linux-mips.org
In-reply-to: <20070227144818.GA25883@deprecation.cyrius.com>
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <20070227144818.GA25883@deprecation.cyrius.com>
Sender: linux-mips-bounce@linux-mips.org
User-agent: Mutt/1.4.2.2i
On Tue, Feb 27, 2007 at 02:48:18PM +0000, Martin Michlmayr wrote:

> On ARM and PowerPC, you can compile one kernel that will support
> multiple machines, as long as they all belong to the same group (e.g.
> have a compatible CPU).  On ARM, each machine needs to register a
> machine id at http://www.arm.linux.org.uk/developer/machines/ and then
> the boot loader passes this value to the kernel via a register.  On
> PowerPC, information about the machine can be found in OF's
> device-tree.
> 
> On MIPS, you need a separate kernel for each machine, which makes it
> hard for distros to support many machines.  For example, it would be
> nice if you could compile one kernel for vr41xx devices since they
> only differ slightly, e.g. in their PCI mappings.  I'm therefore
> wondering if there are any plans to introduce a scheme on MIPS that
> would allow one kernel for several machines.

In some cases that works but in many case it would simply be painful or
even impossible to implement due to conflicting load addresses, different
word sizes or endianess.  Probing for the system type would be required
and that would turn out to be about as fun as ISA probing.  So there
are limitations and within those I'm not so sure if the pain would be
justifyable.  As usual, I however will consider patches :-9

  Ralf

<Prev in Thread] Current Thread [Next in Thread>
  • Re: Creating infrastructure to allow one kernel for multiple machines, Ralf Baechle <=