Kconfig 9.5 KB

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