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