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