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

Commit dd6a7c19 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6: (43 commits)
  sh: sh775x/titan fixes for irq header changes.
  sh: update r7780rp defconfig.
  sh: compile fixes for header cleanup.
  sh: Fixup pte_mkhuge() build failure.
  sh: set KBUILD_IMAGE to something sensible.
  sh: show held locks in stack trace with lockdep.
  sh: platform_pata support for R7780RP
  sh: stacktrace/lockdep/irqflags tracing support.
  sh: Fixup movli.l/movco.l atomic ops for gcc4.
  sh: dyntick infrastructure.
  sh: Clock framework tidying.
  sh: Turn off IRQs around get_timer_offset() calls.
  sh: Get the PGD right in oops case with 64-bit PTEs.
  sh: Fix store queue bitmap end.
  sh: More flexible + SH7780 earlyprintk SCIF support.
  sh: Fixup various PAGE_SIZE == 4096 assumptions.
  sh: Fixup 4K irq stacks.
  sh: dma-api channel capability extensions.
  sh: Drop name overload in dma-sh.
  sh: Make dma-isa depend on ISA_DMA_API.
  ...
parents dd8856bd ea0f8fea
Loading
Loading
Loading
Loading
+93 −7
Original line number Diff line number Diff line
@@ -51,6 +51,14 @@ config GENERIC_TIME
config ARCH_MAY_HAVE_PC_FDC
	bool

config STACKTRACE_SUPPORT
	bool
	default y

config LOCKDEP_SUPPORT
	bool
	default y

source "init/Kconfig"

menu "System type"
@@ -219,6 +227,20 @@ config SH_SHMIN
	help
	  Select SHMIN if configuring for the SHMIN board.

config SH_7206_SOLUTION_ENGINE
	bool "SolutionEngine7206"
	select CPU_SUBTYPE_SH7206
	help
	  Select 7206 SolutionEngine if configuring for a Hitachi SH7206
	  evaluation board.

config SH_7619_SOLUTION_ENGINE
	bool "SolutionEngine7619"
	select CPU_SUBTYPE_SH7619
	help
	  Select 7619 SolutionEngine if configuring for a Hitachi SH7619
	  evaluation board.

config SH_UNKNOWN
	bool "BareCPU"
	help
@@ -280,12 +302,20 @@ config CF_BASE_ADDR

menu "Processor features"

config CPU_LITTLE_ENDIAN
	bool "Little Endian"
choice
	prompt "Endianess selection" 
	default CPU_LITTLE_ENDIAN
	help
	  Some SuperH machines can be configured for either little or big
	  endian byte order. These modes require different kernels. Say Y if
	  your machine is little endian, N if it's a big endian machine.
	  endian byte order. These modes require different kernels.

config CPU_LITTLE_ENDIAN
	bool "Little Endian"

config CPU_BIG_ENDIAN
	bool "Big Endian"

endchoice

config SH_FPU
	bool "FPU support"
@@ -345,6 +375,9 @@ config CPU_HAS_MASKREG_IRQ
config CPU_HAS_INTC2_IRQ
	bool

config CPU_HAS_IPR_IRQ
	bool

config CPU_HAS_SR_RB
	bool "CPU has SR.RB"
	depends on CPU_SH3 || CPU_SH4
@@ -357,6 +390,9 @@ config CPU_HAS_SR_RB
	  See <file:Documentation/sh/register-banks.txt> for further
	  information on SR.RB and register banking in the kernel in general.

config CPU_HAS_PTEA
	bool

endmenu

menu "Timer support"
@@ -364,10 +400,25 @@ depends on !GENERIC_TIME

config SH_TMU
	bool "TMU timer support"
	depends on CPU_SH3 || CPU_SH4
	default y
	help
	  This enables the use of the TMU as the system timer.

config SH_CMT
	bool "CMT timer support"
	depends on CPU_SH2
	default y
	help
	  This enables the use of the CMT as the system timer.

config SH_MTU2
	bool "MTU2 timer support"
	depends on CPU_SH2A
	default n
	help
	  This enables the use of the MTU2 as the system timer.

endmenu

source "arch/sh/boards/renesas/hs7751rvoip/Kconfig"
@@ -376,19 +427,52 @@ source "arch/sh/boards/renesas/rts7751r2d/Kconfig"

source "arch/sh/boards/renesas/r7780rp/Kconfig"

config SH_TIMER_IRQ
	int
	default "28" if CPU_SUBTYPE_SH7780
	default "86" if CPU_SUBTYPE_SH7619
	default "140" if CPU_SUBTYPE_SH7206
	default "16"

config NO_IDLE_HZ
	bool "Dynamic tick timer"
	help
	  Select this option if you want to disable continuous timer ticks
	  and have them programmed to occur as required. This option saves
	  power as the system can remain in idle state for longer.

	  By default dynamic tick is disabled during the boot, and can be
	  manually enabled with:

	    echo 1 > /sys/devices/system/timer/timer0/dyn_tick

	  Alternatively, if you want dynamic tick automatically enabled
	  during boot, pass "dyntick=enable" via the kernel command string.

	  Please note that dynamic tick may affect the accuracy of
	  timekeeping on some platforms depending on the implementation.

config SH_PCLK_FREQ
	int "Peripheral clock frequency (in Hz)"
	default "27000000" if CPU_SUBTYPE_SH73180 || CPU_SUBTYPE_SH7343
	default "31250000" if CPU_SUBTYPE_SH7619
	default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || \
			      CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \
			      CPU_SUBTYPE_SH7206
	default "50000000" if CPU_SUBTYPE_SH7750 || CPU_SUBTYPE_SH7780
	default "60000000" if CPU_SUBTYPE_SH7751
	default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || \
			      CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705
	default "27000000" if CPU_SUBTYPE_SH73180 || CPU_SUBTYPE_SH7343
	default "66000000" if CPU_SUBTYPE_SH4_202
	help
	  This option is used to specify the peripheral clock frequency.
	  This is necessary for determining the reference clock value on
	  platforms lacking an RTC.

config SH_CLK_MD
	int "CPU Mode Pin Setting"
	depends on CPU_SUBTYPE_SH7619 || CPU_SUBTYPE_SH7206
	help
	  MD2 - MD0 Setting.

menu "CPU Frequency scaling"

source "drivers/cpufreq/Kconfig"
@@ -421,6 +505,8 @@ config HEARTBEAT
	  behavior is platform-dependent, but normally the flash frequency is
	  a hyperbolic function of the 5-minute load average.

source "arch/sh/drivers/Kconfig"

endmenu

config ISA_DMA_API
+21 −1
Original line number Diff line number Diff line
menu "Kernel hacking"

config TRACE_IRQFLAGS_SUPPORT
	bool
	default y

source "lib/Kconfig.debug"

config SH_STANDARD_BIOS
@@ -17,7 +21,18 @@ config SH_STANDARD_BIOS

config EARLY_SCIF_CONSOLE
	bool "Use early SCIF console"
	depends on CPU_SH4 || CPU_SH2A && !SH_STANDARD_BIOS
	help
	  This enables an early console using a fixed SCIF port. This can
	  be used by platforms that are either not running the SH
	  standard BIOS, or do not wish to use the BIOS callbacks for the
	  serial I/O.

config EARLY_SCIF_CONSOLE_PORT
	hex "SCIF port for early console"
	depends on EARLY_SCIF_CONSOLE
	default "0xffe00000" if CPU_SUBTYPE_SH7780
	default "0xfffe9800" if CPU_SUBTYPE_SH72060
	default "0xffe80000" if CPU_SH4

config EARLY_PRINTK
	bool "Early printk support"
@@ -30,6 +45,11 @@ config EARLY_PRINTK
	  when the kernel may crash or hang before the serial console is
	  initialised. If unsure, say N.

	  On devices that are running SH-IPL and want to keep the port
	  initialization consistent while not using the BIOS callbacks,
	  select both the EARLY_SCIF_CONSOLE and SH_STANDARD_BIOS, using
	  the kernel command line option to toggle back and forth.

config DEBUG_STACKOVERFLOW
	bool "Check for stack overflows"
	depends on DEBUG_KERNEL
+15 −11
Original line number Diff line number Diff line
@@ -13,10 +13,6 @@
# for "archclean" and "archdep" for cleaning up and making dependencies for
# this architecture
#

cflags-y				:= -mb
cflags-$(CONFIG_CPU_LITTLE_ENDIAN)	:= -ml

isa-y					:= any
isa-$(CONFIG_SH_DSP)			:= sh
isa-$(CONFIG_CPU_SH2)			:= sh2
@@ -38,13 +34,16 @@ isa-y := $(isa-y)-nofpu
endif
endif

cflags-y	+= $(call as-option,-Wa$(comma)-isa=$(isa-y),)

cflags-$(CONFIG_CPU_SH2)		+= -m2
cflags-$(CONFIG_CPU_SH3)		+= -m3
cflags-$(CONFIG_CPU_SH4)		+= -m4 \
cflags-$(CONFIG_CPU_SH2)		:= -m2
cflags-$(CONFIG_CPU_SH3)		:= -m3
cflags-$(CONFIG_CPU_SH4)		:= -m4 \
	$(call cc-option,-mno-implicit-fp,-m4-nofpu)
cflags-$(CONFIG_CPU_SH4A)		+= $(call cc-option,-m4a-nofpu,)
cflags-$(CONFIG_CPU_SH4A)		:= -m4a $(call cc-option,-m4a-nofpu,)

cflags-$(CONFIG_CPU_BIG_ENDIAN)		+= -mb
cflags-$(CONFIG_CPU_LITTLE_ENDIAN)	+= -ml

cflags-y	+= $(call as-option,-Wa$(comma)-isa=$(isa-y),) -ffreestanding

cflags-$(CONFIG_SH_DSP)			+= -Wa,-dsp
cflags-$(CONFIG_SH_KGDB)		+= -g
@@ -59,7 +58,9 @@ OBJCOPYFLAGS := -O binary -R .note -R .comment -R .stab -R .stabstr -S
# never be used by anyone. Use a board-specific defconfig that has a
# reasonable chance of being current instead.
#
KBUILD_DEFCONFIG := rts7751r2d_defconfig
KBUILD_DEFCONFIG := r7780rp_defconfig

KBUILD_IMAGE	:= arch/sh/boot/zImage

#
# Choosing incompatible machines durings configuration will result in
@@ -109,6 +110,8 @@ machdir-$(CONFIG_SH_SH4202_MICRODEV) := superh/microdev
machdir-$(CONFIG_SH_LANDISK)			:= landisk
machdir-$(CONFIG_SH_TITAN)			:= titan
machdir-$(CONFIG_SH_SHMIN)			:= shmin
machdir-$(CONFIG_SH_7206_SOLUTION_ENGINE)	:= se/7206
machdir-$(CONFIG_SH_7619_SOLUTION_ENGINE)	:= se/7619
machdir-$(CONFIG_SH_UNKNOWN)			:= unknown

incdir-y			:= $(notdir $(machdir-y))
@@ -124,6 +127,7 @@ core-$(CONFIG_HD64465) += arch/sh/cchips/hd6446x/hd64465/
core-$(CONFIG_VOYAGERGX)	+= arch/sh/cchips/voyagergx/

cpuincdir-$(CONFIG_CPU_SH2)	:= cpu-sh2
cpuincdir-$(CONFIG_CPU_SH2A)	:= cpu-sh2a
cpuincdir-$(CONFIG_CPU_SH3)	:= cpu-sh3
cpuincdir-$(CONFIG_CPU_SH4)	:= cpu-sh4

+3 −1
Original line number Diff line number Diff line
@@ -3,4 +3,6 @@
#

obj-y	 := setup.o io.o irq.o

obj-$(CONFIG_HEARTBEAT)		+= led.o
obj-$(CONFIG_PUSH_SWITCH)	+= psw.o
+1 −0
Original line number Diff line number Diff line
@@ -10,6 +10,7 @@
 */
#include <linux/init.h>
#include <linux/irq.h>
#include <linux/interrupt.h>
#include <linux/io.h>
#include <asm/r7780rp.h>

Loading