]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/mips/Kconfig
MIPS: Oprofile: Fixup the loose ends in the plumbing.
[linux-2.6-omap-h63xx.git] / arch / mips / Kconfig
index bafd7755380d957042f2dbf8c151b4d7ca2a1409..b50be449d3f5997f87c3466fc062509f4424154c 100644 (file)
@@ -6,8 +6,6 @@ config MIPS
 
 mainmenu "Linux/MIPS Kernel Configuration"
 
-source "init/Kconfig"
-
 menu "Machine selection"
 
 choice
@@ -19,12 +17,14 @@ config MIPS_MTX1
        select DMA_NONCOHERENT
        select HW_HAS_PCI
        select SOC_AU1500
+       select SYS_HAS_CPU_MIPS32_R1
        select SYS_SUPPORTS_LITTLE_ENDIAN
 
 config MIPS_BOSPORUS
        bool "AMD Alchemy Bosporus board"
        select SOC_AU1500
        select DMA_NONCOHERENT
+       select SYS_HAS_CPU_MIPS32_R1
        select SYS_SUPPORTS_LITTLE_ENDIAN
 
 config MIPS_PB1000
@@ -33,6 +33,7 @@ config MIPS_PB1000
        select DMA_NONCOHERENT
        select HW_HAS_PCI
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_MIPS32_R1
        select SYS_SUPPORTS_LITTLE_ENDIAN
 
 config MIPS_PB1100
@@ -41,6 +42,7 @@ config MIPS_PB1100
        select DMA_NONCOHERENT
        select HW_HAS_PCI
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_MIPS32_R1
        select SYS_SUPPORTS_LITTLE_ENDIAN
 
 config MIPS_PB1500
@@ -48,6 +50,7 @@ config MIPS_PB1500
        select SOC_AU1500
        select DMA_NONCOHERENT
        select HW_HAS_PCI
+       select SYS_HAS_CPU_MIPS32_R1
        select SYS_SUPPORTS_LITTLE_ENDIAN
 
 config MIPS_PB1550
@@ -56,6 +59,7 @@ config MIPS_PB1550
        select DMA_NONCOHERENT
        select HW_HAS_PCI
        select MIPS_DISABLE_OBSOLETE_IDE
+       select SYS_HAS_CPU_MIPS32_R1
        select SYS_SUPPORTS_LITTLE_ENDIAN
 
 config MIPS_PB1200
@@ -63,6 +67,7 @@ config MIPS_PB1200
        select SOC_AU1200
        select DMA_NONCOHERENT
        select MIPS_DISABLE_OBSOLETE_IDE
+       select SYS_HAS_CPU_MIPS32_R1
        select SYS_SUPPORTS_LITTLE_ENDIAN
 
 config MIPS_DB1000
@@ -70,12 +75,14 @@ config MIPS_DB1000
        select SOC_AU1000
        select DMA_NONCOHERENT
        select HW_HAS_PCI
+       select SYS_HAS_CPU_MIPS32_R1
        select SYS_SUPPORTS_LITTLE_ENDIAN
 
 config MIPS_DB1100
        bool "AMD Alchemy DB1100 board"
        select SOC_AU1100
        select DMA_NONCOHERENT
+       select SYS_HAS_CPU_MIPS32_R1
        select SYS_SUPPORTS_LITTLE_ENDIAN
 
 config MIPS_DB1500
@@ -84,6 +91,7 @@ config MIPS_DB1500
        select DMA_NONCOHERENT
        select HW_HAS_PCI
        select MIPS_DISABLE_OBSOLETE_IDE
+       select SYS_HAS_CPU_MIPS32_R1
        select SYS_SUPPORTS_BIG_ENDIAN
        select SYS_SUPPORTS_LITTLE_ENDIAN
 
@@ -93,6 +101,7 @@ config MIPS_DB1550
        select HW_HAS_PCI
        select DMA_NONCOHERENT
        select MIPS_DISABLE_OBSOLETE_IDE
+       select SYS_HAS_CPU_MIPS32_R1
        select SYS_SUPPORTS_LITTLE_ENDIAN
 
 config MIPS_DB1200
@@ -100,12 +109,14 @@ config MIPS_DB1200
        select SOC_AU1200
        select DMA_COHERENT
        select MIPS_DISABLE_OBSOLETE_IDE
+       select SYS_HAS_CPU_MIPS32_R1
        select SYS_SUPPORTS_LITTLE_ENDIAN
 
 config MIPS_MIRAGE
        bool "AMD Alchemy Mirage board"
        select DMA_NONCOHERENT
        select SOC_AU1500
+       select SYS_HAS_CPU_MIPS32_R1
        select SYS_SUPPORTS_LITTLE_ENDIAN
 
 config MIPS_COBALT
@@ -115,6 +126,7 @@ config MIPS_COBALT
        select I8259
        select IRQ_CPU
        select MIPS_GT64111
+       select SYS_HAS_CPU_NEVADA
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
        select SYS_SUPPORTS_LITTLE_ENDIAN
@@ -125,6 +137,8 @@ config MACH_DECSTATION
        select DMA_NONCOHERENT
        select EARLY_PRINTK
        select IRQ_CPU
+       select SYS_HAS_CPU_R3000
+       select SYS_HAS_CPU_R4X00
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
        select SYS_SUPPORTS_LITTLE_ENDIAN
@@ -149,6 +163,7 @@ config MIPS_EV64120
        select DMA_NONCOHERENT
        select HW_HAS_PCI
        select MIPS_GT64120
+       select SYS_HAS_CPU_R5000
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL
        select SYS_SUPPORTS_BIG_ENDIAN
@@ -168,6 +183,8 @@ config MIPS_EV96100
        select MIPS_GT96100
        select RM7000_CPU_SCACHE
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_R5000
+       select SYS_HAS_CPU_RM7000
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
        select SYS_SUPPORTS_BIG_ENDIAN
@@ -182,6 +199,7 @@ config MIPS_IVR
        select DMA_NONCOHERENT
        select HW_HAS_PCI
        select ITE_BOARD_GEN
+       select SYS_HAS_CPU_NEVADA
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
        select SYS_SUPPORTS_LITTLE_ENDIAN
@@ -197,6 +215,8 @@ config MIPS_ITE8172
        select DMA_NONCOHERENT
        select HW_HAS_PCI
        select ITE_BOARD_GEN
+       select SYS_HAS_CPU_R5432
+       select SYS_HAS_CPU_NEVADA
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
        select SYS_SUPPORTS_LITTLE_ENDIAN
@@ -215,6 +235,7 @@ config MACH_JAZZ
        select GENERIC_ISA_DMA
        select I8259
        select ISA
+       select SYS_HAS_CPU_R4X00
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
        help
@@ -230,6 +251,7 @@ config LASAT
        select MIPS_GT64120
        select MIPS_NILE4
        select R5000_CPU_SCACHE
+       select SYS_HAS_CPU_R5000
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
        select SYS_SUPPORTS_LITTLE_ENDIAN
@@ -246,6 +268,11 @@ config MIPS_ATLAS
        select MIPS_MSC
        select RM7000_CPU_SCACHE
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_MIPS32_R1
+       select SYS_HAS_CPU_MIPS32_R2
+       select SYS_HAS_CPU_MIPS64_R1
+       select SYS_HAS_CPU_NEVADA
+       select SYS_HAS_CPU_RM7000
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL
        select SYS_SUPPORTS_BIG_ENDIAN
@@ -269,6 +296,11 @@ config MIPS_MALTA
        select MIPS_GT64120
        select MIPS_MSC
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_MIPS32_R1
+       select SYS_HAS_CPU_MIPS32_R2
+       select SYS_HAS_CPU_MIPS64_R1
+       select SYS_HAS_CPU_NEVADA
+       select SYS_HAS_CPU_RM7000
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL
        select SYS_SUPPORTS_BIG_ENDIAN
@@ -283,6 +315,9 @@ config MIPS_SEAD
        select IRQ_CPU
        select DMA_NONCOHERENT
        select MIPS_BOARDS_GEN
+       select SYS_HAS_CPU_MIPS32_R1
+       select SYS_HAS_CPU_MIPS32_R2
+       select SYS_HAS_CPU_MIPS64_R1
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
        select SYS_SUPPORTS_BIG_ENDIAN
@@ -295,6 +330,8 @@ config MIPS_SIM
        bool 'Support for MIPS simulator (MIPSsim)'
        select DMA_NONCOHERENT
        select IRQ_CPU
+       select SYS_HAS_CPU_MIPS32_R1
+       select SYS_HAS_CPU_MIPS32_R2
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_BIG_ENDIAN
        select SYS_SUPPORTS_LITTLE_ENDIAN
@@ -314,6 +351,7 @@ config MOMENCO_JAGUAR_ATX
        select PCI_MARVELL
        select RM7000_CPU_SCACHE
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_RM9000
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL
        select SYS_SUPPORTS_BIG_ENDIAN
@@ -330,6 +368,7 @@ config MOMENCO_OCELOT
        select MIPS_GT64120
        select RM7000_CPU_SCACHE
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_RM7000
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL
        select SYS_SUPPORTS_BIG_ENDIAN
@@ -348,6 +387,7 @@ config MOMENCO_OCELOT_3
        select PCI_MARVELL
        select RM7000_CPU_SCACHE
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_RM9000
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL
        select SYS_SUPPORTS_BIG_ENDIAN
@@ -364,6 +404,7 @@ config MOMENCO_OCELOT_C
        select PCI_MARVELL
        select RM7000_CPU_SCACHE
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_RM7000
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL
        select SYS_SUPPORTS_BIG_ENDIAN
@@ -380,6 +421,7 @@ config MOMENCO_OCELOT_G
        select PCI_MARVELL
        select RM7000_CPU_SCACHE
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_RM7000
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL
        select SYS_SUPPORTS_BIG_ENDIAN
@@ -413,6 +455,7 @@ config DDB5074
        select IRQ_CPU
        select I8259
        select ISA
+       select SYS_HAS_CPU_R5000
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
        select SYS_SUPPORTS_LITTLE_ENDIAN
@@ -429,6 +472,7 @@ config DDB5476
        select IRQ_CPU
        select I8259
        select ISA
+       select SYS_HAS_CPU_R5432
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
        select SYS_SUPPORTS_LITTLE_ENDIAN
@@ -447,6 +491,7 @@ config DDB5477
        select HW_HAS_PCI
        select I8259
        select IRQ_CPU
+       select SYS_HAS_CPU_R5432
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
        select SYS_SUPPORTS_LITTLE_ENDIAN
@@ -459,6 +504,7 @@ config DDB5477
 
 config MACH_VR41XX
        bool "Support for NEC VR4100 series based machines"
+       select SYS_HAS_CPU_VR41XX
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
 
@@ -470,6 +516,7 @@ config PMC_YOSEMITE
        select IRQ_CPU_RM7K
        select IRQ_CPU_RM9K
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_RM9000
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL
        select SYS_SUPPORTS_BIG_ENDIAN
@@ -486,6 +533,7 @@ config QEMU
        select I8259
        select ISA
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_MIPS32_R1
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_BIG_ENDIAN
        help
@@ -506,6 +554,8 @@ config SGI_IP22
        select IP22_CPU_SCACHE
        select IRQ_CPU
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_R4X00
+       select SYS_HAS_CPU_R5000
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL
        select SYS_SUPPORTS_BIG_ENDIAN
@@ -522,6 +572,7 @@ config SGI_IP27
        select DMA_IP27
        select HW_HAS_PCI
        select PCI_DOMAINS
+       select SYS_HAS_CPU_R10000
        select SYS_SUPPORTS_64BIT_KERNEL
        select SYS_SUPPORTS_BIG_ENDIAN
        help
@@ -541,17 +592,32 @@ config SGI_IP32
        select HW_HAS_PCI
        select R5000_CPU_SCACHE
        select RM7000_CPU_SCACHE
+       select SYS_HAS_CPU_R5000
+       select SYS_HAS_CPU_R10000 if BROKEN
+       select SYS_HAS_CPU_RM7000
        select SYS_SUPPORTS_64BIT_KERNEL
        select SYS_SUPPORTS_BIG_ENDIAN
        help
          If you want this kernel to run on SGI O2 workstation, say Y here.
 
+config SIBYTE_BIGSUR
+       bool "Support for Sibyte BigSur"
+       select BOOT_ELF32
+       select DMA_COHERENT
+       select PCI_DOMAINS
+       select SIBYTE_BCM1x80
+       select SWAP_IO_SPACE
+       select SYS_HAS_CPU_SB1
+       select SYS_SUPPORTS_BIG_ENDIAN
+       select SYS_SUPPORTS_LITTLE_ENDIAN
+
 config SIBYTE_SWARM
        bool "Support for Sibyte BCM91250A-SWARM"
        select BOOT_ELF32
        select DMA_COHERENT
        select SIBYTE_SB1250
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_SB1
        select SYS_SUPPORTS_BIG_ENDIAN
        select SYS_SUPPORTS_HIGHMEM
        select SYS_SUPPORTS_LITTLE_ENDIAN
@@ -563,6 +629,7 @@ config SIBYTE_SENTOSA
        select DMA_COHERENT
        select SIBYTE_SB1250
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_SB1
        select SYS_SUPPORTS_BIG_ENDIAN
        select SYS_SUPPORTS_LITTLE_ENDIAN
 
@@ -573,6 +640,7 @@ config SIBYTE_RHONE
        select DMA_COHERENT
        select SIBYTE_BCM1125H
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_SB1
        select SYS_SUPPORTS_BIG_ENDIAN
        select SYS_SUPPORTS_LITTLE_ENDIAN
 
@@ -583,6 +651,7 @@ config SIBYTE_CARMEL
        select DMA_COHERENT
        select SIBYTE_BCM1120
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_SB1
        select SYS_SUPPORTS_BIG_ENDIAN
        select SYS_SUPPORTS_LITTLE_ENDIAN
 
@@ -593,6 +662,7 @@ config SIBYTE_PTSWARM
        select DMA_COHERENT
        select SIBYTE_SB1250
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_SB1
        select SYS_SUPPORTS_BIG_ENDIAN
        select SYS_SUPPORTS_HIGHMEM
        select SYS_SUPPORTS_LITTLE_ENDIAN
@@ -604,6 +674,7 @@ config SIBYTE_LITTLESUR
        select DMA_COHERENT
        select SIBYTE_SB1250
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_SB1
        select SYS_SUPPORTS_BIG_ENDIAN
        select SYS_SUPPORTS_HIGHMEM
        select SYS_SUPPORTS_LITTLE_ENDIAN
@@ -615,6 +686,7 @@ config SIBYTE_CRHINE
        select DMA_COHERENT
        select SIBYTE_BCM1120
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_SB1
        select SYS_SUPPORTS_BIG_ENDIAN
        select SYS_SUPPORTS_LITTLE_ENDIAN
 
@@ -625,6 +697,7 @@ config SIBYTE_CRHONE
        select DMA_COHERENT
        select SIBYTE_BCM1125
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_SB1
        select SYS_SUPPORTS_BIG_ENDIAN
        select SYS_SUPPORTS_HIGHMEM
        select SYS_SUPPORTS_LITTLE_ENDIAN
@@ -642,6 +715,7 @@ config SNI_RM200_PCI
        select HW_HAS_PCI
        select I8259
        select ISA
+       select SYS_HAS_CPU_R4X00
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
        select SYS_SUPPORTS_BIG_ENDIAN if EXPERIMENTAL
@@ -659,6 +733,7 @@ config TOSHIBA_JMR3927
        select HW_HAS_PCI
        select MIPS_TX3927
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_TX39XX
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_BIG_ENDIAN
        select TOSHIBA_BOARDS
@@ -671,6 +746,7 @@ config TOSHIBA_RBTX4927
        select I8259
        select ISA
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_TX49XX
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL
        select SYS_SUPPORTS_BIG_ENDIAN
@@ -689,6 +765,7 @@ config TOSHIBA_RBTX4938
        select I8259
        select ISA
        select SWAP_IO_SPACE
+       select SYS_HAS_CPU_TX49XX
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_LITTLE_ENDIAN
        select SYS_SUPPORTS_BIG_ENDIAN
@@ -868,6 +945,7 @@ config SOC_AU1200
 
 config SOC_AU1X00
        bool
+       select SYS_HAS_CPU_MIPS32_R1
        select SYS_SUPPORTS_32BIT_KERNEL
 
 config PNX8550
@@ -876,9 +954,10 @@ config PNX8550
 
 config SOC_PNX8550
        bool
-       select SYS_SUPPORTS_32BIT_KERNEL
        select DMA_NONCOHERENT
        select HW_HAS_PCI
+       select SYS_HAS_CPU_MIPS32_R1
+       select SYS_SUPPORTS_32BIT_KERNEL
 
 config SWAP_IO_SPACE
        bool
@@ -970,6 +1049,7 @@ choice
 
 config CPU_MIPS32_R1
        bool "MIPS32 Release 1"
+       depends on SYS_HAS_CPU_MIPS32_R1
        select CPU_HAS_PREFETCH
        select CPU_SUPPORTS_32BIT_KERNEL
        help
@@ -985,6 +1065,7 @@ config CPU_MIPS32_R1
 
 config CPU_MIPS32_R2
        bool "MIPS32 Release 2"
+       depends on SYS_HAS_CPU_MIPS32_R2
        select CPU_HAS_PREFETCH
        select CPU_SUPPORTS_32BIT_KERNEL
        help
@@ -996,6 +1077,7 @@ config CPU_MIPS32_R2
 
 config CPU_MIPS64_R1
        bool "MIPS64 Release 1"
+       depends on SYS_HAS_CPU_MIPS64_R1
        select CPU_HAS_PREFETCH
        select CPU_SUPPORTS_32BIT_KERNEL
        select CPU_SUPPORTS_64BIT_KERNEL
@@ -1012,6 +1094,7 @@ config CPU_MIPS64_R1
 
 config CPU_MIPS64_R2
        bool "MIPS64 Release 2"
+       depends on SYS_HAS_CPU_MIPS64_R2
        select CPU_HAS_PREFETCH
        select CPU_SUPPORTS_32BIT_KERNEL
        select CPU_SUPPORTS_64BIT_KERNEL
@@ -1024,6 +1107,7 @@ config CPU_MIPS64_R2
 
 config CPU_R3000
        bool "R3000"
+       depends on SYS_HAS_CPU_R3000
        select CPU_SUPPORTS_32BIT_KERNEL
        select CPU_SUPPORTS_HIGHMEM
        help
@@ -1036,10 +1120,12 @@ config CPU_R3000
 
 config CPU_TX39XX
        bool "R39XX"
+       depends on SYS_HAS_CPU_TX39XX
        select CPU_SUPPORTS_32BIT_KERNEL
 
 config CPU_VR41XX
        bool "R41xx"
+       depends on SYS_HAS_CPU_VR41XX
        select CPU_SUPPORTS_32BIT_KERNEL
        select CPU_SUPPORTS_64BIT_KERNEL
        help
@@ -1050,6 +1136,7 @@ config CPU_VR41XX
 
 config CPU_R4300
        bool "R4300"
+       depends on SYS_HAS_CPU_R4300
        select CPU_SUPPORTS_32BIT_KERNEL
        select CPU_SUPPORTS_64BIT_KERNEL
        help
@@ -1057,6 +1144,7 @@ config CPU_R4300
 
 config CPU_R4X00
        bool "R4x00"
+       depends on SYS_HAS_CPU_R4X00
        select CPU_SUPPORTS_32BIT_KERNEL
        select CPU_SUPPORTS_64BIT_KERNEL
        help
@@ -1065,11 +1153,13 @@ config CPU_R4X00
 
 config CPU_TX49XX
        bool "R49XX"
+       depends on SYS_HAS_CPU_TX49XX
        select CPU_SUPPORTS_32BIT_KERNEL
        select CPU_SUPPORTS_64BIT_KERNEL
 
 config CPU_R5000
        bool "R5000"
+       depends on SYS_HAS_CPU_R5000
        select CPU_SUPPORTS_32BIT_KERNEL
        select CPU_SUPPORTS_64BIT_KERNEL
        help
@@ -1077,12 +1167,14 @@ config CPU_R5000
 
 config CPU_R5432
        bool "R5432"
+       depends on SYS_HAS_CPU_R5432
        select CPU_SUPPORTS_32BIT_KERNEL
        select CPU_SUPPORTS_64BIT_KERNEL
 
 config CPU_R6000
        bool "R6000"
        depends on EXPERIMENTAL
+       depends on SYS_HAS_CPU_R6000
        select CPU_SUPPORTS_32BIT_KERNEL
        help
          MIPS Technologies R6000 and R6000A series processors.  Note these
@@ -1090,6 +1182,7 @@ config CPU_R6000
 
 config CPU_NEVADA
        bool "RM52xx"
+       depends on SYS_HAS_CPU_NEVADA
        select CPU_SUPPORTS_32BIT_KERNEL
        select CPU_SUPPORTS_64BIT_KERNEL
        help
@@ -1098,6 +1191,7 @@ config CPU_NEVADA
 config CPU_R8000
        bool "R8000"
        depends on EXPERIMENTAL
+       depends on SYS_HAS_CPU_R8000
        select CPU_HAS_PREFETCH
        select CPU_SUPPORTS_64BIT_KERNEL
        help
@@ -1106,6 +1200,7 @@ config CPU_R8000
 
 config CPU_R10000
        bool "R10000"
+       depends on SYS_HAS_CPU_R10000
        select CPU_HAS_PREFETCH
        select CPU_SUPPORTS_32BIT_KERNEL
        select CPU_SUPPORTS_64BIT_KERNEL
@@ -1115,6 +1210,7 @@ config CPU_R10000
 
 config CPU_RM7000
        bool "RM7000"
+       depends on SYS_HAS_CPU_RM7000
        select CPU_HAS_PREFETCH
        select CPU_SUPPORTS_32BIT_KERNEL
        select CPU_SUPPORTS_64BIT_KERNEL
@@ -1122,6 +1218,7 @@ config CPU_RM7000
 
 config CPU_RM9000
        bool "RM9000"
+       depends on SYS_HAS_CPU_RM9000
        select CPU_HAS_PREFETCH
        select CPU_SUPPORTS_32BIT_KERNEL
        select CPU_SUPPORTS_64BIT_KERNEL
@@ -1129,12 +1226,70 @@ config CPU_RM9000
 
 config CPU_SB1
        bool "SB1"
+       depends on SYS_HAS_CPU_SB1
        select CPU_SUPPORTS_32BIT_KERNEL
        select CPU_SUPPORTS_64BIT_KERNEL
        select CPU_SUPPORTS_HIGHMEM
 
 endchoice
 
+config SYS_HAS_CPU_MIPS32_R1
+       bool
+
+config SYS_HAS_CPU_MIPS32_R2
+       bool
+
+config SYS_HAS_CPU_MIPS64_R1
+       bool
+
+config SYS_HAS_CPU_MIPS64_R2
+       bool
+
+config SYS_HAS_CPU_R3000
+       bool
+
+config SYS_HAS_CPU_TX39XX
+       bool
+
+config SYS_HAS_CPU_VR41XX
+       bool
+
+config SYS_HAS_CPU_R4300
+       bool
+
+config SYS_HAS_CPU_R4X00
+       bool
+
+config SYS_HAS_CPU_TX49XX
+       bool
+
+config SYS_HAS_CPU_R5000
+       bool
+
+config SYS_HAS_CPU_R5432
+       bool
+
+config SYS_HAS_CPU_R6000
+       bool
+
+config SYS_HAS_CPU_NEVADA
+       bool
+
+config SYS_HAS_CPU_R8000
+       bool
+
+config SYS_HAS_CPU_R10000
+       bool
+
+config SYS_HAS_CPU_RM7000
+       bool
+
+config SYS_HAS_CPU_RM9000
+       bool
+
+config SYS_HAS_CPU_SB1
+       bool
+
 endmenu
 
 #
@@ -1429,7 +1584,7 @@ source "mm/Kconfig"
 
 config SMP
        bool "Multi-Processing support"
-       depends on CPU_RM9000 || (SIBYTE_SB1250 && !SIBYTE_STANDALONE) || SGI_IP27 || MIPS_MT_SMP
+       depends on CPU_RM9000 || ((SIBYTE_BCM1x80 || SIBYTE_BCM1x55 || SIBYTE_SB1250) && !SIBYTE_STANDALONE) || SGI_IP27 || MIPS_MT_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
@@ -1486,6 +1641,8 @@ config RWSEM_GENERIC_SPINLOCK
        bool
        default y
 
+source "init/Kconfig"
+
 menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
 
 config HW_HAS_EISA