]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/sh/Kconfig
sched: prevent wakeup over-scheduling
[linux-2.6-omap-h63xx.git] / arch / sh / Kconfig
index 4c9d8fc59fe29eaacaf89093b7a39ed62fb55acb..44982c1dfa23c7adc28b422d8b2d35fa6b6c92b4 100644 (file)
@@ -55,8 +55,21 @@ config GENERIC_TIME
 config GENERIC_CLOCKEVENTS
        def_bool n
 
+config SYS_SUPPORTS_PM
+       bool
+
 config SYS_SUPPORTS_APM_EMULATION
        bool
+       select SYS_SUPPORTS_PM
+
+config SYS_SUPPORTS_SMP
+       bool
+
+config SYS_SUPPORTS_NUMA
+       bool
+
+config SYS_SUPPORTS_PCI
+       bool
 
 config ARCH_MAY_HAVE_PC_FDC
        bool
@@ -77,6 +90,9 @@ config ARCH_HAS_ILOG2_U64
        bool
        default n
 
+config ARCH_NO_VIRT_TO_BUS
+       def_bool y
+
 source "init/Kconfig"
 
 menu "System type"
@@ -102,7 +118,7 @@ endchoice
 
 config SH_FPU
        bool "FPU support"
-       depends on !CPU_SH3
+       depends on CPU_HAS_FPU
        default y
        help
          Selecting this option will enable support for SH processors that
@@ -121,8 +137,8 @@ config SH_FPU_EMU
 
 config SH_DSP
        bool "DSP support"
-       default y if SH4AL_DSP || !CPU_SH4
-       default n
+       depends on CPU_HAS_DSP
+       default y
        help
          Selecting this option will enable support for SH processors that
          have DSP units (ie, SH2-DSP, SH3-DSP, and SH4AL-DSP).
@@ -159,15 +175,9 @@ config SPECULATIVE_EXECUTION
 config CPU_HAS_INTEVT
        bool
 
-config CPU_HAS_PINT_IRQ
-       bool
-
 config CPU_HAS_MASKREG_IRQ
        bool
 
-config CPU_HAS_INTC2_IRQ
-       bool
-
 config CPU_HAS_IPR_IRQ
        bool
 
@@ -186,6 +196,12 @@ config CPU_HAS_SR_RB
 config CPU_HAS_PTEA
        bool
 
+config CPU_HAS_DSP
+       bool
+
+config CPU_HAS_FPU
+       bool
+
 endmenu
 
 menu "Board support"
@@ -196,6 +212,7 @@ config SOLUTION_ENGINE
 config SH_SOLUTION_ENGINE
        bool "SolutionEngine"
        select SOLUTION_ENGINE
+       select CPU_HAS_IPR_IRQ
        depends on CPU_SUBTYPE_SH7709 || CPU_SUBTYPE_SH7750
        help
          Select SolutionEngine if configuring for a Hitachi SH7709
@@ -228,6 +245,7 @@ config SH_7722_SOLUTION_ENGINE
 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
@@ -236,19 +254,12 @@ config SH_7751_SOLUTION_ENGINE
 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_7300_SOLUTION_ENGINE
-       bool "SolutionEngine7300"
-       select SOLUTION_ENGINE
-       depends on CPU_SUBTYPE_SH7300
-       help
-         Select 7300 SolutionEngine if configuring for a Hitachi
-         SH7300(SH-Mobile V) evaluation board.
-
 config SH_7343_SOLUTION_ENGINE
        bool "SolutionEngine7343"
        select SOLUTION_ENGINE
@@ -257,14 +268,6 @@ config SH_7343_SOLUTION_ENGINE
          Select 7343 SolutionEngine if configuring for a Hitachi
          SH7343 (SH-Mobile 3AS) evaluation board.
 
-config SH_73180_SOLUTION_ENGINE
-       bool "SolutionEngine73180"
-       select SOLUTION_ENGINE
-       depends on CPU_SUBTYPE_SH73180
-       help
-         Select 73180 SolutionEngine if configuring for a Hitachi
-         SH73180(SH-Mobile 3) evaluation board.
-
 config SH_7751_SYSTEMH
        bool "SystemH7751R"
        depends on CPU_SUBTYPE_SH7751R
@@ -275,20 +278,16 @@ config SH_7751_SYSTEMH
 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_SATURN
-       bool "Saturn"
-       depends on CPU_SUBTYPE_SH7604
-       help
-         Select Saturn if configuring for a SEGA Saturn.
-
 config SH_DREAMCAST
        bool "Dreamcast"
+       select SYS_SUPPORTS_PCI
        depends on CPU_SUBTYPE_SH7091
        help
          Select Dreamcast if configuring for a SEGA Dreamcast.
@@ -306,7 +305,9 @@ config SH_MPC1211
 
 config SH_SH03
        bool "Interface CTP/PCI-SH03"
-       depends on CPU_SUBTYPE_SH7751 && BROKEN
+       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.
@@ -315,6 +316,8 @@ config SH_SH03
 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
@@ -337,6 +340,7 @@ config SH_7710VOIPGW
 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.
@@ -344,6 +348,7 @@ config SH_RTS7751R2D
 config SH_HIGHLANDER
        bool "Highlander"
        depends on CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785
+       select SYS_SUPPORTS_PCI
 
 config SH_EDOSK7705
        bool "EDOSK7705"
@@ -359,12 +364,15 @@ config SH_SH4202_MICRODEV
 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.
@@ -372,76 +380,33 @@ config SH_TITAN
 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_UNKNOWN
-       bool "BareCPU"
-       help
-         "Bare CPU" aka "unknown" means an SH-based system which is not one
-         of the specific ones mentioned above, which means you need to enter
-         all sorts of stuff like CONFIG_MEMORY_START because the config
-         system doesn't already know what it is.  You get a machine vector
-         without any platform-specific code in it, so things like the RTC may
-         not work.
+config SH_X3PROTO
+       bool "SH-X3 Prototype board"
+       depends on CPU_SUBTYPE_SHX3
 
-         This option is for the early stages of porting to a new machine.
+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.
 
 endmenu
 
 source "arch/sh/boards/renesas/hs7751rvoip/Kconfig"
 source "arch/sh/boards/renesas/rts7751r2d/Kconfig"
 source "arch/sh/boards/renesas/r7780rp/Kconfig"
-
-config CF_ENABLER
-       bool "Compact Flash Enabler support"
-       depends on SH_SOLUTION_ENGINE || SH_UNKNOWN || 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"
-       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
-
+source "arch/sh/boards/magicpanelr2/Kconfig"
 
 menu "Timer and clock configuration"
 
@@ -477,15 +442,15 @@ config SH_TIMER_IRQ
 
 config SH_PCLK_FREQ
        int "Peripheral clock frequency (in Hz)"
-       default "27000000" if CPU_SUBTYPE_SH73180 || CPU_SUBTYPE_SH7343
+       default "27000000" if CPU_SUBTYPE_SH7343
        default "31250000" if CPU_SUBTYPE_SH7619
-       default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || \
+       default "32000000" if CPU_SUBTYPE_SH7722
+       default "33333333" if CPU_SUBTYPE_SH7770 || \
                              CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \
                              CPU_SUBTYPE_SH7206
-       default "50000000" if CPU_SUBTYPE_SH7750 || CPU_SUBTYPE_SH7780 || \
-                             CPU_SUBTYPE_SH7785
-       default "60000000" if CPU_SUBTYPE_SH7751
+       default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
        default "66000000" if CPU_SUBTYPE_SH4_202
+       default "50000000"
        help
          This option is used to specify the peripheral clock frequency.
          This is necessary for determining the reference clock value on
@@ -493,8 +458,10 @@ config SH_PCLK_FREQ
 
 config SH_CLK_MD
        int "CPU Mode Pin Setting"
-       default 0
        depends on CPU_SUBTYPE_SH7619 || CPU_SUBTYPE_SH7206
+       default 6 if CPU_SUBTYPE_SH7206
+       default 5 if CPU_SUBTYPE_SH7619
+       default 0
        help
          MD2 - MD0 pin setting.
 
@@ -566,6 +533,7 @@ config CRASH_DUMP
 
 config SMP
        bool "Symmetric multi-processing support"
+       depends on SYS_SUPPORTS_SMP
        ---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
@@ -590,6 +558,7 @@ config NR_CPUS
        int "Maximum number of CPUs (2-32)"
        range 2 32
        depends on SMP
+       default "4" if CPU_SHX3
        default "2"
        help
          This allows you to specify the maximum number of CPUs which this
@@ -601,10 +570,19 @@ config NR_CPUS
 
 source "kernel/Kconfig.preempt"
 
-config NODES_SHIFT
-       int
-       default "1"
-       depends on NEED_MULTIPLE_NODES
+config GUSA
+       def_bool y
+       depends on !SMP
+       help
+         This enables support for gUSA (general UserSpace Atomicity).
+         This is the default implementation for both UP and non-ll/sc
+         CPUs, and is used by the libc, amongst others.
+
+         For additional information, design information can be found 
+         in <http://lc.linux.or.jp/lc2002/papers/niibe0919p.pdf>.
+
+         This should only be disabled for special cases where alternate
+         atomicity implementations exist.
 
 endmenu
 
@@ -629,6 +607,7 @@ config BOOT_LINK_OFFSET
 
 config UBC_WAKEUP
        bool "Wakeup UBC on startup"
+       depends on CPU_SH4
        help
          Selecting this option will wakeup the User Break Controller (UBC) on
          startup. Although the UBC is left in an awake state when the processor
@@ -657,8 +636,8 @@ menu "Bus options"
 # we're not using PCMCIA, so we make it dependent on
 # PCMCIA outright. -- PFM.
 config ISA
-       bool
-       default y if PCMCIA
+       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
@@ -696,6 +675,60 @@ 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"
+       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
+
 source "arch/sh/drivers/pci/Kconfig"
 
 source "drivers/pci/Kconfig"
@@ -713,7 +746,7 @@ source "fs/Kconfig.binfmt"
 endmenu
 
 menu "Power management options (EXPERIMENTAL)"
-depends on EXPERIMENTAL
+depends on EXPERIMENTAL && SYS_SUPPORTS_PM
 
 source kernel/power/Kconfig