Kconfig 46 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751
  1. config MIPS
  2. bool
  3. default y
  4. # Horrible source of confusion. Die, die, die ...
  5. select EMBEDDED
  6. # shouldn't it be per-subarchitecture?
  7. config ARCH_MAY_HAVE_PC_FDC
  8. bool
  9. default y
  10. mainmenu "Linux/MIPS Kernel Configuration"
  11. source "init/Kconfig"
  12. config CPU_MIPS32
  13. bool
  14. default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
  15. config CPU_MIPS64
  16. bool
  17. default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
  18. config CPU_MIPSR1
  19. bool
  20. default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
  21. config CPU_MIPSR2
  22. bool
  23. default y if CPU_MIPS32_R2 || CPU_MIPS64_R2
  24. config SYS_SUPPORTS_32BIT_KERNEL
  25. bool
  26. config SYS_SUPPORTS_64BIT_KERNEL
  27. bool
  28. config CPU_SUPPORTS_32BIT_KERNEL
  29. bool
  30. config CPU_SUPPORTS_64BIT_KERNEL
  31. bool
  32. menu "Kernel type"
  33. choice
  34. prompt "Kernel code model"
  35. help
  36. You should only select this option if you have a workload that
  37. actually benefits from 64-bit processing or if your machine has
  38. large memory. You will only be presented a single option in this
  39. menu if your system does not support both 32-bit and 64-bit kernels.
  40. config 32BIT
  41. bool "32-bit kernel"
  42. depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
  43. select TRAD_SIGNALS
  44. help
  45. Select this option if you want to build a 32-bit kernel.
  46. config 64BIT
  47. bool "64-bit kernel"
  48. depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
  49. help
  50. Select this option if you want to build a 64-bit kernel.
  51. endchoice
  52. endmenu
  53. menu "Machine selection"
  54. config MACH_JAZZ
  55. bool "Support for the Jazz family of machines"
  56. select ARC
  57. select ARC32
  58. select GENERIC_ISA_DMA
  59. select I8259
  60. select ISA
  61. select SYS_SUPPORTS_32BIT_KERNEL
  62. select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
  63. help
  64. This a family of machines based on the MIPS R4030 chipset which was
  65. used by several vendors to build RISC/os and Windows NT workstations.
  66. Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and
  67. Olivetti M700-10 workstations.
  68. config ACER_PICA_61
  69. bool "Support for Acer PICA 1 chipset (EXPERIMENTAL)"
  70. depends on MACH_JAZZ && EXPERIMENTAL
  71. select DMA_NONCOHERENT
  72. help
  73. This is a machine with a R4400 133/150 MHz CPU. To compile a Linux
  74. kernel that runs on these, say Y here. For details about Linux on
  75. the MIPS architecture, check out the Linux/MIPS FAQ on the WWW at
  76. <http://www.linux-mips.org/>.
  77. config MIPS_MAGNUM_4000
  78. bool "Support for MIPS Magnum 4000"
  79. depends on MACH_JAZZ
  80. select DMA_NONCOHERENT
  81. help
  82. This is a machine with a R4000 100 MHz CPU. To compile a Linux
  83. kernel that runs on these, say Y here. For details about Linux on
  84. the MIPS architecture, check out the Linux/MIPS FAQ on the WWW at
  85. <http://www.linux-mips.org/>.
  86. config OLIVETTI_M700
  87. bool "Support for Olivetti M700-10"
  88. depends on MACH_JAZZ
  89. select DMA_NONCOHERENT
  90. help
  91. This is a machine with a R4000 100 MHz CPU. To compile a Linux
  92. kernel that runs on these, say Y here. For details about Linux on
  93. the MIPS architecture, check out the Linux/MIPS FAQ on the WWW at
  94. <http://www.linux-mips.org/>.
  95. config MACH_VR41XX
  96. bool "Support for NEC VR4100 series based machines"
  97. select SYS_SUPPORTS_32BIT_KERNEL
  98. select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
  99. config NEC_CMBVR4133
  100. bool "Support for NEC CMB-VR4133"
  101. depends on MACH_VR41XX
  102. select CPU_VR41XX
  103. select DMA_NONCOHERENT
  104. select IRQ_CPU
  105. select HW_HAS_PCI
  106. config ROCKHOPPER
  107. bool "Support for Rockhopper baseboard"
  108. depends on NEC_CMBVR4133
  109. select I8259
  110. select HAVE_STD_PC_SERIAL_PORT
  111. config CASIO_E55
  112. bool "Support for CASIO CASSIOPEIA E-10/15/55/65"
  113. depends on MACH_VR41XX
  114. select CPU_LITTLE_ENDIAN
  115. select DMA_NONCOHERENT
  116. select IRQ_CPU
  117. select ISA
  118. config IBM_WORKPAD
  119. bool "Support for IBM WorkPad z50"
  120. depends on MACH_VR41XX
  121. select CPU_LITTLE_ENDIAN
  122. select DMA_NONCOHERENT
  123. select IRQ_CPU
  124. select ISA
  125. config TANBAC_TB022X
  126. bool "Support for TANBAC VR4131 multichip module and TANBAC VR4131DIMM"
  127. depends on MACH_VR41XX
  128. select CPU_LITTLE_ENDIAN
  129. select DMA_NONCOHERENT
  130. select IRQ_CPU
  131. select HW_HAS_PCI
  132. help
  133. The TANBAC VR4131 multichip module(TB0225) and
  134. the TANBAC VR4131DIMM(TB0229) are MIPS-based platforms
  135. manufactured by TANBAC.
  136. Please refer to <http://www.tanbac.co.jp/>
  137. about VR4131 multichip module and VR4131DIMM.
  138. config TANBAC_TB0226
  139. bool "Support for TANBAC Mbase(TB0226)"
  140. depends on TANBAC_TB022X
  141. select GPIO_VR41XX
  142. help
  143. The TANBAC Mbase(TB0226) is a MIPS-based platform manufactured by TANBAC.
  144. Please refer to <http://www.tanbac.co.jp/> about Mbase.
  145. config TANBAC_TB0287
  146. bool "Support for TANBAC Mini-ITX DIMM base(TB0287)"
  147. depends on TANBAC_TB022X
  148. help
  149. The TANBAC Mini-ITX DIMM base(TB0287) is a MIPS-based platform manufactured by TANBAC.
  150. Please refer to <http://www.tanbac.co.jp/> about Mini-ITX DIMM base.
  151. config VICTOR_MPC30X
  152. bool "Support for Victor MP-C303/304"
  153. depends on MACH_VR41XX
  154. select CPU_LITTLE_ENDIAN
  155. select DMA_NONCOHERENT
  156. select IRQ_CPU
  157. select HW_HAS_PCI
  158. config ZAO_CAPCELLA
  159. bool "Support for ZAO Networks Capcella"
  160. depends on MACH_VR41XX
  161. select CPU_LITTLE_ENDIAN
  162. select DMA_NONCOHERENT
  163. select IRQ_CPU
  164. select HW_HAS_PCI
  165. config PCI_VR41XX
  166. bool "Add PCI control unit support of NEC VR4100 series"
  167. depends on MACH_VR41XX && HW_HAS_PCI
  168. default y
  169. select PCI
  170. config VRC4173
  171. tristate "Add NEC VRC4173 companion chip support"
  172. depends on MACH_VR41XX && PCI_VR41XX
  173. ---help---
  174. The NEC VRC4173 is a companion chip for NEC VR4122/VR4131.
  175. config TOSHIBA_JMR3927
  176. bool "Support for Toshiba JMR-TX3927 board"
  177. select DMA_NONCOHERENT
  178. select HW_HAS_PCI
  179. select SWAP_IO_SPACE
  180. select SYS_SUPPORTS_32BIT_KERNEL
  181. config MIPS_COBALT
  182. bool "Support for Cobalt Server"
  183. depends on EXPERIMENTAL
  184. select DMA_NONCOHERENT
  185. select HW_HAS_PCI
  186. select I8259
  187. select IRQ_CPU
  188. select SYS_SUPPORTS_32BIT_KERNEL
  189. select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
  190. config MACH_DECSTATION
  191. bool "Support for DECstations"
  192. select BOOT_ELF32
  193. select DMA_NONCOHERENT
  194. select EARLY_PRINTK
  195. select IRQ_CPU
  196. select SYS_SUPPORTS_32BIT_KERNEL
  197. select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
  198. ---help---
  199. This enables support for DEC's MIPS based workstations. For details
  200. see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
  201. DECstation porting pages on <http://decstation.unix-ag.org/>.
  202. If you have one of the following DECstation Models you definitely
  203. want to choose R4xx0 for the CPU Type:
  204. DECstation 5000/50
  205. DECstation 5000/150
  206. DECstation 5000/260
  207. DECsystem 5900/260
  208. otherwise choose R3000.
  209. config MIPS_EV64120
  210. bool "Support for Galileo EV64120 Evaluation board (EXPERIMENTAL)"
  211. depends on EXPERIMENTAL
  212. select DMA_NONCOHERENT
  213. select IRQ_CPU
  214. select HW_HAS_PCI
  215. select MIPS_GT64120
  216. select SYS_SUPPORTS_32BIT_KERNEL
  217. select SYS_SUPPORTS_64BIT_KERNEL
  218. help
  219. This is an evaluation board based on the Galileo GT-64120
  220. single-chip system controller that contains a MIPS R5000 compatible
  221. core running at 75/100MHz. Their website is located at
  222. <http://www.marvell.com/>. Say Y here if you wish to build a
  223. kernel for this platform.
  224. config EVB_PCI1
  225. bool "Enable Second PCI (PCI1)"
  226. depends on MIPS_EV64120
  227. config MIPS_EV96100
  228. bool "Support for Galileo EV96100 Evaluation board (EXPERIMENTAL)"
  229. depends on EXPERIMENTAL
  230. select DMA_NONCOHERENT
  231. select HW_HAS_PCI
  232. select IRQ_CPU
  233. select MIPS_GT96100
  234. select RM7000_CPU_SCACHE
  235. select SWAP_IO_SPACE
  236. select SYS_SUPPORTS_32BIT_KERNEL
  237. select SYS_SUPPORTS_64BIT_KERNEL
  238. help
  239. This is an evaluation board based on the Galileo GT-96100 LAN/WAN
  240. communications controllers containing a MIPS R5000 compatible core
  241. running at 83MHz. Their website is <http://www.marvell.com/>. Say Y
  242. here if you wish to build a kernel for this platform.
  243. config MIPS_IVR
  244. bool "Support for Globespan IVR board"
  245. select DMA_NONCOHERENT
  246. select HW_HAS_PCI
  247. select SYS_SUPPORTS_32BIT_KERNEL
  248. select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
  249. help
  250. This is an evaluation board built by Globespan to showcase thir
  251. iVR (Internet Video Recorder) design. It utilizes a QED RM5231
  252. R5000 MIPS core. More information can be found out their website
  253. located at <http://www.globespan.net/>. Say Y here if you wish to
  254. build a kernel for this platform.
  255. config LASAT
  256. bool "Support for LASAT Networks platforms"
  257. select DMA_NONCOHERENT
  258. select HW_HAS_PCI
  259. select MIPS_GT64120
  260. select R5000_CPU_SCACHE
  261. select SYS_SUPPORTS_32BIT_KERNEL
  262. select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
  263. config PICVUE
  264. tristate "PICVUE LCD display driver"
  265. depends on LASAT
  266. config PICVUE_PROC
  267. tristate "PICVUE LCD display driver /proc interface"
  268. depends on PICVUE
  269. config DS1603
  270. bool "DS1603 RTC driver"
  271. depends on LASAT
  272. config LASAT_SYSCTL
  273. bool "LASAT sysctl interface"
  274. depends on LASAT
  275. config MIPS_ITE8172
  276. bool "Support for ITE 8172G board"
  277. select DMA_NONCOHERENT
  278. select HW_HAS_PCI
  279. select SYS_SUPPORTS_32BIT_KERNEL
  280. select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
  281. help
  282. Ths is an evaluation board made by ITE <http://www.ite.com.tw/>
  283. with ATX form factor that utilizes a MIPS R5000 to work with its
  284. ITE8172G companion internet appliance chip. The MIPS core can be
  285. either a NEC Vr5432 or QED RM5231. Say Y here if you wish to build
  286. a kernel for this platform.
  287. config IT8172_REVC
  288. bool "Support for older IT8172 (Rev C)"
  289. depends on MIPS_ITE8172
  290. help
  291. Say Y here to support the older, Revision C version of the Integrated
  292. Technology Express, Inc. ITE8172 SBC. Vendor page at
  293. <http://www.ite.com.tw/ia/brief_it8172bsp.htm>; picture of the
  294. board at <http://www.mvista.com/partners/semiconductor/ite.html>.
  295. config MIPS_ATLAS
  296. bool "Support for MIPS Atlas board"
  297. select BOOT_ELF32
  298. select DMA_NONCOHERENT
  299. select HW_HAS_PCI
  300. select MIPS_GT64120
  301. select RM7000_CPU_SCACHE
  302. select SWAP_IO_SPACE
  303. select SYS_SUPPORTS_32BIT_KERNEL
  304. select SYS_SUPPORTS_64BIT_KERNEL
  305. help
  306. This enables support for the MIPS Technologies Atlas evaluation
  307. board.
  308. config MIPS_MALTA
  309. bool "Support for MIPS Malta board"
  310. select BOOT_ELF32
  311. select HAVE_STD_PC_SERIAL_PORT
  312. select DMA_NONCOHERENT
  313. select IRQ_CPU
  314. select GENERIC_ISA_DMA
  315. select HW_HAS_PCI
  316. select I8259
  317. select MIPS_GT64120
  318. select SWAP_IO_SPACE
  319. select SYS_SUPPORTS_32BIT_KERNEL
  320. select SYS_SUPPORTS_64BIT_KERNEL
  321. help
  322. This enables support for the MIPS Technologies Malta evaluation
  323. board.
  324. config MIPS_SEAD
  325. bool "Support for MIPS SEAD board (EXPERIMENTAL)"
  326. depends on EXPERIMENTAL
  327. select IRQ_CPU
  328. select DMA_NONCOHERENT
  329. select SYS_SUPPORTS_32BIT_KERNEL
  330. select SYS_SUPPORTS_64BIT_KERNEL
  331. help
  332. This enables support for the MIPS Technologies SEAD evaluation
  333. board.
  334. config MOMENCO_OCELOT
  335. bool "Support for Momentum Ocelot board"
  336. select DMA_NONCOHERENT
  337. select HW_HAS_PCI
  338. select IRQ_CPU
  339. select IRQ_CPU_RM7K
  340. select MIPS_GT64120
  341. select RM7000_CPU_SCACHE
  342. select SWAP_IO_SPACE
  343. select SYS_SUPPORTS_32BIT_KERNEL
  344. select SYS_SUPPORTS_64BIT_KERNEL
  345. help
  346. The Ocelot is a MIPS-based Single Board Computer (SBC) made by
  347. Momentum Computer <http://www.momenco.com/>.
  348. config MOMENCO_OCELOT_G
  349. bool "Support for Momentum Ocelot-G board"
  350. select DMA_NONCOHERENT
  351. select HW_HAS_PCI
  352. select IRQ_CPU
  353. select IRQ_CPU_RM7K
  354. select PCI_MARVELL
  355. select RM7000_CPU_SCACHE
  356. select SWAP_IO_SPACE
  357. select SYS_SUPPORTS_32BIT_KERNEL
  358. select SYS_SUPPORTS_64BIT_KERNEL
  359. help
  360. The Ocelot is a MIPS-based Single Board Computer (SBC) made by
  361. Momentum Computer <http://www.momenco.com/>.
  362. config MOMENCO_OCELOT_C
  363. bool "Support for Momentum Ocelot-C board"
  364. select DMA_NONCOHERENT
  365. select HW_HAS_PCI
  366. select IRQ_CPU
  367. select IRQ_MV64340
  368. select PCI_MARVELL
  369. select RM7000_CPU_SCACHE
  370. select SWAP_IO_SPACE
  371. select SYS_SUPPORTS_32BIT_KERNEL
  372. select SYS_SUPPORTS_64BIT_KERNEL
  373. help
  374. The Ocelot is a MIPS-based Single Board Computer (SBC) made by
  375. Momentum Computer <http://www.momenco.com/>.
  376. config MOMENCO_OCELOT_3
  377. bool "Support for Momentum Ocelot-3 board"
  378. select BOOT_ELF32
  379. select DMA_NONCOHERENT
  380. select HW_HAS_PCI
  381. select IRQ_CPU
  382. select IRQ_CPU_RM7K
  383. select IRQ_MV64340
  384. select PCI_MARVELL
  385. select RM7000_CPU_SCACHE
  386. select SWAP_IO_SPACE
  387. select SYS_SUPPORTS_32BIT_KERNEL
  388. select SYS_SUPPORTS_64BIT_KERNEL
  389. help
  390. The Ocelot-3 is based off Discovery III System Controller and
  391. PMC-Sierra Rm79000 core.
  392. config MOMENCO_JAGUAR_ATX
  393. bool "Support for Momentum Jaguar board"
  394. select BOOT_ELF32
  395. select DMA_NONCOHERENT
  396. select HW_HAS_PCI
  397. select IRQ_CPU
  398. select IRQ_CPU_RM7K
  399. select IRQ_MV64340
  400. select LIMITED_DMA
  401. select PCI_MARVELL
  402. select RM7000_CPU_SCACHE
  403. select SWAP_IO_SPACE
  404. select SYS_SUPPORTS_32BIT_KERNEL
  405. select SYS_SUPPORTS_64BIT_KERNEL
  406. help
  407. The Jaguar ATX is a MIPS-based Single Board Computer (SBC) made by
  408. Momentum Computer <http://www.momenco.com/>.
  409. config JAGUAR_DMALOW
  410. bool "Low DMA Mode"
  411. depends on MOMENCO_JAGUAR_ATX
  412. help
  413. Select to Y if jump JP5 is set on your board, N otherwise. Normally
  414. the jumper is set, so if you feel unsafe, just say Y.
  415. config PMC_YOSEMITE
  416. bool "Support for PMC-Sierra Yosemite eval board"
  417. select DMA_COHERENT
  418. select HW_HAS_PCI
  419. select IRQ_CPU
  420. select IRQ_CPU_RM7K
  421. select IRQ_CPU_RM9K
  422. select SWAP_IO_SPACE
  423. select SYS_SUPPORTS_32BIT_KERNEL
  424. select SYS_SUPPORTS_64BIT_KERNEL
  425. help
  426. Yosemite is an evaluation board for the RM9000x2 processor
  427. manufactured by PMC-Sierra
  428. config HYPERTRANSPORT
  429. bool "Hypertransport Support for PMC-Sierra Yosemite"
  430. depends on PMC_YOSEMITE
  431. config PNX8550_V2PCI
  432. bool "Support for Philips PNX8550 based Viper2-PCI board"
  433. select PNX8550
  434. select SYS_SUPPORTS_LITTLE_ENDIAN
  435. config PNX8550_JBS
  436. bool "Support for Philips PNX8550 based JBS board"
  437. select PNX8550
  438. select SYS_SUPPORTS_LITTLE_ENDIAN
  439. config DDB5074
  440. bool "Support for NEC DDB Vrc-5074 (EXPERIMENTAL)"
  441. depends on EXPERIMENTAL
  442. select DMA_NONCOHERENT
  443. select HAVE_STD_PC_SERIAL_PORT
  444. select HW_HAS_PCI
  445. select IRQ_CPU
  446. select I8259
  447. select ISA
  448. select SYS_SUPPORTS_32BIT_KERNEL
  449. select SYS_SUPPORTS_64BIT_KERNEL
  450. help
  451. This enables support for the VR5000-based NEC DDB Vrc-5074
  452. evaluation board.
  453. config DDB5476
  454. bool "Support for NEC DDB Vrc-5476"
  455. select DMA_NONCOHERENT
  456. select HAVE_STD_PC_SERIAL_PORT
  457. select HW_HAS_PCI
  458. select IRQ_CPU
  459. select I8259
  460. select ISA
  461. select SYS_SUPPORTS_32BIT_KERNEL
  462. select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
  463. help
  464. This enables support for the R5432-based NEC DDB Vrc-5476
  465. evaluation board.
  466. Features : kernel debugging, serial terminal, NFS root fs, on-board
  467. ether port USB, AC97, PCI, PCI VGA card & framebuffer console,
  468. IDE controller, PS2 keyboard, PS2 mouse, etc.
  469. config DDB5477
  470. bool "Support for NEC DDB Vrc-5477"
  471. select DMA_NONCOHERENT
  472. select HW_HAS_PCI
  473. select I8259
  474. select IRQ_CPU
  475. select SYS_SUPPORTS_32BIT_KERNEL
  476. select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
  477. help
  478. This enables support for the R5432-based NEC DDB Vrc-5477,
  479. or Rockhopper/SolutionGear boards with R5432/R5500 CPUs.
  480. Features : kernel debugging, serial terminal, NFS root fs, on-board
  481. ether port USB, AC97, PCI, etc.
  482. config DDB5477_BUS_FREQUENCY
  483. int "bus frequency (in kHZ, 0 for auto-detect)"
  484. depends on DDB5477
  485. default 0
  486. config QEMU
  487. bool "Support for Qemu"
  488. select DMA_COHERENT
  489. select GENERIC_ISA_DMA
  490. select HAVE_STD_PC_SERIAL_PORT
  491. select I8259
  492. select ISA
  493. select SWAP_IO_SPACE
  494. select SYS_SUPPORTS_32BIT_KERNEL
  495. select SYS_SUPPORTS_BIG_ENDIAN
  496. select SYS_SUPPORTS_HIGHMEM
  497. help
  498. Qemu is a software emulator which among other architectures also
  499. can simulate a MIPS32 4Kc system. This patch adds support for the
  500. system architecture that currently is being simulated by Qemu. It
  501. will eventually be removed again when Qemu has the capability to
  502. simulate actual MIPS hardware platforms. More information on Qemu
  503. can be found at http://www.linux-mips.org/wiki/Qemu.
  504. config SGI_IP22
  505. bool "Support for SGI IP22 (Indy/Indigo2)"
  506. select ARC
  507. select ARC32
  508. select BOOT_ELF32
  509. select DMA_NONCOHERENT
  510. select IP22_CPU_SCACHE
  511. select IRQ_CPU
  512. select SWAP_IO_SPACE
  513. select SYS_SUPPORTS_32BIT_KERNEL
  514. select SYS_SUPPORTS_64BIT_KERNEL
  515. help
  516. This are the SGI Indy, Challenge S and Indigo2, as well as certain
  517. OEM variants like the Tandem CMN B006S. To compile a Linux kernel
  518. that runs on these, say Y here.
  519. config SGI_IP27
  520. bool "Support for SGI IP27 (Origin200/2000)"
  521. select ARC
  522. select ARC64
  523. select DMA_IP27
  524. select HW_HAS_PCI
  525. select PCI_DOMAINS
  526. select SYS_SUPPORTS_64BIT_KERNEL
  527. help
  528. This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
  529. workstations. To compile a Linux kernel that runs on these, say Y
  530. here.
  531. #config SGI_SN0_XXL
  532. # bool "IP27 XXL"
  533. # depends on SGI_IP27
  534. # This options adds support for userspace processes upto 16TB size.
  535. # Normally the limit is just .5TB.
  536. config SGI_SN0_N_MODE
  537. bool "IP27 N-Mode"
  538. depends on SGI_IP27
  539. help
  540. The nodes of Origin 200, Origin 2000 and Onyx 2 systems can be
  541. configured in either N-Modes which allows for more nodes or M-Mode
  542. which allows for more memory. Your system is most probably
  543. running in M-Mode, so you should say N here.
  544. config ARCH_DISCONTIGMEM_ENABLE
  545. bool
  546. default y if SGI_IP27
  547. help
  548. Say Y to upport efficient handling of discontiguous physical memory,
  549. for architectures which are either NUMA (Non-Uniform Memory Access)
  550. or have huge holes in the physical address space for other reasons.
  551. See <file:Documentation/vm/numa> for more.
  552. config NUMA
  553. bool "NUMA Support"
  554. depends on SGI_IP27
  555. help
  556. Say Y to compile the kernel to support NUMA (Non-Uniform Memory
  557. Access). This option is for configuring high-end multiprocessor
  558. server machines. If in doubt, say N.
  559. config MAPPED_KERNEL
  560. bool "Mapped kernel support"
  561. depends on SGI_IP27
  562. help
  563. Change the way a Linux kernel is loaded into memory on a MIPS64
  564. machine. This is required in order to support text replication and
  565. NUMA. If you need to understand it, read the source code.
  566. config REPLICATE_KTEXT
  567. bool "Kernel text replication support"
  568. depends on SGI_IP27
  569. help
  570. Say Y here to enable replicating the kernel text across multiple
  571. nodes in a NUMA cluster. This trades memory for speed.
  572. config REPLICATE_EXHANDLERS
  573. bool "Exception handler replication support"
  574. depends on SGI_IP27
  575. help
  576. Say Y here to enable replicating the kernel exception handlers
  577. across multiple nodes in a NUMA cluster. This trades memory for
  578. speed.
  579. config SGI_IP32
  580. bool "Support for SGI IP32 (O2) (EXPERIMENTAL)"
  581. depends on EXPERIMENTAL
  582. select ARC
  583. select ARC32
  584. select BOOT_ELF32
  585. select OWN_DMA
  586. select DMA_IP32
  587. select DMA_NONCOHERENT
  588. select HAS_TXX9_SERIAL
  589. select HW_HAS_PCI
  590. select R5000_CPU_SCACHE
  591. select RM7000_CPU_SCACHE
  592. select SYS_SUPPORTS_64BIT_KERNEL
  593. help
  594. If you want this kernel to run on SGI O2 workstation, say Y here.
  595. config SOC_AU1200
  596. bool
  597. select SOC_AU1X00
  598. config SOC_AU1X00
  599. bool "Support for AMD/Alchemy Au1X00 SOCs"
  600. select SYS_SUPPORTS_32BIT_KERNEL
  601. choice
  602. prompt "Au1X00 SOC Type"
  603. depends on SOC_AU1X00
  604. help
  605. Say Y here to enable support for one of three AMD/Alchemy
  606. SOCs. For additional documentation see www.amd.com.
  607. config SOC_AU1000
  608. bool "SOC_AU1000"
  609. config SOC_AU1100
  610. bool "SOC_AU1100"
  611. config SOC_AU1500
  612. bool "SOC_AU1500"
  613. config SOC_AU1550
  614. bool "SOC_AU1550"
  615. config TOSHIBA_RBTX4938
  616. bool "Support for Toshiba RBTX4938 board"
  617. select HAVE_STD_PC_SERIAL_PORT
  618. select DMA_NONCOHERENT
  619. select GENERIC_ISA_DMA
  620. select HAS_TXX9_SERIAL
  621. select HW_HAS_PCI
  622. select I8259
  623. select ISA
  624. select SWAP_IO_SPACE
  625. select SYS_SUPPORTS_32BIT_KERNEL
  626. select SYS_SUPPORTS_LITTLE_ENDIAN
  627. select SYS_SUPPORTS_BIG_ENDIAN
  628. select TOSHIBA_BOARDS
  629. help
  630. This Toshiba board is based on the TX4938 processor. Say Y here to
  631. support this machine type
  632. endchoice
  633. choice
  634. prompt "AMD/Alchemy Au1x00 board support"
  635. depends on SOC_AU1X00
  636. help
  637. These are evaluation boards built by AMD/Alchemy to
  638. showcase their Au1X00 Internet Edge Processors. The SOC design
  639. is based on the MIPS32 architecture running at 266/400/500MHz
  640. with many integrated peripherals. Further information can be
  641. found at their website, <http://www.amd.com/>. Say Y here if you
  642. wish to build a kernel for this platform.
  643. config MIPS_PB1000
  644. bool "PB1000 board"
  645. depends on SOC_AU1000
  646. select DMA_NONCOHERENT
  647. select HW_HAS_PCI
  648. select SWAP_IO_SPACE
  649. config MIPS_PB1100
  650. bool "PB1100 board"
  651. depends on SOC_AU1100
  652. select DMA_NONCOHERENT
  653. select HW_HAS_PCI
  654. select SWAP_IO_SPACE
  655. config MIPS_PB1500
  656. bool "PB1500 board"
  657. depends on SOC_AU1500
  658. select DMA_NONCOHERENT
  659. select HW_HAS_PCI
  660. config MIPS_PB1550
  661. bool "PB1550 board"
  662. depends on SOC_AU1550
  663. select DMA_COHERENT
  664. select HW_HAS_PCI
  665. select MIPS_DISABLE_OBSOLETE_IDE
  666. config MIPS_PB1200
  667. bool "AMD Alchemy PB1200 board"
  668. select SOC_AU1200
  669. select DMA_NONCOHERENT
  670. select MIPS_DISABLE_OBSOLETE_IDE
  671. select SYS_SUPPORTS_BIG_ENDIAN
  672. select SYS_SUPPORTS_HIGHMEM
  673. select SYS_SUPPORTS_HIGHMEM
  674. select SYS_SUPPORTS_HIGHMEM
  675. select SYS_SUPPORTS_HIGHMEM
  676. select SYS_SUPPORTS_LITTLE_ENDIAN
  677. config MIPS_DB1000
  678. bool "DB1000 board"
  679. depends on SOC_AU1000
  680. select DMA_NONCOHERENT
  681. select HW_HAS_PCI
  682. config MIPS_DB1100
  683. bool "DB1100 board"
  684. depends on SOC_AU1100
  685. select DMA_NONCOHERENT
  686. config MIPS_DB1500
  687. bool "DB1500 board"
  688. depends on SOC_AU1500
  689. select DMA_NONCOHERENT
  690. select HW_HAS_PCI
  691. select MIPS_DISABLE_OBSOLETE_IDE
  692. config MIPS_DB1550
  693. bool "DB1550 board"
  694. depends on SOC_AU1550
  695. select HW_HAS_PCI
  696. select DMA_NONCOHERENT
  697. select MIPS_DISABLE_OBSOLETE_IDE
  698. config MIPS_BOSPORUS
  699. bool "Bosporus board"
  700. depends on SOC_AU1500
  701. select DMA_NONCOHERENT
  702. config MIPS_DB1200
  703. bool "AMD Alchemy DB1200 board"
  704. select SOC_AU1200
  705. select DMA_NONCOHERENT
  706. select MIPS_DISABLE_OBSOLETE_IDE
  707. select SYS_SUPPORTS_LITTLE_ENDIAN
  708. config MIPS_MIRAGE
  709. bool "Mirage board"
  710. depends on SOC_AU1500
  711. select DMA_NONCOHERENT
  712. config MIPS_XXS1500
  713. bool "MyCable XXS1500 board"
  714. depends on SOC_AU1500
  715. select DMA_NONCOHERENT
  716. config MIPS_MTX1
  717. bool "4G Systems MTX-1 board"
  718. depends on SOC_AU1500
  719. select HW_HAS_PCI
  720. select DMA_NONCOHERENT
  721. endchoice
  722. config SNI_RM200_PCI
  723. bool "Support for SNI RM200 PCI"
  724. select ARC
  725. select ARC32
  726. select BOOT_ELF32
  727. select DMA_NONCOHERENT
  728. select GENERIC_ISA_DMA
  729. select HAVE_STD_PC_SERIAL_PORT
  730. select HW_HAS_PCI
  731. select I8259
  732. select ISA
  733. select SYS_SUPPORTS_32BIT_KERNEL
  734. select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
  735. select SYS_SUPPORTS_HIGHMEM
  736. help
  737. The SNI RM200 PCI was a MIPS-based platform manufactured by Siemens
  738. Nixdorf Informationssysteme (SNI), parent company of Pyramid
  739. Technology and now in turn merged with Fujitsu. Say Y here to
  740. support this machine type.
  741. config TOSHIBA_RBTX4927
  742. bool "Support for Toshiba TBTX49[23]7 board"
  743. select DMA_NONCOHERENT
  744. select HAS_TXX9_SERIAL
  745. select HW_HAS_PCI
  746. select I8259
  747. select ISA
  748. select SWAP_IO_SPACE
  749. select SYS_SUPPORTS_32BIT_KERNEL
  750. select SYS_SUPPORTS_64BIT_KERNEL
  751. help
  752. This Toshiba board is based on the TX4927 processor. Say Y here to
  753. support this machine type
  754. config TOSHIBA_FPCIB0
  755. bool "FPCIB0 Backplane Support"
  756. depends on TOSHIBA_RBTX4927
  757. source "arch/mips/sgi-ip27/Kconfig"
  758. source "arch/mips/sibyte/Kconfig"
  759. source "arch/mips/tx4938/Kconfig"
  760. source "arch/mips/philips/pnx8550/common/Kconfig"
  761. config RWSEM_GENERIC_SPINLOCK
  762. bool
  763. default y
  764. config RWSEM_XCHGADD_ALGORITHM
  765. bool
  766. select HAS_TXX9_SERIAL
  767. config GENERIC_CALIBRATE_DELAY
  768. bool
  769. default y
  770. #
  771. # Select some configuration options automatically based on user selections.
  772. #
  773. config ARC
  774. bool
  775. depends on SNI_RM200_PCI || SGI_IP32 || SGI_IP27 || SGI_IP22 || MIPS_MAGNUM_4000 || OLIVETTI_M700 || ACER_PICA_61
  776. default y
  777. config DMA_COHERENT
  778. bool
  779. config DMA_IP27
  780. bool
  781. config DMA_IP32
  782. bool
  783. select DMA_NEED_PCI_MAP_STATE
  784. config DMA_NONCOHERENT
  785. bool
  786. select DMA_NEED_PCI_MAP_STATE
  787. config DMA_NEED_PCI_MAP_STATE
  788. bool
  789. config EARLY_PRINTK
  790. bool
  791. depends on MACH_DECSTATION
  792. default y
  793. config GENERIC_ISA_DMA
  794. bool
  795. depends on SNI_RM200_PCI || MIPS_MAGNUM_4000 || OLIVETTI_M700 || ACER_PICA_61 || MIPS_MALTA
  796. default y
  797. config I8259
  798. bool
  799. depends on SNI_RM200_PCI || DDB5477 || DDB5476 || DDB5074 || MACH_JAZZ || MIPS_MALTA || MIPS_COBALT
  800. default y
  801. config LIMITED_DMA
  802. bool
  803. select HIGHMEM
  804. select SYS_SUPPORTS_HIGHMEM
  805. config MIPS_BONITO64
  806. bool
  807. depends on MIPS_ATLAS || MIPS_MALTA
  808. default y
  809. config MIPS_MSC
  810. bool
  811. depends on MIPS_ATLAS || MIPS_MALTA
  812. default y
  813. config MIPS_NILE4
  814. bool
  815. depends on LASAT
  816. default y
  817. config MIPS_DISABLE_OBSOLETE_IDE
  818. bool
  819. config CPU_LITTLE_ENDIAN
  820. bool "Generate little endian code"
  821. default y if ACER_PICA_61 || CASIO_E55 || DDB5074 || DDB5476 || DDB5477 || MACH_DECSTATION || IBM_WORKPAD || LASAT || MIPS_COBALT || MIPS_ITE8172 || MIPS_IVR || SOC_AU1X00 || OLIVETTI_M700 || SNI_RM200_PCI || VICTOR_MPC30X || ZAO_CAPCELLA
  822. default n if MIPS_EV64120 || MIPS_EV96100 || MOMENCO_OCELOT || MOMENCO_OCELOT_G || SGI_IP22 || SGI_IP27 || SGI_IP32 || TOSHIBA_JMR3927
  823. help
  824. Some MIPS machines can be configured for either little or big endian
  825. byte order. These modes require different kernels. Say Y if your
  826. machine is little endian, N if it's a big endian machine.
  827. config IRQ_CPU
  828. bool
  829. config IRQ_CPU_RM7K
  830. bool
  831. config IRQ_MV64340
  832. bool
  833. config DDB5XXX_COMMON
  834. bool
  835. depends on DDB5074 || DDB5476 || DDB5477
  836. default y
  837. config MIPS_BOARDS_GEN
  838. bool
  839. depends on MIPS_ATLAS || MIPS_MALTA || MIPS_SEAD
  840. default y
  841. config MIPS_GT64111
  842. bool
  843. depends on MIPS_COBALT
  844. default y
  845. config MIPS_GT64120
  846. bool
  847. depends on MIPS_EV64120 || MIPS_EV96100 || LASAT || MIPS_ATLAS || MIPS_MALTA || MOMENCO_OCELOT
  848. default y
  849. config MIPS_TX3927
  850. bool
  851. depends on TOSHIBA_JMR3927
  852. select HAS_TXX9_SERIAL
  853. default y
  854. config PCI_MARVELL
  855. bool
  856. config ITE_BOARD_GEN
  857. bool
  858. depends on MIPS_IVR || MIPS_ITE8172
  859. default y
  860. config PNX8550
  861. bool
  862. select SOC_PNX8550
  863. config SOC_PNX8550
  864. bool
  865. select SYS_SUPPORTS_32BIT_KERNEL
  866. select DMA_NONCOHERENT
  867. select HW_HAS_PCI
  868. config SWAP_IO_SPACE
  869. bool
  870. #
  871. # Unfortunately not all GT64120 systems run the chip at the same clock.
  872. # As the user for the clock rate and try to minimize the available options.
  873. #
  874. choice
  875. prompt "Galileo Chip Clock"
  876. #default SYSCLK_83 if MIPS_EV64120
  877. depends on MIPS_EV64120 || MOMENCO_OCELOT || MOMENCO_OCELOT_G
  878. default SYSCLK_83 if MIPS_EV64120
  879. default SYSCLK_100 if MOMENCO_OCELOT || MOMENCO_OCELOT_G
  880. config SYSCLK_75
  881. bool "75" if MIPS_EV64120
  882. config SYSCLK_83
  883. bool "83.3" if MIPS_EV64120
  884. config SYSCLK_100
  885. bool "100" if MIPS_EV64120 || MOMENCO_OCELOT || MOMENCO_OCELOT_G
  886. endchoice
  887. config AU1X00_USB_DEVICE
  888. bool
  889. depends on MIPS_PB1500 || MIPS_PB1100 || MIPS_PB1000
  890. default n
  891. config MIPS_GT96100
  892. bool
  893. depends on MIPS_EV96100
  894. default y
  895. help
  896. Say Y here to support the Galileo Technology GT96100 communications
  897. controller card. There is a web page at <http://www.galileot.com/>.
  898. config IT8172_CIR
  899. bool
  900. depends on MIPS_ITE8172 || MIPS_IVR
  901. default y
  902. config IT8712
  903. bool
  904. depends on MIPS_ITE8172
  905. default y
  906. config BOOT_ELF32
  907. bool
  908. depends on MACH_DECSTATION || MIPS_ATLAS || MIPS_MALTA || MOMENCO_JAGUAR_ATX || MOMENCO_OCELOT_3 || SIBYTE_SB1xxx_SOC || SGI_IP32 || SGI_IP22 || SNI_RM200_PCI
  909. default y
  910. config MIPS_L1_CACHE_SHIFT
  911. int
  912. default "4" if MACH_DECSTATION
  913. default "7" if SGI_IP27
  914. default "5"
  915. config ARC32
  916. bool
  917. depends on MACH_JAZZ || SNI_RM200_PCI || SGI_IP22 || SGI_IP32
  918. default y
  919. config HAVE_STD_PC_SERIAL_PORT
  920. bool
  921. config ARC_CONSOLE
  922. bool "ARC console support"
  923. depends on SGI_IP22 || SNI_RM200_PCI
  924. config ARC_MEMORY
  925. bool
  926. depends on MACH_JAZZ || SNI_RM200_PCI || SGI_IP32
  927. default y
  928. config ARC_PROMLIB
  929. bool
  930. depends on MACH_JAZZ || SNI_RM200_PCI || SGI_IP22 || SGI_IP32
  931. default y
  932. config ARC64
  933. bool
  934. depends on SGI_IP27
  935. default y
  936. config BOOT_ELF64
  937. bool
  938. depends on SGI_IP27
  939. default y
  940. #config MAPPED_PCI_IO y
  941. # bool
  942. # depends on SGI_IP27
  943. # default y
  944. config TOSHIBA_BOARDS
  945. bool
  946. depends on TOSHIBA_JMR3927 || TOSHIBA_RBTX4927
  947. default y
  948. endmenu
  949. menu "CPU selection"
  950. choice
  951. prompt "CPU type"
  952. default CPU_R4X00
  953. config CPU_MIPS32_R1
  954. bool "MIPS32 Release 1"
  955. select CPU_HAS_PREFETCH
  956. select CPU_SUPPORTS_32BIT_KERNEL
  957. help
  958. Choose this option to build a kernel for release 2 or later of the
  959. MIPS32 architecture. Most modern embedded systems with a 32-bit
  960. MIPS processor are based on a MIPS32 processor. If you know the
  961. specific type of processor in your system, choose those that one
  962. otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
  963. Release 2 of the MIPS32 architecture is available since several
  964. years so chances are you even have a MIPS32 Release 2 processor
  965. in which case you should choose CPU_MIPS32_R2 instead for better
  966. performance.
  967. config CPU_MIPS32_R2
  968. bool "MIPS32 Release 2"
  969. select CPU_HAS_PREFETCH
  970. select CPU_SUPPORTS_32BIT_KERNEL
  971. help
  972. Choose this option to build a kernel for release 1 or later of the
  973. MIPS32 architecture. Most modern embedded systems with a 32-bit
  974. MIPS processor are based on a MIPS32 processor. If you know the
  975. specific type of processor in your system, choose those that one
  976. otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
  977. config CPU_MIPS64_R1
  978. bool "MIPS64 Release 1"
  979. select CPU_HAS_PREFETCH
  980. select CPU_SUPPORTS_32BIT_KERNEL
  981. select CPU_SUPPORTS_64BIT_KERNEL
  982. help
  983. Choose this option to build a kernel for release 1 or later of the
  984. MIPS64 architecture. Many modern embedded systems with a 64-bit
  985. MIPS processor are based on a MIPS64 processor. If you know the
  986. specific type of processor in your system, choose those that one
  987. otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
  988. Release 2 of the MIPS64 architecture is available since several
  989. years so chances are you even have a MIPS64 Release 2 processor
  990. in which case you should choose CPU_MIPS64_R2 instead for better
  991. performance.
  992. config CPU_MIPS64_R2
  993. bool "MIPS64 Release 2"
  994. select CPU_HAS_PREFETCH
  995. select CPU_SUPPORTS_32BIT_KERNEL
  996. select CPU_SUPPORTS_64BIT_KERNEL
  997. help
  998. Choose this option to build a kernel for release 2 or later of the
  999. MIPS64 architecture. Many modern embedded systems with a 64-bit
  1000. MIPS processor are based on a MIPS64 processor. If you know the
  1001. specific type of processor in your system, choose those that one
  1002. otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
  1003. config CPU_R3000
  1004. bool "R3000"
  1005. select CPU_SUPPORTS_32BIT_KERNEL
  1006. select CPU_SUPPORTS_HIGHMEM
  1007. help
  1008. Please make sure to pick the right CPU type. Linux/MIPS is not
  1009. designed to be generic, i.e. Kernels compiled for R3000 CPUs will
  1010. *not* work on R4000 machines and vice versa. However, since most
  1011. of the supported machines have an R4000 (or similar) CPU, R4x00
  1012. might be a safe bet. If the resulting kernel does not work,
  1013. try to recompile with R3000.
  1014. config CPU_TX39XX
  1015. bool "R39XX"
  1016. select CPU_SUPPORTS_32BIT_KERNEL
  1017. config CPU_VR41XX
  1018. bool "R41xx"
  1019. select CPU_SUPPORTS_32BIT_KERNEL
  1020. select CPU_SUPPORTS_64BIT_KERNEL
  1021. help
  1022. The options selects support for the NEC VR41xx series of processors.
  1023. Only choose this option if you have one of these processors as a
  1024. kernel built with this option will not run on any other type of
  1025. processor or vice versa.
  1026. config CPU_R4300
  1027. bool "R4300"
  1028. select CPU_SUPPORTS_32BIT_KERNEL
  1029. select CPU_SUPPORTS_64BIT_KERNEL
  1030. help
  1031. MIPS Technologies R4300-series processors.
  1032. config CPU_R4X00
  1033. bool "R4x00"
  1034. select CPU_SUPPORTS_32BIT_KERNEL
  1035. select CPU_SUPPORTS_64BIT_KERNEL
  1036. help
  1037. MIPS Technologies R4000-series processors other than 4300, including
  1038. the R4000, R4400, R4600, and 4700.
  1039. config CPU_TX49XX
  1040. bool "R49XX"
  1041. select CPU_SUPPORTS_32BIT_KERNEL
  1042. select CPU_SUPPORTS_64BIT_KERNEL
  1043. config CPU_R5000
  1044. bool "R5000"
  1045. select CPU_SUPPORTS_32BIT_KERNEL
  1046. select CPU_SUPPORTS_64BIT_KERNEL
  1047. help
  1048. MIPS Technologies R5000-series processors other than the Nevada.
  1049. config CPU_R5432
  1050. bool "R5432"
  1051. config CPU_R6000
  1052. bool "R6000"
  1053. depends on EXPERIMENTAL
  1054. select CPU_SUPPORTS_32BIT_KERNEL
  1055. help
  1056. MIPS Technologies R6000 and R6000A series processors. Note these
  1057. processors are extremly rare and the support for them is incomplete.
  1058. config CPU_NEVADA
  1059. bool "RM52xx"
  1060. select CPU_SUPPORTS_32BIT_KERNEL
  1061. select CPU_SUPPORTS_64BIT_KERNEL
  1062. help
  1063. QED / PMC-Sierra RM52xx-series ("Nevada") processors.
  1064. config CPU_R8000
  1065. bool "R8000"
  1066. depends on EXPERIMENTAL
  1067. select CPU_SUPPORTS_64BIT_KERNEL
  1068. help
  1069. MIPS Technologies R8000 processors. Note these processors are
  1070. uncommon and the support for them is incomplete.
  1071. config CPU_R10000
  1072. bool "R10000"
  1073. select CPU_SUPPORTS_32BIT_KERNEL
  1074. select CPU_SUPPORTS_64BIT_KERNEL
  1075. select CPU_SUPPORTS_HIGHMEM
  1076. help
  1077. MIPS Technologies R10000-series processors.
  1078. config CPU_RM7000
  1079. bool "RM7000"
  1080. select CPU_SUPPORTS_32BIT_KERNEL
  1081. select CPU_SUPPORTS_64BIT_KERNEL
  1082. select CPU_SUPPORTS_HIGHMEM
  1083. config CPU_RM9000
  1084. bool "RM9000"
  1085. select CPU_SUPPORTS_32BIT_KERNEL
  1086. select CPU_SUPPORTS_64BIT_KERNEL
  1087. select CPU_SUPPORTS_HIGHMEM
  1088. config CPU_SB1
  1089. bool "SB1"
  1090. select CPU_SUPPORTS_32BIT_KERNEL
  1091. select CPU_SUPPORTS_64BIT_KERNEL
  1092. select CPU_SUPPORTS_HIGHMEM
  1093. endchoice
  1094. choice
  1095. prompt "Kernel page size"
  1096. default PAGE_SIZE_4KB
  1097. config PAGE_SIZE_4KB
  1098. bool "4kB"
  1099. help
  1100. This option select the standard 4kB Linux page size. On some
  1101. R3000-family processors this is the only available page size. Using
  1102. 4kB page size will minimize memory consumption and is therefore
  1103. recommended for low memory systems.
  1104. config PAGE_SIZE_8KB
  1105. bool "8kB"
  1106. depends on EXPERIMENTAL && CPU_R8000
  1107. help
  1108. Using 8kB page size will result in higher performance kernel at
  1109. the price of higher memory consumption. This option is available
  1110. only on the R8000 processor. Not that at the time of this writing
  1111. this option is still high experimental; there are also issues with
  1112. compatibility of user applications.
  1113. config PAGE_SIZE_16KB
  1114. bool "16kB"
  1115. depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
  1116. help
  1117. Using 16kB page size will result in higher performance kernel at
  1118. the price of higher memory consumption. This option is available on
  1119. all non-R3000 family processor. Not that at the time of this
  1120. writing this option is still high experimental; there are also
  1121. issues with compatibility of user applications.
  1122. config PAGE_SIZE_64KB
  1123. bool "64kB"
  1124. depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
  1125. help
  1126. Using 64kB page size will result in higher performance kernel at
  1127. the price of higher memory consumption. This option is available on
  1128. all non-R3000 family processor. Not that at the time of this
  1129. writing this option is still high experimental; there are also
  1130. issues with compatibility of user applications.
  1131. endchoice
  1132. config BOARD_SCACHE
  1133. bool
  1134. config IP22_CPU_SCACHE
  1135. bool
  1136. select BOARD_SCACHE
  1137. config R5000_CPU_SCACHE
  1138. bool
  1139. select BOARD_SCACHE
  1140. config RM7000_CPU_SCACHE
  1141. bool
  1142. select BOARD_SCACHE
  1143. config SIBYTE_DMA_PAGEOPS
  1144. bool "Use DMA to clear/copy pages"
  1145. depends on CPU_SB1
  1146. help
  1147. Instead of using the CPU to zero and copy pages, use a Data Mover
  1148. channel. These DMA channels are otherwise unused by the standard
  1149. SiByte Linux port. Seems to give a small performance benefit.
  1150. config CPU_HAS_PREFETCH
  1151. bool
  1152. config MIPS_MT
  1153. bool "Enable MIPS MT"
  1154. choice
  1155. prompt "MIPS MT options"
  1156. depends on MIPS_MT
  1157. config MIPS_MT_SMP
  1158. bool "Use 1 TC on each available VPE for SMP"
  1159. select SMP
  1160. config MIPS_VPE_LOADER
  1161. bool "VPE loader support."
  1162. depends on MIPS_MT
  1163. help
  1164. Includes a loader for loading an elf relocatable object
  1165. onto another VPE and running it.
  1166. endchoice
  1167. config MIPS_VPE_LOADER_TOM
  1168. bool "Load VPE program into memory hidden from linux"
  1169. depends on MIPS_VPE_LOADER
  1170. default y
  1171. help
  1172. The loader can use memory that is present but has been hidden from
  1173. Linux using the kernel command line option "mem=xxMB". It's up to
  1174. you to ensure the amount you put in the option and the space your
  1175. program requires is less or equal to the amount physically present.
  1176. # this should possibly be in drivers/char, but it is rather cpu related. Hmmm
  1177. config MIPS_VPE_APSP_API
  1178. bool "Enable support for AP/SP API (RTLX)"
  1179. depends on MIPS_VPE_LOADER
  1180. config SB1_PASS_1_WORKAROUNDS
  1181. bool
  1182. depends on CPU_SB1_PASS_1
  1183. default y
  1184. config SB1_PASS_2_WORKAROUNDS
  1185. bool
  1186. depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
  1187. default y
  1188. config SB1_PASS_2_1_WORKAROUNDS
  1189. bool
  1190. depends on CPU_SB1 && CPU_SB1_PASS_2
  1191. default y
  1192. config 64BIT_PHYS_ADDR
  1193. bool "Support for 64-bit physical address space"
  1194. depends on (CPU_R4X00 || CPU_R5000 || CPU_RM7000 || CPU_RM9000 || CPU_R10000 || CPU_SB1 || CPU_MIPS32_R1 || CPU_MIPS64_R1) && 32BIT
  1195. config CPU_ADVANCED
  1196. bool "Override CPU Options"
  1197. depends on 32BIT
  1198. help
  1199. Saying yes here allows you to select support for various features
  1200. your CPU may or may not have. Most people should say N here.
  1201. config CPU_HAS_LLSC
  1202. bool "ll/sc Instructions available" if CPU_ADVANCED
  1203. default y if !CPU_ADVANCED && !CPU_R3000 && !CPU_VR41XX && !CPU_TX39XX
  1204. help
  1205. MIPS R4000 series and later provide the Load Linked (ll)
  1206. and Store Conditional (sc) instructions. More information is
  1207. available at <http://www.go-ecs.com/mips/miptek1.htm>.
  1208. Say Y here if your CPU has the ll and sc instructions. Say Y here
  1209. for better performance, N if you don't know. You must say Y here
  1210. for multiprocessor machines.
  1211. config CPU_HAS_LLDSCD
  1212. bool "lld/scd Instructions available" if CPU_ADVANCED
  1213. default y if !CPU_ADVANCED && !CPU_R3000 && !CPU_VR41XX && !CPU_TX39XX && !CPU_MIPS32_R1
  1214. help
  1215. Say Y here if your CPU has the lld and scd instructions, the 64-bit
  1216. equivalents of ll and sc. Say Y here for better performance, N if
  1217. you don't know. You must say Y here for multiprocessor machines.
  1218. config CPU_HAS_WB
  1219. bool "Writeback Buffer available" if CPU_ADVANCED
  1220. default y if !CPU_ADVANCED && CPU_R3000 && MACH_DECSTATION
  1221. help
  1222. Say N here for slightly better performance. You must say Y here for
  1223. machines which require flushing of write buffers in software. Saying
  1224. Y is the safe option; N may result in kernel malfunction and crashes.
  1225. menu "MIPSR2 Interrupt handling"
  1226. depends on CPU_MIPSR2 && CPU_ADVANCED
  1227. config CPU_MIPSR2_IRQ_VI
  1228. bool "Vectored interrupt mode"
  1229. help
  1230. Vectored interrupt mode allowing faster dispatching of interrupts.
  1231. The board support code needs to be written to take advantage of this
  1232. mode. Compatibility code is included to allow the kernel to run on
  1233. a CPU that does not support vectored interrupts. It's safe to
  1234. say Y here.
  1235. config CPU_MIPSR2_IRQ_EI
  1236. bool "External interrupt controller mode"
  1237. help
  1238. Extended interrupt mode takes advantage of an external interrupt
  1239. controller to allow fast dispatching from many possible interrupt
  1240. sources. Say N unless you know that external interrupt support is
  1241. required.
  1242. config CPU_MIPSR2_SRS
  1243. bool "Make shadow set registers available for interrupt handlers"
  1244. depends on CPU_MIPSR2_IRQ_VI || CPU_MIPSR2_IRQ_EI
  1245. help
  1246. Allow the kernel to use shadow register sets for fast interrupts.
  1247. Interrupt handlers must be specially written to use shadow sets.
  1248. Say N unless you know that shadow register set upport is needed.
  1249. endmenu
  1250. config CPU_HAS_SYNC
  1251. bool
  1252. depends on !CPU_R3000
  1253. default y
  1254. #
  1255. # Use the generic interrupt handling code in kernel/irq/:
  1256. #
  1257. config GENERIC_HARDIRQS
  1258. bool
  1259. default y
  1260. config GENERIC_IRQ_PROBE
  1261. bool
  1262. default y
  1263. #
  1264. # - Highmem only makes sense for the 32-bit kernel.
  1265. # - The current highmem code will only work properly on physically indexed
  1266. # caches such as R3000, SB1, R7000 or those that look like they're virtually
  1267. # indexed such as R4000/R4400 SC and MC versions or R10000. So for the
  1268. # moment we protect the user and offer the highmem option only on machines
  1269. # where it's known to be safe. This will not offer highmem on a few systems
  1270. # such as MIPS32 and MIPS64 CPUs which may have virtual and physically
  1271. # indexed CPUs but we're playing safe.
  1272. # - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
  1273. # know they might have memory configurations that could make use of highmem
  1274. # support.
  1275. #
  1276. config HIGHMEM
  1277. bool "High Memory Support"
  1278. depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
  1279. config CPU_SUPPORTS_HIGHMEM
  1280. bool
  1281. config SYS_SUPPORTS_HIGHMEM
  1282. bool
  1283. config ARCH_FLATMEM_ENABLE
  1284. def_bool y
  1285. depends on !NUMA
  1286. source "mm/Kconfig"
  1287. config SMP
  1288. bool "Multi-Processing support"
  1289. depends on CPU_RM9000 || (SIBYTE_SB1250 && !SIBYTE_STANDALONE) || SGI_IP27 || MIPS_MT_SMP
  1290. ---help---
  1291. This enables support for systems with more than one CPU. If you have
  1292. a system with only one CPU, like most personal computers, say N. If
  1293. you have a system with more than one CPU, say Y.
  1294. If you say N here, the kernel will run on single and multiprocessor
  1295. machines, but will use only one CPU of a multiprocessor machine. If
  1296. you say Y here, the kernel will run on many, but not all,
  1297. singleprocessor machines. On a singleprocessor machine, the kernel
  1298. will run faster if you say N here.
  1299. People using multiprocessor machines who say Y here should also say
  1300. Y to "Enhanced Real Time Clock Support", below.
  1301. See also the <file:Documentation/smp.txt> and the SMP-HOWTO
  1302. available at <http://www.tldp.org/docs.html#howto>.
  1303. If you don't know what to do here, say N.
  1304. config NR_CPUS
  1305. int "Maximum number of CPUs (2-64)"
  1306. range 2 64
  1307. depends on SMP
  1308. default "64" if SGI_IP27
  1309. default "2"
  1310. help
  1311. This allows you to specify the maximum number of CPUs which this
  1312. kernel will support. The maximum supported value is 32 for 32-bit
  1313. kernel and 64 for 64-bit kernels; the minimum value which makes
  1314. sense is 2.
  1315. This is purely to save memory - each supported CPU adds
  1316. approximately eight kilobytes to the kernel image.
  1317. source "kernel/Kconfig.preempt"
  1318. config RTC_DS1742
  1319. bool "DS1742 BRAM/RTC support"
  1320. depends on TOSHIBA_JMR3927 || TOSHIBA_RBTX4927
  1321. config MIPS_INSANE_LARGE
  1322. bool "Support for large 64-bit configurations"
  1323. depends on CPU_R10000 && 64BIT
  1324. help
  1325. MIPS R10000 does support a 44 bit / 16TB address space as opposed to
  1326. previous 64-bit processors which only supported 40 bit / 1TB. If you
  1327. need processes of more than 1TB virtual address space, say Y here.
  1328. This will result in additional memory usage, so it is not
  1329. recommended for normal users.
  1330. config RWSEM_GENERIC_SPINLOCK
  1331. bool
  1332. default y
  1333. endmenu
  1334. menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
  1335. config HW_HAS_PCI
  1336. bool
  1337. config PCI
  1338. bool "Support for PCI controller"
  1339. depends on HW_HAS_PCI
  1340. help
  1341. Find out whether you have a PCI motherboard. PCI is the name of a
  1342. bus system, i.e. the way the CPU talks to the other stuff inside
  1343. your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
  1344. say Y, otherwise N.
  1345. The PCI-HOWTO, available from
  1346. <http://www.tldp.org/docs.html#howto>, contains valuable
  1347. information about which PCI hardware does work under Linux and which
  1348. doesn't.
  1349. config PCI_DOMAINS
  1350. bool
  1351. depends on PCI
  1352. source "drivers/pci/Kconfig"
  1353. #
  1354. # ISA support is now enabled via select. Too many systems still have the one
  1355. # or other ISA chip on the board that users don't know about so don't expect
  1356. # users to choose the right thing ...
  1357. #
  1358. config ISA
  1359. bool
  1360. config EISA
  1361. bool "EISA support"
  1362. depends on SGI_IP22 || SNI_RM200_PCI
  1363. select ISA
  1364. ---help---
  1365. The Extended Industry Standard Architecture (EISA) bus was
  1366. developed as an open alternative to the IBM MicroChannel bus.
  1367. The EISA bus provided some of the features of the IBM MicroChannel
  1368. bus while maintaining backward compatibility with cards made for
  1369. the older ISA bus. The EISA bus saw limited use between 1988 and
  1370. 1995 when it was made obsolete by the PCI bus.
  1371. Say Y here if you are building a kernel for an EISA-based machine.
  1372. Otherwise, say N.
  1373. source "drivers/eisa/Kconfig"
  1374. config TC
  1375. bool "TURBOchannel support"
  1376. depends on MACH_DECSTATION
  1377. help
  1378. TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
  1379. processors. Documentation on writing device drivers for TurboChannel
  1380. is available at:
  1381. <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
  1382. #config ACCESSBUS
  1383. # bool "Access.Bus support"
  1384. # depends on TC
  1385. config MMU
  1386. bool
  1387. default y
  1388. config MCA
  1389. bool
  1390. config SBUS
  1391. bool
  1392. source "drivers/pcmcia/Kconfig"
  1393. source "drivers/pci/hotplug/Kconfig"
  1394. endmenu
  1395. menu "Executable file formats"
  1396. source "fs/Kconfig.binfmt"
  1397. config TRAD_SIGNALS
  1398. bool
  1399. default y if 32BIT
  1400. config BUILD_ELF64
  1401. bool "Use 64-bit ELF format for building"
  1402. depends on 64BIT
  1403. help
  1404. A 64-bit kernel is usually built using the 64-bit ELF binary object
  1405. format as it's one that allows arbitrary 64-bit constructs. For
  1406. kernels that are loaded within the KSEG compatibility segments the
  1407. 32-bit ELF format can optionally be used resulting in a somewhat
  1408. smaller binary, but this option is not explicitly supported by the
  1409. toolchain and since binutils 2.14 it does not even work at all.
  1410. Say Y to use the 64-bit format or N to use the 32-bit one.
  1411. If unsure say Y.
  1412. config BINFMT_IRIX
  1413. bool "Include IRIX binary compatibility"
  1414. depends on !CPU_LITTLE_ENDIAN && 32BIT && BROKEN
  1415. config MIPS32_COMPAT
  1416. bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
  1417. depends on 64BIT
  1418. help
  1419. Select this option if you want Linux/MIPS 32-bit binary
  1420. compatibility. Since all software available for Linux/MIPS is
  1421. currently 32-bit you should say Y here.
  1422. config COMPAT
  1423. bool
  1424. depends on MIPS32_COMPAT
  1425. default y
  1426. config MIPS32_O32
  1427. bool "Kernel support for o32 binaries"
  1428. depends on MIPS32_COMPAT
  1429. help
  1430. Select this option if you want to run o32 binaries. These are pure
  1431. 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
  1432. existing binaries are in this format.
  1433. If unsure, say Y.
  1434. config MIPS32_N32
  1435. bool "Kernel support for n32 binaries"
  1436. depends on MIPS32_COMPAT
  1437. help
  1438. Select this option if you want to run n32 binaries. These are
  1439. 64-bit binaries using 32-bit quantities for addressing and certain
  1440. data that would normally be 64-bit. They are used in special
  1441. cases.
  1442. If unsure, say N.
  1443. config BINFMT_ELF32
  1444. bool
  1445. default y if MIPS32_O32 || MIPS32_N32
  1446. config SECCOMP
  1447. bool "Enable seccomp to safely compute untrusted bytecode"
  1448. depends on PROC_FS && BROKEN
  1449. default y
  1450. help
  1451. This kernel feature is useful for number crunching applications
  1452. that may need to compute untrusted bytecode during their
  1453. execution. By using pipes or other transports made available to
  1454. the process as file descriptors supporting the read/write
  1455. syscalls, it's possible to isolate those applications in
  1456. their own address space using seccomp. Once seccomp is
  1457. enabled via /proc/<pid>/seccomp, it cannot be disabled
  1458. and the task is only allowed to execute a few safe syscalls
  1459. defined by each seccomp mode.
  1460. If unsure, say Y. Only embedded should say N here.
  1461. config PM
  1462. bool "Power Management support (EXPERIMENTAL)"
  1463. depends on EXPERIMENTAL && MACH_AU1X00
  1464. endmenu
  1465. source "net/Kconfig"
  1466. source "drivers/Kconfig"
  1467. source "fs/Kconfig"
  1468. source "arch/mips/Kconfig.debug"
  1469. source "security/Kconfig"
  1470. source "crypto/Kconfig"
  1471. source "lib/Kconfig"
  1472. config ISA_DMA_API
  1473. bool
  1474. default y