Skip to content

Commit

Permalink
[MIPS] Rename CONFIG_BUILD_ELF64 into KBUILD_64BIT_SYM32
Browse files Browse the repository at this point in the history
This patch renames it for 3 reasons:

    - "CONFIG" pattern is used by Kconfig. Now this macro is
      no more defined by Kconfig but by Kbuild itself make this
      clear by translating "CONFIG" into "KBUILD".

    - "ELF32" word is improper because it is irrelevant to ELF
      format and it makes confusion with CONFIG_BOOT_ELF32. So
      translate it with SYM32.

    - Add "64BIT" part to make clear that this macro implies a
      64 bits kernel.

Signed-off-by: Franck Bui-Huu <fbuihuu@gmail.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
  • Loading branch information
Franck Bui-Huu authored and Ralf Baechle committed Oct 11, 2007
1 parent adff90a commit 054c51b
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 15 deletions.
12 changes: 5 additions & 7 deletions arch/mips/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -577,19 +577,17 @@ endif
# Automatically detect the build format. By default we choose
# the elf format according to the load address.
# We can always force a build with a 64-bits symbol format by
# passing 'BUILD_ELF32=no' option to the make's command line.
# passing 'KBUILD_SYM32=no' option to the make's command line.
#
ifdef CONFIG_64BIT
ifndef BUILD_ELF32
ifndef KBUILD_SYM32
ifeq ($(shell expr $(load-y) \< 0xffffffff80000000), 0)
BUILD_ELF32 = y
KBUILD_SYM32 = y
endif
endif

ifeq ($(BUILD_ELF32), y)
cflags-y += -msym32
else
cflags-y += -DCONFIG_BUILD_ELF64
ifeq ($(KBUILD_SYM32), y)
cflags-y += -msym32 -DKBUILD_64BIT_SYM32
endif
endif

Expand Down
2 changes: 1 addition & 1 deletion include/asm-mips/page.h
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,7 @@ typedef struct { unsigned long pgprot; } pgprot_t;
/*
* __pa()/__va() should be used only during mem init.
*/
#if defined(CONFIG_64BIT) && !defined(CONFIG_BUILD_ELF64)
#ifdef KBUILD_64BIT_SYM32
#define __pa(x) \
({ \
unsigned long __x = (unsigned long)(x); \
Expand Down
2 changes: 1 addition & 1 deletion include/asm-mips/pgtable-64.h
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@
#define VMALLOC_START MAP_BASE
#define VMALLOC_END \
(VMALLOC_START + PTRS_PER_PGD * PTRS_PER_PMD * PTRS_PER_PTE * PAGE_SIZE)
#if defined(CONFIG_MODULES) && !defined(CONFIG_BUILD_ELF64) && \
#if defined(CONFIG_MODULES) && defined(KBUILD_64BIT_SYM32) && \
VMALLOC_START != CKSSEG
/* Load modules into 32bit-compatible segment. */
#define MODULE_START CKSSEG
Expand Down
12 changes: 6 additions & 6 deletions include/asm-mips/stackframe.h
Original file line number Diff line number Diff line change
Expand Up @@ -91,14 +91,14 @@
#else
MFC0 k0, CP0_CONTEXT
#endif
#if defined(CONFIG_BUILD_ELF64) || (defined(CONFIG_64BIT) && __GNUC__ < 4)
#if defined(CONFIG_32BIT) || defined(KBUILD_64BIT_SYM32)
lui k1, %hi(kernelsp)
#else
lui k1, %highest(kernelsp)
daddiu k1, %higher(kernelsp)
dsll k1, 16
daddiu k1, %hi(kernelsp)
dsll k1, 16
#else
lui k1, %hi(kernelsp)
#endif
LONG_SRL k0, PTEBASE_SHIFT
LONG_ADDU k1, k0
Expand All @@ -116,14 +116,14 @@
.endm
#else
.macro get_saved_sp /* Uniprocessor variation */
#if defined(CONFIG_BUILD_ELF64) || (defined(CONFIG_64BIT) && __GNUC__ < 4)
#if defined(CONFIG_32BIT) || defined(KBUILD_64BIT_SYM32)
lui k1, %hi(kernelsp)
#else
lui k1, %highest(kernelsp)
daddiu k1, %higher(kernelsp)
dsll k1, k1, 16
daddiu k1, %hi(kernelsp)
dsll k1, k1, 16
#else
lui k1, %hi(kernelsp)
#endif
LONG_L k1, %lo(kernelsp)(k1)
.endm
Expand Down

0 comments on commit 054c51b

Please sign in to comment.