]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - arch/sh/Kconfig
Merge branch 'master' into tk71
[mv-sheeva.git] / arch / sh / Kconfig
index 33990fa95af013a64e081c4bfc411f58228f64cb..8a9011dced149cd754fe6c0b1f0053a56a13dff0 100644 (file)
@@ -1,14 +1,7 @@
-#
-# For a description of the syntax of this configuration file,
-# see Documentation/kbuild/kconfig-language.txt.
-#
-
-mainmenu "Linux/SuperH Kernel Configuration"
-
 config SUPERH
        def_bool y
 config SUPERH
        def_bool y
-       select EMBEDDED
-       select HAVE_CLK
+       select EXPERT
+       select CLKDEV_LOOKUP
        select HAVE_IDE if HAS_IOPORT
        select HAVE_MEMBLOCK
        select HAVE_OPROFILE
        select HAVE_IDE if HAS_IOPORT
        select HAVE_MEMBLOCK
        select HAVE_OPROFILE
@@ -16,15 +9,22 @@ config SUPERH
        select HAVE_ARCH_TRACEHOOK
        select HAVE_DMA_API_DEBUG
        select HAVE_DMA_ATTRS
        select HAVE_ARCH_TRACEHOOK
        select HAVE_DMA_API_DEBUG
        select HAVE_DMA_ATTRS
+       select HAVE_IRQ_WORK
        select HAVE_PERF_EVENTS
        select PERF_USE_VMALLOC
        select HAVE_KERNEL_GZIP
        select HAVE_KERNEL_BZIP2
        select HAVE_KERNEL_LZMA
        select HAVE_PERF_EVENTS
        select PERF_USE_VMALLOC
        select HAVE_KERNEL_GZIP
        select HAVE_KERNEL_BZIP2
        select HAVE_KERNEL_LZMA
+       select HAVE_KERNEL_XZ
        select HAVE_KERNEL_LZO
        select HAVE_SYSCALL_TRACEPOINTS
        select HAVE_KERNEL_LZO
        select HAVE_SYSCALL_TRACEPOINTS
+       select HAVE_REGS_AND_STACK_ACCESS_API
+       select HAVE_GENERIC_HARDIRQS
+       select HAVE_SPARSE_IRQ
        select RTC_LIB
        select GENERIC_ATOMIC64
        select RTC_LIB
        select GENERIC_ATOMIC64
+       # Support the deprecated APIs until MFD and GPIOLIB catch up.
+       select GENERIC_HARDIRQS_NO_DEPRECATED if !MFD_SUPPORT && !GPIOLIB
        help
          The SuperH is a RISC processor targeted for use in embedded systems
          and consumer electronics; it was also used in the Sega Dreamcast
        help
          The SuperH is a RISC processor targeted for use in embedded systems
          and consumer electronics; it was also used in the Sega Dreamcast
@@ -45,8 +45,9 @@ config SUPERH32
        select HAVE_ARCH_KGDB
        select HAVE_HW_BREAKPOINT
        select HAVE_MIXED_BREAKPOINTS_REGS
        select HAVE_ARCH_KGDB
        select HAVE_HW_BREAKPOINT
        select HAVE_MIXED_BREAKPOINTS_REGS
-       select PERF_EVENTS if HAVE_HW_BREAKPOINT
+       select PERF_EVENTS
        select ARCH_HIBERNATION_POSSIBLE if MMU
        select ARCH_HIBERNATION_POSSIBLE if MMU
+       select SPARSE_IRQ
 
 config SUPERH64
        def_bool ARCH = "sh64"
 
 config SUPERH64
        def_bool ARCH = "sh64"
@@ -76,19 +77,9 @@ config GENERIC_FIND_NEXT_BIT
 config GENERIC_HWEIGHT
        def_bool y
 
 config GENERIC_HWEIGHT
        def_bool y
 
-config GENERIC_HARDIRQS
-       def_bool y
-
-config GENERIC_HARDIRQS_NO__DO_IRQ
-       def_bool y
-
 config IRQ_PER_CPU
        def_bool y
 
 config IRQ_PER_CPU
        def_bool y
 
-config SPARSE_IRQ
-       def_bool y
-       depends on SUPERH32
-
 config GENERIC_GPIO
        def_bool n
 
 config GENERIC_GPIO
        def_bool n
 
@@ -172,7 +163,8 @@ config ARCH_HAS_CPU_IDLE_WAIT
        def_bool y
 
 config NO_IOPORT
        def_bool y
 
 config NO_IOPORT
-       bool
+       def_bool !PCI
+       depends on !SH_CAYMAN && !SH_SH4202_MICRODEV
 
 config IO_TRAPPED
        bool
 
 config IO_TRAPPED
        bool
@@ -204,6 +196,7 @@ config CPU_SH2
 config CPU_SH2A
        bool
        select CPU_SH2
 config CPU_SH2A
        bool
        select CPU_SH2
+       select UNCACHED_MAPPING
 
 config CPU_SH3
        bool
 
 config CPU_SH3
        bool
@@ -249,6 +242,11 @@ config ARCH_SHMOBILE
        select PM
        select PM_RUNTIME
 
        select PM
        select PM_RUNTIME
 
+config CPU_HAS_PMU
+       depends on CPU_SH4 || CPU_SH4A
+       default y
+       bool
+
 if SUPERH32
 
 choice
 if SUPERH32
 
 choice
@@ -279,6 +277,7 @@ config CPU_SUBTYPE_SH7203
        select CPU_HAS_FPU
        select SYS_SUPPORTS_CMT
        select SYS_SUPPORTS_MTU2
        select CPU_HAS_FPU
        select SYS_SUPPORTS_CMT
        select SYS_SUPPORTS_MTU2
+       select ARCH_WANT_OPTIONAL_GPIOLIB
 
 config CPU_SUBTYPE_SH7206
        bool "Support SH7206 processor"
 
 config CPU_SUBTYPE_SH7206
        bool "Support SH7206 processor"
@@ -350,6 +349,8 @@ config CPU_SUBTYPE_SH7720
        select CPU_SH3
        select CPU_HAS_DSP
        select SYS_SUPPORTS_CMT
        select CPU_SH3
        select CPU_HAS_DSP
        select SYS_SUPPORTS_CMT
+       select ARCH_WANT_OPTIONAL_GPIOLIB
+       select USB_ARCH_HAS_OHCI
        help
          Select SH7720 if you have a SH3-DSP SH7720 CPU.
 
        help
          Select SH7720 if you have a SH3-DSP SH7720 CPU.
 
@@ -358,6 +359,7 @@ config CPU_SUBTYPE_SH7721
        select CPU_SH3
        select CPU_HAS_DSP
        select SYS_SUPPORTS_CMT
        select CPU_SH3
        select CPU_HAS_DSP
        select SYS_SUPPORTS_CMT
+       select USB_ARCH_HAS_OHCI
        help
          Select SH7721 if you have a SH3-DSP SH7721 CPU.
 
        help
          Select SH7721 if you have a SH3-DSP SH7721 CPU.
 
@@ -412,6 +414,7 @@ config CPU_SUBTYPE_SH7723
        select ARCH_SHMOBILE
        select ARCH_SPARSEMEM_ENABLE
        select SYS_SUPPORTS_CMT
        select ARCH_SHMOBILE
        select ARCH_SPARSEMEM_ENABLE
        select SYS_SUPPORTS_CMT
+       select ARCH_WANT_OPTIONAL_GPIOLIB
        help
          Select SH7723 if you have an SH-MobileR2 CPU.
 
        help
          Select SH7723 if you have an SH-MobileR2 CPU.
 
@@ -422,6 +425,7 @@ config CPU_SUBTYPE_SH7724
        select ARCH_SHMOBILE
        select ARCH_SPARSEMEM_ENABLE
        select SYS_SUPPORTS_CMT
        select ARCH_SHMOBILE
        select ARCH_SPARSEMEM_ENABLE
        select SYS_SUPPORTS_CMT
+       select ARCH_WANT_OPTIONAL_GPIOLIB
        help
          Select SH7724 if you have an SH-MobileR2R CPU.
 
        help
          Select SH7724 if you have an SH-MobileR2R CPU.
 
@@ -429,12 +433,14 @@ config CPU_SUBTYPE_SH7757
        bool "Support SH7757 processor"
        select CPU_SH4A
        select CPU_SHX2
        bool "Support SH7757 processor"
        select CPU_SH4A
        select CPU_SHX2
+       select ARCH_WANT_OPTIONAL_GPIOLIB
        help
          Select SH7757 if you have a SH4A SH7757 CPU.
 
 config CPU_SUBTYPE_SH7763
        bool "Support SH7763 processor"
        select CPU_SH4A
        help
          Select SH7757 if you have a SH4A SH7757 CPU.
 
 config CPU_SUBTYPE_SH7763
        bool "Support SH7763 processor"
        select CPU_SH4A
+       select USB_ARCH_HAS_OHCI
        help
          Select SH7763 if you have a SH4A SH7763(R5S77631) CPU.
 
        help
          Select SH7763 if you have a SH4A SH7763(R5S77631) CPU.
 
@@ -452,6 +458,7 @@ config CPU_SUBTYPE_SH7785
        select CPU_SHX2
        select ARCH_SPARSEMEM_ENABLE
        select SYS_SUPPORTS_NUMA
        select CPU_SHX2
        select ARCH_SPARSEMEM_ENABLE
        select SYS_SUPPORTS_NUMA
+       select ARCH_WANT_OPTIONAL_GPIOLIB
 
 config CPU_SUBTYPE_SH7786
        bool "Support SH7786 processor"
 
 config CPU_SUBTYPE_SH7786
        bool "Support SH7786 processor"
@@ -459,12 +466,16 @@ config CPU_SUBTYPE_SH7786
        select CPU_SHX3
        select CPU_HAS_PTEAEX
        select GENERIC_CLOCKEVENTS_BROADCAST if SMP
        select CPU_SHX3
        select CPU_HAS_PTEAEX
        select GENERIC_CLOCKEVENTS_BROADCAST if SMP
+       select ARCH_WANT_OPTIONAL_GPIOLIB
+       select USB_ARCH_HAS_OHCI
+       select USB_ARCH_HAS_EHCI
 
 config CPU_SUBTYPE_SHX3
        bool "Support SH-X3 processor"
        select CPU_SH4A
        select CPU_SHX3
        select GENERIC_CLOCKEVENTS_BROADCAST if SMP
 
 config CPU_SUBTYPE_SHX3
        bool "Support SH-X3 processor"
        select CPU_SH4A
        select CPU_SHX3
        select GENERIC_CLOCKEVENTS_BROADCAST if SMP
+       select ARCH_REQUIRE_GPIOLIB
 
 # SH4AL-DSP Processor Support
 
 
 # SH4AL-DSP Processor Support
 
@@ -482,6 +493,7 @@ config CPU_SUBTYPE_SH7722
        select ARCH_SPARSEMEM_ENABLE
        select SYS_SUPPORTS_NUMA
        select SYS_SUPPORTS_CMT
        select ARCH_SPARSEMEM_ENABLE
        select SYS_SUPPORTS_NUMA
        select SYS_SUPPORTS_CMT
+       select ARCH_WANT_OPTIONAL_GPIOLIB
 
 config CPU_SUBTYPE_SH7366
        bool "Support SH7366 processor"
 
 config CPU_SUBTYPE_SH7366
        bool "Support SH7366 processor"
@@ -569,16 +581,7 @@ config SH_CLK_CPG
 config SH_CLK_CPG_LEGACY
        depends on SH_CLK_CPG
        def_bool y if !CPU_SUBTYPE_SH7785 && !ARCH_SHMOBILE && \
 config SH_CLK_CPG_LEGACY
        depends on SH_CLK_CPG
        def_bool y if !CPU_SUBTYPE_SH7785 && !ARCH_SHMOBILE && \
-                     !CPU_SUBTYPE_SH7786
-
-config SH_CLK_MD
-       int "CPU Mode Pin Setting"
-       depends on CPU_SH2
-       default 6 if CPU_SUBTYPE_SH7206
-       default 5 if CPU_SUBTYPE_SH7619
-       default 0
-       help
-         MD2 - MD0 pin setting.
+                     !CPU_SHX3 && !CPU_SUBTYPE_SH7757
 
 source "kernel/time/Kconfig"
 
 
 source "kernel/time/Kconfig"
 
@@ -738,6 +741,14 @@ config GUSA_RB
          LLSC, this should be more efficient than the other alternative of
          disabling interrupts around the atomic sequence.
 
          LLSC, this should be more efficient than the other alternative of
          disabling interrupts around the atomic sequence.
 
+config HW_PERF_EVENTS
+       bool "Enable hardware performance counter support for perf events"
+       depends on PERF_EVENTS && CPU_HAS_PMU
+       default y
+       help
+         Enable hardware performance counter support for perf events. If
+         disabled, perf events will use software events only.
+
 source "drivers/sh/Kconfig"
 
 endmenu
 source "drivers/sh/Kconfig"
 
 endmenu