Clean up some c6x Kconfig items and add support for Elf FDPIC loader.
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) iQIcBAABAgAGBQJPunCjAAoJEOiN4VijXeFPR3cP+gLDhWJGWC/xnI+vr1WJJxZU xJQbaopEyqJa7GBT+3BasCCLUCU7MVIrYaqubzEI4dzVCMDxwuJYPT7m/N3Avssg bm1ZaLUnanc8ZLfLHlnsG02xtBtEYI4mUM7ggCfcDJJC0b7tDGcz0kiM2WDGK0fq LRbZmlC57qK0UTx2IEvl0DoMuH7pq7N1sSXFr6keBm/lqN7Qj3VtAf/ASVQdIgN8 TfQiWbu40v8EEcKAZSkVKvhS3kSiPI9Dr1DGeR1JIhjFqFYUaw52aOzNTJyC9k1g 4oPIoDh0xnSzYrYpetP1gN5bT/FMRcVXLvKM7cIbeUzoAlgnQsBDAGA7x205X8Bf ChrQEpm/yKZnwEBtp9uIEQY3rRT7iecqVgeVO5LXskg+/OX0+gO5CtCDPopWzqJN wSOCsP9va0G9W0a8G5hKqEGYhbCXDkzU6KzmcgxbxIeF+CvJ+72mWgqxJkF0GtuU KCoLQT7Necq+4p/SaiXL7KogS9m2rClbszManceyAYSGwqAPIfU3RzUw+Fz6NcIh DrYXNTZelrVN2wrVrlhn3B6GdgfyVabhQ1e3CftmAtbY/i+i/ArHCT9JxjyAHTuV ekTnpVVDBZUCUluJXFJKzrvRuSUt9X18AxK0NfJ+xglOPQnPh026K/sCuvmn6mAq U1f1XmCqG2l2TDtkZ6Wu =q4Z6 -----END PGP SIGNATURE----- Merge tag 'for-linus' of git://linux-c6x.org/git/projects/linux-c6x-upstreaming Pull c6x updates from Mark Salter: "Clean up some c6x Kconfig items and add support for Elf FDPIC loader." * tag 'for-linus' of git://linux-c6x.org/git/projects/linux-c6x-upstreaming: C6X: remove unused config items C6X: add support to build with BINFMT_ELF_FDPIC C6X: change main arch kbuild symbol
This commit is contained in:
commit
cd975ae0ce
|
@ -3,7 +3,7 @@
|
|||
# see Documentation/kbuild/kconfig-language.txt.
|
||||
#
|
||||
|
||||
config TMS320C6X
|
||||
config C6X
|
||||
def_bool y
|
||||
select CLKDEV_LOOKUP
|
||||
select GENERIC_IRQ_SHOW
|
||||
|
@ -19,24 +19,12 @@ config TMS320C6X
|
|||
config MMU
|
||||
def_bool n
|
||||
|
||||
config ZONE_DMA
|
||||
def_bool y
|
||||
|
||||
config FPU
|
||||
def_bool n
|
||||
|
||||
config HIGHMEM
|
||||
def_bool n
|
||||
|
||||
config NUMA
|
||||
def_bool n
|
||||
|
||||
config RWSEM_GENERIC_SPINLOCK
|
||||
def_bool y
|
||||
|
||||
config RWSEM_XCHGADD_ALGORITHM
|
||||
def_bool n
|
||||
|
||||
config GENERIC_CALIBRATE_DELAY
|
||||
def_bool y
|
||||
|
||||
|
|
|
@ -30,7 +30,19 @@ typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG];
|
|||
*/
|
||||
#define elf_check_arch(x) ((x)->e_machine == EM_TI_C6000)
|
||||
|
||||
#define elf_check_const_displacement(x) (1)
|
||||
#define elf_check_fdpic(x) (1)
|
||||
#define elf_check_const_displacement(x) (0)
|
||||
|
||||
#define ELF_FDPIC_PLAT_INIT(_regs, _exec_map, _interp_map, _dynamic_addr) \
|
||||
do { \
|
||||
_regs->b4 = (_exec_map); \
|
||||
_regs->a6 = (_interp_map); \
|
||||
_regs->b6 = (_dynamic_addr); \
|
||||
} while (0)
|
||||
|
||||
#define ELF_FDPIC_CORE_EFLAGS 0
|
||||
|
||||
#define ELF_CORE_COPY_FPREGS(...) 0 /* No FPU regs to copy */
|
||||
|
||||
/*
|
||||
* These are used to set parameters in the core dumps.
|
||||
|
|
|
@ -13,6 +13,10 @@
|
|||
|
||||
typedef struct {
|
||||
unsigned long end_brk;
|
||||
#ifdef CONFIG_BINFMT_ELF_FDPIC
|
||||
unsigned long exec_fdpic_loadmap;
|
||||
unsigned long interp_fdpic_loadmap;
|
||||
#endif
|
||||
} mm_context_t;
|
||||
|
||||
#endif /* _ASM_C6X_MMU_H */
|
||||
|
|
|
@ -97,6 +97,11 @@
|
|||
#define PT_DP PT_B14 /* Data Segment Pointer (B14) */
|
||||
#define PT_SP PT_B15 /* Stack Pointer (B15) */
|
||||
|
||||
#define PTRACE_GETFDPIC 31 /* get the ELF fdpic loadmap address */
|
||||
|
||||
#define PTRACE_GETFDPIC_EXEC 0 /* [addr] request the executable loadmap */
|
||||
#define PTRACE_GETFDPIC_INTERP 1 /* [addr] request the interpreter loadmap */
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
|
||||
#ifdef _BIG_ENDIAN
|
||||
|
|
|
@ -33,7 +33,7 @@ config ARCH_BINFMT_ELF_RANDOMIZE_PIE
|
|||
config BINFMT_ELF_FDPIC
|
||||
bool "Kernel support for FDPIC ELF binaries"
|
||||
default y
|
||||
depends on (FRV || BLACKFIN || (SUPERH32 && !MMU))
|
||||
depends on (FRV || BLACKFIN || (SUPERH32 && !MMU) || C6X)
|
||||
help
|
||||
ELF FDPIC binaries are based on ELF, but allow the individual load
|
||||
segments of a binary to be located in memory independently of each
|
||||
|
|
Loading…
Reference in New Issue