Linux MIPS Architecture development
 help / color / mirror / Atom feed
* Creating infrastructure to allow one kernel for multiple machines
@ 2007-02-27 14:48 Martin Michlmayr
  2007-03-03 15:03 ` Ralf Baechle
  0 siblings, 1 reply; 2+ messages in thread
From: Martin Michlmayr @ 2007-02-27 14:48 UTC (permalink / raw)
  To: linux-mips

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.
-- 
Martin Michlmayr
http://www.cyrius.com/

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Creating infrastructure to allow one kernel for multiple machines
  2007-02-27 14:48 Creating infrastructure to allow one kernel for multiple machines Martin Michlmayr
@ 2007-03-03 15:03 ` Ralf Baechle
  0 siblings, 0 replies; 2+ messages in thread
From: Ralf Baechle @ 2007-03-03 15:03 UTC (permalink / raw)
  To: Martin Michlmayr; +Cc: linux-mips

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

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2007-03-03 21:13 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-02-27 14:48 Creating infrastructure to allow one kernel for multiple machines Martin Michlmayr
2007-03-03 15:03 ` Ralf Baechle

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox