aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2006-02-22 18:06:55 -0500
committerRalf Baechle <ralf@linux-mips.org>2006-03-21 08:27:46 -0500
commit8145095cd8fd466980ea6401f26a52e462275222 (patch)
treec6f8642c2137f5fb053f018185cfd15ff7a34c00
parent219ac73a7ad17a3ae3d5c07b4fc8c280645a073a (diff)
[MIPS] Remove CONFIG_BUILD_ELF64.
This option is no longer usable with supported compilers. It will be replaced by usage of -msym32 in a separate patch. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
-rw-r--r--arch/mips/Makefile27
-rw-r--r--arch/mips/configs/bigsur_defconfig1
-rw-r--r--arch/mips/configs/ip27_defconfig1
-rw-r--r--arch/mips/configs/ip32_defconfig1
-rw-r--r--arch/mips/configs/ocelot_c_defconfig1
-rw-r--r--arch/mips/configs/ocelot_g_defconfig1
-rw-r--r--arch/mips/configs/sb1250-swarm_defconfig1
-rw-r--r--arch/mips/kernel/setup.c11
-rw-r--r--arch/mips/mm/tlbex.c13
-rw-r--r--include/asm-mips/mmu_context.h7
-rw-r--r--include/asm-mips/sn/mapped_kernel.h4
-rw-r--r--include/asm-mips/stackframe.h20
12 files changed, 13 insertions, 75 deletions
diff --git a/arch/mips/Makefile b/arch/mips/Makefile
index 3d8dac681c63..c626dd5942f6 100644
--- a/arch/mips/Makefile
+++ b/arch/mips/Makefile
@@ -70,18 +70,20 @@ CHECKFLAGS-$(CONFIG_CPU_LITTLE_ENDIAN) += -D__MIPSEL__
70 70
71CHECKFLAGS = $(CHECKFLAGS-y) 71CHECKFLAGS = $(CHECKFLAGS-y)
72 72
73ifdef CONFIG_BUILD_ELF64 73ifdef CONFIG_32BIT
74gas-abi = 64
75ld-emul = $(64bit-emul)
76vmlinux-32 = vmlinux.32
77vmlinux-64 = vmlinux
78else
79gas-abi = 32 74gas-abi = 32
80ld-emul = $(32bit-emul) 75ld-emul = $(32bit-emul)
81vmlinux-32 = vmlinux 76vmlinux-32 = vmlinux
82vmlinux-64 = vmlinux.64 77vmlinux-64 = vmlinux.64
78endif
83 79
84cflags-$(CONFIG_64BIT) += $(call cc-option,-mno-explicit-relocs) 80ifdef CONFIG_64BIT
81gas-abi = 64
82ld-emul = $(64bit-emul)
83vmlinux-32 = vmlinux.32
84vmlinux-64 = vmlinux
85
86cflags-y += $(call cc-option,-mno-explicit-relocs)
85endif 87endif
86 88
87# 89#
@@ -630,7 +632,6 @@ endif
630ifdef CONFIG_SGI_IP27 632ifdef CONFIG_SGI_IP27
631core-$(CONFIG_SGI_IP27) += arch/mips/sgi-ip27/ 633core-$(CONFIG_SGI_IP27) += arch/mips/sgi-ip27/
632cflags-$(CONFIG_SGI_IP27) += -Iinclude/asm-mips/mach-ip27 634cflags-$(CONFIG_SGI_IP27) += -Iinclude/asm-mips/mach-ip27
633ifdef CONFIG_BUILD_ELF64
634ifdef CONFIG_MAPPED_KERNEL 635ifdef CONFIG_MAPPED_KERNEL
635load-$(CONFIG_SGI_IP27) += 0xc00000004001c000 636load-$(CONFIG_SGI_IP27) += 0xc00000004001c000
636OBJCOPYFLAGS := --change-addresses=0x3fffffff80000000 637OBJCOPYFLAGS := --change-addresses=0x3fffffff80000000
@@ -639,16 +640,6 @@ else
639load-$(CONFIG_SGI_IP27) += 0xa80000000001c000 640load-$(CONFIG_SGI_IP27) += 0xa80000000001c000
640OBJCOPYFLAGS := --change-addresses=0x57ffffff80000000 641OBJCOPYFLAGS := --change-addresses=0x57ffffff80000000
641endif 642endif
642else
643ifdef CONFIG_MAPPED_KERNEL
644load-$(CONFIG_SGI_IP27) += 0xffffffffc001c000
645OBJCOPYFLAGS := --change-addresses=0xc000000080000000
646dataoffset-$(CONFIG_SGI_IP27) += 0x01000000
647else
648load-$(CONFIG_SGI_IP27) += 0xffffffff8001c000
649OBJCOPYFLAGS := --change-addresses=0xa800000080000000
650endif
651endif
652endif 643endif
653 644
654# 645#
diff --git a/arch/mips/configs/bigsur_defconfig b/arch/mips/configs/bigsur_defconfig
index 6fd353779813..e39f1da62976 100644
--- a/arch/mips/configs/bigsur_defconfig
+++ b/arch/mips/configs/bigsur_defconfig
@@ -247,7 +247,6 @@ CONFIG_MMU=y
247# 247#
248CONFIG_BINFMT_ELF=y 248CONFIG_BINFMT_ELF=y
249# CONFIG_BINFMT_MISC is not set 249# CONFIG_BINFMT_MISC is not set
250CONFIG_BUILD_ELF64=y
251CONFIG_MIPS32_COMPAT=y 250CONFIG_MIPS32_COMPAT=y
252CONFIG_COMPAT=y 251CONFIG_COMPAT=y
253CONFIG_MIPS32_O32=y 252CONFIG_MIPS32_O32=y
diff --git a/arch/mips/configs/ip27_defconfig b/arch/mips/configs/ip27_defconfig
index 58c22cd344d3..009ec9d97738 100644
--- a/arch/mips/configs/ip27_defconfig
+++ b/arch/mips/configs/ip27_defconfig
@@ -234,7 +234,6 @@ CONFIG_MMU=y
234# 234#
235CONFIG_BINFMT_ELF=y 235CONFIG_BINFMT_ELF=y
236# CONFIG_BINFMT_MISC is not set 236# CONFIG_BINFMT_MISC is not set
237CONFIG_BUILD_ELF64=y
238CONFIG_MIPS32_COMPAT=y 237CONFIG_MIPS32_COMPAT=y
239CONFIG_COMPAT=y 238CONFIG_COMPAT=y
240CONFIG_MIPS32_O32=y 239CONFIG_MIPS32_O32=y
diff --git a/arch/mips/configs/ip32_defconfig b/arch/mips/configs/ip32_defconfig
index a34db6e82b27..54afa2556f5f 100644
--- a/arch/mips/configs/ip32_defconfig
+++ b/arch/mips/configs/ip32_defconfig
@@ -224,7 +224,6 @@ CONFIG_MMU=y
224# 224#
225CONFIG_BINFMT_ELF=y 225CONFIG_BINFMT_ELF=y
226CONFIG_BINFMT_MISC=y 226CONFIG_BINFMT_MISC=y
227# CONFIG_BUILD_ELF64 is not set
228CONFIG_MIPS32_COMPAT=y 227CONFIG_MIPS32_COMPAT=y
229CONFIG_COMPAT=y 228CONFIG_COMPAT=y
230CONFIG_MIPS32_O32=y 229CONFIG_MIPS32_O32=y
diff --git a/arch/mips/configs/ocelot_c_defconfig b/arch/mips/configs/ocelot_c_defconfig
index e8d6bb3551a2..a8fc4c6c10c9 100644
--- a/arch/mips/configs/ocelot_c_defconfig
+++ b/arch/mips/configs/ocelot_c_defconfig
@@ -220,7 +220,6 @@ CONFIG_MMU=y
220# 220#
221CONFIG_BINFMT_ELF=y 221CONFIG_BINFMT_ELF=y
222# CONFIG_BINFMT_MISC is not set 222# CONFIG_BINFMT_MISC is not set
223# CONFIG_BUILD_ELF64 is not set
224CONFIG_MIPS32_COMPAT=y 223CONFIG_MIPS32_COMPAT=y
225CONFIG_COMPAT=y 224CONFIG_COMPAT=y
226CONFIG_MIPS32_O32=y 225CONFIG_MIPS32_O32=y
diff --git a/arch/mips/configs/ocelot_g_defconfig b/arch/mips/configs/ocelot_g_defconfig
index b6126ad4d06d..dab6c896fbb7 100644
--- a/arch/mips/configs/ocelot_g_defconfig
+++ b/arch/mips/configs/ocelot_g_defconfig
@@ -223,7 +223,6 @@ CONFIG_MMU=y
223# 223#
224CONFIG_BINFMT_ELF=y 224CONFIG_BINFMT_ELF=y
225# CONFIG_BINFMT_MISC is not set 225# CONFIG_BINFMT_MISC is not set
226# CONFIG_BUILD_ELF64 is not set
227CONFIG_MIPS32_COMPAT=y 226CONFIG_MIPS32_COMPAT=y
228CONFIG_COMPAT=y 227CONFIG_COMPAT=y
229CONFIG_MIPS32_O32=y 228CONFIG_MIPS32_O32=y
diff --git a/arch/mips/configs/sb1250-swarm_defconfig b/arch/mips/configs/sb1250-swarm_defconfig
index 52048c906079..6481fb2426f6 100644
--- a/arch/mips/configs/sb1250-swarm_defconfig
+++ b/arch/mips/configs/sb1250-swarm_defconfig
@@ -247,7 +247,6 @@ CONFIG_MMU=y
247# 247#
248CONFIG_BINFMT_ELF=y 248CONFIG_BINFMT_ELF=y
249# CONFIG_BINFMT_MISC is not set 249# CONFIG_BINFMT_MISC is not set
250# CONFIG_BUILD_ELF64 is not set
251CONFIG_MIPS32_COMPAT=y 250CONFIG_MIPS32_COMPAT=y
252CONFIG_COMPAT=y 251CONFIG_COMPAT=y
253CONFIG_MIPS32_O32=y 252CONFIG_MIPS32_O32=y
diff --git a/arch/mips/kernel/setup.c b/arch/mips/kernel/setup.c
index d9293c558e41..0cb3b6097e0e 100644
--- a/arch/mips/kernel/setup.c
+++ b/arch/mips/kernel/setup.c
@@ -447,21 +447,10 @@ static inline void resource_init(void)
447{ 447{
448 int i; 448 int i;
449 449
450#if defined(CONFIG_64BIT) && !defined(CONFIG_BUILD_ELF64)
451 /*
452 * The 64bit code in 32bit object format trick can't represent
453 * 64bit wide relocations for linker script symbols.
454 */
455 code_resource.start = CPHYSADDR(&_text);
456 code_resource.end = CPHYSADDR(&_etext) - 1;
457 data_resource.start = CPHYSADDR(&_etext);
458 data_resource.end = CPHYSADDR(&_edata) - 1;
459#else
460 code_resource.start = virt_to_phys(&_text); 450 code_resource.start = virt_to_phys(&_text);
461 code_resource.end = virt_to_phys(&_etext) - 1; 451 code_resource.end = virt_to_phys(&_etext) - 1;
462 data_resource.start = virt_to_phys(&_etext); 452 data_resource.start = virt_to_phys(&_etext);
463 data_resource.end = virt_to_phys(&_edata) - 1; 453 data_resource.end = virt_to_phys(&_edata) - 1;
464#endif
465 454
466 /* 455 /*
467 * Request address space for all standard RAM. 456 * Request address space for all standard RAM.
diff --git a/arch/mips/mm/tlbex.c b/arch/mips/mm/tlbex.c
index ac4f4bfaae50..599b3c297186 100644
--- a/arch/mips/mm/tlbex.c
+++ b/arch/mips/mm/tlbex.c
@@ -951,7 +951,6 @@ build_get_pmde64(u32 **p, struct label **l, struct reloc **r,
951 /* No i_nop needed here, since the next insn doesn't touch TMP. */ 951 /* No i_nop needed here, since the next insn doesn't touch TMP. */
952 952
953#ifdef CONFIG_SMP 953#ifdef CONFIG_SMP
954# ifdef CONFIG_BUILD_ELF64
955 /* 954 /*
956 * 64 bit SMP running in XKPHYS has smp_processor_id() << 3 955 * 64 bit SMP running in XKPHYS has smp_processor_id() << 3
957 * stored in CONTEXT. 956 * stored in CONTEXT.
@@ -962,18 +961,6 @@ build_get_pmde64(u32 **p, struct label **l, struct reloc **r,
962 i_daddu(p, ptr, ptr, tmp); 961 i_daddu(p, ptr, ptr, tmp);
963 i_dmfc0(p, tmp, C0_BADVADDR); 962 i_dmfc0(p, tmp, C0_BADVADDR);
964 i_ld(p, ptr, rel_lo(pgdc), ptr); 963 i_ld(p, ptr, rel_lo(pgdc), ptr);
965# else
966 /*
967 * 64 bit SMP running in compat space has the lower part of
968 * &pgd_current[smp_processor_id()] stored in CONTEXT.
969 */
970 if (!in_compat_space_p(pgdc))
971 panic("Invalid page directory address!");
972
973 i_dmfc0(p, ptr, C0_CONTEXT);
974 i_dsra(p, ptr, ptr, 23);
975 i_ld(p, ptr, 0, ptr);
976# endif
977#else 964#else
978 i_LA_mostly(p, ptr, pgdc); 965 i_LA_mostly(p, ptr, pgdc);
979 i_ld(p, ptr, rel_lo(pgdc), ptr); 966 i_ld(p, ptr, rel_lo(pgdc), ptr);
diff --git a/include/asm-mips/mmu_context.h b/include/asm-mips/mmu_context.h
index 19cdf7642e66..61cf22588137 100644
--- a/include/asm-mips/mmu_context.h
+++ b/include/asm-mips/mmu_context.h
@@ -33,12 +33,7 @@ extern unsigned long pgd_current[];
33 write_c0_context((unsigned long) smp_processor_id() << 25); \ 33 write_c0_context((unsigned long) smp_processor_id() << 25); \
34 TLBMISS_HANDLER_SETUP_PGD(swapper_pg_dir) 34 TLBMISS_HANDLER_SETUP_PGD(swapper_pg_dir)
35#endif 35#endif
36#if defined(CONFIG_64BIT) && !defined(CONFIG_BUILD_ELF64) 36#ifdef CONFIG_64BIT
37#define TLBMISS_HANDLER_SETUP() \
38 write_c0_context((unsigned long) &pgd_current[smp_processor_id()] << 23); \
39 TLBMISS_HANDLER_SETUP_PGD(swapper_pg_dir)
40#endif
41#if defined(CONFIG_64BIT) && defined(CONFIG_BUILD_ELF64)
42#define TLBMISS_HANDLER_SETUP() \ 37#define TLBMISS_HANDLER_SETUP() \
43 write_c0_context((unsigned long) smp_processor_id() << 26); \ 38 write_c0_context((unsigned long) smp_processor_id() << 26); \
44 TLBMISS_HANDLER_SETUP_PGD(swapper_pg_dir) 39 TLBMISS_HANDLER_SETUP_PGD(swapper_pg_dir)
diff --git a/include/asm-mips/sn/mapped_kernel.h b/include/asm-mips/sn/mapped_kernel.h
index 3a17846df849..59edb20f8ec5 100644
--- a/include/asm-mips/sn/mapped_kernel.h
+++ b/include/asm-mips/sn/mapped_kernel.h
@@ -23,11 +23,7 @@
23#include <linux/config.h> 23#include <linux/config.h>
24#include <asm/addrspace.h> 24#include <asm/addrspace.h>
25 25
26#ifdef CONFIG_BUILD_ELF64
27#define REP_BASE CAC_BASE 26#define REP_BASE CAC_BASE
28#else
29#define REP_BASE CKSEG0
30#endif
31 27
32#ifdef CONFIG_MAPPED_KERNEL 28#ifdef CONFIG_MAPPED_KERNEL
33 29
diff --git a/include/asm-mips/stackframe.h b/include/asm-mips/stackframe.h
index a8919dcc93c8..2acf3e844f00 100644
--- a/include/asm-mips/stackframe.h
+++ b/include/asm-mips/stackframe.h
@@ -63,17 +63,7 @@
63 addu k1, k0 63 addu k1, k0
64 LONG_L k1, %lo(kernelsp)(k1) 64 LONG_L k1, %lo(kernelsp)(k1)
65#endif 65#endif
66#if defined(CONFIG_64BIT) && !defined(CONFIG_BUILD_ELF64) 66#ifdef CONFIG_64BIT
67 MFC0 k1, CP0_CONTEXT
68 dsra k1, 23
69 lui k0, %hi(pgd_current)
70 addiu k0, %lo(pgd_current)
71 dsubu k1, k0
72 lui k0, %hi(kernelsp)
73 daddu k1, k0
74 LONG_L k1, %lo(kernelsp)(k1)
75#endif
76#if defined(CONFIG_64BIT) && defined(CONFIG_BUILD_ELF64)
77 MFC0 k1, CP0_CONTEXT 67 MFC0 k1, CP0_CONTEXT
78 lui k0, %highest(kernelsp) 68 lui k0, %highest(kernelsp)
79 dsrl k1, 23 69 dsrl k1, 23
@@ -91,11 +81,7 @@
91 mfc0 \temp, CP0_CONTEXT 81 mfc0 \temp, CP0_CONTEXT
92 srl \temp, 23 82 srl \temp, 23
93#endif 83#endif
94#if defined(CONFIG_64BIT) && !defined(CONFIG_BUILD_ELF64) 84#ifdef CONFIG_64BIT
95 lw \temp, TI_CPU(gp)
96 dsll \temp, 3
97#endif
98#if defined(CONFIG_64BIT) && defined(CONFIG_BUILD_ELF64)
99 MFC0 \temp, CP0_CONTEXT 85 MFC0 \temp, CP0_CONTEXT
100 dsrl \temp, 23 86 dsrl \temp, 23
101#endif 87#endif
@@ -103,7 +89,7 @@
103 .endm 89 .endm
104#else 90#else
105 .macro get_saved_sp /* Uniprocessor variation */ 91 .macro get_saved_sp /* Uniprocessor variation */
106#if defined(CONFIG_64BIT) && defined(CONFIG_BUILD_ELF64) 92#ifdef CONFIG_64BIT
107 lui k1, %highest(kernelsp) 93 lui k1, %highest(kernelsp)
108 daddiu k1, %higher(kernelsp) 94 daddiu k1, %higher(kernelsp)
109 dsll k1, k1, 16 95 dsll k1, k1, 16