]> nv-tegra.nvidia Code Review - linux-3.10.git/blobdiff - arch/sh/Kconfig
ARM: nomadik: convert to multiplatform
[linux-3.10.git] / arch / sh / Kconfig
index dd4bf55094b28e44abbeac2e80394fdbdd4a721e..5e859633ce69f13c9d2b1d1c1a5727ad986a9fab 100644 (file)
@@ -4,28 +4,43 @@ config SUPERH
        select CLKDEV_LOOKUP
        select HAVE_IDE if HAS_IOPORT
        select HAVE_MEMBLOCK
+       select HAVE_MEMBLOCK_NODE_MAP
+       select ARCH_DISCARD_MEMBLOCK
        select HAVE_OPROFILE
        select HAVE_GENERIC_DMA_COHERENT
        select HAVE_ARCH_TRACEHOOK
        select HAVE_DMA_API_DEBUG
        select HAVE_DMA_ATTRS
-       select HAVE_IRQ_WORK
        select HAVE_PERF_EVENTS
+       select HAVE_DEBUG_BUGVERBOSE
+       select ARCH_HAVE_CUSTOM_GPIO_H
+       select ARCH_HAVE_NMI_SAFE_CMPXCHG if (GUSA_RB || CPU_SH4A)
        select PERF_USE_VMALLOC
+       select HAVE_DEBUG_KMEMLEAK
        select HAVE_KERNEL_GZIP
        select HAVE_KERNEL_BZIP2
        select HAVE_KERNEL_LZMA
        select HAVE_KERNEL_XZ
        select HAVE_KERNEL_LZO
+       select HAVE_UID16
+       select ARCH_WANT_IPC_PARSE_VERSION
        select HAVE_SYSCALL_TRACEPOINTS
        select HAVE_REGS_AND_STACK_ACCESS_API
        select HAVE_GENERIC_HARDIRQS
-       select HAVE_SPARSE_IRQ
+       select MAY_HAVE_SPARSE_IRQ
        select IRQ_FORCED_THREADING
        select RTC_LIB
        select GENERIC_ATOMIC64
        select GENERIC_IRQ_SHOW
-       select ARCH_NO_SYSDEV_OPS
+       select GENERIC_SMP_IDLE_THREAD
+       select GENERIC_CLOCKEVENTS
+       select GENERIC_CMOS_UPDATE if SH_SH03 || SH_DREAMCAST
+       select GENERIC_STRNCPY_FROM_USER
+       select GENERIC_STRNLEN_USER
+       select HAVE_MOD_ARCH_SPECIFIC if DWARF_UNWINDER
+       select MODULES_USE_ELF_RELA
+       select OLD_SIGSUSPEND
+       select OLD_SIGACTION
        help
          The SuperH is a RISC processor targeted for use in embedded systems
          and consumer electronics; it was also used in the Sega Dreamcast
@@ -42,6 +57,7 @@ config SUPERH32
        select HAVE_DYNAMIC_FTRACE
        select HAVE_FUNCTION_TRACE_MCOUNT_TEST
        select HAVE_FTRACE_NMI_ENTER if DYNAMIC_FTRACE
+       select ARCH_WANT_IPC_PARSE_VERSION
        select HAVE_FUNCTION_GRAPH_TRACER
        select HAVE_ARCH_KGDB
        select HAVE_HW_BREAKPOINT
@@ -52,6 +68,7 @@ config SUPERH32
 
 config SUPERH64
        def_bool ARCH = "sh64"
+       select KALLSYMS
 
 config ARCH_DEFCONFIG
        string
@@ -72,45 +89,19 @@ config GENERIC_CSUM
        def_bool y
        depends on SUPERH64
 
-config GENERIC_FIND_NEXT_BIT
-       def_bool y
-
-config GENERIC_FIND_BIT_LE
-       def_bool y
-
 config GENERIC_HWEIGHT
        def_bool y
 
-config IRQ_PER_CPU
-       def_bool y
-
 config GENERIC_GPIO
        def_bool n
 
 config GENERIC_CALIBRATE_DELAY
        bool
 
-config GENERIC_IOMAP
-       bool
-
-config GENERIC_CLOCKEVENTS
-       def_bool y
-
-config GENERIC_CLOCKEVENTS_BROADCAST
-       bool
-
-config GENERIC_CMOS_UPDATE
-       def_bool y
-       depends on SH_SH03 || SH_DREAMCAST
-
 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
 
@@ -157,22 +148,20 @@ config ARCH_HAS_ILOG2_U32
 config ARCH_HAS_ILOG2_U64
        def_bool n
 
-config ARCH_NO_VIRT_TO_BUS
-       def_bool y
-
 config ARCH_HAS_DEFAULT_IDLE
        def_bool y
 
-config ARCH_HAS_CPU_IDLE_WAIT
-       def_bool y
-
 config NO_IOPORT
        def_bool !PCI
-       depends on !SH_CAYMAN && !SH_SH4202_MICRODEV
+       depends on !SH_CAYMAN && !SH_SH4202_MICRODEV && !SH_SHMIN && \
+                  !SH_HP6XX && !SH_SOLUTION_ENGINE
 
 config IO_TRAPPED
        bool
 
+config SWAP_IO_SPACE
+       bool
+
 config DMA_COHERENT
        bool
 
@@ -282,6 +271,7 @@ config CPU_SUBTYPE_SH7203
        select SYS_SUPPORTS_CMT
        select SYS_SUPPORTS_MTU2
        select ARCH_WANT_OPTIONAL_GPIOLIB
+       select PINCTRL
 
 config CPU_SUBTYPE_SH7206
        bool "Support SH7206 processor"
@@ -296,6 +286,22 @@ config CPU_SUBTYPE_SH7263
        select SYS_SUPPORTS_CMT
        select SYS_SUPPORTS_MTU2
 
+config CPU_SUBTYPE_SH7264
+       bool "Support SH7264 processor"
+       select CPU_SH2A
+       select CPU_HAS_FPU
+       select SYS_SUPPORTS_CMT
+       select SYS_SUPPORTS_MTU2
+       select PINCTRL
+
+config CPU_SUBTYPE_SH7269
+       bool "Support SH7269 processor"
+       select CPU_SH2A
+       select CPU_HAS_FPU
+       select SYS_SUPPORTS_CMT
+       select SYS_SUPPORTS_MTU2
+       select PINCTRL
+
 config CPU_SUBTYPE_MXG
        bool "Support MX-G processor"
        select CPU_SH2A
@@ -355,6 +361,8 @@ config CPU_SUBTYPE_SH7720
        select SYS_SUPPORTS_CMT
        select ARCH_WANT_OPTIONAL_GPIOLIB
        select USB_ARCH_HAS_OHCI
+       select USB_OHCI_SH if USB_OHCI_HCD
+       select PINCTRL
        help
          Select SH7720 if you have a SH3-DSP SH7720 CPU.
 
@@ -364,6 +372,7 @@ config CPU_SUBTYPE_SH7721
        select CPU_HAS_DSP
        select SYS_SUPPORTS_CMT
        select USB_ARCH_HAS_OHCI
+       select USB_OHCI_SH if USB_OHCI_HCD
        help
          Select SH7721 if you have a SH3-DSP SH7721 CPU.
 
@@ -419,6 +428,7 @@ config CPU_SUBTYPE_SH7723
        select ARCH_SPARSEMEM_ENABLE
        select SYS_SUPPORTS_CMT
        select ARCH_WANT_OPTIONAL_GPIOLIB
+       select PINCTRL
        help
          Select SH7723 if you have an SH-MobileR2 CPU.
 
@@ -430,9 +440,21 @@ config CPU_SUBTYPE_SH7724
        select ARCH_SPARSEMEM_ENABLE
        select SYS_SUPPORTS_CMT
        select ARCH_WANT_OPTIONAL_GPIOLIB
+       select PINCTRL
        help
          Select SH7724 if you have an SH-MobileR2R CPU.
 
+config CPU_SUBTYPE_SH7734
+       bool "Support SH7734 processor"
+       select CPU_SH4A
+       select CPU_SHX2
+       select ARCH_WANT_OPTIONAL_GPIOLIB
+       select USB_ARCH_HAS_OHCI
+       select USB_ARCH_HAS_EHCI
+       select PINCTRL
+       help
+         Select SH7734 if you have a SH4A SH7734 CPU.
+
 config CPU_SUBTYPE_SH7757
        bool "Support SH7757 processor"
        select CPU_SH4A
@@ -440,6 +462,7 @@ config CPU_SUBTYPE_SH7757
        select ARCH_WANT_OPTIONAL_GPIOLIB
        select USB_ARCH_HAS_OHCI
        select USB_ARCH_HAS_EHCI
+       select PINCTRL
        help
          Select SH7757 if you have a SH4A SH7757 CPU.
 
@@ -447,6 +470,7 @@ config CPU_SUBTYPE_SH7763
        bool "Support SH7763 processor"
        select CPU_SH4A
        select USB_ARCH_HAS_OHCI
+       select USB_OHCI_SH if USB_OHCI_HCD
        help
          Select SH7763 if you have a SH4A SH7763(R5S77631) CPU.
 
@@ -465,6 +489,7 @@ config CPU_SUBTYPE_SH7785
        select ARCH_SPARSEMEM_ENABLE
        select SYS_SUPPORTS_NUMA
        select ARCH_WANT_OPTIONAL_GPIOLIB
+       select PINCTRL
 
 config CPU_SUBTYPE_SH7786
        bool "Support SH7786 processor"
@@ -474,7 +499,10 @@ config CPU_SUBTYPE_SH7786
        select GENERIC_CLOCKEVENTS_BROADCAST if SMP
        select ARCH_WANT_OPTIONAL_GPIOLIB
        select USB_ARCH_HAS_OHCI
+       select USB_OHCI_SH if USB_OHCI_HCD
        select USB_ARCH_HAS_EHCI
+       select USB_EHCI_SH if USB_EHCI_HCD
+       select PINCTRL
 
 config CPU_SUBTYPE_SHX3
        bool "Support SH-X3 processor"
@@ -482,6 +510,7 @@ config CPU_SUBTYPE_SHX3
        select CPU_SHX3
        select GENERIC_CLOCKEVENTS_BROADCAST if SMP
        select ARCH_REQUIRE_GPIOLIB
+       select PINCTRL
 
 # SH4AL-DSP Processor Support
 
@@ -500,6 +529,7 @@ config CPU_SUBTYPE_SH7722
        select SYS_SUPPORTS_NUMA
        select SYS_SUPPORTS_CMT
        select ARCH_WANT_OPTIONAL_GPIOLIB
+       select PINCTRL
 
 config CPU_SUBTYPE_SH7366
        bool "Support SH7366 processor"
@@ -587,9 +617,9 @@ config SH_CLK_CPG
 config SH_CLK_CPG_LEGACY
        depends on SH_CLK_CPG
        def_bool y if !CPU_SUBTYPE_SH7785 && !ARCH_SHMOBILE && \
-                     !CPU_SHX3 && !CPU_SUBTYPE_SH7757
-
-source "kernel/time/Kconfig"
+                     !CPU_SHX3 && !CPU_SUBTYPE_SH7757 && \
+                     !CPU_SUBTYPE_SH7734 && !CPU_SUBTYPE_SH7264 && \
+                     !CPU_SUBTYPE_SH7269
 
 endmenu
 
@@ -625,7 +655,7 @@ source kernel/Kconfig.hz
 
 config KEXEC
        bool "kexec system call (EXPERIMENTAL)"
-       depends on SUPERH32 && EXPERIMENTAL && MMU
+       depends on SUPERH32 && MMU
        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
@@ -642,7 +672,7 @@ config KEXEC
 
 config CRASH_DUMP
        bool "kernel crash dumps (EXPERIMENTAL)"
-       depends on SUPERH32 && EXPERIMENTAL && BROKEN_ON_SMP
+       depends on SUPERH32 && BROKEN_ON_SMP
        help
          Generate crash dump after being started by kexec.
          This should be normally only set in special crash dump kernels
@@ -650,17 +680,28 @@ config CRASH_DUMP
          a specially reserved region and then later executed after
          a crash by kdump/kexec. The crash dump kernel must be compiled
          to a memory address not used by the main kernel using
-         MEMORY_START.
+         PHYSICAL_START.
 
          For more details see Documentation/kdump/kdump.txt
 
 config KEXEC_JUMP
        bool "kexec jump (EXPERIMENTAL)"
-       depends on SUPERH32 && KEXEC && HIBERNATION && EXPERIMENTAL
+       depends on SUPERH32 && KEXEC && HIBERNATION
        help
          Jump between original kernel and kexeced kernel and invoke
          code via KEXEC
 
+config PHYSICAL_START
+       hex "Physical address where the kernel is loaded" if (EXPERT || CRASH_DUMP)
+       default MEMORY_START
+       ---help---
+         This gives the physical address where the kernel is loaded
+         and is ordinarily the same as MEMORY_START.
+
+         Different values are primarily used in the case of kexec on panic
+         where the fail safe kernel needs to run at a different address
+         than the panic-ed kernel.
+
 config SECCOMP
        bool "Enable seccomp to safely compute untrusted bytecode"
        depends on PROC_FS
@@ -677,6 +718,20 @@ config SECCOMP
 
          If unsure, say N.
 
+config CC_STACKPROTECTOR
+       bool "Enable -fstack-protector buffer overflow detection (EXPERIMENTAL)"
+       depends on SUPERH32
+       help
+         This option turns on the -fstack-protector GCC feature. This
+         feature puts, at the beginning of functions, a canary value on
+         the stack just before the return address, and validates
+         the value just before actually returning.  Stack based buffer
+         overflows (that need to overwrite this return address) now also
+         overwrite the canary, which gets detected and the attack is then
+         neutralized via a kernel panic.
+
+         This feature requires gcc version 4.2 or above.
+
 config SMP
        bool "Symmetric multi-processing support"
        depends on SYS_SUPPORTS_SMP
@@ -716,7 +771,7 @@ config NR_CPUS
 
 config HOTPLUG_CPU
        bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
-       depends on SMP && HOTPLUG && EXPERIMENTAL
+       depends on SMP && HOTPLUG
        help
          Say Y here to experiment with turning CPUs off and on.  CPUs
          can be controlled through /sys/devices/system/cpu.
@@ -795,7 +850,7 @@ config ENTRY_OFFSET
 
 config ROMIMAGE_MMCIF
        bool "Include MMCIF loader in romImage (EXPERIMENTAL)"
-       depends on CPU_SUBTYPE_SH7724 && EXPERIMENTAL
+       depends on CPU_SUBTYPE_SH7724
        help
          Say Y here to include experimental MMCIF loading code in
          romImage. With this enabled it is possible to write the romImage
@@ -854,6 +909,8 @@ config PCI
        bool "PCI support"
        depends on SYS_SUPPORTS_PCI
        select PCI_DOMAINS
+       select GENERIC_PCI_IOMAP
+       select NO_GENERIC_PCI_IOPORT_MAP
        help
          Find out whether you have a PCI motherboard. PCI is the name of a
          bus system, i.e. the way the CPU talks to the other stuff inside
@@ -879,7 +936,6 @@ source "fs/Kconfig.binfmt"
 endmenu
 
 menu "Power management options (EXPERIMENTAL)"
-depends on EXPERIMENTAL
 
 source "kernel/power/Kconfig"
 
@@ -899,20 +955,4 @@ source "security/Kconfig"
 
 source "crypto/Kconfig"
 
-menuconfig VIRTUALIZATION
-       bool "Virtualization"
-       default n
-       ---help---
-         Say Y here to get to see options for using your Linux host to run other
-         operating systems inside virtual machines (guests).
-         This option alone does not add any kernel code.
-
-         If you say N, all options in this submenu will be skipped and disabled.
-
-if VIRTUALIZATION
-
-source drivers/virtio/Kconfig
-
-endif # VIRTUALIZATION
-
 source "lib/Kconfig"