Kconfig 9.0 KB

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