aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc
diff options
context:
space:
mode:
authorStephen Rothwell <sfr@canb.auug.org.au>2007-09-18 03:25:12 -0400
committerPaul Mackerras <paulus@samba.org>2007-09-19 01:25:34 -0400
commit9e4859ef5462193643fd2b3c8ffb298e5a4a4319 (patch)
treed3c225cdfe123a98af1b6bbf280178ae1eb367cc /arch/powerpc
parentee7a76da1ef5e3e5e0e54e84319e435ea25c267c (diff)
[POWERPC] FWNMI is only used on pSeries
This saves 4k on non pSeries builds (except for iSeries where it saves almost 4k). Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc')
-rw-r--r--arch/powerpc/kernel/crash_dump.c2
-rw-r--r--arch/powerpc/kernel/head_64.S7
2 files changed, 9 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/crash_dump.c b/arch/powerpc/kernel/crash_dump.c
index ffa91d673ec8..29ff77c468ac 100644
--- a/arch/powerpc/kernel/crash_dump.c
+++ b/arch/powerpc/kernel/crash_dump.c
@@ -54,8 +54,10 @@ void __init setup_kdump_trampoline(void)
54 create_trampoline(i); 54 create_trampoline(i);
55 } 55 }
56 56
57#ifdef CONFIG_PPC_PSERIES
57 create_trampoline(__pa(system_reset_fwnmi) - PHYSICAL_START); 58 create_trampoline(__pa(system_reset_fwnmi) - PHYSICAL_START);
58 create_trampoline(__pa(machine_check_fwnmi) - PHYSICAL_START); 59 create_trampoline(__pa(machine_check_fwnmi) - PHYSICAL_START);
60#endif /* CONFIG_PPC_PSERIES */
59 61
60 DBG(" <- setup_kdump_trampoline()\n"); 62 DBG(" <- setup_kdump_trampoline()\n");
61} 63}
diff --git a/arch/powerpc/kernel/head_64.S b/arch/powerpc/kernel/head_64.S
index 384cc75f1cd4..22ac245bd59a 100644
--- a/arch/powerpc/kernel/head_64.S
+++ b/arch/powerpc/kernel/head_64.S
@@ -341,6 +341,7 @@ slb_miss_user_pseries:
341 b . /* prevent spec. execution */ 341 b . /* prevent spec. execution */
342#endif /* __DISABLED__ */ 342#endif /* __DISABLED__ */
343 343
344#ifdef CONFIG_PPC_PSERIES
344/* 345/*
345 * Vectors for the FWNMI option. Share common code. 346 * Vectors for the FWNMI option. Share common code.
346 */ 347 */
@@ -358,6 +359,8 @@ machine_check_fwnmi:
358 mtspr SPRN_SPRG1,r13 /* save r13 */ 359 mtspr SPRN_SPRG1,r13 /* save r13 */
359 EXCEPTION_PROLOG_PSERIES_FORCE_64BIT(PACA_EXMC, machine_check_common) 360 EXCEPTION_PROLOG_PSERIES_FORCE_64BIT(PACA_EXMC, machine_check_common)
360 361
362#endif /* CONFIG_PPC_PSERIES */
363
361/*** Common interrupt handlers ***/ 364/*** Common interrupt handlers ***/
362 365
363 STD_EXCEPTION_COMMON(0x100, system_reset, .system_reset_exception) 366 STD_EXCEPTION_COMMON(0x100, system_reset, .system_reset_exception)
@@ -1012,6 +1015,7 @@ _GLOBAL(do_stab_bolted)
1012initial_stab: 1015initial_stab:
1013 .space 4096 1016 .space 4096
1014 1017
1018#ifdef CONFIG_PPC_PSERIES
1015/* 1019/*
1016 * Data area reserved for FWNMI option. 1020 * Data area reserved for FWNMI option.
1017 * This address (0x7000) is fixed by the RPA. 1021 * This address (0x7000) is fixed by the RPA.
@@ -1019,6 +1023,7 @@ initial_stab:
1019 .= 0x7000 1023 .= 0x7000
1020 .globl fwnmi_data_area 1024 .globl fwnmi_data_area
1021fwnmi_data_area: 1025fwnmi_data_area:
1026#endif /* CONFIG_PPC_PSERIES */
1022 1027
1023 /* iSeries does not use the FWNMI stuff, so it is safe to put 1028 /* iSeries does not use the FWNMI stuff, so it is safe to put
1024 * this here, even if we later allow kernels that will boot on 1029 * this here, even if we later allow kernels that will boot on
@@ -1043,7 +1048,9 @@ xLparMap:
1043 1048
1044#endif /* CONFIG_PPC_ISERIES */ 1049#endif /* CONFIG_PPC_ISERIES */
1045 1050
1051#ifdef CONFIG_PPC_PSERIES
1046 . = 0x8000 1052 . = 0x8000
1053#endif /* CONFIG_PPC_PSERIES */
1047 1054
1048/* 1055/*
1049 * On pSeries and most other platforms, secondary processors spin 1056 * On pSeries and most other platforms, secondary processors spin