Kconfig 9.0 KB

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