container freezer: implement freezer cgroup subsystem
[safe/jmp/linux-2.6] / arch / sh / Kconfig
index c0797b4..2ed5713 100644 (file)
@@ -8,6 +8,10 @@ mainmenu "Linux/SuperH Kernel Configuration"
 config SUPERH
        def_bool y
        select EMBEDDED
+       select HAVE_CLK
+       select HAVE_IDE
+       select HAVE_OPROFILE
+       select HAVE_GENERIC_DMA_COHERENT
        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,9 +24,13 @@ config SUPERH32
 config SUPERH64
        def_bool y if CPU_SH5
 
+config ARCH_DEFCONFIG
+       string
+       default "arch/sh/configs/shx3_defconfig" if SUPERH32
+       default "arch/sh/configs/cayman_defconfig" if SUPERH64
+
 config RWSEM_GENERIC_SPINLOCK
-       bool
-       default y
+       def_bool y
 
 config RWSEM_XCHGADD_ALGORITHM
        bool
@@ -32,24 +40,22 @@ config GENERIC_BUG
        depends on BUG && SUPERH32
 
 config GENERIC_FIND_NEXT_BIT
-       bool
-       default y
+       def_bool y
 
 config GENERIC_HWEIGHT
-       bool
-       default y
+       def_bool y
 
 config GENERIC_HARDIRQS
-       bool
-       default y
+       def_bool y
+
+config GENERIC_HARDIRQS_NO__DO_IRQ
+       def_bool y
 
 config GENERIC_IRQ_PROBE
-       bool
-       default y
+       def_bool y
 
 config GENERIC_CALIBRATE_DELAY
-       bool
-       default y
+       def_bool y
 
 config GENERIC_IOMAP
        bool
@@ -60,6 +66,10 @@ config GENERIC_TIME
 config GENERIC_CLOCKEVENTS
        def_bool n
 
+config GENERIC_LOCKBREAK
+       def_bool y
+       depends on SMP && PREEMPT
+
 config SYS_SUPPORTS_PM
        bool
 
@@ -76,30 +86,28 @@ config SYS_SUPPORTS_NUMA
 config SYS_SUPPORTS_PCI
        bool
 
-config ARCH_MAY_HAVE_PC_FDC
-       bool
-
 config STACKTRACE_SUPPORT
-       bool
-       default y
+       def_bool y
 
 config LOCKDEP_SUPPORT
-       bool
-       default y
+       def_bool y
 
 config ARCH_HAS_ILOG2_U32
-       bool
-       default n
+       def_bool n
 
 config ARCH_HAS_ILOG2_U64
-       bool
-       default n
+       def_bool n
 
 config ARCH_NO_VIRT_TO_BUS
        def_bool y
 
+config IO_TRAPPED
+       bool
+
 source "init/Kconfig"
 
+source "kernel/Kconfig.freezer"
+
 menu "System type"
 
 #
@@ -158,10 +166,26 @@ config CPU_SUBTYPE_SH7619
 
 # SH-2A Processor Support
 
+config CPU_SUBTYPE_SH7203
+       bool "Support SH7203 processor"
+       select CPU_SH2A
+       select CPU_HAS_FPU
+
 config CPU_SUBTYPE_SH7206
        bool "Support SH7206 processor"
        select CPU_SH2A
 
+config CPU_SUBTYPE_SH7263
+       bool "Support SH7263 processor"
+       select CPU_SH2A
+       select CPU_HAS_FPU
+
+config CPU_SUBTYPE_MXG
+       bool "Support MX-G processor"
+       select CPU_SH2A
+       help
+         Select MX-G if running on an R8A03022BG part.
+
 # SH-3 Processor Support
 
 config CPU_SUBTYPE_SH7705
@@ -214,6 +238,13 @@ config CPU_SUBTYPE_SH7720
        help
          Select SH7720 if you have a SH3-DSP SH7720 CPU.
 
+config CPU_SUBTYPE_SH7721
+       bool "Support SH7721 processor"
+       select CPU_SH3
+       select CPU_HAS_DSP
+       help
+         Select SH7721 if you have a SH3-DSP SH7721 CPU.
+
 # SH-4 Processor Support
 
 config CPU_SUBTYPE_SH7750
@@ -258,6 +289,20 @@ config CPU_SUBTYPE_SH4_202
 
 # SH-4A Processor Support
 
+config CPU_SUBTYPE_SH7723
+       bool "Support SH7723 processor"
+       select CPU_SH4A
+       select CPU_SHX2
+       select ARCH_SPARSEMEM_ENABLE
+       help
+         Select SH7723 if you have an SH-MobileR2 CPU.
+
+config CPU_SUBTYPE_SH7763
+       bool "Support SH7763 processor"
+       select CPU_SH4A
+       help
+         Select SH7763 if you have a SH4A SH7763(R5S77631) CPU.
+
 config CPU_SUBTYPE_SH7770
        bool "Support SH7770 processor"
        select CPU_SH4A
@@ -294,6 +339,13 @@ config CPU_SUBTYPE_SH7722
        select ARCH_SPARSEMEM_ENABLE
        select SYS_SUPPORTS_NUMA
 
+config CPU_SUBTYPE_SH7366
+       bool "Support SH7366 processor"
+       select CPU_SH4AL_DSP
+       select CPU_SHX2
+       select ARCH_SPARSEMEM_ENABLE
+       select SYS_SUPPORTS_NUMA
+
 # SH-5 Processor Support
 
 config CPU_SUBTYPE_SH5_101
@@ -302,258 +354,49 @@ config CPU_SUBTYPE_SH5_101
 
 config CPU_SUBTYPE_SH5_103
        bool "Support SH5-103 processor"
+       select CPU_SH5
 
 endchoice
 
 source "arch/sh/mm/Kconfig"
 source "arch/sh/Kconfig.cpu"
 
-menu "Board support"
-
-config SOLUTION_ENGINE
-       bool
-
-config SH_SOLUTION_ENGINE
-       bool "SolutionEngine"
-       select SOLUTION_ENGINE
-       select CPU_HAS_IPR_IRQ
-       depends on CPU_SUBTYPE_SH7705 || CPU_SUBTYPE_SH7709 || CPU_SUBTYPE_SH7710 || \
-         CPU_SUBTYPE_SH7712 || CPU_SUBTYPE_SH7750 || CPU_SUBTYPE_SH7750S || \
-         CPU_SUBTYPE_SH7750R 
-       help
-         Select SolutionEngine if configuring for a Hitachi SH7705, SH7709,
-         SH7710, SH7712, SH7750, SH7750S or SH7750R evaluation board.
-
-config SH_7206_SOLUTION_ENGINE
-       bool "SolutionEngine7206"
-       select SOLUTION_ENGINE
-       depends on CPU_SUBTYPE_SH7206
-       help
-         Select 7206 SolutionEngine if configuring for a Hitachi SH7206
-         evaluation board.
-
-config SH_7619_SOLUTION_ENGINE
-       bool "SolutionEngine7619"
-       select SOLUTION_ENGINE
-       depends on CPU_SUBTYPE_SH7619
-       help
-         Select 7619 SolutionEngine if configuring for a Hitachi SH7619
-         evaluation board.
-       
-config SH_7722_SOLUTION_ENGINE
-       bool "SolutionEngine7722"
-       select SOLUTION_ENGINE
-       depends on CPU_SUBTYPE_SH7722
-       help
-         Select 7722 SolutionEngine if configuring for a Hitachi SH772
-         evaluation board.
-
-config SH_7751_SOLUTION_ENGINE
-       bool "SolutionEngine7751"
-       select SOLUTION_ENGINE
-       select CPU_HAS_IPR_IRQ
-       depends on CPU_SUBTYPE_SH7751
-       help
-         Select 7751 SolutionEngine if configuring for a Hitachi SH7751
-         evaluation board.
-         
-config SH_7780_SOLUTION_ENGINE
-       bool "SolutionEngine7780"
-       select SOLUTION_ENGINE
-       select SYS_SUPPORTS_PCI
-       depends on CPU_SUBTYPE_SH7780
-       help
-         Select 7780 SolutionEngine if configuring for a Renesas SH7780
-         evaluation board.
-
-config SH_7343_SOLUTION_ENGINE
-       bool "SolutionEngine7343"
-       select SOLUTION_ENGINE
-       depends on CPU_SUBTYPE_SH7343
-       help
-         Select 7343 SolutionEngine if configuring for a Hitachi
-         SH7343 (SH-Mobile 3AS) evaluation board.
-
-config SH_7751_SYSTEMH
-       bool "SystemH7751R"
-       depends on CPU_SUBTYPE_SH7751R
-       help
-         Select SystemH if you are configuring for a Renesas SystemH
-         7751R evaluation board.
-
-config SH_HP6XX
-       bool "HP6XX"
-       select SYS_SUPPORTS_APM_EMULATION
-       select HD6446X_SERIES
-       depends on CPU_SUBTYPE_SH7709
-       help
-         Select HP6XX if configuring for a HP jornada HP6xx.
-         More information (hardware only) at
-         <http://www.hp.com/jornada/>.
-
-config SH_DREAMCAST
-       bool "Dreamcast"
-       select SYS_SUPPORTS_PCI
-       depends on CPU_SUBTYPE_SH7091
-       help
-         Select Dreamcast if configuring for a SEGA Dreamcast.
-         More information at <http://www.linux-sh.org>
-
-config SH_MPC1211
-       bool "Interface MPC1211"
-       depends on CPU_SUBTYPE_SH7751 && BROKEN
-       help
-         CTP/PCI-SH02 is a CPU module computer that is produced
-         by Interface Corporation.
-         More information at <http://www.interface.co.jp>
-
-config SH_SH03
-       bool "Interface CTP/PCI-SH03"
-       depends on CPU_SUBTYPE_SH7751
-       select CPU_HAS_IPR_IRQ
-       select SYS_SUPPORTS_PCI
-       help
-         CTP/PCI-SH03 is a CPU module computer that is produced
-         by Interface Corporation.
-         More information at <http://www.interface.co.jp>
-
-config SH_SECUREEDGE5410
-       bool "SecureEdge5410"
-       depends on CPU_SUBTYPE_SH7751R
-       select CPU_HAS_IPR_IRQ
-       select SYS_SUPPORTS_PCI
-       help
-         Select SecureEdge5410 if configuring for a SnapGear SH board.
-         This includes both the OEM SecureEdge products as well as the
-         SME product line.
-
-config SH_HS7751RVOIP
-       bool "HS7751RVOIP"
-       depends on CPU_SUBTYPE_SH7751R
-       help
-         Select HS7751RVOIP if configuring for a Renesas Technology
-         Sales VoIP board.
-
-config SH_7710VOIPGW
-       bool "SH7710-VOIP-GW"
-       depends on CPU_SUBTYPE_SH7710
-       help
-         Select this option to build a kernel for the SH7710 based
-         VOIP GW.
-
-config SH_RTS7751R2D
-       bool "RTS7751R2D"
-       depends on CPU_SUBTYPE_SH7751R
-       select SYS_SUPPORTS_PCI
-       help
-         Select RTS7751R2D if configuring for a Renesas Technology
-         Sales SH-Graphics board.
-
-config SH_HIGHLANDER
-       bool "Highlander"
-       depends on CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785
-       select SYS_SUPPORTS_PCI
-
-config SH_EDOSK7705
-       bool "EDOSK7705"
-       depends on CPU_SUBTYPE_SH7705
-
-config SH_SH4202_MICRODEV
-       bool "SH4-202 MicroDev"
-       depends on CPU_SUBTYPE_SH4_202
-       help
-         Select SH4-202 MicroDev if configuring for a SuperH MicroDev board
-         with an SH4-202 CPU.
-
-config SH_LANDISK
-       bool "LANDISK"
-       depends on CPU_SUBTYPE_SH7751R
-       select SYS_SUPPORTS_PCI
-       help
-         I-O DATA DEVICE, INC. "LANDISK Series" support.
-
-config SH_TITAN
-       bool "TITAN"
-       depends on CPU_SUBTYPE_SH7751R
-       select CPU_HAS_IPR_IRQ
-       select SYS_SUPPORTS_PCI
-       help
-         Select Titan if you are configuring for a Nimble Microsystems
-         NetEngine NP51R.
-
-config SH_SHMIN
-       bool "SHMIN"
-       depends on CPU_SUBTYPE_SH7706
-       select CPU_HAS_IPR_IRQ
-       help
-         Select SHMIN if configuring for the SHMIN board.
-
-config SH_LBOX_RE2
-       bool "L-BOX RE2"
-       depends on CPU_SUBTYPE_SH7751R
-       select SYS_SUPPORTS_PCI
-       help
-         Select L-BOX RE2 if configuring for the NTT COMWARE L-BOX RE2.
-
-config SH_X3PROTO
-       bool "SH-X3 Prototype board"
-       depends on CPU_SUBTYPE_SHX3
-
-config SH_MAGIC_PANEL_R2
-       bool "Magic Panel R2"
-       depends on CPU_SUBTYPE_SH7720
-       help
-         Select Magic Panel R2 if configuring for Magic Panel R2.
-
-config SH_SIMULATOR
-       bool "Simulator"
-       depends on SUPERH64
-
-config SH_CAYMAN
-       bool "Hitachi Cayman"
-       depends on CPU_SUBTYPE_SH5_101 || CPU_SUBTYPE_SH5_103
-
-config SH_HARP
-       bool "ST50 Harp"
-       depends on CPU_SH5
-
-endmenu
-
-source "arch/sh/boards/renesas/hs7751rvoip/Kconfig"
-source "arch/sh/boards/renesas/rts7751r2d/Kconfig"
-source "arch/sh/boards/renesas/r7780rp/Kconfig"
-source "arch/sh/boards/magicpanelr2/Kconfig"
+source "arch/sh/boards/Kconfig"
 
 menu "Timer and clock configuration"
 
 config SH_TMU
-       bool "TMU timer support"
+       def_bool y
+       prompt "TMU timer support"
        depends on CPU_SH3 || CPU_SH4
        select GENERIC_TIME
        select GENERIC_CLOCKEVENTS
-       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
+       def_bool y
+       prompt "CMT timer support"
+       depends on CPU_SH2 && !CPU_SUBTYPE_MXG
        help
          This enables the use of the CMT as the system timer.
 
 config SH_MTU2
-       bool "MTU2 timer support"
+       def_bool n
+       prompt "MTU2 timer support"
        depends on CPU_SH2A
-       default n
        help
          This enables the use of the MTU2 as the system timer.
 
 config SH_TIMER_IRQ
        int
-       default "28" if CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785
+       default "28" if CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785 || \
+                       CPU_SUBTYPE_SH7763
        default "86" if CPU_SUBTYPE_SH7619
        default "140" if CPU_SUBTYPE_SH7206
+       default "142" if CPU_SUBTYPE_SH7203
+       default "238" if CPU_SUBTYPE_MXG
        default "16"
 
 config SH_PCLK_FREQ
@@ -561,9 +404,10 @@ config SH_PCLK_FREQ
        default "27000000" if CPU_SUBTYPE_SH7343
        default "31250000" if CPU_SUBTYPE_SH7619
        default "32000000" if CPU_SUBTYPE_SH7722
-       default "33333333" if CPU_SUBTYPE_SH7770 || \
+       default "33333333" if CPU_SUBTYPE_SH7770 || CPU_SUBTYPE_SH7723 || \
                              CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \
-                             CPU_SUBTYPE_SH7206
+                             CPU_SUBTYPE_SH7203 || CPU_SUBTYPE_SH7206 || \
+                             CPU_SUBTYPE_SH7263 || CPU_SUBTYPE_MXG
        default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
        default "66000000" if CPU_SUBTYPE_SH4_202
        default "50000000"
@@ -574,7 +418,7 @@ config SH_PCLK_FREQ
 
 config SH_CLK_MD
        int "CPU Mode Pin Setting"
-       depends on CPU_SUBTYPE_SH7619 || CPU_SUBTYPE_SH7206
+       depends on CPU_SH2
        default 6 if CPU_SUBTYPE_SH7206
        default 5 if CPU_SUBTYPE_SH7619
        default 0
@@ -609,8 +453,6 @@ endmenu
 
 config ISA_DMA_API
        bool
-       depends on SH_MPC1211
-       default y
 
 menu "Kernel features"
 
@@ -618,7 +460,7 @@ source kernel/Kconfig.hz
 
 config KEXEC
        bool "kexec system call (EXPERIMENTAL)"
-       depends on EXPERIMENTAL
+       depends on SUPERH32 && EXPERIMENTAL
        help
          kexec is a system call that implements the ability to shutdown your
          current kernel, and to start another kernel.  It is like a reboot
@@ -635,7 +477,7 @@ config KEXEC
 
 config CRASH_DUMP
        bool "kernel crash dumps (EXPERIMENTAL)"
-       depends on EXPERIMENTAL
+       depends on SUPERH32 && EXPERIMENTAL
        help
          Generate crash dump after being started by kexec.
          This should be normally only set in special crash dump kernels
@@ -647,9 +489,27 @@ config CRASH_DUMP
 
          For more details see Documentation/kdump/kdump.txt
 
+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
+         execution. By using pipes or other transports made available to
+         the process as file descriptors supporting the read/write
+         syscalls, it's possible to isolate those applications in
+         their own address space using seccomp. Once seccomp is
+         enabled via prctl, it cannot be disabled and the task is only
+         allowed to execute a few safe syscalls defined by each seccomp
+         mode.
+
+         If unsure, say N.
+
 config SMP
        bool "Symmetric multi-processing support"
        depends on SYS_SUPPORTS_SMP
+       select USE_GENERIC_SMP_HELPERS
        ---help---
          This enables support for systems with more than one CPU. If you have
          a system with only one CPU, like most personal computers, say N. If
@@ -664,9 +524,8 @@ config SMP
          People using multiprocessor machines who say Y here should also say
          Y to "Enhanced Real Time Clock Support", below.
 
-         See also the <file:Documentation/smp.txt>,
-         <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available
-         at <http://www.tldp.org/docs.html#howto>.
+         See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
+         available at <http://www.tldp.org/docs.html#howto>.
 
          If you don't know what to do here, say N.
 
@@ -688,7 +547,7 @@ source "kernel/Kconfig.preempt"
 
 config GUSA
        def_bool y
-       depends on !SMP
+       depends on !SMP && SUPERH32
        help
          This enables support for gUSA (general UserSpace Atomicity).
          This is the default implementation for both UP and non-ll/sc
@@ -700,13 +559,23 @@ config GUSA
          This should only be disabled for special cases where alternate
          atomicity implementations exist.
 
+config GUSA_RB
+       bool "Implement atomic operations by roll-back (gRB) (EXPERIMENTAL)"
+       depends on GUSA && CPU_SH3 || (CPU_SH4 && !CPU_SH4A)
+       help
+         Enabling this option will allow the kernel to implement some
+         atomic operations using a software implemention of load-locked/
+         store-conditional (LLSC). On machines which do not have hardware
+         LLSC, this should be more efficient than the other alternative of
+         disabling insterrupts around the atomic sequence.
+
 endmenu
 
 menu "Boot options"
 
 config ZERO_PAGE_OFFSET
        hex "Zero page offset"
-       default "0x00004000" if SH_MPC1211 || SH_SH03
+       default "0x00004000" if SH_SH03
        default "0x00010000" if PAGE_SIZE_64KB
        default "0x00002000" if PAGE_SIZE_8KB
        default "0x00001000"
@@ -864,6 +733,10 @@ endmenu
 menu "Power management options (EXPERIMENTAL)"
 depends on EXPERIMENTAL && SYS_SUPPORTS_PM
 
+config ARCH_SUSPEND_POSSIBLE
+       def_bool y
+       depends on !SMP
+
 source kernel/power/Kconfig
 
 endmenu
@@ -874,8 +747,6 @@ source "drivers/Kconfig"
 
 source "fs/Kconfig"
 
-source "kernel/Kconfig.instrumentation"
-
 source "arch/sh/Kconfig.debug"
 
 source "security/Kconfig"