diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/mips/Kconfig | 57 |
1 files changed, 37 insertions, 20 deletions
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig index 8ac03cfcb2d2..5af30d385aca 100644 --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig | |||
@@ -562,6 +562,7 @@ config QEMU | |||
562 | select SWAP_IO_SPACE | 562 | select SWAP_IO_SPACE |
563 | select SYS_SUPPORTS_32BIT_KERNEL | 563 | select SYS_SUPPORTS_32BIT_KERNEL |
564 | select SYS_SUPPORTS_BIG_ENDIAN | 564 | select SYS_SUPPORTS_BIG_ENDIAN |
565 | select SYS_SUPPORTS_HIGHMEM | ||
565 | help | 566 | help |
566 | Qemu is a software emulator which among other architectures also | 567 | Qemu is a software emulator which among other architectures also |
567 | can simulate a MIPS32 4Kc system. This patch adds support for the | 568 | can simulate a MIPS32 4Kc system. This patch adds support for the |
@@ -759,6 +760,10 @@ config MIPS_PB1200 | |||
759 | select DMA_NONCOHERENT | 760 | select DMA_NONCOHERENT |
760 | select MIPS_DISABLE_OBSOLETE_IDE | 761 | select MIPS_DISABLE_OBSOLETE_IDE |
761 | select SYS_SUPPORTS_BIG_ENDIAN | 762 | select SYS_SUPPORTS_BIG_ENDIAN |
763 | select SYS_SUPPORTS_HIGHMEM | ||
764 | select SYS_SUPPORTS_HIGHMEM | ||
765 | select SYS_SUPPORTS_HIGHMEM | ||
766 | select SYS_SUPPORTS_HIGHMEM | ||
762 | select SYS_SUPPORTS_LITTLE_ENDIAN | 767 | select SYS_SUPPORTS_LITTLE_ENDIAN |
763 | 768 | ||
764 | config MIPS_DB1000 | 769 | config MIPS_DB1000 |
@@ -829,6 +834,7 @@ config SNI_RM200_PCI | |||
829 | select ISA | 834 | select ISA |
830 | select SYS_SUPPORTS_32BIT_KERNEL | 835 | select SYS_SUPPORTS_32BIT_KERNEL |
831 | select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL | 836 | select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL |
837 | select SYS_SUPPORTS_HIGHMEM | ||
832 | help | 838 | help |
833 | The SNI RM200 PCI was a MIPS-based platform manufactured by Siemens | 839 | The SNI RM200 PCI was a MIPS-based platform manufactured by Siemens |
834 | Nixdorf Informationssysteme (SNI), parent company of Pyramid | 840 | Nixdorf Informationssysteme (SNI), parent company of Pyramid |
@@ -913,6 +919,7 @@ config I8259 | |||
913 | config LIMITED_DMA | 919 | config LIMITED_DMA |
914 | bool | 920 | bool |
915 | select HIGHMEM | 921 | select HIGHMEM |
922 | select SYS_SUPPORTS_HIGHMEM | ||
916 | 923 | ||
917 | config MIPS_BONITO64 | 924 | config MIPS_BONITO64 |
918 | bool | 925 | bool |
@@ -1105,8 +1112,8 @@ choice | |||
1105 | 1112 | ||
1106 | config CPU_MIPS32_R1 | 1113 | config CPU_MIPS32_R1 |
1107 | bool "MIPS32 Release 1" | 1114 | bool "MIPS32 Release 1" |
1108 | select CPU_SUPPORTS_32BIT_KERNEL | ||
1109 | select CPU_HAS_PREFETCH | 1115 | select CPU_HAS_PREFETCH |
1116 | select CPU_SUPPORTS_32BIT_KERNEL | ||
1110 | help | 1117 | help |
1111 | Choose this option to build a kernel for release 2 or later of the | 1118 | Choose this option to build a kernel for release 2 or later of the |
1112 | MIPS32 architecture. Most modern embedded systems with a 32-bit | 1119 | MIPS32 architecture. Most modern embedded systems with a 32-bit |
@@ -1120,8 +1127,8 @@ config CPU_MIPS32_R1 | |||
1120 | 1127 | ||
1121 | config CPU_MIPS32_R2 | 1128 | config CPU_MIPS32_R2 |
1122 | bool "MIPS32 Release 2" | 1129 | bool "MIPS32 Release 2" |
1123 | select CPU_SUPPORTS_32BIT_KERNEL | ||
1124 | select CPU_HAS_PREFETCH | 1130 | select CPU_HAS_PREFETCH |
1131 | select CPU_SUPPORTS_32BIT_KERNEL | ||
1125 | help | 1132 | help |
1126 | Choose this option to build a kernel for release 1 or later of the | 1133 | Choose this option to build a kernel for release 1 or later of the |
1127 | MIPS32 architecture. Most modern embedded systems with a 32-bit | 1134 | MIPS32 architecture. Most modern embedded systems with a 32-bit |
@@ -1131,9 +1138,9 @@ config CPU_MIPS32_R2 | |||
1131 | 1138 | ||
1132 | config CPU_MIPS64_R1 | 1139 | config CPU_MIPS64_R1 |
1133 | bool "MIPS64 Release 1" | 1140 | bool "MIPS64 Release 1" |
1141 | select CPU_HAS_PREFETCH | ||
1134 | select CPU_SUPPORTS_32BIT_KERNEL | 1142 | select CPU_SUPPORTS_32BIT_KERNEL |
1135 | select CPU_SUPPORTS_64BIT_KERNEL | 1143 | select CPU_SUPPORTS_64BIT_KERNEL |
1136 | select CPU_HAS_PREFETCH | ||
1137 | help | 1144 | help |
1138 | Choose this option to build a kernel for release 1 or later of the | 1145 | Choose this option to build a kernel for release 1 or later of the |
1139 | MIPS64 architecture. Many modern embedded systems with a 64-bit | 1146 | MIPS64 architecture. Many modern embedded systems with a 64-bit |
@@ -1147,9 +1154,9 @@ config CPU_MIPS64_R1 | |||
1147 | 1154 | ||
1148 | config CPU_MIPS64_R2 | 1155 | config CPU_MIPS64_R2 |
1149 | bool "MIPS64 Release 2" | 1156 | bool "MIPS64 Release 2" |
1157 | select CPU_HAS_PREFETCH | ||
1150 | select CPU_SUPPORTS_32BIT_KERNEL | 1158 | select CPU_SUPPORTS_32BIT_KERNEL |
1151 | select CPU_SUPPORTS_64BIT_KERNEL | 1159 | select CPU_SUPPORTS_64BIT_KERNEL |
1152 | select CPU_HAS_PREFETCH | ||
1153 | help | 1160 | help |
1154 | Choose this option to build a kernel for release 2 or later of the | 1161 | Choose this option to build a kernel for release 2 or later of the |
1155 | MIPS64 architecture. Many modern embedded systems with a 64-bit | 1162 | MIPS64 architecture. Many modern embedded systems with a 64-bit |
@@ -1160,6 +1167,7 @@ config CPU_MIPS64_R2 | |||
1160 | config CPU_R3000 | 1167 | config CPU_R3000 |
1161 | bool "R3000" | 1168 | bool "R3000" |
1162 | select CPU_SUPPORTS_32BIT_KERNEL | 1169 | select CPU_SUPPORTS_32BIT_KERNEL |
1170 | select CPU_SUPPORTS_HIGHMEM | ||
1163 | help | 1171 | help |
1164 | Please make sure to pick the right CPU type. Linux/MIPS is not | 1172 | Please make sure to pick the right CPU type. Linux/MIPS is not |
1165 | designed to be generic, i.e. Kernels compiled for R3000 CPUs will | 1173 | designed to be generic, i.e. Kernels compiled for R3000 CPUs will |
@@ -1239,6 +1247,7 @@ config CPU_R10000 | |||
1239 | bool "R10000" | 1247 | bool "R10000" |
1240 | select CPU_SUPPORTS_32BIT_KERNEL | 1248 | select CPU_SUPPORTS_32BIT_KERNEL |
1241 | select CPU_SUPPORTS_64BIT_KERNEL | 1249 | select CPU_SUPPORTS_64BIT_KERNEL |
1250 | select CPU_SUPPORTS_HIGHMEM | ||
1242 | help | 1251 | help |
1243 | MIPS Technologies R10000-series processors. | 1252 | MIPS Technologies R10000-series processors. |
1244 | 1253 | ||
@@ -1246,16 +1255,19 @@ config CPU_RM7000 | |||
1246 | bool "RM7000" | 1255 | bool "RM7000" |
1247 | select CPU_SUPPORTS_32BIT_KERNEL | 1256 | select CPU_SUPPORTS_32BIT_KERNEL |
1248 | select CPU_SUPPORTS_64BIT_KERNEL | 1257 | select CPU_SUPPORTS_64BIT_KERNEL |
1258 | select CPU_SUPPORTS_HIGHMEM | ||
1249 | 1259 | ||
1250 | config CPU_RM9000 | 1260 | config CPU_RM9000 |
1251 | bool "RM9000" | 1261 | bool "RM9000" |
1252 | select CPU_SUPPORTS_32BIT_KERNEL | 1262 | select CPU_SUPPORTS_32BIT_KERNEL |
1253 | select CPU_SUPPORTS_64BIT_KERNEL | 1263 | select CPU_SUPPORTS_64BIT_KERNEL |
1264 | select CPU_SUPPORTS_HIGHMEM | ||
1254 | 1265 | ||
1255 | config CPU_SB1 | 1266 | config CPU_SB1 |
1256 | bool "SB1" | 1267 | bool "SB1" |
1257 | select CPU_SUPPORTS_32BIT_KERNEL | 1268 | select CPU_SUPPORTS_32BIT_KERNEL |
1258 | select CPU_SUPPORTS_64BIT_KERNEL | 1269 | select CPU_SUPPORTS_64BIT_KERNEL |
1270 | select CPU_SUPPORTS_HIGHMEM | ||
1259 | 1271 | ||
1260 | endchoice | 1272 | endchoice |
1261 | 1273 | ||
@@ -1443,6 +1455,17 @@ config CPU_HAS_SYNC | |||
1443 | default y | 1455 | default y |
1444 | 1456 | ||
1445 | # | 1457 | # |
1458 | # Use the generic interrupt handling code in kernel/irq/: | ||
1459 | # | ||
1460 | config GENERIC_HARDIRQS | ||
1461 | bool | ||
1462 | default y | ||
1463 | |||
1464 | config GENERIC_IRQ_PROBE | ||
1465 | bool | ||
1466 | default y | ||
1467 | |||
1468 | # | ||
1446 | # - Highmem only makes sense for the 32-bit kernel. | 1469 | # - Highmem only makes sense for the 32-bit kernel. |
1447 | # - The current highmem code will only work properly on physically indexed | 1470 | # - The current highmem code will only work properly on physically indexed |
1448 | # caches such as R3000, SB1, R7000 or those that look like they're virtually | 1471 | # caches such as R3000, SB1, R7000 or those that look like they're virtually |
@@ -1451,14 +1474,19 @@ config CPU_HAS_SYNC | |||
1451 | # where it's known to be safe. This will not offer highmem on a few systems | 1474 | # where it's known to be safe. This will not offer highmem on a few systems |
1452 | # such as MIPS32 and MIPS64 CPUs which may have virtual and physically | 1475 | # such as MIPS32 and MIPS64 CPUs which may have virtual and physically |
1453 | # indexed CPUs but we're playing safe. | 1476 | # indexed CPUs but we're playing safe. |
1454 | # - We should not offer highmem for system of which we already know that they | 1477 | # - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we |
1455 | # don't have memory configurations that could gain from highmem support in | 1478 | # know they might have memory configurations that could make use of highmem |
1456 | # the kernel because they don't support configurations with RAM at physical | 1479 | # support. |
1457 | # addresses > 0x20000000. | ||
1458 | # | 1480 | # |
1459 | config HIGHMEM | 1481 | config HIGHMEM |
1460 | bool "High Memory Support" | 1482 | bool "High Memory Support" |
1461 | depends on 32BIT && (CPU_R3000 || CPU_SB1 || CPU_R7000 || CPU_RM9000 || CPU_R10000) && !(MACH_DECSTATION || MOMENCO_JAGUAR_ATX) | 1483 | depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM |
1484 | |||
1485 | config CPU_SUPPORTS_HIGHMEM | ||
1486 | bool | ||
1487 | |||
1488 | config SYS_SUPPORTS_HIGHMEM | ||
1489 | bool | ||
1462 | 1490 | ||
1463 | config ARCH_FLATMEM_ENABLE | 1491 | config ARCH_FLATMEM_ENABLE |
1464 | def_bool y | 1492 | def_bool y |
@@ -1708,17 +1736,6 @@ source "crypto/Kconfig" | |||
1708 | 1736 | ||
1709 | source "lib/Kconfig" | 1737 | source "lib/Kconfig" |
1710 | 1738 | ||
1711 | # | ||
1712 | # Use the generic interrupt handling code in kernel/irq/: | ||
1713 | # | ||
1714 | config GENERIC_HARDIRQS | ||
1715 | bool | ||
1716 | default y | ||
1717 | |||
1718 | config GENERIC_IRQ_PROBE | ||
1719 | bool | ||
1720 | default y | ||
1721 | |||
1722 | config ISA_DMA_API | 1739 | config ISA_DMA_API |
1723 | bool | 1740 | bool |
1724 | default y | 1741 | default y |