Kconfig 9.0 KB

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