diff options
author | Varun Sethi <Varun.Sethi@freescale.com> | 2012-07-09 08:58:21 -0400 |
---|---|---|
committer | Kumar Gala <galak@kernel.crashing.org> | 2012-09-12 15:57:09 -0400 |
commit | 2c71b0cc4a626d8bd02b88b3b92ce18be4d54c6d (patch) | |
tree | d8bce06c440de2c1396a6d28cc399f361c90f59e /arch/powerpc/kernel | |
parent | 7e0f4872a33c6da38e727cf42c939cc32294fce6 (diff) |
powerpc/booke: Merge the 32 bit e5500/e500mc cpu setup code.
Merge the 32 bit cpu setup code for e500mc/e5500 and define the
"cpu_restore" routine (for e5500/e6500) only for the 64 bit case. The
cpu_restore routine is used in the 64 bit case for setting up the secondary
cores.
Signed-off-by: Varun Sethi <Varun.Sethi@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/kernel')
-rw-r--r-- | arch/powerpc/kernel/cpu_setup_fsl_booke.S | 7 | ||||
-rw-r--r-- | arch/powerpc/kernel/cputable.c | 4 |
2 files changed, 7 insertions, 4 deletions
diff --git a/arch/powerpc/kernel/cpu_setup_fsl_booke.S b/arch/powerpc/kernel/cpu_setup_fsl_booke.S index a55d028aa0da..021822daa8f6 100644 --- a/arch/powerpc/kernel/cpu_setup_fsl_booke.S +++ b/arch/powerpc/kernel/cpu_setup_fsl_booke.S | |||
@@ -75,6 +75,7 @@ _GLOBAL(__setup_cpu_e500v2) | |||
75 | mtlr r4 | 75 | mtlr r4 |
76 | blr | 76 | blr |
77 | _GLOBAL(__setup_cpu_e500mc) | 77 | _GLOBAL(__setup_cpu_e500mc) |
78 | _GLOBAL(__setup_cpu_e5500) | ||
78 | mflr r5 | 79 | mflr r5 |
79 | bl __e500_icache_setup | 80 | bl __e500_icache_setup |
80 | bl __e500_dcache_setup | 81 | bl __e500_dcache_setup |
@@ -104,19 +105,17 @@ _GLOBAL(__setup_cpu_e500mc) | |||
104 | mtlr r5 | 105 | mtlr r5 |
105 | blr | 106 | blr |
106 | #endif | 107 | #endif |
108 | #ifdef CONFIG_PPC_BOOK3E_64 | ||
107 | /* Right now, restore and setup are the same thing */ | 109 | /* Right now, restore and setup are the same thing */ |
108 | _GLOBAL(__restore_cpu_e5500) | 110 | _GLOBAL(__restore_cpu_e5500) |
109 | _GLOBAL(__setup_cpu_e5500) | 111 | _GLOBAL(__setup_cpu_e5500) |
110 | mflr r4 | 112 | mflr r4 |
111 | bl __e500_icache_setup | 113 | bl __e500_icache_setup |
112 | bl __e500_dcache_setup | 114 | bl __e500_dcache_setup |
113 | #ifdef CONFIG_PPC_BOOK3E_64 | ||
114 | bl .__setup_base_ivors | 115 | bl .__setup_base_ivors |
115 | bl .setup_perfmon_ivor | 116 | bl .setup_perfmon_ivor |
116 | bl .setup_doorbell_ivors | 117 | bl .setup_doorbell_ivors |
117 | bl .setup_ehv_ivors | 118 | bl .setup_ehv_ivors |
118 | #else | ||
119 | bl __setup_e500mc_ivors | ||
120 | #endif | ||
121 | mtlr r4 | 119 | mtlr r4 |
122 | blr | 120 | blr |
121 | #endif | ||
diff --git a/arch/powerpc/kernel/cputable.c b/arch/powerpc/kernel/cputable.c index 455faa389876..0514c21f138b 100644 --- a/arch/powerpc/kernel/cputable.c +++ b/arch/powerpc/kernel/cputable.c | |||
@@ -2016,7 +2016,9 @@ static struct cpu_spec __initdata cpu_specs[] = { | |||
2016 | .oprofile_cpu_type = "ppc/e500mc", | 2016 | .oprofile_cpu_type = "ppc/e500mc", |
2017 | .oprofile_type = PPC_OPROFILE_FSL_EMB, | 2017 | .oprofile_type = PPC_OPROFILE_FSL_EMB, |
2018 | .cpu_setup = __setup_cpu_e5500, | 2018 | .cpu_setup = __setup_cpu_e5500, |
2019 | #ifndef CONFIG_PPC32 | ||
2019 | .cpu_restore = __restore_cpu_e5500, | 2020 | .cpu_restore = __restore_cpu_e5500, |
2021 | #endif | ||
2020 | .machine_check = machine_check_e500mc, | 2022 | .machine_check = machine_check_e500mc, |
2021 | .platform = "ppce5500", | 2023 | .platform = "ppce5500", |
2022 | }, | 2024 | }, |
@@ -2034,7 +2036,9 @@ static struct cpu_spec __initdata cpu_specs[] = { | |||
2034 | .oprofile_cpu_type = "ppc/e6500", | 2036 | .oprofile_cpu_type = "ppc/e6500", |
2035 | .oprofile_type = PPC_OPROFILE_FSL_EMB, | 2037 | .oprofile_type = PPC_OPROFILE_FSL_EMB, |
2036 | .cpu_setup = __setup_cpu_e5500, | 2038 | .cpu_setup = __setup_cpu_e5500, |
2039 | #ifndef CONFIG_PPC32 | ||
2037 | .cpu_restore = __restore_cpu_e5500, | 2040 | .cpu_restore = __restore_cpu_e5500, |
2041 | #endif | ||
2038 | .machine_check = machine_check_e500mc, | 2042 | .machine_check = machine_check_e500mc, |
2039 | .platform = "ppce6500", | 2043 | .platform = "ppce6500", |
2040 | }, | 2044 | }, |