Kconfig 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640
  1. #
  2. # For a description of the syntax of this configuration file,
  3. # see Documentation/kbuild/kconfig-language.txt.
  4. #
  5. mainmenu "Linux/SuperH Kernel Configuration"
  6. config SUPERH
  7. bool
  8. default y
  9. help
  10. The SuperH is a RISC processor targeted for use in embedded systems
  11. and consumer electronics; it was also used in the Sega Dreamcast
  12. gaming console. The SuperH port has a home page at
  13. <http://www.linux-sh.org/>.
  14. config RWSEM_GENERIC_SPINLOCK
  15. bool
  16. default y
  17. config RWSEM_XCHGADD_ALGORITHM
  18. bool
  19. config GENERIC_HARDIRQS
  20. bool
  21. default y
  22. config GENERIC_IRQ_PROBE
  23. bool
  24. default y
  25. config GENERIC_CALIBRATE_DELAY
  26. bool
  27. default y
  28. config GENERIC_IOMAP
  29. bool
  30. config ARCH_MAY_HAVE_PC_FDC
  31. bool
  32. source "init/Kconfig"
  33. menu "System type"
  34. choice
  35. prompt "SuperH system type"
  36. default SH_UNKNOWN
  37. config SH_SOLUTION_ENGINE
  38. bool "SolutionEngine"
  39. help
  40. Select SolutionEngine if configuring for a Hitachi SH7709
  41. or SH7750 evaluation board.
  42. config SH_7751_SOLUTION_ENGINE
  43. bool "SolutionEngine7751"
  44. select CPU_SUBTYPE_SH7751
  45. help
  46. Select 7751 SolutionEngine if configuring for a Hitachi SH7751
  47. evaluation board.
  48. config SH_7300_SOLUTION_ENGINE
  49. bool "SolutionEngine7300"
  50. select CPU_SUBTYPE_SH7300
  51. help
  52. Select 7300 SolutionEngine if configuring for a Hitachi SH7300(SH-Mobile V)
  53. evaluation board.
  54. config SH_73180_SOLUTION_ENGINE
  55. bool "SolutionEngine73180"
  56. select CPU_SUBTYPE_SH73180
  57. help
  58. Select 73180 SolutionEngine if configuring for a Hitachi SH73180(SH-Mobile 3)
  59. evaluation board.
  60. config SH_7751_SYSTEMH
  61. bool "SystemH7751R"
  62. select CPU_SUBTYPE_SH7751R
  63. help
  64. Select SystemH if you are configuring for a Renesas SystemH
  65. 7751R evaluation board.
  66. config SH_STB1_HARP
  67. bool "STB1_Harp"
  68. config SH_STB1_OVERDRIVE
  69. bool "STB1_Overdrive"
  70. config SH_HP6XX
  71. bool "HP6XX"
  72. help
  73. Select HP6XX if configuring for a HP jornada HP6xx.
  74. More information (hardware only) at
  75. <http://www.hp.com/jornada/>.
  76. config SH_CQREEK
  77. bool "CqREEK"
  78. help
  79. Select CqREEK if configuring for a CqREEK SH7708 or SH7750.
  80. More information at
  81. <http://sources.redhat.com/ecos/hardware.html#SuperH>.
  82. config SH_DMIDA
  83. bool "DMIDA"
  84. help
  85. Select DMIDA if configuring for a DataMyte 4000 Industrial
  86. Digital Assistant. More information at <http://www.dmida.com/>.
  87. config SH_EC3104
  88. bool "EC3104"
  89. help
  90. Select EC3104 if configuring for a system with an Eclipse
  91. International EC3104 chip, e.g. the Harris AD2000.
  92. config SH_SATURN
  93. bool "Saturn"
  94. select CPU_SUBTYPE_SH7604
  95. help
  96. Select Saturn if configuring for a SEGA Saturn.
  97. config SH_DREAMCAST
  98. bool "Dreamcast"
  99. select CPU_SUBTYPE_SH7091
  100. help
  101. Select Dreamcast if configuring for a SEGA Dreamcast.
  102. More information at
  103. <http://www.m17n.org/linux-sh/dreamcast/>. There is a
  104. Dreamcast project is at <http://linuxdc.sourceforge.net/>.
  105. config SH_CAT68701
  106. bool "CAT68701"
  107. config SH_BIGSUR
  108. bool "BigSur"
  109. config SH_SH2000
  110. bool "SH2000"
  111. select CPU_SUBTYPE_SH7709
  112. help
  113. SH-2000 is a single-board computer based around SH7709A chip
  114. intended for embedded applications.
  115. It has an Ethernet interface (CS8900A), direct connected
  116. Compact Flash socket, three serial ports and PC-104 bus.
  117. More information at <http://sh2000.sh-linux.org>.
  118. config SH_ADX
  119. bool "ADX"
  120. config SH_MPC1211
  121. bool "Interface MPC1211"
  122. help
  123. CTP/PCI-SH02 is a CPU module computer that is produced
  124. by Interface Corporation.
  125. More information at <http://www.interface.co.jp>
  126. config SH_SH03
  127. bool "Interface CTP/PCI-SH03"
  128. help
  129. CTP/PCI-SH03 is a CPU module computer that is produced
  130. by Interface Corporation.
  131. More information at <http://www.interface.co.jp>
  132. config SH_SECUREEDGE5410
  133. bool "SecureEdge5410"
  134. select CPU_SUBTYPE_SH7751R
  135. help
  136. Select SecureEdge5410 if configuring for a SnapGear SH board.
  137. This includes both the OEM SecureEdge products as well as the
  138. SME product line.
  139. config SH_HS7751RVOIP
  140. bool "HS7751RVOIP"
  141. select CPU_SUBTYPE_SH7751R
  142. help
  143. Select HS7751RVOIP if configuring for a Renesas Technology
  144. Sales VoIP board.
  145. config SH_RTS7751R2D
  146. bool "RTS7751R2D"
  147. select CPU_SUBTYPE_SH7751R
  148. help
  149. Select RTS7751R2D if configuring for a Renesas Technology
  150. Sales SH-Graphics board.
  151. config SH_R7780RP
  152. bool "R7780RP-1"
  153. select CPU_SUBTYPE_SH7780
  154. help
  155. Select R7780RP-1 if configuring for a Renesas Solutions
  156. HIGHLANDER board.
  157. config SH_EDOSK7705
  158. bool "EDOSK7705"
  159. select CPU_SUBTYPE_SH7705
  160. config SH_SH4202_MICRODEV
  161. bool "SH4-202 MicroDev"
  162. select CPU_SUBTYPE_SH4_202
  163. help
  164. Select SH4-202 MicroDev if configuring for a SuperH MicroDev board
  165. with an SH4-202 CPU.
  166. config SH_LANDISK
  167. bool "LANDISK"
  168. select CPU_SUBTYPE_SH7751R
  169. help
  170. I-O DATA DEVICE, INC. "LANDISK Series" support.
  171. config SH_TITAN
  172. bool "TITAN"
  173. select CPU_SUBTYPE_SH7751R
  174. help
  175. Select Titan if you are configuring for a Nimble Microsystems
  176. NetEngine NP51R.
  177. config SH_UNKNOWN
  178. bool "BareCPU"
  179. help
  180. "Bare CPU" aka "unknown" means an SH-based system which is not one
  181. of the specific ones mentioned above, which means you need to enter
  182. all sorts of stuff like CONFIG_MEMORY_START because the config
  183. system doesn't already know what it is. You get a machine vector
  184. without any platform-specific code in it, so things like the RTC may
  185. not work.
  186. This option is for the early stages of porting to a new machine.
  187. endchoice
  188. source "arch/sh/mm/Kconfig"
  189. config MEMORY_START
  190. hex "Physical memory start address"
  191. default "0x08000000"
  192. ---help---
  193. Computers built with Hitachi SuperH processors always
  194. map the ROM starting at address zero. But the processor
  195. does not specify the range that RAM takes.
  196. The physical memory (RAM) start address will be automatically
  197. set to 08000000. Other platforms, such as the Solution Engine
  198. boards typically map RAM at 0C000000.
  199. Tweak this only when porting to a new machine which does not
  200. already have a defconfig. Changing it from the known correct
  201. value on any of the known systems will only lead to disaster.
  202. config MEMORY_SIZE
  203. hex "Physical memory size"
  204. default "0x00400000"
  205. help
  206. This sets the default memory size assumed by your SH kernel. It can
  207. be overridden as normal by the 'mem=' argument on the kernel command
  208. line. If unsure, consult your board specifications or just leave it
  209. as 0x00400000 which was the default value before this became
  210. configurable.
  211. config CF_ENABLER
  212. bool "Compact Flash Enabler support"
  213. depends on SH_ADX || SH_SOLUTION_ENGINE || SH_UNKNOWN || SH_CAT68701 || SH_SH03
  214. ---help---
  215. Compact Flash is a small, removable mass storage device introduced
  216. in 1994 originally as a PCMCIA device. If you say `Y' here, you
  217. compile in support for Compact Flash devices directly connected to
  218. a SuperH processor. A Compact Flash FAQ is available at
  219. <http://www.compactflash.org/faqs/faq.htm>.
  220. If your board has "Directly Connected" CompactFlash at area 5 or 6,
  221. you may want to enable this option. Then, you can use CF as
  222. primary IDE drive (only tested for SanDisk).
  223. If in doubt, select 'N'.
  224. choice
  225. prompt "Compact Flash Connection Area"
  226. depends on CF_ENABLER
  227. default CF_AREA6
  228. config CF_AREA5
  229. bool "Area5"
  230. help
  231. If your board has "Directly Connected" CompactFlash, You should
  232. select the area where your CF is connected to.
  233. - "Area5" if CompactFlash is connected to Area 5 (0x14000000)
  234. - "Area6" if it is connected to Area 6 (0x18000000)
  235. "Area6" will work for most boards. For ADX, select "Area5".
  236. config CF_AREA6
  237. bool "Area6"
  238. endchoice
  239. config CF_BASE_ADDR
  240. hex
  241. depends on CF_ENABLER
  242. default "0xb8000000" if CF_AREA6
  243. default "0xb4000000" if CF_AREA5
  244. menu "Processor features"
  245. config CPU_LITTLE_ENDIAN
  246. bool "Little Endian"
  247. help
  248. Some SuperH machines can be configured for either little or big
  249. endian byte order. These modes require different kernels. Say Y if
  250. your machine is little endian, N if it's a big endian machine.
  251. # The SH7750 RTC module is disabled in the Dreamcast
  252. config SH_RTC
  253. bool
  254. depends on !SH_DREAMCAST && !SH_SATURN && !SH_7300_SOLUTION_ENGINE && \
  255. !SH_73180_SOLUTION_ENGINE && !SH_LANDISK && \
  256. !SH_R7780RP
  257. default y
  258. help
  259. Selecting this option will allow the Linux kernel to emulate
  260. PC's RTC.
  261. If unsure, say N.
  262. config SH_FPU
  263. bool "FPU support"
  264. depends on !CPU_SH3
  265. default y
  266. help
  267. Selecting this option will enable support for SH processors that
  268. have FPU units (ie, SH77xx).
  269. This option must be set in order to enable the FPU.
  270. config SH_DSP
  271. bool "DSP support"
  272. depends on !CPU_SH4
  273. default y
  274. help
  275. Selecting this option will enable support for SH processors that
  276. have DSP units (ie, SH2-DSP and SH3-DSP). It is safe to say Y here
  277. by default, as the existance of the DSP will be probed at runtime.
  278. This option must be set in order to enable the DSP.
  279. config SH_ADC
  280. bool "ADC support"
  281. depends on CPU_SH3
  282. default y
  283. help
  284. Selecting this option will allow the Linux kernel to use SH3 on-chip
  285. ADC module.
  286. If unsure, say N.
  287. config SH_STORE_QUEUES
  288. bool "Support for Store Queues"
  289. depends on CPU_SH4
  290. help
  291. Selecting this option will enable an in-kernel API for manipulating
  292. the store queues integrated in the SH-4 processors.
  293. config CPU_HAS_INTEVT
  294. bool
  295. config CPU_HAS_PINT_IRQ
  296. bool
  297. config CPU_HAS_INTC2_IRQ
  298. bool
  299. config CPU_HAS_SR_RB
  300. bool "CPU has SR.RB"
  301. depends on CPU_SH3 || CPU_SH4
  302. default y
  303. help
  304. This will enable the use of SR.RB register bank usage. Processors
  305. that are lacking this bit must have another method in place for
  306. accomplishing what is taken care of by the banked registers.
  307. See <file:Documentation/sh/register-banks.txt> for further
  308. information on SR.RB and register banking in the kernel in general.
  309. endmenu
  310. menu "Timer support"
  311. config SH_TMU
  312. bool "TMU timer support"
  313. default y
  314. help
  315. This enables the use of the TMU as the system timer.
  316. endmenu
  317. source "arch/sh/boards/renesas/hs7751rvoip/Kconfig"
  318. source "arch/sh/boards/renesas/rts7751r2d/Kconfig"
  319. config SH_PCLK_FREQ
  320. int "Peripheral clock frequency (in Hz)"
  321. default "50000000" if CPU_SUBTYPE_SH7750 || CPU_SUBTYPE_SH7780
  322. default "60000000" if CPU_SUBTYPE_SH7751
  323. default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || CPU_SUBTYPE_SH7760
  324. default "27000000" if CPU_SUBTYPE_SH73180
  325. default "66000000" if CPU_SUBTYPE_SH4_202
  326. help
  327. This option is used to specify the peripheral clock frequency.
  328. This is necessary for determining the reference clock value on
  329. platforms lacking an RTC.
  330. menu "CPU Frequency scaling"
  331. source "drivers/cpufreq/Kconfig"
  332. config SH_CPU_FREQ
  333. tristate "SuperH CPU Frequency driver"
  334. depends on CPU_FREQ
  335. select CPU_FREQ_TABLE
  336. help
  337. This adds the cpufreq driver for SuperH. At present, only
  338. the SH-4 is supported.
  339. For details, take a look at <file:Documentation/cpu-freq>.
  340. If unsure, say N.
  341. endmenu
  342. source "arch/sh/drivers/dma/Kconfig"
  343. source "arch/sh/cchips/Kconfig"
  344. config HEARTBEAT
  345. bool "Heartbeat LED"
  346. depends on SH_MPC1211 || SH_SH03 || SH_CAT68701 || \
  347. SH_STB1_HARP || SH_STB1_OVERDRIVE || SH_BIGSUR || \
  348. SH_7751_SOLUTION_ENGINE || SH_7300_SOLUTION_ENGINE || \
  349. SH_73180_SOLUTION_ENGINE || SH_SOLUTION_ENGINE || \
  350. SH_RTS7751R2D || SH_SH4202_MICRODEV || SH_LANDISK
  351. help
  352. Use the power-on LED on your machine as a load meter. The exact
  353. behavior is platform-dependent, but normally the flash frequency is
  354. a hyperbolic function of the 5-minute load average.
  355. endmenu
  356. config ISA_DMA_API
  357. bool
  358. depends on MPC1211
  359. default y
  360. menu "Kernel features"
  361. config KEXEC
  362. bool "kexec system call (EXPERIMENTAL)"
  363. depends on EXPERIMENTAL
  364. help
  365. kexec is a system call that implements the ability to shutdown your
  366. current kernel, and to start another kernel. It is like a reboot
  367. but it is indepedent of the system firmware. And like a reboot
  368. you can start any kernel with it, not just Linux.
  369. The name comes from the similiarity to the exec system call.
  370. It is an ongoing process to be certain the hardware in a machine
  371. is properly shutdown, so do not be surprised if this code does not
  372. initially work for you. It may help to enable device hotplugging
  373. support. As of this writing the exact hardware interface is
  374. strongly in flux, so no good recommendation can be made.
  375. config PREEMPT
  376. bool "Preemptible Kernel (EXPERIMENTAL)"
  377. depends on EXPERIMENTAL
  378. config SMP
  379. bool "Symmetric multi-processing support"
  380. ---help---
  381. This enables support for systems with more than one CPU. If you have
  382. a system with only one CPU, like most personal computers, say N. If
  383. you have a system with more than one CPU, say Y.
  384. If you say N here, the kernel will run on single and multiprocessor
  385. machines, but will use only one CPU of a multiprocessor machine. If
  386. you say Y here, the kernel will run on many, but not all,
  387. singleprocessor machines. On a singleprocessor machine, the kernel
  388. will run faster if you say N here.
  389. People using multiprocessor machines who say Y here should also say
  390. Y to "Enhanced Real Time Clock Support", below.
  391. See also the <file:Documentation/smp.txt>,
  392. <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available
  393. at <http://www.tldp.org/docs.html#howto>.
  394. If you don't know what to do here, say N.
  395. config NR_CPUS
  396. int "Maximum number of CPUs (2-32)"
  397. range 2 32
  398. depends on SMP
  399. default "2"
  400. help
  401. This allows you to specify the maximum number of CPUs which this
  402. kernel will support. The maximum supported value is 32 and the
  403. minimum value which makes sense is 2.
  404. This is purely to save memory - each supported CPU adds
  405. approximately eight kilobytes to the kernel image.
  406. config CPU_HAS_SR_RB
  407. bool "CPU has SR.RB"
  408. depends on CPU_SH3 || CPU_SH4
  409. default y
  410. help
  411. This will enable the use of SR.RB register bank usage. Processors
  412. that are lacking this bit must have another method in place for
  413. accomplishing what is taken care of by the banked registers.
  414. See <file:Documentation/sh/register-banks.txt> for further
  415. information on SR.RB and register banking in the kernel in general.
  416. endmenu
  417. menu "Boot options"
  418. config ZERO_PAGE_OFFSET
  419. hex "Zero page offset"
  420. default "0x00004000" if SH_MPC1211 || SH_SH03
  421. default "0x00001000"
  422. help
  423. This sets the default offset of zero page.
  424. config BOOT_LINK_OFFSET
  425. hex "Link address offset for booting"
  426. default "0x00800000"
  427. help
  428. This option allows you to set the link address offset of the zImage.
  429. This can be useful if you are on a board which has a small amount of
  430. memory.
  431. config UBC_WAKEUP
  432. bool "Wakeup UBC on startup"
  433. help
  434. Selecting this option will wakeup the User Break Controller (UBC) on
  435. startup. Although the UBC is left in an awake state when the processor
  436. comes up, some boot loaders misbehave by putting the UBC to sleep in a
  437. power saving state, which causes issues with things like ptrace().
  438. If unsure, say N.
  439. config CMDLINE_BOOL
  440. bool "Default bootloader kernel arguments"
  441. config CMDLINE
  442. string "Initial kernel command string"
  443. depends on CMDLINE_BOOL
  444. default "console=ttySC1,115200"
  445. endmenu
  446. menu "Bus options"
  447. # Even on SuperH devices which don't have an ISA bus,
  448. # this variable helps the PCMCIA modules handle
  449. # IRQ requesting properly -- Greg Banks.
  450. #
  451. # Though we're generally not interested in it when
  452. # we're not using PCMCIA, so we make it dependent on
  453. # PCMCIA outright. -- PFM.
  454. config ISA
  455. bool
  456. default y if PCMCIA
  457. help
  458. Find out whether you have ISA slots on your motherboard. ISA is the
  459. name of a bus system, i.e. the way the CPU talks to the other stuff
  460. inside your box. Other bus systems are PCI, EISA, MicroChannel
  461. (MCA) or VESA. ISA is an older system, now being displaced by PCI;
  462. newer boards don't support it. If you have ISA, say Y, otherwise N.
  463. config EISA
  464. bool
  465. ---help---
  466. The Extended Industry Standard Architecture (EISA) bus was
  467. developed as an open alternative to the IBM MicroChannel bus.
  468. The EISA bus provided some of the features of the IBM MicroChannel
  469. bus while maintaining backward compatibility with cards made for
  470. the older ISA bus. The EISA bus saw limited use between 1988 and
  471. 1995 when it was made obsolete by the PCI bus.
  472. Say Y here if you are building a kernel for an EISA-based machine.
  473. Otherwise, say N.
  474. config MCA
  475. bool
  476. help
  477. MicroChannel Architecture is found in some IBM PS/2 machines and
  478. laptops. It is a bus system similar to PCI or ISA. See
  479. <file:Documentation/mca.txt> (and especially the web page given
  480. there) before attempting to build an MCA bus kernel.
  481. config SBUS
  482. bool
  483. config SUPERHYWAY
  484. tristate "SuperHyway Bus support"
  485. depends on CPU_SUBTYPE_SH4_202
  486. source "arch/sh/drivers/pci/Kconfig"
  487. source "drivers/pci/Kconfig"
  488. source "drivers/pcmcia/Kconfig"
  489. source "drivers/pci/hotplug/Kconfig"
  490. endmenu
  491. menu "Executable file formats"
  492. source "fs/Kconfig.binfmt"
  493. endmenu
  494. source "net/Kconfig"
  495. source "drivers/Kconfig"
  496. source "fs/Kconfig"
  497. source "arch/sh/oprofile/Kconfig"
  498. source "arch/sh/Kconfig.debug"
  499. source "security/Kconfig"
  500. source "crypto/Kconfig"
  501. source "lib/Kconfig"