[PATCH] powerpc: Kill _machine and hard-coded platform numbers

This removes statically assigned platform numbers and reworks the
powerpc platform probe code to use a better mechanism.  With this,
board support files can simply declare a new machine type with a
macro, and implement a probe() function that uses the flattened
device-tree to detect if they apply for a given machine.

We now have a machine_is() macro that replaces the comparisons of
_machine with the various PLATFORM_* constants.  This commit also
changes various drivers to use the new macro instead of looking at
_machine.

Signed-off-by: Benjamin Herrenschmidt <[email protected]>
Signed-off-by: Paul Mackerras <[email protected]>
This commit is contained in:
Benjamin Herrenschmidt 2006-03-28 23:15:54 +11:00 • committed by Paul Mackerras
commit e8222502ee
63 changed files with 560 additions and 543 deletions

View file

@ -42,6 +42,7 @@
#include <asm/semaphore.h>
#ifdef CONFIG_PPC
#include <asm/prom.h>
#include <asm/machdep.h>
#endif
@ -294,7 +295,7 @@ int __init adb_init(void)
int i;
#ifdef CONFIG_PPC32
if ( (_machine != _MACH_chrp) && (_machine != _MACH_Pmac) )
if (!machine_is(chrp) && !machine_is(powermac))
return 0;
#endif
#ifdef CONFIG_MAC

View file

@ -1206,8 +1206,8 @@ init_ms_a3(int id)
static int __init adbhid_init(void)
{
#ifndef CONFIG_MAC
if ( (_machine != _MACH_chrp) && (_machine != _MACH_Pmac) )
return 0;
if (!machine_is(chrp) && !machine_is(powermac))
return 0;
#endif
led_request.complete = 1;

View file

@ -839,8 +839,8 @@ static int __init media_bay_init(void)
media_bays[i].cd_index = -1;
#endif
}
if (_machine != _MACH_Pmac)
return -ENODEV;
if (!machine_is(powermac))
return 0;
macio_register_driver(&media_bay_driver);