Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f2ed8beb authored by Al Viro's avatar Al Viro
Browse files

Merge commit 'a7d2475a' into uaccess.powerpc

backmerge of sorting the arch/powerpc/Kconfig
parents 527b5bae a7d2475a
Loading
Loading
Loading
Loading
+72 −66
Original line number Diff line number Diff line
@@ -80,93 +80,99 @@ config ARCH_HAS_DMA_SET_COHERENT_MASK
config PPC
	bool
	default y
	select BUILDTIME_EXTABLE_SORT
	#
	# Please keep this list sorted alphabetically.
	#
	select ARCH_HAS_DEVMEM_IS_ALLOWED
	select ARCH_HAS_DMA_SET_COHERENT_MASK
	select ARCH_HAS_ELF_RANDOMIZE
	select ARCH_HAS_GCOV_PROFILE_ALL
	select ARCH_HAS_SCALED_CPUTIME		if VIRT_CPU_ACCOUNTING_NATIVE
	select ARCH_HAS_SG_CHAIN
	select ARCH_HAS_TICK_BROADCAST		if GENERIC_CLOCKEVENTS_BROADCAST
	select ARCH_HAS_UBSAN_SANITIZE_ALL
	select ARCH_HAVE_NMI_SAFE_CMPXCHG
	select ARCH_MIGHT_HAVE_PC_PARPORT
	select ARCH_MIGHT_HAVE_PC_SERIO
	select ARCH_SUPPORTS_ATOMIC_RMW
	select ARCH_SUPPORTS_DEFERRED_STRUCT_PAGE_INIT
	select ARCH_USE_BUILTIN_BSWAP
	select ARCH_USE_CMPXCHG_LOCKREF		if PPC64
	select ARCH_WANT_IPC_PARSE_VERSION
	select BINFMT_ELF
	select ARCH_HAS_ELF_RANDOMIZE
	select OF
	select OF_EARLY_FLATTREE
	select OF_RESERVED_MEM
	select HAVE_FTRACE_MCOUNT_RECORD
	select BUILDTIME_EXTABLE_SORT
	select CLONE_BACKWARDS
	select DCACHE_WORD_ACCESS		if PPC64 && CPU_LITTLE_ENDIAN
	select EDAC_ATOMIC_SCRUB
	select EDAC_SUPPORT
	select GENERIC_ATOMIC64			if PPC32
	select GENERIC_CLOCKEVENTS
	select GENERIC_CLOCKEVENTS_BROADCAST	if SMP
	select GENERIC_CMOS_UPDATE
	select GENERIC_CPU_AUTOPROBE
	select GENERIC_IRQ_SHOW
	select GENERIC_IRQ_SHOW_LEVEL
	select GENERIC_SMP_IDLE_THREAD
	select GENERIC_STRNCPY_FROM_USER
	select GENERIC_STRNLEN_USER
	select GENERIC_TIME_VSYSCALL_OLD
	select HAVE_ARCH_AUDITSYSCALL
	select HAVE_ARCH_HARDENED_USERCOPY
	select HAVE_ARCH_JUMP_LABEL
	select HAVE_ARCH_KGDB
	select HAVE_ARCH_SECCOMP_FILTER
	select HAVE_ARCH_TRACEHOOK
	select HAVE_CBPF_JIT			if !PPC64
	select HAVE_CONTEXT_TRACKING		if PPC64
	select HAVE_DEBUG_KMEMLEAK
	select HAVE_DEBUG_STACKOVERFLOW
	select HAVE_DMA_API_DEBUG
	select HAVE_DYNAMIC_FTRACE
	select HAVE_DYNAMIC_FTRACE_WITH_REGS	if MPROFILE_KERNEL
	select HAVE_FUNCTION_TRACER
	select HAVE_EBPF_JIT			if PPC64
	select HAVE_EFFICIENT_UNALIGNED_ACCESS	if !(CPU_LITTLE_ENDIAN && POWER7_CPU)
	select HAVE_FTRACE_MCOUNT_RECORD
	select HAVE_FUNCTION_GRAPH_TRACER
	select HAVE_FUNCTION_TRACER
	select HAVE_GCC_PLUGINS
	select SYSCTL_EXCEPTION_TRACE
	select VIRT_TO_BUS if !PPC64
	select HAVE_GENERIC_RCU_GUP
	select HAVE_HW_BREAKPOINT		if PERF_EVENTS && (PPC_BOOK3S || PPC_8xx)
	select HAVE_IDE
	select HAVE_IOREMAP_PROT
	select HAVE_EFFICIENT_UNALIGNED_ACCESS if !(CPU_LITTLE_ENDIAN && POWER7_CPU)
	select HAVE_IRQ_EXIT_ON_IRQ_STACK
	select HAVE_KERNEL_GZIP
	select HAVE_KPROBES
	select HAVE_OPTPROBES if PPC64
	select HAVE_ARCH_KGDB
	select HAVE_KRETPROBES
	select HAVE_ARCH_TRACEHOOK
	select HAVE_LIVEPATCH			if HAVE_DYNAMIC_FTRACE_WITH_REGS
	select HAVE_MEMBLOCK
	select HAVE_MEMBLOCK_NODE_MAP
	select HAVE_DMA_API_DEBUG
	select HAVE_MOD_ARCH_SPECIFIC
	select HAVE_NMI				if PERF_EVENTS
	select HAVE_OPROFILE
	select HAVE_DEBUG_KMEMLEAK
	select ARCH_HAS_SG_CHAIN
	select GENERIC_ATOMIC64 if PPC32
	select HAVE_OPTPROBES			if PPC64
	select HAVE_PERF_EVENTS
	select HAVE_PERF_EVENTS_NMI		if PPC64
	select HAVE_PERF_REGS
	select HAVE_PERF_USER_STACK_DUMP
	select HAVE_RCU_TABLE_FREE		if SMP
	select HAVE_REGS_AND_STACK_ACCESS_API
	select HAVE_HW_BREAKPOINT if PERF_EVENTS && (PPC_BOOK3S || PPC_8xx)
	select ARCH_WANT_IPC_PARSE_VERSION
	select SPARSE_IRQ
	select HAVE_SYSCALL_TRACEPOINTS
	select HAVE_VIRT_CPU_ACCOUNTING
	select IRQ_DOMAIN
	select GENERIC_IRQ_SHOW
	select GENERIC_IRQ_SHOW_LEVEL
	select IRQ_FORCED_THREADING
	select HAVE_RCU_TABLE_FREE if SMP
	select HAVE_SYSCALL_TRACEPOINTS
	select HAVE_CBPF_JIT if !PPC64
	select HAVE_EBPF_JIT if PPC64
	select HAVE_ARCH_JUMP_LABEL
	select ARCH_HAVE_NMI_SAFE_CMPXCHG
	select ARCH_HAS_GCOV_PROFILE_ALL
	select GENERIC_SMP_IDLE_THREAD
	select GENERIC_CMOS_UPDATE
	select GENERIC_TIME_VSYSCALL_OLD
	select GENERIC_CLOCKEVENTS
	select GENERIC_CLOCKEVENTS_BROADCAST if SMP
	select ARCH_HAS_TICK_BROADCAST if GENERIC_CLOCKEVENTS_BROADCAST
	select GENERIC_STRNCPY_FROM_USER
	select GENERIC_STRNLEN_USER
	select HAVE_MOD_ARCH_SPECIFIC
	select MODULES_USE_ELF_RELA
	select CLONE_BACKWARDS
	select ARCH_USE_BUILTIN_BSWAP
	select OLD_SIGSUSPEND
	select OLD_SIGACTION if PPC32
	select HAVE_DEBUG_STACKOVERFLOW
	select HAVE_IRQ_EXIT_ON_IRQ_STACK
	select ARCH_USE_CMPXCHG_LOCKREF if PPC64
	select HAVE_ARCH_AUDITSYSCALL
	select ARCH_SUPPORTS_ATOMIC_RMW
	select DCACHE_WORD_ACCESS if PPC64 && CPU_LITTLE_ENDIAN
	select NO_BOOTMEM
	select HAVE_GENERIC_RCU_GUP
	select HAVE_PERF_EVENTS_NMI if PPC64
	select HAVE_NMI if PERF_EVENTS
	select EDAC_SUPPORT
	select EDAC_ATOMIC_SCRUB
	select ARCH_HAS_DMA_SET_COHERENT_MASK
	select ARCH_HAS_DEVMEM_IS_ALLOWED
	select HAVE_ARCH_SECCOMP_FILTER
	select ARCH_HAS_UBSAN_SANITIZE_ALL
	select ARCH_SUPPORTS_DEFERRED_STRUCT_PAGE_INIT
	select HAVE_LIVEPATCH if HAVE_DYNAMIC_FTRACE_WITH_REGS
	select GENERIC_CPU_AUTOPROBE
	select HAVE_VIRT_CPU_ACCOUNTING
	select ARCH_HAS_SCALED_CPUTIME if VIRT_CPU_ACCOUNTING_NATIVE
	select HAVE_ARCH_HARDENED_USERCOPY
	select HAVE_KERNEL_GZIP
	select HAVE_CONTEXT_TRACKING if PPC64
	select OF
	select OF_EARLY_FLATTREE
	select OF_RESERVED_MEM
	select OLD_SIGACTION			if PPC32
	select OLD_SIGSUSPEND
	select SPARSE_IRQ
	select SYSCTL_EXCEPTION_TRACE
	select VIRT_TO_BUS			if !PPC64
	#
	# Please keep this list sorted alphabetically.
	#

config GENERIC_CSUM
	def_bool n
+10 −1
Original line number Diff line number Diff line
@@ -72,8 +72,15 @@ GNUTARGET := powerpc
MULTIPLEWORD	:= -mmultiple
endif

cflags-$(CONFIG_CPU_BIG_ENDIAN)		+= $(call cc-option,-mbig-endian)
ifdef CONFIG_PPC64
cflags-$(CONFIG_CPU_BIG_ENDIAN)		+= $(call cc-option,-mabi=elfv1)
cflags-$(CONFIG_CPU_BIG_ENDIAN)		+= $(call cc-option,-mcall-aixdesc)
aflags-$(CONFIG_CPU_BIG_ENDIAN)		+= $(call cc-option,-mabi=elfv1)
aflags-$(CONFIG_CPU_LITTLE_ENDIAN)	+= -mabi=elfv2
endif

cflags-$(CONFIG_CPU_LITTLE_ENDIAN)	+= -mlittle-endian
cflags-$(CONFIG_CPU_BIG_ENDIAN)		+= $(call cc-option,-mbig-endian)
ifneq ($(cc-name),clang)
  cflags-$(CONFIG_CPU_LITTLE_ENDIAN)	+= -mno-strict-align
endif
@@ -113,7 +120,9 @@ ifeq ($(CONFIG_CPU_LITTLE_ENDIAN),y)
CFLAGS-$(CONFIG_PPC64)	+= $(call cc-option,-mabi=elfv2,$(call cc-option,-mcall-aixdesc))
AFLAGS-$(CONFIG_PPC64)	+= $(call cc-option,-mabi=elfv2)
else
CFLAGS-$(CONFIG_PPC64)	+= $(call cc-option,-mabi=elfv1)
CFLAGS-$(CONFIG_PPC64)	+= $(call cc-option,-mcall-aixdesc)
AFLAGS-$(CONFIG_PPC64)	+= $(call cc-option,-mabi=elfv1)
endif
CFLAGS-$(CONFIG_PPC64)	+= $(call cc-option,-mcmodel=medium,$(call cc-option,-mminimal-toc))
CFLAGS-$(CONFIG_PPC64)	+= $(call cc-option,-mno-pointers-to-nested-functions)
+1 −1
Original line number Diff line number Diff line
@@ -112,7 +112,7 @@ static inline __wsum csum_add(__wsum csum, __wsum addend)

#ifdef __powerpc64__
	res += (__force u64)addend;
	return (__force __wsum)((u32)res + (res >> 32));
	return (__force __wsum) from64to32(res);
#else
	asm("addc %0,%0,%1;"
	    "addze %0,%0;"
+2 −2
Original line number Diff line number Diff line
@@ -70,8 +70,8 @@ static inline void report_invalid_psscr_val(u64 psscr_val, int err)
	std	r0,0(r1);					\
	ptesync;						\
	ld	r0,0(r1);					\
1:	cmpd	cr0,r0,r0;					\
	bne	1b;						\
236:	cmpd	cr0,r0,r0;					\
	bne	236b;						\
	IDLE_INST;						\

#define	IDLE_STATE_ENTER_SEQ_NORET(IDLE_INST)			\
+2 −2
Original line number Diff line number Diff line
@@ -144,8 +144,8 @@ extern int arch_setup_additional_pages(struct linux_binprm *bprm,
#define ARCH_DLINFO_CACHE_GEOMETRY					\
	NEW_AUX_ENT(AT_L1I_CACHESIZE, ppc64_caches.l1i.size);		\
	NEW_AUX_ENT(AT_L1I_CACHEGEOMETRY, get_cache_geometry(l1i));	\
	NEW_AUX_ENT(AT_L1D_CACHESIZE, ppc64_caches.l1i.size);		\
	NEW_AUX_ENT(AT_L1D_CACHEGEOMETRY, get_cache_geometry(l1i));	\
	NEW_AUX_ENT(AT_L1D_CACHESIZE, ppc64_caches.l1d.size);		\
	NEW_AUX_ENT(AT_L1D_CACHEGEOMETRY, get_cache_geometry(l1d));	\
	NEW_AUX_ENT(AT_L2_CACHESIZE, ppc64_caches.l2.size);		\
	NEW_AUX_ENT(AT_L2_CACHEGEOMETRY, get_cache_geometry(l2));	\
	NEW_AUX_ENT(AT_L3_CACHESIZE, ppc64_caches.l3.size);		\
Loading