Commit 3b69e8b4 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'sh-for-5.8' of git://git.libc.org/linux-sh

Pull arch/sh updates from Rich Felker:
 "Fix for arch/sh build regression with newer binutils, removal of SH5,
  fixes for module exports, and misc cleanup"

* tag 'sh-for-5.8' of git://git.libc.org/linux-sh:
  sh: remove sh5 support
  sh: add missing EXPORT_SYMBOL() for __delay
  sh: Convert ins[bwl]/outs[bwl] macros to inline functions
  sh: Convert iounmap() macros to inline functions
  sh: Add missing DECLARE_EXPORT() for __ashiftrt_r4_xx
  sh: configs: Cleanup old Kconfig IO scheduler options
  arch/sh: vmlinux.scr
  sh: Replace CONFIG_MTD_M25P80 with CONFIG_MTD_SPI_NOR in sh7757lcr_defconfig
  sh: sh4a: Bring back tmu3_device early device
parents b170290c 37744fee
Loading
Loading
Loading
Loading
+10 −52
Original line number Diff line number Diff line
@@ -53,15 +53,6 @@ config SUPERH
	select HAVE_NMI
	select NEED_SG_DMA_LENGTH
	select ARCH_HAS_GIGANTIC_PAGE

	help
	  The SuperH is a RISC processor targeted for use in embedded systems
	  and consumer electronics; it was also used in the Sega Dreamcast
	  gaming console.  The SuperH port has a home page at
	  <http://www.linux-sh.org/>.

config SUPERH32
	def_bool "$(ARCH)" = "sh"
	select ARCH_32BIT_OFF_T
	select GUP_GET_PTE_LOW_HIGH if X2TLB
	select HAVE_KPROBES
@@ -79,19 +70,15 @@ config SUPERH32
	select ARCH_HIBERNATION_POSSIBLE if MMU
	select SPARSE_IRQ
	select HAVE_STACKPROTECTOR

config SUPERH64
	def_bool "$(ARCH)" = "sh64"
	select HAVE_EXIT_THREAD
	select KALLSYMS
	help
	  The SuperH is a RISC processor targeted for use in embedded systems
	  and consumer electronics; it was also used in the Sega Dreamcast
	  gaming console.  The SuperH port has a home page at
	  <http://www.linux-sh.org/>.

config GENERIC_BUG
	def_bool y
	depends on BUG && SUPERH32

config GENERIC_CSUM
	def_bool y
	depends on SUPERH64
	depends on BUG

config GENERIC_HWEIGHT
	def_bool y
@@ -201,12 +188,6 @@ config CPU_SH4AL_DSP
	select CPU_SH4A
	select CPU_HAS_DSP

config CPU_SH5
	bool
	select CPU_HAS_FPU
	select SYS_SUPPORTS_SH_TMU
	select SYS_SUPPORTS_HUGETLBFS if MMU

config CPU_SHX2
	bool

@@ -226,8 +207,6 @@ config CPU_HAS_PMU
       default y
       bool

if SUPERH32

choice
	prompt "Processor sub-type selection"

@@ -516,27 +495,6 @@ config CPU_SUBTYPE_SH7366

endchoice

endif

if SUPERH64

choice
	prompt "Processor sub-type selection"

# SH-5 Processor Support

config CPU_SUBTYPE_SH5_101
	bool "Support SH5-101 processor"
	select CPU_SH5

config CPU_SUBTYPE_SH5_103
	bool "Support SH5-103 processor"
	select CPU_SH5

endchoice

endif

source "arch/sh/mm/Kconfig"
 
source "arch/sh/Kconfig.cpu"
@@ -590,7 +548,7 @@ source "kernel/Kconfig.hz"

config KEXEC
	bool "kexec system call (EXPERIMENTAL)"
	depends on SUPERH32 && MMU
	depends on MMU
	select KEXEC_CORE
	help
	  kexec is a system call that implements the ability to shutdown your
@@ -608,7 +566,7 @@ config KEXEC

config CRASH_DUMP
	bool "kernel crash dumps (EXPERIMENTAL)"
	depends on SUPERH32 && BROKEN_ON_SMP
	depends on BROKEN_ON_SMP
	help
	  Generate crash dump after being started by kexec.
	  This should be normally only set in special crash dump kernels
@@ -622,7 +580,7 @@ config CRASH_DUMP

config KEXEC_JUMP
	bool "kexec jump (EXPERIMENTAL)"
	depends on SUPERH32 && KEXEC && HIBERNATION
	depends on KEXEC && HIBERNATION
	help
	  Jump between original kernel and kexeced kernel and invoke
	  code via KEXEC
@@ -699,7 +657,7 @@ config HOTPLUG_CPU

config GUSA
	def_bool y
	depends on !SMP && SUPERH32
	depends on !SMP
	help
	  This enables support for gUSA (general UserSpace Atomicity).
	  This is the default implementation for both UP and non-ll/sc
+0 −9
Original line number Diff line number Diff line
@@ -13,7 +13,6 @@ config CPU_LITTLE_ENDIAN

config CPU_BIG_ENDIAN
	bool "Big Endian"
	depends on !CPU_SH5

endchoice

@@ -27,10 +26,6 @@ config SH_FPU

	  This option must be set in order to enable the FPU.

config SH64_FPU_DENORM_FLUSH
	bool "Flush floating point denorms to zero"
	depends on SH_FPU && SUPERH64

config SH_FPU_EMU
	def_bool n
	prompt "FPU emulation support"
@@ -77,10 +72,6 @@ config SPECULATIVE_EXECUTION

	  If unsure, say N.

config SH64_ID2815_WORKAROUND
	bool "Include workaround for SH5-101 cut2 silicon defect ID2815"
	depends on CPU_SUBTYPE_SH5_101

config CPU_HAS_INTEVT
	bool

+3 −10
Original line number Diff line number Diff line
@@ -5,7 +5,6 @@ config TRACE_IRQFLAGS_SUPPORT

config SH_STANDARD_BIOS
	bool "Use LinuxSH standard BIOS"
	depends on SUPERH32
	help
	  Say Y here if your target has the gdb-sh-stub
	  package from www.m17n.org (or any conforming standard LinuxSH BIOS)
@@ -19,7 +18,7 @@ config SH_STANDARD_BIOS

config STACK_DEBUG
	bool "Check for stack overflows"
	depends on DEBUG_KERNEL && SUPERH32
	depends on DEBUG_KERNEL
	help
	  This option will cause messages to be printed if free stack space
	  drops below a certain limit. Saying Y here will add overhead to
@@ -38,7 +37,7 @@ config 4KSTACKS

config IRQSTACKS
	bool "Use separate kernel stacks when processing interrupts"
	depends on DEBUG_KERNEL && SUPERH32 && BROKEN
	depends on DEBUG_KERNEL && BROKEN
	help
	  If you say Y here the kernel will use separate kernel stacks
	  for handling hard and soft interrupts.  This can help avoid
@@ -46,7 +45,7 @@ config IRQSTACKS

config DUMP_CODE
	bool "Show disassembly of nearby code in register dumps"
	depends on DEBUG_KERNEL && SUPERH32
	depends on DEBUG_KERNEL
	default y if DEBUG_BUGVERBOSE
	default n
	help
@@ -59,7 +58,6 @@ config DUMP_CODE
config DWARF_UNWINDER
	bool "Enable the DWARF unwinder for stacktraces"
	select FRAME_POINTER
	depends on SUPERH32
	default n
	help
	  Enabling this option will make stacktraces more accurate, at
@@ -77,11 +75,6 @@ config SH_NO_BSS_INIT
	  For all other cases, say N. If this option seems perplexing, or
	  you aren't sure, say N.

config SH64_SR_WATCH
	bool "Debug: set SR.WATCH to enable hardware watchpoints and trace"
	depends on SUPERH64

config MCOUNT
	def_bool y
	depends on SUPERH32
	depends on STACK_DEBUG || FUNCTION_TRACER
+7 −22
Original line number Diff line number Diff line
@@ -11,7 +11,7 @@
#
ifneq ($(SUBARCH),$(ARCH))
  ifeq ($(CROSS_COMPILE),)
    CROSS_COMPILE := $(call cc-cross-prefix, $(UTS_MACHINE)-linux-  $(UTS_MACHINE)-linux-gnu-  $(UTS_MACHINE)-unknown-linux-gnu-)
    CROSS_COMPILE := $(call cc-cross-prefix, sh-linux- sh-linux-gnu- sh-unknown-linux-gnu-)
  endif
endif

@@ -29,12 +29,9 @@ isa-$(CONFIG_CPU_SH3) := sh3
isa-$(CONFIG_CPU_SH4)			:= sh4
isa-$(CONFIG_CPU_SH4A)			:= sh4a
isa-$(CONFIG_CPU_SH4AL_DSP)		:= sh4al
isa-$(CONFIG_CPU_SH5)			:= shmedia

ifeq ($(CONFIG_SUPERH32),y)
isa-$(CONFIG_SH_DSP)			:= $(isa-y)-dsp
isa-y					:= $(isa-y)-up
endif

cflags-$(CONFIG_CPU_SH2)		:= $(call cc-option,-m2,)
cflags-$(CONFIG_CPU_J2)			+= $(call cc-option,-mj2,)
@@ -47,7 +44,6 @@ cflags-$(CONFIG_CPU_SH4) := $(call cc-option,-m4,) \
cflags-$(CONFIG_CPU_SH4A)		+= $(call cc-option,-m4a,) \
					   $(call cc-option,-m4a-nofpu,)
cflags-$(CONFIG_CPU_SH4AL_DSP)		+= $(call cc-option,-m4al,)
cflags-$(CONFIG_CPU_SH5)		:= $(call cc-option,-m5-32media-nofpu,)

ifeq ($(cflags-y),)
#
@@ -88,7 +84,7 @@ OBJCOPYFLAGS := -O binary -R .note -R .note.gnu.build-id -R .comment \
		   -R .stab -R .stabstr -S

# Give the various platforms the opportunity to set default image types
defaultimage-$(CONFIG_SUPERH32)			:= zImage
defaultimage-y					:= zImage
defaultimage-$(CONFIG_SH_SH7785LCR)		:= uImage
defaultimage-$(CONFIG_SH_RSK)			:= uImage
defaultimage-$(CONFIG_SH_URQUELL)		:= uImage
@@ -107,31 +103,22 @@ KBUILD_IMAGE := $(boot)/$(defaultimage-y)
# Choosing incompatible machines durings configuration will result in
# error messages during linking.
#
ifdef CONFIG_SUPERH32
UTS_MACHINE		:= sh
BITS			:= 32
LDFLAGS_vmlinux		+= -e _stext
else
UTS_MACHINE		:= sh64
BITS			:= 64
LDFLAGS_vmlinux		+= --defsym phys_stext=_stext-$(CONFIG_PAGE_OFFSET) \
			   --defsym phys_stext_shmedia=phys_stext+1 \
			   -e phys_stext_shmedia
endif

ifdef CONFIG_CPU_LITTLE_ENDIAN
ld-bfd			:= elf32-$(UTS_MACHINE)-linux
ld-bfd			:= elf32-sh-linux
LDFLAGS_vmlinux		+= --defsym jiffies=jiffies_64 --oformat $(ld-bfd)
KBUILD_LDFLAGS		+= -EL
else
ld-bfd			:= elf32-$(UTS_MACHINE)big-linux
ld-bfd			:= elf32-shbig-linux
LDFLAGS_vmlinux		+= --defsym jiffies=jiffies_64+4 --oformat $(ld-bfd)
KBUILD_LDFLAGS		+= -EB
endif

export ld-bfd BITS
export ld-bfd

head-y	:= arch/sh/kernel/head_$(BITS).o
head-y	:= arch/sh/kernel/head_32.o

core-y				+= arch/sh/kernel/ arch/sh/mm/ arch/sh/boards/
core-$(CONFIG_SH_FPU_EMU)	+= arch/sh/math-emu/
@@ -185,7 +172,6 @@ cpuincdir-$(CONFIG_CPU_SH2) += cpu-sh2
cpuincdir-$(CONFIG_CPU_SH3)	+= cpu-sh3
cpuincdir-$(CONFIG_CPU_SH4A)	+= cpu-sh4a
cpuincdir-$(CONFIG_CPU_SH4)	+= cpu-sh4
cpuincdir-$(CONFIG_CPU_SH5)	+= cpu-sh5
cpuincdir-y			+= cpu-common	# Must be last

drivers-y			+= arch/sh/drivers/
@@ -206,8 +192,7 @@ ifeq ($(CONFIG_DWARF_UNWINDER),y)
  KBUILD_CFLAGS += -fasynchronous-unwind-tables
endif

libs-$(CONFIG_SUPERH32)		:= arch/sh/lib/	$(libs-y)
libs-$(CONFIG_SUPERH64)		:= arch/sh/lib64/ $(libs-y)
libs-y			:= arch/sh/lib/	$(libs-y)

BOOT_TARGETS = uImage uImage.bz2 uImage.gz uImage.lzma uImage.xz uImage.lzo \
	       uImage.srec uImage.bin zImage vmlinux.bin vmlinux.srec \
+4 −8
Original line number Diff line number Diff line
@@ -8,9 +8,9 @@
targets		:= vmlinux vmlinux.bin vmlinux.bin.gz \
		   vmlinux.bin.bz2 vmlinux.bin.lzma \
		   vmlinux.bin.xz vmlinux.bin.lzo \
		   head_$(BITS).o misc.o piggy.o
		   head_32.o misc.o piggy.o

OBJECTS = $(obj)/head_$(BITS).o $(obj)/misc.o $(obj)/cache.o
OBJECTS = $(obj)/head_32.o $(obj)/misc.o $(obj)/cache.o

GCOV_PROFILE := n

@@ -39,15 +39,11 @@ LDFLAGS_vmlinux := --oformat $(ld-bfd) -Ttext $(IMAGE_OFFSET) -e startup \
#
# Pull in the necessary libgcc bits from the in-kernel implementation.
#
lib1funcs-$(CONFIG_SUPERH32)	:= ashiftrt.S ashldi3.c ashrsi3.S ashlsi3.S \
				   lshrsi3.S
lib1funcs-y	:= ashiftrt.S ashldi3.c ashrsi3.S ashlsi3.S lshrsi3.S
lib1funcs-obj   := \
	$(addsuffix .o, $(basename $(addprefix $(obj)/, $(lib1funcs-y))))

lib1funcs-dir		:= $(srctree)/arch/$(SRCARCH)/lib
ifeq ($(BITS),64)
	lib1funcs-dir 	:= $(addsuffix $(BITS), $(lib1funcs-dir))
endif

KBUILD_CFLAGS += -I$(lib1funcs-dir) -DDISABLE_BRANCH_PROFILING

Loading