Kconfig 9.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437
  1. #
  2. # For a description of the syntax of this configuration file,
  3. # see Documentation/kbuild/kconfig-language.txt.
  4. #
  5. mainmenu "Linux/M32R Kernel Configuration"
  6. config M32R
  7. bool
  8. default y
  9. config SBUS
  10. bool
  11. config GENERIC_ISA_DMA
  12. bool
  13. default y
  14. config ZONE_DMA
  15. bool
  16. default y
  17. config GENERIC_HARDIRQS
  18. bool
  19. default y
  20. config GENERIC_IRQ_PROBE
  21. bool
  22. default y
  23. config NO_IOPORT
  24. def_bool y
  25. config NO_DMA
  26. def_bool y
  27. source "init/Kconfig"
  28. menu "Processor type and features"
  29. choice
  30. prompt "Platform Type"
  31. default PLAT_MAPPI
  32. config PLAT_MAPPI
  33. bool "Mappi-I"
  34. help
  35. The Mappi-I is an FPGA board for SOC (System-On-a-Chip) prototyping.
  36. You can operate a Linux system on this board by using an M32R
  37. softmacro core, which is a fully-synthesizable functional model
  38. described in Verilog-HDL.
  39. The Mappi-I board was the first platform, which had been used
  40. to port and develop a Linux system for the M32R processor.
  41. Currently, the Mappi-II, an heir to the Mappi-I, is available.
  42. config PLAT_USRV
  43. bool "uServer"
  44. select PLAT_HAS_INT1ICU
  45. config PLAT_M32700UT
  46. bool "M32700UT"
  47. select PLAT_HAS_INT0ICU
  48. select PLAT_HAS_INT1ICU
  49. select PLAT_HAS_INT2ICU
  50. help
  51. The M3T-M32700UT is an evaluation board based on uT-Engine
  52. specification. This board has an M32700 (Chaos) evaluation chip.
  53. You can say Y for SMP, because the M32700 is a single chip
  54. multiprocessor.
  55. config PLAT_OPSPUT
  56. bool "OPSPUT"
  57. select PLAT_HAS_INT0ICU
  58. select PLAT_HAS_INT1ICU
  59. select PLAT_HAS_INT2ICU
  60. help
  61. The OPSPUT is an evaluation board based on uT-Engine
  62. specification. This board has a OPSP-REP chip.
  63. config PLAT_OAKS32R
  64. bool "OAKS32R"
  65. help
  66. The OAKS32R is a tiny, inexpensive evaluation board.
  67. Please note that if you say Y here and choose chip "M32102",
  68. say N for MMU and select a no-MMU version kernel, otherwise
  69. a kernel with MMU support will not work, because the M32102
  70. is a microcontroller for embedded systems and it has no MMU.
  71. config PLAT_MAPPI2
  72. bool "Mappi-II(M3A-ZA36/M3A-ZA52)"
  73. config PLAT_MAPPI3
  74. bool "Mappi-III(M3A-2170)"
  75. config PLAT_M32104UT
  76. bool "M32104UT"
  77. select PLAT_HAS_INT1ICU
  78. help
  79. The M3T-M32104UT is an reference board based on uT-Engine
  80. specification. This board has a M32104 chip.
  81. endchoice
  82. choice
  83. prompt "Processor family"
  84. default CHIP_M32700
  85. config CHIP_M32700
  86. bool "M32700 (Chaos)"
  87. config CHIP_M32102
  88. bool "M32102"
  89. config CHIP_M32104
  90. bool "M32104"
  91. depends on PLAT_M32104UT
  92. config CHIP_VDEC2
  93. bool "VDEC2"
  94. config CHIP_OPSP
  95. bool "OPSP"
  96. endchoice
  97. config MMU
  98. bool "Support for memory management hardware"
  99. depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
  100. default y
  101. config TLB_ENTRIES
  102. int "TLB Entries"
  103. depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
  104. default 32 if CHIP_M32700 || CHIP_OPSP
  105. default 16 if CHIP_VDEC2
  106. config ISA_M32R
  107. bool
  108. depends on CHIP_M32102 || CHIP_M32104
  109. default y
  110. config ISA_M32R2
  111. bool
  112. depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
  113. default y
  114. config ISA_DSP_LEVEL2
  115. bool
  116. depends on CHIP_M32700 || CHIP_OPSP
  117. default y
  118. config ISA_DUAL_ISSUE
  119. bool
  120. depends on CHIP_M32700 || CHIP_OPSP
  121. default y
  122. config PLAT_HAS_INT0ICU
  123. bool
  124. default n
  125. config PLAT_HAS_INT1ICU
  126. bool
  127. default n
  128. config PLAT_HAS_INT2ICU
  129. bool
  130. default n
  131. config BUS_CLOCK
  132. int "Bus Clock [Hz] (integer)"
  133. default "70000000" if PLAT_MAPPI
  134. default "25000000" if PLAT_USRV
  135. default "50000000" if PLAT_MAPPI3
  136. default "50000000" if PLAT_M32700UT
  137. default "50000000" if PLAT_OPSPUT
  138. default "54000000" if PLAT_M32104UT
  139. default "33333333" if PLAT_OAKS32R
  140. default "20000000" if PLAT_MAPPI2
  141. config TIMER_DIVIDE
  142. int "Timer divider (integer)"
  143. default "128"
  144. config CPU_LITTLE_ENDIAN
  145. bool "Generate little endian code"
  146. default n
  147. config MEMORY_START
  148. hex "Physical memory start address (hex)"
  149. default "08000000" if PLAT_MAPPI || PLAT_MAPPI2 || PLAT_MAPPI3
  150. default "08000000" if PLAT_USRV
  151. default "08000000" if PLAT_M32700UT
  152. default "08000000" if PLAT_OPSPUT
  153. default "04000000" if PLAT_M32104UT
  154. default "01000000" if PLAT_OAKS32R
  155. config MEMORY_SIZE
  156. hex "Physical memory size (hex)"
  157. default "08000000" if PLAT_MAPPI3
  158. default "04000000" if PLAT_MAPPI || PLAT_MAPPI2
  159. default "02000000" if PLAT_USRV
  160. default "01000000" if PLAT_M32700UT
  161. default "01000000" if PLAT_OPSPUT
  162. default "01000000" if PLAT_M32104UT
  163. default "00800000" if PLAT_OAKS32R
  164. config NOHIGHMEM
  165. bool
  166. default y
  167. config ARCH_DISCONTIGMEM_ENABLE
  168. bool "Internal RAM Support"
  169. depends on CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104
  170. default y
  171. source "mm/Kconfig"
  172. config IRAM_START
  173. hex "Internal memory start address (hex)"
  174. default "00f00000" if !CHIP_M32104
  175. default "00700000" if CHIP_M32104
  176. depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
  177. config IRAM_SIZE
  178. hex "Internal memory size (hex)"
  179. depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
  180. default "00080000" if CHIP_M32700
  181. default "00010000" if CHIP_M32102 || CHIP_OPSP || CHIP_M32104
  182. default "00008000" if CHIP_VDEC2
  183. #
  184. # Define implied options from the CPU selection here
  185. #
  186. config RWSEM_GENERIC_SPINLOCK
  187. bool
  188. depends on M32R
  189. default y
  190. config RWSEM_XCHGADD_ALGORITHM
  191. bool
  192. default n
  193. config ARCH_HAS_ILOG2_U32
  194. bool
  195. default n
  196. config ARCH_HAS_ILOG2_U64
  197. bool
  198. default n
  199. config GENERIC_FIND_NEXT_BIT
  200. bool
  201. default y
  202. config GENERIC_HWEIGHT
  203. bool
  204. default y
  205. config GENERIC_CALIBRATE_DELAY
  206. bool
  207. default y
  208. config SCHED_NO_NO_OMIT_FRAME_POINTER
  209. bool
  210. default y
  211. config PREEMPT
  212. bool "Preemptible Kernel"
  213. help
  214. This option reduces the latency of the kernel when reacting to
  215. real-time or interactive events by allowing a low priority process to
  216. be preempted even if it is in kernel mode executing a system call.
  217. This allows applications to run more reliably even when the system is
  218. under load.
  219. Say Y here if you are building a kernel for a desktop, embedded
  220. or real-time system. Say N if you are unsure.
  221. config SMP
  222. bool "Symmetric multi-processing support"
  223. ---help---
  224. This enables support for systems with more than one CPU. If you have
  225. a system with only one CPU, like most personal computers, say N. If
  226. you have a system with more than one CPU, say Y.
  227. If you say N here, the kernel will run on single and multiprocessor
  228. machines, but will use only one CPU of a multiprocessor machine. If
  229. you say Y here, the kernel will run on many, but not all,
  230. singleprocessor machines. On a singleprocessor machine, the kernel
  231. will run faster if you say N here.
  232. People using multiprocessor machines who say Y here should also say
  233. Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
  234. Management" code will be disabled if you say Y here.
  235. See also the <file:Documentation/smp.txt>,
  236. and the SMP-HOWTO available at
  237. <http://www.linuxdoc.org/docs.html#howto>.
  238. If you don't know what to do here, say N.
  239. config CHIP_M32700_TS1
  240. bool "Workaround code for the M32700 TS1 chip's bug"
  241. depends on (CHIP_M32700 && SMP)
  242. default n
  243. config NR_CPUS
  244. int "Maximum number of CPUs (2-32)"
  245. range 2 32
  246. depends on SMP
  247. default "2"
  248. help
  249. This allows you to specify the maximum number of CPUs which this
  250. kernel will support. The maximum supported value is 32 and the
  251. minimum value which makes sense is 2.
  252. This is purely to save memory - each supported CPU adds
  253. approximately eight kilobytes to the kernel image.
  254. # Common NUMA Features
  255. config NUMA
  256. bool "Numa Memory Allocation Support"
  257. depends on SMP && BROKEN
  258. default n
  259. config NODES_SHIFT
  260. int
  261. default "1"
  262. depends on NEED_MULTIPLE_NODES
  263. # turning this on wastes a bunch of space.
  264. # Summit needs it only when NUMA is on
  265. config BOOT_IOREMAP
  266. bool
  267. depends on NUMA
  268. default n
  269. endmenu
  270. menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
  271. config PCI
  272. bool "PCI support"
  273. depends on BROKEN
  274. default n
  275. help
  276. Find out whether you have a PCI motherboard. PCI is the name of a
  277. bus system, i.e. the way the CPU talks to the other stuff inside
  278. your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
  279. VESA. If you have PCI, say Y, otherwise N.
  280. The PCI-HOWTO, available from
  281. <http://www.linuxdoc.org/docs.html#howto>, contains valuable
  282. information about which PCI hardware does work under Linux and which
  283. doesn't.
  284. choice
  285. prompt "PCI access mode"
  286. depends on PCI
  287. default PCI_GOANY
  288. config PCI_GOBIOS
  289. bool "BIOS"
  290. ---help---
  291. On PCI systems, the BIOS can be used to detect the PCI devices and
  292. determine their configuration. However, some old PCI motherboards
  293. have BIOS bugs and may crash if this is done. Also, some embedded
  294. PCI-based systems don't have any BIOS at all. Linux can also try to
  295. detect the PCI hardware directly without using the BIOS.
  296. With this option, you can specify how Linux should detect the PCI
  297. devices. If you choose "BIOS", the BIOS will be used, if you choose
  298. "Direct", the BIOS won't be used, and if you choose "Any", the
  299. kernel will try the direct access method and falls back to the BIOS
  300. if that doesn't work. If unsure, go with the default, which is
  301. "Any".
  302. config PCI_GODIRECT
  303. bool "Direct"
  304. config PCI_GOANY
  305. bool "Any"
  306. endchoice
  307. config PCI_BIOS
  308. bool
  309. depends on PCI && (PCI_GOBIOS || PCI_GOANY)
  310. default y
  311. config PCI_DIRECT
  312. bool
  313. depends on PCI && (PCI_GODIRECT || PCI_GOANY)
  314. default y
  315. source "drivers/pci/Kconfig"
  316. config ISA
  317. bool "ISA support"
  318. help
  319. Find out whether you have ISA slots on your motherboard. ISA is the
  320. name of a bus system, i.e. the way the CPU talks to the other stuff
  321. inside your box. If you have ISA, say Y, otherwise N.
  322. source "drivers/pcmcia/Kconfig"
  323. source "drivers/pci/hotplug/Kconfig"
  324. endmenu
  325. menu "Executable file formats"
  326. source "fs/Kconfig.binfmt"
  327. endmenu
  328. source "net/Kconfig"
  329. source "drivers/Kconfig"
  330. source "fs/Kconfig"
  331. source "kernel/Kconfig.instrumentation"
  332. source "arch/m32r/Kconfig.debug"
  333. source "security/Kconfig"
  334. source "crypto/Kconfig"
  335. source "lib/Kconfig"