sh: Fix compile error by operands(mov.l) in sh3/entry.S
[safe/jmp/linux-2.6] / arch / sh / Kconfig
index 5131d50..adffbf4 100644 (file)
@@ -12,6 +12,8 @@ config SUPERH
        select HAVE_IDE
        select HAVE_OPROFILE
        select HAVE_GENERIC_DMA_COHERENT
+       select HAVE_IOREMAP_PROT if MMU
+       select HAVE_ARCH_TRACEHOOK
        help
          The SuperH is a RISC processor targeted for use in embedded systems
          and consumer electronics; it was also used in the Sega Dreamcast
@@ -20,6 +22,12 @@ config SUPERH
 
 config SUPERH32
        def_bool !SUPERH64
+       select HAVE_KPROBES
+       select HAVE_KRETPROBES
+       select HAVE_FUNCTION_TRACER
+       select HAVE_FTRACE_MCOUNT_RECORD
+       select HAVE_DYNAMIC_FTRACE
+       select HAVE_ARCH_KGDB
 
 config SUPERH64
        def_bool y if CPU_SH5
@@ -54,8 +62,11 @@ config GENERIC_HARDIRQS_NO__DO_IRQ
 config GENERIC_IRQ_PROBE
        def_bool y
 
+config GENERIC_GPIO
+       def_bool n
+
 config GENERIC_CALIBRATE_DELAY
-       def_bool y
+       bool
 
 config GENERIC_IOMAP
        bool
@@ -66,16 +77,26 @@ config GENERIC_TIME
 config GENERIC_CLOCKEVENTS
        def_bool n
 
+config GENERIC_CLOCKEVENTS_BROADCAST
+       bool
+
 config GENERIC_LOCKBREAK
        def_bool y
        depends on SMP && PREEMPT
 
 config SYS_SUPPORTS_PM
        bool
+       depends on !SMP
+
+config ARCH_SUSPEND_POSSIBLE
+       def_bool n
+
+config ARCH_HIBERNATION_POSSIBLE
+       def_bool n
 
 config SYS_SUPPORTS_APM_EMULATION
        bool
-       select SYS_SUPPORTS_PM
+       select ARCH_SUSPEND_POSSIBLE
 
 config SYS_SUPPORTS_SMP
        bool
@@ -86,12 +107,19 @@ config SYS_SUPPORTS_NUMA
 config SYS_SUPPORTS_PCI
        bool
 
+config SYS_SUPPORTS_CMT
+       bool
+
 config STACKTRACE_SUPPORT
        def_bool y
 
 config LOCKDEP_SUPPORT
        def_bool y
 
+config HAVE_LATENCYTOP_SUPPORT
+       def_bool y
+       depends on !SMP
+
 config ARCH_HAS_ILOG2_U32
        def_bool n
 
@@ -106,6 +134,8 @@ config IO_TRAPPED
 
 source "init/Kconfig"
 
+source "kernel/Kconfig.freezer"
+
 menu "System type"
 
 #
@@ -149,6 +179,9 @@ config CPU_SHX2
 config CPU_SHX3
        bool
 
+config ARCH_SHMOBILE
+       bool
+
 choice
        prompt "Processor sub-type selection"
 
@@ -161,22 +194,31 @@ choice
 config CPU_SUBTYPE_SH7619
        bool "Support SH7619 processor"
        select CPU_SH2
+       select SYS_SUPPORTS_CMT
 
 # SH-2A Processor Support
 
+config CPU_SUBTYPE_SH7201
+       bool "Support SH7201 processor"
+       select CPU_SH2A
+       select CPU_HAS_FPU
 config CPU_SUBTYPE_SH7203
        bool "Support SH7203 processor"
        select CPU_SH2A
        select CPU_HAS_FPU
+       select SYS_SUPPORTS_CMT
 
 config CPU_SUBTYPE_SH7206
        bool "Support SH7206 processor"
        select CPU_SH2A
+       select SYS_SUPPORTS_CMT
 
 config CPU_SUBTYPE_SH7263
        bool "Support SH7263 processor"
        select CPU_SH2A
        select CPU_HAS_FPU
+       select SYS_SUPPORTS_CMT
 
 config CPU_SUBTYPE_MXG
        bool "Support MX-G processor"
@@ -291,7 +333,9 @@ config CPU_SUBTYPE_SH7723
        bool "Support SH7723 processor"
        select CPU_SH4A
        select CPU_SHX2
+       select ARCH_SHMOBILE
        select ARCH_SPARSEMEM_ENABLE
+       select SYS_SUPPORTS_CMT
        help
          Select SH7723 if you have an SH-MobileR2 CPU.
 
@@ -316,6 +360,13 @@ config CPU_SUBTYPE_SH7785
        select ARCH_SPARSEMEM_ENABLE
        select SYS_SUPPORTS_NUMA
 
+config CPU_SUBTYPE_SH7786
+       bool "Support SH7786 processor"
+       select CPU_SH4A
+       select CPU_SHX3
+       select ARCH_SPARSEMEM_ENABLE
+       select SYS_SUPPORTS_NUMA
+
 config CPU_SUBTYPE_SHX3
        bool "Support SH-X3 processor"
        select CPU_SH4A
@@ -323,26 +374,33 @@ config CPU_SUBTYPE_SHX3
        select ARCH_SPARSEMEM_ENABLE
        select SYS_SUPPORTS_NUMA
        select SYS_SUPPORTS_SMP
+       select GENERIC_CLOCKEVENTS_BROADCAST if SMP
 
 # SH4AL-DSP Processor Support
 
 config CPU_SUBTYPE_SH7343
        bool "Support SH7343 processor"
        select CPU_SH4AL_DSP
+       select ARCH_SHMOBILE
+       select SYS_SUPPORTS_CMT
 
 config CPU_SUBTYPE_SH7722
        bool "Support SH7722 processor"
        select CPU_SH4AL_DSP
        select CPU_SHX2
+       select ARCH_SHMOBILE
        select ARCH_SPARSEMEM_ENABLE
        select SYS_SUPPORTS_NUMA
+       select SYS_SUPPORTS_CMT
 
 config CPU_SUBTYPE_SH7366
        bool "Support SH7366 processor"
        select CPU_SH4AL_DSP
        select CPU_SHX2
+       select ARCH_SHMOBILE
        select ARCH_SPARSEMEM_ENABLE
        select SYS_SUPPORTS_NUMA
+       select SYS_SUPPORTS_CMT
 
 # SH-5 Processor Support
 
@@ -365,25 +423,34 @@ source "arch/sh/boards/Kconfig"
 menu "Timer and clock configuration"
 
 config SH_TMU
-       def_bool y
-       prompt "TMU timer support"
+       bool "TMU timer support"
        depends on CPU_SH3 || CPU_SH4
+       default y
        select GENERIC_TIME
        select GENERIC_CLOCKEVENTS
        help
          This enables the use of the TMU as the system timer.
 
 config SH_CMT
-       def_bool y
-       prompt "CMT timer support"
-       depends on CPU_SH2 && !CPU_SUBTYPE_MXG
+       bool "CMT timer support"
+       depends on SYS_SUPPORTS_CMT && CPU_SH2
+       default y
        help
          This enables the use of the CMT as the system timer.
 
+#
+# Support for the new-style CMT driver. This will replace SH_CMT
+# once its other dependencies are merged.
+#
+config SH_TIMER_CMT
+       bool "CMT clockevents driver"
+       depends on SYS_SUPPORTS_CMT && !SH_CMT
+       select GENERIC_CLOCKEVENTS
+
 config SH_MTU2
-       def_bool n
-       prompt "MTU2 timer support"
+       bool "MTU2 timer support"
        depends on CPU_SH2A
+       default y
        help
          This enables the use of the MTU2 as the system timer.
 
@@ -393,7 +460,8 @@ config SH_TIMER_IRQ
                        CPU_SUBTYPE_SH7763
        default "86" if CPU_SUBTYPE_SH7619
        default "140" if CPU_SUBTYPE_SH7206
-       default "142" if CPU_SUBTYPE_SH7203
+       default "142" if CPU_SUBTYPE_SH7203 && SH_CMT
+       default "153" if CPU_SUBTYPE_SH7203 && SH_MTU2
        default "238" if CPU_SUBTYPE_MXG
        default "16"
 
@@ -405,7 +473,8 @@ config SH_PCLK_FREQ
        default "33333333" if CPU_SUBTYPE_SH7770 || CPU_SUBTYPE_SH7723 || \
                              CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \
                              CPU_SUBTYPE_SH7203 || CPU_SUBTYPE_SH7206 || \
-                             CPU_SUBTYPE_SH7263 || CPU_SUBTYPE_MXG
+                             CPU_SUBTYPE_SH7263 || CPU_SUBTYPE_MXG    || \
+                             CPU_SUBTYPE_SH7786
        default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
        default "66000000" if CPU_SUBTYPE_SH4_202
        default "50000000"
@@ -436,8 +505,12 @@ config SH_CPU_FREQ
        depends on CPU_FREQ
        select CPU_FREQ_TABLE
        help
-         This adds the cpufreq driver for SuperH. At present, only
-         the SH-4 is supported.
+         This adds the cpufreq driver for SuperH. Any CPU that supports
+         clock rate rounding through the clock framework can use this
+         driver. While it will make the kernel slightly larger, this is
+         harmless for CPUs that don't support rate rounding. The driver
+         will also generate a notice in the boot log before disabling
+         itself if the CPU in question is not capable of rate rounding.
 
          For details, take a look at <file:Documentation/cpu-freq>.
 
@@ -449,9 +522,6 @@ source "arch/sh/drivers/Kconfig"
 
 endmenu
 
-config ISA_DMA_API
-       bool
-
 menu "Kernel features"
 
 source kernel/Kconfig.hz
@@ -490,7 +560,6 @@ config CRASH_DUMP
 config SECCOMP
        bool "Enable seccomp to safely compute untrusted bytecode"
        depends on PROC_FS
-       default y
        help
          This kernel feature is useful for number crunching applications
          that may need to compute untrusted bytecode during their
@@ -611,109 +680,25 @@ endmenu
 
 menu "Bus options"
 
-# Even on SuperH devices which don't have an ISA bus,
-# this variable helps the PCMCIA modules handle
-# IRQ requesting properly -- Greg Banks.
-#
-# Though we're generally not interested in it when
-# we're not using PCMCIA, so we make it dependent on
-# PCMCIA outright. -- PFM.
-config ISA
-       def_bool y
-       depends on PCMCIA && HD6446X_SERIES
-       help
-         Find out whether you have ISA slots on your motherboard.  ISA is the
-         name of a bus system, i.e. the way the CPU talks to the other stuff
-         inside your box.  Other bus systems are PCI, EISA, MicroChannel
-         (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
-         newer boards don't support it.  If you have ISA, say Y, otherwise N.
-
-config EISA
-       bool
-       ---help---
-         The Extended Industry Standard Architecture (EISA) bus was
-         developed as an open alternative to the IBM MicroChannel bus.
-
-         The EISA bus provided some of the features of the IBM MicroChannel
-         bus while maintaining backward compatibility with cards made for
-         the older ISA bus.  The EISA bus saw limited use between 1988 and
-         1995 when it was made obsolete by the PCI bus.
-
-         Say Y here if you are building a kernel for an EISA-based machine.
-
-         Otherwise, say N.
-
-config MCA
-       bool
-       help
-         MicroChannel Architecture is found in some IBM PS/2 machines and
-         laptops.  It is a bus system similar to PCI or ISA. See
-         <file:Documentation/mca.txt> (and especially the web page given
-         there) before attempting to build an MCA bus kernel.
-
-config SBUS
-       bool
-
 config SUPERHYWAY
        tristate "SuperHyway Bus support"
        depends on CPU_SUBTYPE_SH4_202
 
 config MAPLE
-       bool "Maple Bus support"
-       depends on SH_DREAMCAST
-       help
-         The Maple Bus is SEGA's serial communication bus for peripherals
-         on the Dreamcast. Without this bus support you won't be able to
-         get your Dreamcast keyboard etc to work, so most users
-         probably want to say 'Y' here, unless you are only using the
-         Dreamcast with a serial line terminal or a remote network
-         connection.
-
-config CF_ENABLER
-       bool "Compact Flash Enabler support"
-       depends on SOLUTION_ENGINE || SH_SH03
-       ---help---
-         Compact Flash is a small, removable mass storage device introduced
-         in 1994 originally as a PCMCIA device.  If you say `Y' here, you
-         compile in support for Compact Flash devices directly connected to
-         a SuperH processor.  A Compact Flash FAQ is available at
-         <http://www.compactflash.org/faqs/faq.htm>.
-
-         If your board has "Directly Connected" CompactFlash at area 5 or 6,
-         you may want to enable this option.  Then, you can use CF as
-         primary IDE drive (only tested for SanDisk).
-
-         If in doubt, select 'N'.
-
-choice
-       prompt "Compact Flash Connection Area"
-       depends on CF_ENABLER
-       default CF_AREA6
-
-config CF_AREA5
-       bool "Area5"
+       bool "Maple Bus support"
+       depends on SH_DREAMCAST
        help
-         If your board has "Directly Connected" CompactFlash, You should
-         select the area where your CF is connected to.
-
-         - "Area5" if CompactFlash is connected to Area 5 (0x14000000)
-         - "Area6" if it is connected to Area 6 (0x18000000)
-
-         "Area6" will work for most boards.
-
-config CF_AREA6
-       bool "Area6"
-
-endchoice
-
-config CF_BASE_ADDR
-       hex
-       depends on CF_ENABLER
-       default "0xb8000000" if CF_AREA6
-       default "0xb4000000" if CF_AREA5
+        The Maple Bus is SEGA's serial communication bus for peripherals
+        on the Dreamcast. Without this bus support you won't be able to
+        get your Dreamcast keyboard etc to work, so most users
+        probably want to say 'Y' here, unless you are only using the
+        Dreamcast with a serial line terminal or a remote network
+        connection.
 
 source "arch/sh/drivers/pci/Kconfig"
 
+source "drivers/pci/pcie/Kconfig"
+
 source "drivers/pci/Kconfig"
 
 source "drivers/pcmcia/Kconfig"
@@ -729,13 +714,11 @@ source "fs/Kconfig.binfmt"
 endmenu
 
 menu "Power management options (EXPERIMENTAL)"
-depends on EXPERIMENTAL && SYS_SUPPORTS_PM
+depends on EXPERIMENTAL
 
-config ARCH_SUSPEND_POSSIBLE
-       def_bool y
-       depends on !SMP
+source "kernel/power/Kconfig"
 
-source kernel/power/Kconfig
+source "drivers/cpuidle/Kconfig"
 
 endmenu