sh: Consolidate Kconfig.sh/Kconfig.sh64.
Paul Mundt [Wed, 21 Nov 2007 06:58:01 +0000 (15:58 +0900)]
Fold in the sh64-specific bits in to the main Kconfig.sh, and move
this back as arch/sh/Kconfig.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>

arch/sh/Kconfig [moved from arch/sh/Kconfig.sh with 97% similarity]
arch/sh/Kconfig.cpu
arch/sh/Kconfig.sh64 [deleted file]

similarity index 97%
rename from arch/sh/Kconfig.sh
rename to arch/sh/Kconfig
index 23eea5c..7cfd172 100644 (file)
@@ -6,8 +6,7 @@
 mainmenu "Linux/SuperH Kernel Configuration"
 
 config SUPERH
-       bool
-       default y
+       def_bool y
        select EMBEDDED
        help
          The SuperH is a RISC processor targeted for use in embedded systems
@@ -16,12 +15,18 @@ config SUPERH
          <http://www.linux-sh.org/>.
 
 config SUPERH32
-       def_bool y
+       def_bool !SUPERH64
+
+config SUPERH64
+       def_bool y if CPU_SH5
 
 config RWSEM_GENERIC_SPINLOCK
        bool
        default y
 
+config SUPERH64
+       def_bool y if CPU_SH5
+
 config RWSEM_XCHGADD_ALGORITHM
        bool
 
@@ -131,6 +136,10 @@ config CPU_SH4AL_DSP
        select CPU_SH4A
        select CPU_HAS_DSP
 
+config CPU_SH5
+       bool
+       select CPU_HAS_FPU
+
 config CPU_SHX2
        bool
 
@@ -288,6 +297,15 @@ config CPU_SUBTYPE_SH7722
        select ARCH_SPARSEMEM_ENABLE
        select SYS_SUPPORTS_NUMA
 
+# SH-5 Processor Support
+
+config CPU_SUBTYPE_SH5_101
+       bool "Support SH5-101 processor"
+       select CPU_SH5
+
+config CPU_SUBTYPE_SH5_103
+       bool "Support SH5-103 processor"
+
 endchoice
 
 source "arch/sh/mm/Kconfig"
@@ -490,6 +508,18 @@ config SH_MAGIC_PANEL_R2
        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"
index 9f329df..ef39853 100644 (file)
@@ -25,6 +25,10 @@ config SH_FPU
 
          This option must be set in order to enable the FPU.
 
+config SH64_FPU_DENORM_FLUSH
+       bool "Flush floating point denorms to zero"
+       depends on SH_FPU && SUPERH64
+
 config SH_FPU_EMU
        bool "FPU emulation support"
        depends on !SH_FPU && EXPERIMENTAL
@@ -71,6 +75,15 @@ config SPECULATIVE_EXECUTION
 
          If unsure, say N.
 
+config SH64_USER_MISALIGNED_FIXUP
+       bool "Fixup misaligned loads/stores occurring in user mode"
+       depends on SUPERH64
+       default y
+
+config SH64_ID2815_WORKAROUND
+       bool "Include workaround for SH5-101 cut2 silicon defect ID2815"
+       depends on CPU_SUBTYPE_SH5_101
+
 config CPU_HAS_INTEVT
        bool
 
diff --git a/arch/sh/Kconfig.sh64 b/arch/sh/Kconfig.sh64
deleted file mode 100644 (file)
index 9f71f95..0000000
+++ /dev/null
@@ -1,239 +0,0 @@
-#
-# For a description of the syntax of this configuration file,
-# see Documentation/kbuild/kconfig-language.txt.
-#
-
-mainmenu "Linux/SH64 Kernel Configuration"
-
-config SUPERH
-       bool
-       default y
-
-config SUPERH64
-       bool
-       default y
-
-config MMU
-       bool
-       default y
-
-config QUICKLIST
-       def_bool y
-
-config RWSEM_GENERIC_SPINLOCK
-       bool
-       default y
-
-config GENERIC_FIND_NEXT_BIT
-       bool
-       default y
-
-config GENERIC_HWEIGHT
-       bool
-       default y
-
-config GENERIC_CALIBRATE_DELAY
-       bool
-       default y
-
-config GENERIC_HARDIRQS
-       bool
-       default y
-
-config GENERIC_IRQ_PROBE
-       bool
-       default y
-
-config RWSEM_XCHGADD_ALGORITHM
-       bool
-
-config ARCH_HAS_ILOG2_U32
-       bool
-       default n
-
-config ARCH_HAS_ILOG2_U64
-       bool
-       default n
-
-config ARCH_NO_VIRT_TO_BUS
-       def_bool y
-
-source init/Kconfig
-
-menu "System type"
-
-choice
-       prompt "SuperH system type"
-       default SH_SIMULATOR
-
-config SH_SIMULATOR
-       bool "Simulator"
-
-config SH_CAYMAN
-       bool "Cayman"
-
-config SH_HARP
-       bool "ST50-Harp"
-
-endchoice
-
-choice
-       prompt "Processor family"
-       default CPU_SH5
-
-config CPU_SH5
-       bool "SH-5"
-       select CPU_HAS_FPU
-
-endchoice
-
-choice
-       prompt "Processor type"
-
-config CPU_SUBTYPE_SH5_101
-       bool "SH5-101"
-       depends on CPU_SH5
-
-config CPU_SUBTYPE_SH5_103
-       bool "SH5-103"
-       depends on CPU_SH5
-
-endchoice
-
-source "arch/sh/Kconfig.cpu"
-
-config SH64_FPU_DENORM_FLUSH
-       depends on SH_FPU
-       bool "Flush floating point denorms to zero"
-
-config SH64_USER_MISALIGNED_FIXUP
-       bool "Fixup misaligned loads/stores occurring in user mode"
-
-comment "Memory options"
-
-config MEMORY_START
-       hex "Physical memory start address"
-       default "80000000"
-
-config MEMORY_SIZE_IN_MB
-       int "Memory size (in MB)"
-       default "8" if SH_SIMULATOR
-       default "64"
-
-comment "Cache options"
-
-choice
-       prompt "DCache mode"
-       default DCACHE_DISABLED if SH_SIMULATOR
-       default DCACHE_WRITE_BACK
-
-config DCACHE_WRITE_BACK
-       bool "Write-back"
-       depends on !SH_SIMULATOR
-
-config DCACHE_WRITE_THROUGH
-       bool "Write-through"
-       depends on !SH_SIMULATOR
-
-config DCACHE_DISABLED
-       bool "Disabled"
-
-endchoice
-
-config ICACHE_DISABLED
-       bool "ICache Disabling"
-
-comment "CPU Subtype specific options"
-
-config SH64_ID2815_WORKAROUND
-       bool "Include workaround for SH5-101 cut2 silicon defect ID2815"
-
-comment "Misc options"
-
-config HEARTBEAT
-       bool "Heartbeat LED"
-       depends on SH_CAYMAN
-
-config HDSP253_LED
-       bool "Support for HDSP-253 LED"
-       depends on SH_CAYMAN
-
-config SH_DMA
-       tristate "DMA controller (DMAC) support"
-
-config PREEMPT
-       bool "Preemptible Kernel (EXPERIMENTAL)"
-       depends on EXPERIMENTAL
-
-config SH_PCLK_FREQ
-       int "Peripheral clock frequency (in Hz)"
-       default "50000000"
-
-source "kernel/Kconfig.hz"
-source "arch/sh/mm/Kconfig"
-
-endmenu
-
-menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
-
-config ISA
-       bool
-
-config SBUS
-       bool
-
-config PCI
-       bool "PCI support"
-       depends on SH_CAYMAN
-       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
-         your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
-         VESA. If you have PCI, say Y, otherwise N.
-
-         The PCI-HOWTO, available from
-         <http://www.tldp.org/docs.html#howto>, contains valuable
-         information about which PCI hardware does work under Linux and which
-         doesn't.
-
-config SH_PCIDMA_NONCOHERENT
-       bool "Cache and PCI noncoherent"
-       depends on PCI
-       default y
-       help
-         Enable this option if your platform does not have a CPU cache which
-         remains coherent with PCI DMA. It is safest to say 'Y', although you
-         will see better performance if you can say 'N', because the PCI DMA
-         code will not have to flush the CPU's caches. If you have a PCI host
-         bridge integrated with your SH CPU, refer carefully to the chip specs
-         to see if you can say 'N' here. Otherwise, leave it as 'Y'.
-
-source "drivers/pci/Kconfig"
-
-source "drivers/pcmcia/Kconfig"
-
-source "drivers/pci/hotplug/Kconfig"
-
-endmenu
-
-menu "Executable file formats"
-
-source "fs/Kconfig.binfmt"
-
-endmenu
-
-source "net/Kconfig"
-
-source "drivers/Kconfig"
-
-source "fs/Kconfig"
-
-source "kernel/Kconfig.instrumentation"
-
-source "arch/sh/Kconfig.debug"
-
-source "security/Kconfig"
-
-source "crypto/Kconfig"
-
-source "lib/Kconfig"