diff options
Diffstat (limited to 'arch/powerpc/kernel/setup_32.c')
-rw-r--r-- | arch/powerpc/kernel/setup_32.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/arch/powerpc/kernel/setup_32.c b/arch/powerpc/kernel/setup_32.c index 517ed1b1b160..04df53a3c86d 100644 --- a/arch/powerpc/kernel/setup_32.c +++ b/arch/powerpc/kernel/setup_32.c | |||
@@ -87,6 +87,7 @@ int ucache_bsize; | |||
87 | unsigned long __init early_init(unsigned long dt_ptr) | 87 | unsigned long __init early_init(unsigned long dt_ptr) |
88 | { | 88 | { |
89 | unsigned long offset = reloc_offset(); | 89 | unsigned long offset = reloc_offset(); |
90 | struct cpu_spec *spec; | ||
90 | 91 | ||
91 | /* First zero the BSS -- use memset_io, some platforms don't have | 92 | /* First zero the BSS -- use memset_io, some platforms don't have |
92 | * caches on yet */ | 93 | * caches on yet */ |
@@ -96,8 +97,11 @@ unsigned long __init early_init(unsigned long dt_ptr) | |||
96 | * Identify the CPU type and fix up code sections | 97 | * Identify the CPU type and fix up code sections |
97 | * that depend on which cpu we have. | 98 | * that depend on which cpu we have. |
98 | */ | 99 | */ |
99 | identify_cpu(offset, 0); | 100 | spec = identify_cpu(offset); |
100 | do_cpu_ftr_fixups(offset); | 101 | |
102 | do_feature_fixups(spec->cpu_features, | ||
103 | PTRRELOC(&__start___ftr_fixup), | ||
104 | PTRRELOC(&__stop___ftr_fixup)); | ||
101 | 105 | ||
102 | return KERNELBASE + offset; | 106 | return KERNELBASE + offset; |
103 | } | 107 | } |