diff options
author | Kevin Hao <haokexin@gmail.com> | 2013-07-14 05:02:06 -0400 |
---|---|---|
committer | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2013-08-14 00:59:50 -0400 |
commit | 5f20be4478032eeba66abddc79eae3abea45c5c8 (patch) | |
tree | c09e35314402b3647a012b517fa19a7aa0d6a80c | |
parent | 037f0eed57c3f35367ac32275e45f24e297549e9 (diff) |
powerpc: Remove the empty giveup_fpu() function on 32bit kernel
Instead of implementing an empty giveup_fpu() function for each
32bit processor type, replace them with an unique empty inline
function.
Signed-off-by: Kevin Hao <haokexin@gmail.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
-rw-r--r-- | arch/powerpc/include/asm/switch_to.h | 3 | ||||
-rw-r--r-- | arch/powerpc/kernel/head_40x.S | 8 | ||||
-rw-r--r-- | arch/powerpc/kernel/head_44x.S | 10 | ||||
-rw-r--r-- | arch/powerpc/kernel/head_8xx.S | 4 | ||||
-rw-r--r-- | arch/powerpc/kernel/head_fsl_booke.S | 10 | ||||
-rw-r--r-- | arch/powerpc/kernel/ppc_ksyms.c | 2 |
6 files changed, 4 insertions, 33 deletions
diff --git a/arch/powerpc/include/asm/switch_to.h b/arch/powerpc/include/asm/switch_to.h index 39cf0f6cc373..2c7edde8f1bb 100644 --- a/arch/powerpc/include/asm/switch_to.h +++ b/arch/powerpc/include/asm/switch_to.h | |||
@@ -16,7 +16,6 @@ struct thread_struct; | |||
16 | extern struct task_struct *_switch(struct thread_struct *prev, | 16 | extern struct task_struct *_switch(struct thread_struct *prev, |
17 | struct thread_struct *next); | 17 | struct thread_struct *next); |
18 | 18 | ||
19 | extern void giveup_fpu(struct task_struct *); | ||
20 | extern void load_up_fpu(void); | 19 | extern void load_up_fpu(void); |
21 | extern void enable_kernel_fp(void); | 20 | extern void enable_kernel_fp(void); |
22 | extern void enable_kernel_altivec(void); | 21 | extern void enable_kernel_altivec(void); |
@@ -38,8 +37,10 @@ static inline void discard_lazy_cpu_state(void) | |||
38 | 37 | ||
39 | #ifdef CONFIG_PPC_FPU | 38 | #ifdef CONFIG_PPC_FPU |
40 | extern void flush_fp_to_thread(struct task_struct *); | 39 | extern void flush_fp_to_thread(struct task_struct *); |
40 | extern void giveup_fpu(struct task_struct *); | ||
41 | #else | 41 | #else |
42 | static inline void flush_fp_to_thread(struct task_struct *t) { } | 42 | static inline void flush_fp_to_thread(struct task_struct *t) { } |
43 | static inline void giveup_fpu(struct task_struct *t) { } | ||
43 | #endif | 44 | #endif |
44 | 45 | ||
45 | #ifdef CONFIG_ALTIVEC | 46 | #ifdef CONFIG_ALTIVEC |
diff --git a/arch/powerpc/kernel/head_40x.S b/arch/powerpc/kernel/head_40x.S index 8a9b6f59822d..67ee0d6c1070 100644 --- a/arch/powerpc/kernel/head_40x.S +++ b/arch/powerpc/kernel/head_40x.S | |||
@@ -822,14 +822,6 @@ finish_tlb_load: | |||
822 | rfi /* Should sync shadow TLBs */ | 822 | rfi /* Should sync shadow TLBs */ |
823 | b . /* prevent prefetch past rfi */ | 823 | b . /* prevent prefetch past rfi */ |
824 | 824 | ||
825 | /* extern void giveup_fpu(struct task_struct *prev) | ||
826 | * | ||
827 | * The PowerPC 4xx family of processors do not have an FPU, so this just | ||
828 | * returns. | ||
829 | */ | ||
830 | _ENTRY(giveup_fpu) | ||
831 | blr | ||
832 | |||
833 | /* This is where the main kernel code starts. | 825 | /* This is where the main kernel code starts. |
834 | */ | 826 | */ |
835 | start_here: | 827 | start_here: |
diff --git a/arch/powerpc/kernel/head_44x.S b/arch/powerpc/kernel/head_44x.S index 97e2671cde7f..c334f53453f7 100644 --- a/arch/powerpc/kernel/head_44x.S +++ b/arch/powerpc/kernel/head_44x.S | |||
@@ -784,16 +784,6 @@ _GLOBAL(__fixup_440A_mcheck) | |||
784 | sync | 784 | sync |
785 | blr | 785 | blr |
786 | 786 | ||
787 | /* | ||
788 | * extern void giveup_fpu(struct task_struct *prev) | ||
789 | * | ||
790 | * The 44x core does not have an FPU. | ||
791 | */ | ||
792 | #ifndef CONFIG_PPC_FPU | ||
793 | _GLOBAL(giveup_fpu) | ||
794 | blr | ||
795 | #endif | ||
796 | |||
797 | _GLOBAL(set_context) | 787 | _GLOBAL(set_context) |
798 | 788 | ||
799 | #ifdef CONFIG_BDI_SWITCH | 789 | #ifdef CONFIG_BDI_SWITCH |
diff --git a/arch/powerpc/kernel/head_8xx.S b/arch/powerpc/kernel/head_8xx.S index b2a5860accfb..1b92a97b1b04 100644 --- a/arch/powerpc/kernel/head_8xx.S +++ b/arch/powerpc/kernel/head_8xx.S | |||
@@ -691,10 +691,6 @@ modified_instr: | |||
691 | b 151b | 691 | b 151b |
692 | #endif | 692 | #endif |
693 | 693 | ||
694 | .globl giveup_fpu | ||
695 | giveup_fpu: | ||
696 | blr | ||
697 | |||
698 | /* | 694 | /* |
699 | * This is where the main kernel code starts. | 695 | * This is where the main kernel code starts. |
700 | */ | 696 | */ |
diff --git a/arch/powerpc/kernel/head_fsl_booke.S b/arch/powerpc/kernel/head_fsl_booke.S index d10a7cacccd2..289afaffbbb5 100644 --- a/arch/powerpc/kernel/head_fsl_booke.S +++ b/arch/powerpc/kernel/head_fsl_booke.S | |||
@@ -948,16 +948,6 @@ _GLOBAL(giveup_spe) | |||
948 | #endif /* CONFIG_SPE */ | 948 | #endif /* CONFIG_SPE */ |
949 | 949 | ||
950 | /* | 950 | /* |
951 | * extern void giveup_fpu(struct task_struct *prev) | ||
952 | * | ||
953 | * Not all FSL Book-E cores have an FPU | ||
954 | */ | ||
955 | #ifndef CONFIG_PPC_FPU | ||
956 | _GLOBAL(giveup_fpu) | ||
957 | blr | ||
958 | #endif | ||
959 | |||
960 | /* | ||
961 | * extern void abort(void) | 951 | * extern void abort(void) |
962 | * | 952 | * |
963 | * At present, this routine just applies a system reset. | 953 | * At present, this routine just applies a system reset. |
diff --git a/arch/powerpc/kernel/ppc_ksyms.c b/arch/powerpc/kernel/ppc_ksyms.c index 380a6f9fa7f8..21646dbe1bb3 100644 --- a/arch/powerpc/kernel/ppc_ksyms.c +++ b/arch/powerpc/kernel/ppc_ksyms.c | |||
@@ -96,7 +96,9 @@ EXPORT_SYMBOL(pci_dram_offset); | |||
96 | 96 | ||
97 | EXPORT_SYMBOL(start_thread); | 97 | EXPORT_SYMBOL(start_thread); |
98 | 98 | ||
99 | #ifdef CONFIG_PPC_FPU | ||
99 | EXPORT_SYMBOL(giveup_fpu); | 100 | EXPORT_SYMBOL(giveup_fpu); |
101 | #endif | ||
100 | #ifdef CONFIG_ALTIVEC | 102 | #ifdef CONFIG_ALTIVEC |
101 | EXPORT_SYMBOL(giveup_altivec); | 103 | EXPORT_SYMBOL(giveup_altivec); |
102 | #endif /* CONFIG_ALTIVEC */ | 104 | #endif /* CONFIG_ALTIVEC */ |