[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 <benh@kernel.crashing.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
This commit is contained in:
committed by
Paul Mackerras
parent
056cb48a2f
commit
e8222502ee
@@ -167,7 +167,7 @@ int htab_bolt_mapping(unsigned long vstart, unsigned long vend,
|
||||
* normal insert callback here.
|
||||
*/
|
||||
#ifdef CONFIG_PPC_ISERIES
|
||||
if (_machine == PLATFORM_ISERIES_LPAR)
|
||||
if (machine_is(iseries))
|
||||
ret = iSeries_hpte_insert(hpteg, va,
|
||||
paddr,
|
||||
tmp_mode,
|
||||
@@ -176,7 +176,7 @@ int htab_bolt_mapping(unsigned long vstart, unsigned long vend,
|
||||
else
|
||||
#endif
|
||||
#ifdef CONFIG_PPC_PSERIES
|
||||
if (_machine & PLATFORM_LPAR)
|
||||
if (machine_is(pseries) && firmware_has_feature(FW_FEATURE_LPAR))
|
||||
ret = pSeries_lpar_hpte_insert(hpteg, va,
|
||||
paddr,
|
||||
tmp_mode,
|
||||
@@ -295,8 +295,7 @@ static void __init htab_init_page_sizes(void)
|
||||
* Not in the device-tree, let's fallback on known size
|
||||
* list for 16M capable GP & GR
|
||||
*/
|
||||
if ((_machine != PLATFORM_ISERIES_LPAR) &&
|
||||
cpu_has_feature(CPU_FTR_16M_PAGE))
|
||||
if (cpu_has_feature(CPU_FTR_16M_PAGE) && !machine_is(iseries))
|
||||
memcpy(mmu_psize_defs, mmu_psize_defaults_gp,
|
||||
sizeof(mmu_psize_defaults_gp));
|
||||
found:
|
||||
|
Reference in New Issue
Block a user