aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/include/asm
diff options
context:
space:
mode:
authorPhil Carmody <ext-phil.2.carmody@nokia.com>2010-08-19 10:16:37 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2010-09-02 10:31:35 -0400
commite5f7772eec3ec342ecfe686ab8330ef538af134b (patch)
treee504f9e7278913ebdee6ff8cbc84fad0bf34a237 /arch/arm/include/asm
parent5793432628ad76f93ae4d31c23fb1c26e3d8b525 (diff)
ARM: 6339/1: module - simplify unwind table handling
The various sections are all dealt with similarly, so factor out that common behaviour. (Incorporating Peter Huewe's fix.) Cc: Peter Huewe <peterhuewe@gmx.de> Signed-off-by: Phil Carmody <ext-phil.2.carmody@nokia.com> Acked-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/include/asm')
-rw-r--r--arch/arm/include/asm/module.h29
1 files changed, 17 insertions, 12 deletions
diff --git a/arch/arm/include/asm/module.h b/arch/arm/include/asm/module.h
index e4dfa69abb68..6dcff0f7f8d7 100644
--- a/arch/arm/include/asm/module.h
+++ b/arch/arm/include/asm/module.h
@@ -7,20 +7,25 @@
7 7
8struct unwind_table; 8struct unwind_table;
9 9
10struct mod_arch_specific
11{
12#ifdef CONFIG_ARM_UNWIND 10#ifdef CONFIG_ARM_UNWIND
13 Elf_Shdr *unw_sec_init; 11struct arm_unwind_mapping {
14 Elf_Shdr *unw_sec_devinit; 12 Elf_Shdr *unw_sec;
15 Elf_Shdr *unw_sec_core; 13 Elf_Shdr *sec_text;
16 Elf_Shdr *sec_init_text; 14 struct unwind_table *unwind;
17 Elf_Shdr *sec_devinit_text; 15};
18 Elf_Shdr *sec_core_text; 16enum {
19 struct unwind_table *unwind_init; 17 ARM_SEC_INIT,
20 struct unwind_table *unwind_devinit; 18 ARM_SEC_DEVINIT,
21 struct unwind_table *unwind_core; 19 ARM_SEC_CORE,
22#endif 20 ARM_SEC_MAX,
21};
22struct mod_arch_specific {
23 struct arm_unwind_mapping map[ARM_SEC_MAX];
23}; 24};
25#else
26struct mod_arch_specific {
27};
28#endif
24 29
25/* 30/*
26 * Include the ARM architecture version. 31 * Include the ARM architecture version.