Kconfig 9.4 KB

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