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