Kconfig 50 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193
  1. config MIPS
  2. bool
  3. default y
  4. select HAVE_IDE
  5. select HAVE_OPROFILE
  6. select HAVE_ARCH_KGDB
  7. # Horrible source of confusion. Die, die, die ...
  8. select EMBEDDED
  9. select RTC_LIB
  10. mainmenu "Linux/MIPS Kernel Configuration"
  11. menu "Machine selection"
  12. config ZONE_DMA
  13. bool
  14. choice
  15. prompt "System type"
  16. default SGI_IP22
  17. config MACH_ALCHEMY
  18. bool "Alchemy processor based machines"
  19. config AR7
  20. bool "Texas Instruments AR7"
  21. select BOOT_ELF32
  22. select DMA_NONCOHERENT
  23. select CEVT_R4K
  24. select CSRC_R4K
  25. select IRQ_CPU
  26. select NO_EXCEPT_FILL
  27. select SWAP_IO_SPACE
  28. select SYS_HAS_CPU_MIPS32_R1
  29. select SYS_HAS_EARLY_PRINTK
  30. select SYS_SUPPORTS_32BIT_KERNEL
  31. select SYS_SUPPORTS_LITTLE_ENDIAN
  32. select GENERIC_GPIO
  33. select GCD
  34. select VLYNQ
  35. help
  36. Support for the Texas Instruments AR7 System-on-a-Chip
  37. family: TNETD7100, 7200 and 7300.
  38. config BASLER_EXCITE
  39. bool "Basler eXcite smart camera"
  40. select CEVT_R4K
  41. select CSRC_R4K
  42. select DMA_COHERENT
  43. select HW_HAS_PCI
  44. select IRQ_CPU
  45. select IRQ_CPU_RM7K
  46. select IRQ_CPU_RM9K
  47. select MIPS_RM9122
  48. select SYS_HAS_CPU_RM9000
  49. select SYS_SUPPORTS_32BIT_KERNEL
  50. select SYS_SUPPORTS_BIG_ENDIAN
  51. help
  52. The eXcite is a smart camera platform manufactured by
  53. Basler Vision Technologies AG.
  54. config BCM47XX
  55. bool "BCM47XX based boards"
  56. select CEVT_R4K
  57. select CSRC_R4K
  58. select DMA_NONCOHERENT
  59. select HW_HAS_PCI
  60. select IRQ_CPU
  61. select SYS_HAS_CPU_MIPS32_R1
  62. select SYS_SUPPORTS_32BIT_KERNEL
  63. select SYS_SUPPORTS_LITTLE_ENDIAN
  64. select SSB
  65. select SSB_DRIVER_MIPS
  66. select SSB_DRIVER_EXTIF
  67. select SSB_EMBEDDED
  68. select SSB_PCICORE_HOSTMODE if PCI
  69. select GENERIC_GPIO
  70. select SYS_HAS_EARLY_PRINTK
  71. select CFE
  72. help
  73. Support for BCM47XX based boards
  74. config MIPS_COBALT
  75. bool "Cobalt Server"
  76. select CEVT_R4K
  77. select CSRC_R4K
  78. select CEVT_GT641XX
  79. select DMA_NONCOHERENT
  80. select HW_HAS_PCI
  81. select I8253
  82. select I8259
  83. select IRQ_CPU
  84. select IRQ_GT641XX
  85. select PCI_GT64XXX_PCI0
  86. select PCI
  87. select SYS_HAS_CPU_NEVADA
  88. select SYS_HAS_EARLY_PRINTK
  89. select SYS_SUPPORTS_32BIT_KERNEL
  90. select SYS_SUPPORTS_64BIT_KERNEL
  91. select SYS_SUPPORTS_LITTLE_ENDIAN
  92. config MACH_DECSTATION
  93. bool "DECstations"
  94. select BOOT_ELF32
  95. select CEVT_DS1287
  96. select CEVT_R4K
  97. select CSRC_IOASIC
  98. select CSRC_R4K
  99. select CPU_DADDI_WORKAROUNDS if 64BIT
  100. select CPU_R4000_WORKAROUNDS if 64BIT
  101. select CPU_R4400_WORKAROUNDS if 64BIT
  102. select DMA_NONCOHERENT
  103. select NO_IOPORT
  104. select IRQ_CPU
  105. select SYS_HAS_CPU_R3000
  106. select SYS_HAS_CPU_R4X00
  107. select SYS_SUPPORTS_32BIT_KERNEL
  108. select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
  109. select SYS_SUPPORTS_LITTLE_ENDIAN
  110. select SYS_SUPPORTS_128HZ
  111. select SYS_SUPPORTS_256HZ
  112. select SYS_SUPPORTS_1024HZ
  113. help
  114. This enables support for DEC's MIPS based workstations. For details
  115. see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
  116. DECstation porting pages on <http://decstation.unix-ag.org/>.
  117. If you have one of the following DECstation Models you definitely
  118. want to choose R4xx0 for the CPU Type:
  119. DECstation 5000/50
  120. DECstation 5000/150
  121. DECstation 5000/260
  122. DECsystem 5900/260
  123. otherwise choose R3000.
  124. config MACH_JAZZ
  125. bool "Jazz family of machines"
  126. select ARC
  127. select ARC32
  128. select ARCH_MAY_HAVE_PC_FDC
  129. select CEVT_R4K
  130. select CSRC_R4K
  131. select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
  132. select GENERIC_ISA_DMA
  133. select IRQ_CPU
  134. select I8253
  135. select I8259
  136. select ISA
  137. select SYS_HAS_CPU_R4X00
  138. select SYS_SUPPORTS_32BIT_KERNEL
  139. select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
  140. select SYS_SUPPORTS_100HZ
  141. help
  142. This a family of machines based on the MIPS R4030 chipset which was
  143. used by several vendors to build RISC/os and Windows NT workstations.
  144. Members include the Acer PICA, MIPS Magnum 4000, MIPS Millennium and
  145. Olivetti M700-10 workstations.
  146. config LASAT
  147. bool "LASAT Networks platforms"
  148. select CEVT_R4K
  149. select CSRC_R4K
  150. select DMA_NONCOHERENT
  151. select SYS_HAS_EARLY_PRINTK
  152. select HW_HAS_PCI
  153. select IRQ_CPU
  154. select PCI_GT64XXX_PCI0
  155. select MIPS_NILE4
  156. select R5000_CPU_SCACHE
  157. select SYS_HAS_CPU_R5000
  158. select SYS_SUPPORTS_32BIT_KERNEL
  159. select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
  160. select SYS_SUPPORTS_LITTLE_ENDIAN
  161. config LEMOTE_FULONG
  162. bool "Lemote Fulong mini-PC"
  163. select ARCH_SPARSEMEM_ENABLE
  164. select CEVT_R4K
  165. select CSRC_R4K
  166. select SYS_HAS_CPU_LOONGSON2
  167. select DMA_NONCOHERENT
  168. select BOOT_ELF32
  169. select BOARD_SCACHE
  170. select HAVE_STD_PC_SERIAL_PORT
  171. select HW_HAS_PCI
  172. select I8259
  173. select ISA
  174. select IRQ_CPU
  175. select SYS_SUPPORTS_32BIT_KERNEL
  176. select SYS_SUPPORTS_64BIT_KERNEL
  177. select SYS_SUPPORTS_LITTLE_ENDIAN
  178. select SYS_SUPPORTS_HIGHMEM
  179. select SYS_HAS_EARLY_PRINTK
  180. select GENERIC_ISA_DMA_SUPPORT_BROKEN
  181. select CPU_HAS_WB
  182. help
  183. Lemote Fulong mini-PC board based on the Chinese Loongson-2E CPU and
  184. an FPGA northbridge
  185. config MIPS_MALTA
  186. bool "MIPS Malta board"
  187. select ARCH_MAY_HAVE_PC_FDC
  188. select BOOT_ELF32
  189. select BOOT_RAW
  190. select CEVT_R4K
  191. select CSRC_R4K
  192. select DMA_NONCOHERENT
  193. select GENERIC_ISA_DMA
  194. select IRQ_CPU
  195. select IRQ_GIC
  196. select HW_HAS_PCI
  197. select I8253
  198. select I8259
  199. select MIPS_BOARDS_GEN
  200. select MIPS_BONITO64
  201. select MIPS_CPU_SCACHE
  202. select PCI_GT64XXX_PCI0
  203. select MIPS_MSC
  204. select SWAP_IO_SPACE
  205. select SYS_HAS_CPU_MIPS32_R1
  206. select SYS_HAS_CPU_MIPS32_R2
  207. select SYS_HAS_CPU_MIPS64_R1
  208. select SYS_HAS_CPU_NEVADA
  209. select SYS_HAS_CPU_RM7000
  210. select SYS_HAS_EARLY_PRINTK
  211. select SYS_SUPPORTS_32BIT_KERNEL
  212. select SYS_SUPPORTS_64BIT_KERNEL
  213. select SYS_SUPPORTS_BIG_ENDIAN
  214. select SYS_SUPPORTS_LITTLE_ENDIAN
  215. select SYS_SUPPORTS_MIPS_CMP
  216. select SYS_SUPPORTS_MULTITHREADING
  217. select SYS_SUPPORTS_SMARTMIPS
  218. help
  219. This enables support for the MIPS Technologies Malta evaluation
  220. board.
  221. config MIPS_SIM
  222. bool 'MIPS simulator (MIPSsim)'
  223. select CEVT_R4K
  224. select CSRC_R4K
  225. select DMA_NONCOHERENT
  226. select SYS_HAS_EARLY_PRINTK
  227. select IRQ_CPU
  228. select BOOT_RAW
  229. select SYS_HAS_CPU_MIPS32_R1
  230. select SYS_HAS_CPU_MIPS32_R2
  231. select SYS_HAS_EARLY_PRINTK
  232. select SYS_SUPPORTS_32BIT_KERNEL
  233. select SYS_SUPPORTS_BIG_ENDIAN
  234. select SYS_SUPPORTS_MULTITHREADING
  235. select SYS_SUPPORTS_LITTLE_ENDIAN
  236. help
  237. This option enables support for MIPS Technologies MIPSsim software
  238. emulator.
  239. config NEC_MARKEINS
  240. bool "NEC EMMA2RH Mark-eins board"
  241. select SOC_EMMA2RH
  242. select HW_HAS_PCI
  243. help
  244. This enables support for the NEC Electronics Mark-eins boards.
  245. config MACH_VR41XX
  246. bool "NEC VR4100 series based machines"
  247. select CEVT_R4K
  248. select CSRC_R4K
  249. select SYS_HAS_CPU_VR41XX
  250. select ARCH_REQUIRE_GPIOLIB
  251. config NXP_STB220
  252. bool "NXP STB220 board"
  253. select SOC_PNX833X
  254. help
  255. Support for NXP Semiconductors STB220 Development Board.
  256. config NXP_STB225
  257. bool "NXP 225 board"
  258. select SOC_PNX833X
  259. select SOC_PNX8335
  260. help
  261. Support for NXP Semiconductors STB225 Development Board.
  262. config PNX8550_JBS
  263. bool "NXP PNX8550 based JBS board"
  264. select PNX8550
  265. select SYS_SUPPORTS_LITTLE_ENDIAN
  266. config PNX8550_STB810
  267. bool "NXP PNX8550 based STB810 board"
  268. select PNX8550
  269. select SYS_SUPPORTS_LITTLE_ENDIAN
  270. config PMC_MSP
  271. bool "PMC-Sierra MSP chipsets"
  272. depends on EXPERIMENTAL
  273. select DMA_NONCOHERENT
  274. select SWAP_IO_SPACE
  275. select NO_EXCEPT_FILL
  276. select BOOT_RAW
  277. select SYS_HAS_CPU_MIPS32_R1
  278. select SYS_HAS_CPU_MIPS32_R2
  279. select SYS_SUPPORTS_32BIT_KERNEL
  280. select SYS_SUPPORTS_BIG_ENDIAN
  281. select IRQ_CPU
  282. select SERIAL_8250
  283. select SERIAL_8250_CONSOLE
  284. help
  285. This adds support for the PMC-Sierra family of Multi-Service
  286. Processor System-On-A-Chips. These parts include a number
  287. of integrated peripherals, interfaces and DSPs in addition to
  288. a variety of MIPS cores.
  289. config PMC_YOSEMITE
  290. bool "PMC-Sierra Yosemite eval board"
  291. select CEVT_R4K
  292. select CSRC_R4K
  293. select DMA_COHERENT
  294. select HW_HAS_PCI
  295. select IRQ_CPU
  296. select IRQ_CPU_RM7K
  297. select IRQ_CPU_RM9K
  298. select SWAP_IO_SPACE
  299. select SYS_HAS_CPU_RM9000
  300. select SYS_HAS_EARLY_PRINTK
  301. select SYS_SUPPORTS_32BIT_KERNEL
  302. select SYS_SUPPORTS_64BIT_KERNEL
  303. select SYS_SUPPORTS_BIG_ENDIAN
  304. select SYS_SUPPORTS_HIGHMEM
  305. select SYS_SUPPORTS_SMP
  306. help
  307. Yosemite is an evaluation board for the RM9000x2 processor
  308. manufactured by PMC-Sierra.
  309. config SGI_IP22
  310. bool "SGI IP22 (Indy/Indigo2)"
  311. select ARC
  312. select ARC32
  313. select BOOT_ELF32
  314. select CEVT_R4K
  315. select CSRC_R4K
  316. select DEFAULT_SGI_PARTITION
  317. select DMA_NONCOHERENT
  318. select HW_HAS_EISA
  319. select I8253
  320. select I8259
  321. select IP22_CPU_SCACHE
  322. select IRQ_CPU
  323. select GENERIC_ISA_DMA_SUPPORT_BROKEN
  324. select SGI_HAS_I8042
  325. select SGI_HAS_INDYDOG
  326. select SGI_HAS_HAL2
  327. select SGI_HAS_SEEQ
  328. select SGI_HAS_WD93
  329. select SGI_HAS_ZILOG
  330. select SWAP_IO_SPACE
  331. select SYS_HAS_CPU_R4X00
  332. select SYS_HAS_CPU_R5000
  333. select SYS_HAS_EARLY_PRINTK
  334. select SYS_SUPPORTS_32BIT_KERNEL
  335. select SYS_SUPPORTS_64BIT_KERNEL
  336. select SYS_SUPPORTS_BIG_ENDIAN
  337. help
  338. This are the SGI Indy, Challenge S and Indigo2, as well as certain
  339. OEM variants like the Tandem CMN B006S. To compile a Linux kernel
  340. that runs on these, say Y here.
  341. config SGI_IP27
  342. bool "SGI IP27 (Origin200/2000)"
  343. select ARC
  344. select ARC64
  345. select BOOT_ELF64
  346. select DEFAULT_SGI_PARTITION
  347. select DMA_COHERENT
  348. select SYS_HAS_EARLY_PRINTK
  349. select HW_HAS_PCI
  350. select NR_CPUS_DEFAULT_64
  351. select SYS_HAS_CPU_R10000
  352. select SYS_SUPPORTS_64BIT_KERNEL
  353. select SYS_SUPPORTS_BIG_ENDIAN
  354. select SYS_SUPPORTS_NUMA
  355. select SYS_SUPPORTS_SMP
  356. help
  357. This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
  358. workstations. To compile a Linux kernel that runs on these, say Y
  359. here.
  360. config SGI_IP28
  361. bool "SGI IP28 (Indigo2 R10k) (EXPERIMENTAL)"
  362. depends on EXPERIMENTAL
  363. select ARC
  364. select ARC64
  365. select BOOT_ELF64
  366. select CEVT_R4K
  367. select CSRC_R4K
  368. select DEFAULT_SGI_PARTITION
  369. select DMA_NONCOHERENT
  370. select GENERIC_ISA_DMA_SUPPORT_BROKEN
  371. select IRQ_CPU
  372. select HW_HAS_EISA
  373. select I8253
  374. select I8259
  375. select SGI_HAS_I8042
  376. select SGI_HAS_INDYDOG
  377. select SGI_HAS_HAL2
  378. select SGI_HAS_SEEQ
  379. select SGI_HAS_WD93
  380. select SGI_HAS_ZILOG
  381. select SWAP_IO_SPACE
  382. select SYS_HAS_CPU_R10000
  383. select SYS_HAS_EARLY_PRINTK
  384. select SYS_SUPPORTS_64BIT_KERNEL
  385. select SYS_SUPPORTS_BIG_ENDIAN
  386. help
  387. This is the SGI Indigo2 with R10000 processor. To compile a Linux
  388. kernel that runs on these, say Y here.
  389. config SGI_IP32
  390. bool "SGI IP32 (O2)"
  391. select ARC
  392. select ARC32
  393. select BOOT_ELF32
  394. select CEVT_R4K
  395. select CSRC_R4K
  396. select DMA_NONCOHERENT
  397. select HW_HAS_PCI
  398. select IRQ_CPU
  399. select R5000_CPU_SCACHE
  400. select RM7000_CPU_SCACHE
  401. select SYS_HAS_CPU_R5000
  402. select SYS_HAS_CPU_R10000 if BROKEN
  403. select SYS_HAS_CPU_RM7000
  404. select SYS_HAS_CPU_NEVADA
  405. select SYS_SUPPORTS_64BIT_KERNEL
  406. select SYS_SUPPORTS_BIG_ENDIAN
  407. help
  408. If you want this kernel to run on SGI O2 workstation, say Y here.
  409. config SIBYTE_CRHINE
  410. bool "Sibyte BCM91120C-CRhine"
  411. depends on EXPERIMENTAL
  412. select BOOT_ELF32
  413. select DMA_COHERENT
  414. select SIBYTE_BCM1120
  415. select SWAP_IO_SPACE
  416. select SYS_HAS_CPU_SB1
  417. select SYS_SUPPORTS_BIG_ENDIAN
  418. select SYS_SUPPORTS_LITTLE_ENDIAN
  419. config SIBYTE_CARMEL
  420. bool "Sibyte BCM91120x-Carmel"
  421. depends on EXPERIMENTAL
  422. select BOOT_ELF32
  423. select DMA_COHERENT
  424. select SIBYTE_BCM1120
  425. select SWAP_IO_SPACE
  426. select SYS_HAS_CPU_SB1
  427. select SYS_SUPPORTS_BIG_ENDIAN
  428. select SYS_SUPPORTS_LITTLE_ENDIAN
  429. config SIBYTE_CRHONE
  430. bool "Sibyte BCM91125C-CRhone"
  431. depends on EXPERIMENTAL
  432. select BOOT_ELF32
  433. select DMA_COHERENT
  434. select SIBYTE_BCM1125
  435. select SWAP_IO_SPACE
  436. select SYS_HAS_CPU_SB1
  437. select SYS_SUPPORTS_BIG_ENDIAN
  438. select SYS_SUPPORTS_HIGHMEM
  439. select SYS_SUPPORTS_LITTLE_ENDIAN
  440. config SIBYTE_RHONE
  441. bool "Sibyte BCM91125E-Rhone"
  442. depends on EXPERIMENTAL
  443. select BOOT_ELF32
  444. select DMA_COHERENT
  445. select SIBYTE_BCM1125H
  446. select SWAP_IO_SPACE
  447. select SYS_HAS_CPU_SB1
  448. select SYS_SUPPORTS_BIG_ENDIAN
  449. select SYS_SUPPORTS_LITTLE_ENDIAN
  450. config SIBYTE_SWARM
  451. bool "Sibyte BCM91250A-SWARM"
  452. select BOOT_ELF32
  453. select DMA_COHERENT
  454. select NR_CPUS_DEFAULT_2
  455. select SIBYTE_SB1250
  456. select SWAP_IO_SPACE
  457. select SYS_HAS_CPU_SB1
  458. select SYS_SUPPORTS_BIG_ENDIAN
  459. select SYS_SUPPORTS_HIGHMEM
  460. select SYS_SUPPORTS_LITTLE_ENDIAN
  461. select ZONE_DMA32 if 64BIT
  462. config SIBYTE_LITTLESUR
  463. bool "Sibyte BCM91250C2-LittleSur"
  464. depends on EXPERIMENTAL
  465. select BOOT_ELF32
  466. select DMA_COHERENT
  467. select NR_CPUS_DEFAULT_2
  468. select SIBYTE_SB1250
  469. select SWAP_IO_SPACE
  470. select SYS_HAS_CPU_SB1
  471. select SYS_SUPPORTS_BIG_ENDIAN
  472. select SYS_SUPPORTS_HIGHMEM
  473. select SYS_SUPPORTS_LITTLE_ENDIAN
  474. config SIBYTE_SENTOSA
  475. bool "Sibyte BCM91250E-Sentosa"
  476. depends on EXPERIMENTAL
  477. select BOOT_ELF32
  478. select DMA_COHERENT
  479. select NR_CPUS_DEFAULT_2
  480. select SIBYTE_SB1250
  481. select SWAP_IO_SPACE
  482. select SYS_HAS_CPU_SB1
  483. select SYS_SUPPORTS_BIG_ENDIAN
  484. select SYS_SUPPORTS_LITTLE_ENDIAN
  485. config SIBYTE_BIGSUR
  486. bool "Sibyte BCM91480B-BigSur"
  487. select BOOT_ELF32
  488. select DMA_COHERENT
  489. select NR_CPUS_DEFAULT_4
  490. select SIBYTE_BCM1x80
  491. select SWAP_IO_SPACE
  492. select SYS_HAS_CPU_SB1
  493. select SYS_SUPPORTS_BIG_ENDIAN
  494. select SYS_SUPPORTS_HIGHMEM
  495. select SYS_SUPPORTS_LITTLE_ENDIAN
  496. select ZONE_DMA32 if 64BIT
  497. config SNI_RM
  498. bool "SNI RM200/300/400"
  499. select ARC if CPU_LITTLE_ENDIAN
  500. select ARC32 if CPU_LITTLE_ENDIAN
  501. select SNIPROM if CPU_BIG_ENDIAN
  502. select ARCH_MAY_HAVE_PC_FDC
  503. select BOOT_ELF32
  504. select CEVT_R4K
  505. select CSRC_R4K
  506. select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
  507. select DMA_NONCOHERENT
  508. select GENERIC_ISA_DMA
  509. select HW_HAS_EISA
  510. select HW_HAS_PCI
  511. select IRQ_CPU
  512. select I8253
  513. select I8259
  514. select ISA
  515. select SWAP_IO_SPACE if CPU_BIG_ENDIAN
  516. select SYS_HAS_CPU_R4X00
  517. select SYS_HAS_CPU_R5000
  518. select SYS_HAS_CPU_R10000
  519. select R5000_CPU_SCACHE
  520. select SYS_HAS_EARLY_PRINTK
  521. select SYS_SUPPORTS_32BIT_KERNEL
  522. select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
  523. select SYS_SUPPORTS_BIG_ENDIAN
  524. select SYS_SUPPORTS_HIGHMEM
  525. select SYS_SUPPORTS_LITTLE_ENDIAN
  526. help
  527. The SNI RM200/300/400 are MIPS-based machines manufactured by
  528. Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
  529. Technology and now in turn merged with Fujitsu. Say Y here to
  530. support this machine type.
  531. config MACH_TX39XX
  532. bool "Toshiba TX39 series based machines"
  533. config MACH_TX49XX
  534. bool "Toshiba TX49 series based machines"
  535. config MIKROTIK_RB532
  536. bool "Mikrotik RB532 boards"
  537. select CEVT_R4K
  538. select CSRC_R4K
  539. select DMA_NONCOHERENT
  540. select HW_HAS_PCI
  541. select IRQ_CPU
  542. select SYS_HAS_CPU_MIPS32_R1
  543. select SYS_SUPPORTS_32BIT_KERNEL
  544. select SYS_SUPPORTS_LITTLE_ENDIAN
  545. select SWAP_IO_SPACE
  546. select BOOT_RAW
  547. select ARCH_REQUIRE_GPIOLIB
  548. help
  549. Support the Mikrotik(tm) RouterBoard 532 series,
  550. based on the IDT RC32434 SoC.
  551. config WR_PPMC
  552. bool "Wind River PPMC board"
  553. select CEVT_R4K
  554. select CSRC_R4K
  555. select IRQ_CPU
  556. select BOOT_ELF32
  557. select DMA_NONCOHERENT
  558. select HW_HAS_PCI
  559. select PCI_GT64XXX_PCI0
  560. select SWAP_IO_SPACE
  561. select SYS_HAS_CPU_MIPS32_R1
  562. select SYS_HAS_CPU_MIPS32_R2
  563. select SYS_HAS_CPU_MIPS64_R1
  564. select SYS_HAS_CPU_NEVADA
  565. select SYS_HAS_CPU_RM7000
  566. select SYS_SUPPORTS_32BIT_KERNEL
  567. select SYS_SUPPORTS_64BIT_KERNEL
  568. select SYS_SUPPORTS_BIG_ENDIAN
  569. select SYS_SUPPORTS_LITTLE_ENDIAN
  570. help
  571. This enables support for the Wind River MIPS32 4KC PPMC evaluation
  572. board, which is based on GT64120 bridge chip.
  573. config CAVIUM_OCTEON_SIMULATOR
  574. bool "Cavium Networks Octeon Simulator"
  575. select CEVT_R4K
  576. select 64BIT_PHYS_ADDR
  577. select DMA_COHERENT
  578. select SYS_SUPPORTS_64BIT_KERNEL
  579. select SYS_SUPPORTS_BIG_ENDIAN
  580. select SYS_SUPPORTS_HIGHMEM
  581. select SYS_SUPPORTS_HOTPLUG_CPU
  582. select SYS_HAS_CPU_CAVIUM_OCTEON
  583. help
  584. The Octeon simulator is software performance model of the Cavium
  585. Octeon Processor. It supports simulating Octeon processors on x86
  586. hardware.
  587. config CAVIUM_OCTEON_REFERENCE_BOARD
  588. bool "Cavium Networks Octeon reference board"
  589. select CEVT_R4K
  590. select 64BIT_PHYS_ADDR
  591. select DMA_COHERENT
  592. select SYS_SUPPORTS_64BIT_KERNEL
  593. select SYS_SUPPORTS_BIG_ENDIAN
  594. select SYS_SUPPORTS_HIGHMEM
  595. select SYS_SUPPORTS_HOTPLUG_CPU
  596. select SYS_HAS_EARLY_PRINTK
  597. select SYS_HAS_CPU_CAVIUM_OCTEON
  598. select SWAP_IO_SPACE
  599. select HW_HAS_PCI
  600. select ARCH_SUPPORTS_MSI
  601. help
  602. This option supports all of the Octeon reference boards from Cavium
  603. Networks. It builds a kernel that dynamically determines the Octeon
  604. CPU type and supports all known board reference implementations.
  605. Some of the supported boards are:
  606. EBT3000
  607. EBH3000
  608. EBH3100
  609. Thunder
  610. Kodama
  611. Hikari
  612. Say Y here for most Octeon reference boards.
  613. endchoice
  614. source "arch/mips/alchemy/Kconfig"
  615. source "arch/mips/basler/excite/Kconfig"
  616. source "arch/mips/jazz/Kconfig"
  617. source "arch/mips/lasat/Kconfig"
  618. source "arch/mips/pmc-sierra/Kconfig"
  619. source "arch/mips/sgi-ip27/Kconfig"
  620. source "arch/mips/sibyte/Kconfig"
  621. source "arch/mips/txx9/Kconfig"
  622. source "arch/mips/vr41xx/Kconfig"
  623. source "arch/mips/cavium-octeon/Kconfig"
  624. endmenu
  625. config RWSEM_GENERIC_SPINLOCK
  626. bool
  627. default y
  628. config RWSEM_XCHGADD_ALGORITHM
  629. bool
  630. config ARCH_HAS_ILOG2_U32
  631. bool
  632. default n
  633. config ARCH_HAS_ILOG2_U64
  634. bool
  635. default n
  636. config ARCH_SUPPORTS_OPROFILE
  637. bool
  638. default y if !MIPS_MT_SMTC
  639. config GENERIC_FIND_NEXT_BIT
  640. bool
  641. default y
  642. config GENERIC_HWEIGHT
  643. bool
  644. default y
  645. config GENERIC_CALIBRATE_DELAY
  646. bool
  647. default y
  648. config GENERIC_CLOCKEVENTS
  649. bool
  650. default y
  651. config GENERIC_TIME
  652. bool
  653. default y
  654. config GENERIC_CMOS_UPDATE
  655. bool
  656. default y
  657. config SCHED_OMIT_FRAME_POINTER
  658. bool
  659. default y
  660. config GENERIC_HARDIRQS_NO__DO_IRQ
  661. def_bool y
  662. #
  663. # Select some configuration options automatically based on user selections.
  664. #
  665. config ARC
  666. bool
  667. config ARCH_MAY_HAVE_PC_FDC
  668. bool
  669. config BOOT_RAW
  670. bool
  671. config CEVT_BCM1480
  672. bool
  673. config CEVT_DS1287
  674. bool
  675. config CEVT_GT641XX
  676. bool
  677. config CEVT_R4K_LIB
  678. bool
  679. config CEVT_R4K
  680. select CEVT_R4K_LIB
  681. bool
  682. config CEVT_SB1250
  683. bool
  684. config CEVT_TXX9
  685. bool
  686. config CSRC_BCM1480
  687. bool
  688. config CSRC_IOASIC
  689. bool
  690. config CSRC_R4K_LIB
  691. bool
  692. config CSRC_R4K
  693. select CSRC_R4K_LIB
  694. bool
  695. config CSRC_SB1250
  696. bool
  697. config GPIO_TXX9
  698. select GENERIC_GPIO
  699. select ARCH_REQUIRE_GPIOLIB
  700. bool
  701. config CFE
  702. bool
  703. config DMA_COHERENT
  704. bool
  705. config DMA_NONCOHERENT
  706. bool
  707. select DMA_NEED_PCI_MAP_STATE
  708. config DMA_NEED_PCI_MAP_STATE
  709. bool
  710. config EARLY_PRINTK
  711. bool "Early printk" if EMBEDDED && DEBUG_KERNEL
  712. depends on SYS_HAS_EARLY_PRINTK
  713. default y
  714. help
  715. This option enables special console drivers which allow the kernel
  716. to print messages very early in the bootup process.
  717. This is useful for kernel debugging when your machine crashes very
  718. early before the console code is initialized. For normal operation,
  719. it is not recommended because it looks ugly on some machines and
  720. doesn't cooperate with an X server. You should normally say N here,
  721. unless you want to debug such a crash.
  722. config SYS_HAS_EARLY_PRINTK
  723. bool
  724. config HOTPLUG_CPU
  725. bool "Support for hot-pluggable CPUs"
  726. depends on SMP && HOTPLUG && SYS_SUPPORTS_HOTPLUG_CPU
  727. help
  728. Say Y here to allow turning CPUs off and on. CPUs can be
  729. controlled through /sys/devices/system/cpu.
  730. (Note: power management support will enable this option
  731. automatically on SMP systems. )
  732. Say N if you want to disable CPU hotplug.
  733. config SYS_SUPPORTS_HOTPLUG_CPU
  734. bool
  735. config I8259
  736. bool
  737. config MIPS_BONITO64
  738. bool
  739. config MIPS_MSC
  740. bool
  741. config MIPS_NILE4
  742. bool
  743. config MIPS_DISABLE_OBSOLETE_IDE
  744. bool
  745. config SYNC_R4K
  746. bool
  747. config NO_IOPORT
  748. def_bool n
  749. config GENERIC_ISA_DMA
  750. bool
  751. select ZONE_DMA if GENERIC_ISA_DMA_SUPPORT_BROKEN=n
  752. config GENERIC_ISA_DMA_SUPPORT_BROKEN
  753. bool
  754. select GENERIC_ISA_DMA
  755. config GENERIC_GPIO
  756. bool
  757. #
  758. # Endianess selection. Sufficiently obscure so many users don't know what to
  759. # answer,so we try hard to limit the available choices. Also the use of a
  760. # choice statement should be more obvious to the user.
  761. #
  762. choice
  763. prompt "Endianess selection"
  764. help
  765. Some MIPS machines can be configured for either little or big endian
  766. byte order. These modes require different kernels and a different
  767. Linux distribution. In general there is one preferred byteorder for a
  768. particular system but some systems are just as commonly used in the
  769. one or the other endianness.
  770. config CPU_BIG_ENDIAN
  771. bool "Big endian"
  772. depends on SYS_SUPPORTS_BIG_ENDIAN
  773. config CPU_LITTLE_ENDIAN
  774. bool "Little endian"
  775. depends on SYS_SUPPORTS_LITTLE_ENDIAN
  776. help
  777. endchoice
  778. config SYS_SUPPORTS_APM_EMULATION
  779. bool
  780. config SYS_SUPPORTS_BIG_ENDIAN
  781. bool
  782. config SYS_SUPPORTS_LITTLE_ENDIAN
  783. bool
  784. config SYS_SUPPORTS_HUGETLBFS
  785. bool
  786. depends on CPU_SUPPORTS_HUGEPAGES && 64BIT
  787. default y
  788. config IRQ_CPU
  789. bool
  790. config IRQ_CPU_RM7K
  791. bool
  792. config IRQ_CPU_RM9K
  793. bool
  794. config IRQ_MSP_SLP
  795. bool
  796. config IRQ_MSP_CIC
  797. bool
  798. config IRQ_TXX9
  799. bool
  800. config IRQ_GT641XX
  801. bool
  802. config IRQ_GIC
  803. bool
  804. config IRQ_CPU_OCTEON
  805. bool
  806. config MIPS_BOARDS_GEN
  807. bool
  808. config PCI_GT64XXX_PCI0
  809. bool
  810. config NO_EXCEPT_FILL
  811. bool
  812. config MIPS_RM9122
  813. bool
  814. select SERIAL_RM9000
  815. config SOC_EMMA2RH
  816. bool
  817. select CEVT_R4K
  818. select CSRC_R4K
  819. select DMA_NONCOHERENT
  820. select IRQ_CPU
  821. select SWAP_IO_SPACE
  822. select SYS_HAS_CPU_R5500
  823. select SYS_SUPPORTS_32BIT_KERNEL
  824. select SYS_SUPPORTS_64BIT_KERNEL
  825. select SYS_SUPPORTS_BIG_ENDIAN
  826. config SOC_PNX833X
  827. bool
  828. select CEVT_R4K
  829. select CSRC_R4K
  830. select IRQ_CPU
  831. select DMA_NONCOHERENT
  832. select SYS_HAS_CPU_MIPS32_R2
  833. select SYS_SUPPORTS_32BIT_KERNEL
  834. select SYS_SUPPORTS_LITTLE_ENDIAN
  835. select SYS_SUPPORTS_BIG_ENDIAN
  836. select GENERIC_GPIO
  837. select CPU_MIPSR2_IRQ_VI
  838. config SOC_PNX8335
  839. bool
  840. select SOC_PNX833X
  841. config PNX8550
  842. bool
  843. select SOC_PNX8550
  844. config SOC_PNX8550
  845. bool
  846. select DMA_NONCOHERENT
  847. select HW_HAS_PCI
  848. select SYS_HAS_CPU_MIPS32_R1
  849. select SYS_HAS_EARLY_PRINTK
  850. select SYS_SUPPORTS_32BIT_KERNEL
  851. select GENERIC_GPIO
  852. config SWAP_IO_SPACE
  853. bool
  854. config SERIAL_RM9000
  855. bool
  856. config SGI_HAS_INDYDOG
  857. bool
  858. config SGI_HAS_HAL2
  859. bool
  860. config SGI_HAS_SEEQ
  861. bool
  862. config SGI_HAS_WD93
  863. bool
  864. config SGI_HAS_ZILOG
  865. bool
  866. config SGI_HAS_I8042
  867. bool
  868. config DEFAULT_SGI_PARTITION
  869. bool
  870. config ARC32
  871. bool
  872. config SNIPROM
  873. bool
  874. config BOOT_ELF32
  875. bool
  876. config MIPS_L1_CACHE_SHIFT
  877. int
  878. default "4" if MACH_DECSTATION || MIKROTIK_RB532
  879. default "7" if SGI_IP22 || SGI_IP27 || SGI_IP28 || SNI_RM || CPU_CAVIUM_OCTEON
  880. default "4" if PMC_MSP4200_EVAL
  881. default "5"
  882. config HAVE_STD_PC_SERIAL_PORT
  883. bool
  884. config ARC_CONSOLE
  885. bool "ARC console support"
  886. depends on SGI_IP22 || SGI_IP28 || (SNI_RM && CPU_LITTLE_ENDIAN)
  887. config ARC_MEMORY
  888. bool
  889. depends on MACH_JAZZ || SNI_RM || SGI_IP32
  890. default y
  891. config ARC_PROMLIB
  892. bool
  893. depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP28 || SGI_IP32
  894. default y
  895. config ARC64
  896. bool
  897. config BOOT_ELF64
  898. bool
  899. menu "CPU selection"
  900. choice
  901. prompt "CPU type"
  902. default CPU_R4X00
  903. config CPU_LOONGSON2
  904. bool "Loongson 2"
  905. depends on SYS_HAS_CPU_LOONGSON2
  906. select CPU_SUPPORTS_32BIT_KERNEL
  907. select CPU_SUPPORTS_64BIT_KERNEL
  908. select CPU_SUPPORTS_HIGHMEM
  909. help
  910. The Loongson 2E processor implements the MIPS III instruction set
  911. with many extensions.
  912. config CPU_MIPS32_R1
  913. bool "MIPS32 Release 1"
  914. depends on SYS_HAS_CPU_MIPS32_R1
  915. select CPU_HAS_LLSC
  916. select CPU_HAS_PREFETCH
  917. select CPU_SUPPORTS_32BIT_KERNEL
  918. select CPU_SUPPORTS_HIGHMEM
  919. help
  920. Choose this option to build a kernel for release 1 or later of the
  921. MIPS32 architecture. Most modern embedded systems with a 32-bit
  922. MIPS processor are based on a MIPS32 processor. If you know the
  923. specific type of processor in your system, choose those that one
  924. otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
  925. Release 2 of the MIPS32 architecture is available since several
  926. years so chances are you even have a MIPS32 Release 2 processor
  927. in which case you should choose CPU_MIPS32_R2 instead for better
  928. performance.
  929. config CPU_MIPS32_R2
  930. bool "MIPS32 Release 2"
  931. depends on SYS_HAS_CPU_MIPS32_R2
  932. select CPU_HAS_LLSC
  933. select CPU_HAS_PREFETCH
  934. select CPU_SUPPORTS_32BIT_KERNEL
  935. select CPU_SUPPORTS_HIGHMEM
  936. help
  937. Choose this option to build a kernel for release 2 or later of the
  938. MIPS32 architecture. Most modern embedded systems with a 32-bit
  939. MIPS processor are based on a MIPS32 processor. If you know the
  940. specific type of processor in your system, choose those that one
  941. otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
  942. config CPU_MIPS64_R1
  943. bool "MIPS64 Release 1"
  944. depends on SYS_HAS_CPU_MIPS64_R1
  945. select CPU_HAS_LLSC
  946. select CPU_HAS_PREFETCH
  947. select CPU_SUPPORTS_32BIT_KERNEL
  948. select CPU_SUPPORTS_64BIT_KERNEL
  949. select CPU_SUPPORTS_HIGHMEM
  950. select CPU_SUPPORTS_HUGEPAGES
  951. help
  952. Choose this option to build a kernel for release 1 or later of the
  953. MIPS64 architecture. Many modern embedded systems with a 64-bit
  954. MIPS processor are based on a MIPS64 processor. If you know the
  955. specific type of processor in your system, choose those that one
  956. otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
  957. Release 2 of the MIPS64 architecture is available since several
  958. years so chances are you even have a MIPS64 Release 2 processor
  959. in which case you should choose CPU_MIPS64_R2 instead for better
  960. performance.
  961. config CPU_MIPS64_R2
  962. bool "MIPS64 Release 2"
  963. depends on SYS_HAS_CPU_MIPS64_R2
  964. select CPU_HAS_LLSC
  965. select CPU_HAS_PREFETCH
  966. select CPU_SUPPORTS_32BIT_KERNEL
  967. select CPU_SUPPORTS_64BIT_KERNEL
  968. select CPU_SUPPORTS_HIGHMEM
  969. select CPU_SUPPORTS_HUGEPAGES
  970. help
  971. Choose this option to build a kernel for release 2 or later of the
  972. MIPS64 architecture. Many modern embedded systems with a 64-bit
  973. MIPS processor are based on a MIPS64 processor. If you know the
  974. specific type of processor in your system, choose those that one
  975. otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
  976. config CPU_R3000
  977. bool "R3000"
  978. depends on SYS_HAS_CPU_R3000
  979. select CPU_HAS_WB
  980. select CPU_SUPPORTS_32BIT_KERNEL
  981. select CPU_SUPPORTS_HIGHMEM
  982. help
  983. Please make sure to pick the right CPU type. Linux/MIPS is not
  984. designed to be generic, i.e. Kernels compiled for R3000 CPUs will
  985. *not* work on R4000 machines and vice versa. However, since most
  986. of the supported machines have an R4000 (or similar) CPU, R4x00
  987. might be a safe bet. If the resulting kernel does not work,
  988. try to recompile with R3000.
  989. config CPU_TX39XX
  990. bool "R39XX"
  991. depends on SYS_HAS_CPU_TX39XX
  992. select CPU_SUPPORTS_32BIT_KERNEL
  993. config CPU_VR41XX
  994. bool "R41xx"
  995. depends on SYS_HAS_CPU_VR41XX
  996. select CPU_SUPPORTS_32BIT_KERNEL
  997. select CPU_SUPPORTS_64BIT_KERNEL
  998. help
  999. The options selects support for the NEC VR4100 series of processors.
  1000. Only choose this option if you have one of these processors as a
  1001. kernel built with this option will not run on any other type of
  1002. processor or vice versa.
  1003. config CPU_R4300
  1004. bool "R4300"
  1005. depends on SYS_HAS_CPU_R4300
  1006. select CPU_HAS_LLSC
  1007. select CPU_SUPPORTS_32BIT_KERNEL
  1008. select CPU_SUPPORTS_64BIT_KERNEL
  1009. help
  1010. MIPS Technologies R4300-series processors.
  1011. config CPU_R4X00
  1012. bool "R4x00"
  1013. depends on SYS_HAS_CPU_R4X00
  1014. select CPU_HAS_LLSC
  1015. select CPU_SUPPORTS_32BIT_KERNEL
  1016. select CPU_SUPPORTS_64BIT_KERNEL
  1017. help
  1018. MIPS Technologies R4000-series processors other than 4300, including
  1019. the R4000, R4400, R4600, and 4700.
  1020. config CPU_TX49XX
  1021. bool "R49XX"
  1022. depends on SYS_HAS_CPU_TX49XX
  1023. select CPU_HAS_LLSC
  1024. select CPU_HAS_PREFETCH
  1025. select CPU_SUPPORTS_32BIT_KERNEL
  1026. select CPU_SUPPORTS_64BIT_KERNEL
  1027. config CPU_R5000
  1028. bool "R5000"
  1029. depends on SYS_HAS_CPU_R5000
  1030. select CPU_HAS_LLSC
  1031. select CPU_SUPPORTS_32BIT_KERNEL
  1032. select CPU_SUPPORTS_64BIT_KERNEL
  1033. help
  1034. MIPS Technologies R5000-series processors other than the Nevada.
  1035. config CPU_R5432
  1036. bool "R5432"
  1037. depends on SYS_HAS_CPU_R5432
  1038. select CPU_HAS_LLSC
  1039. select CPU_SUPPORTS_32BIT_KERNEL
  1040. select CPU_SUPPORTS_64BIT_KERNEL
  1041. config CPU_R5500
  1042. bool "R5500"
  1043. depends on SYS_HAS_CPU_R5500
  1044. select CPU_HAS_LLSC
  1045. select CPU_SUPPORTS_32BIT_KERNEL
  1046. select CPU_SUPPORTS_64BIT_KERNEL
  1047. select CPU_SUPPORTS_HUGEPAGES
  1048. help
  1049. NEC VR5500 and VR5500A series processors implement 64-bit MIPS IV
  1050. instruction set.
  1051. config CPU_R6000
  1052. bool "R6000"
  1053. depends on EXPERIMENTAL
  1054. select CPU_HAS_LLSC
  1055. depends on SYS_HAS_CPU_R6000
  1056. select CPU_SUPPORTS_32BIT_KERNEL
  1057. help
  1058. MIPS Technologies R6000 and R6000A series processors. Note these
  1059. processors are extremely rare and the support for them is incomplete.
  1060. config CPU_NEVADA
  1061. bool "RM52xx"
  1062. depends on SYS_HAS_CPU_NEVADA
  1063. select CPU_HAS_LLSC
  1064. select CPU_SUPPORTS_32BIT_KERNEL
  1065. select CPU_SUPPORTS_64BIT_KERNEL
  1066. help
  1067. QED / PMC-Sierra RM52xx-series ("Nevada") processors.
  1068. config CPU_R8000
  1069. bool "R8000"
  1070. depends on EXPERIMENTAL
  1071. depends on SYS_HAS_CPU_R8000
  1072. select CPU_HAS_LLSC
  1073. select CPU_HAS_PREFETCH
  1074. select CPU_SUPPORTS_64BIT_KERNEL
  1075. help
  1076. MIPS Technologies R8000 processors. Note these processors are
  1077. uncommon and the support for them is incomplete.
  1078. config CPU_R10000
  1079. bool "R10000"
  1080. depends on SYS_HAS_CPU_R10000
  1081. select CPU_HAS_LLSC
  1082. select CPU_HAS_PREFETCH
  1083. select CPU_SUPPORTS_32BIT_KERNEL
  1084. select CPU_SUPPORTS_64BIT_KERNEL
  1085. select CPU_SUPPORTS_HIGHMEM
  1086. help
  1087. MIPS Technologies R10000-series processors.
  1088. config CPU_RM7000
  1089. bool "RM7000"
  1090. depends on SYS_HAS_CPU_RM7000
  1091. select CPU_HAS_LLSC
  1092. select CPU_HAS_PREFETCH
  1093. select CPU_SUPPORTS_32BIT_KERNEL
  1094. select CPU_SUPPORTS_64BIT_KERNEL
  1095. select CPU_SUPPORTS_HIGHMEM
  1096. config CPU_RM9000
  1097. bool "RM9000"
  1098. depends on SYS_HAS_CPU_RM9000
  1099. select CPU_HAS_LLSC
  1100. select CPU_HAS_PREFETCH
  1101. select CPU_SUPPORTS_32BIT_KERNEL
  1102. select CPU_SUPPORTS_64BIT_KERNEL
  1103. select CPU_SUPPORTS_HIGHMEM
  1104. select WEAK_ORDERING
  1105. config CPU_SB1
  1106. bool "SB1"
  1107. depends on SYS_HAS_CPU_SB1
  1108. select CPU_HAS_LLSC
  1109. select CPU_SUPPORTS_32BIT_KERNEL
  1110. select CPU_SUPPORTS_64BIT_KERNEL
  1111. select CPU_SUPPORTS_HIGHMEM
  1112. select WEAK_ORDERING
  1113. config CPU_CAVIUM_OCTEON
  1114. bool "Cavium Octeon processor"
  1115. depends on SYS_HAS_CPU_CAVIUM_OCTEON
  1116. select IRQ_CPU
  1117. select IRQ_CPU_OCTEON
  1118. select CPU_HAS_PREFETCH
  1119. select CPU_SUPPORTS_64BIT_KERNEL
  1120. select SYS_SUPPORTS_SMP
  1121. select NR_CPUS_DEFAULT_16
  1122. select WEAK_ORDERING
  1123. select WEAK_REORDERING_BEYOND_LLSC
  1124. select CPU_SUPPORTS_HIGHMEM
  1125. select CPU_SUPPORTS_HUGEPAGES
  1126. help
  1127. The Cavium Octeon processor is a highly integrated chip containing
  1128. many ethernet hardware widgets for networking tasks. The processor
  1129. can have up to 16 Mips64v2 cores and 8 integrated gigabit ethernets.
  1130. Full details can be found at http://www.caviumnetworks.com.
  1131. endchoice
  1132. config SYS_HAS_CPU_LOONGSON2
  1133. bool
  1134. config SYS_HAS_CPU_MIPS32_R1
  1135. bool
  1136. config SYS_HAS_CPU_MIPS32_R2
  1137. bool
  1138. config SYS_HAS_CPU_MIPS64_R1
  1139. bool
  1140. config SYS_HAS_CPU_MIPS64_R2
  1141. bool
  1142. config SYS_HAS_CPU_R3000
  1143. bool
  1144. config SYS_HAS_CPU_TX39XX
  1145. bool
  1146. config SYS_HAS_CPU_VR41XX
  1147. bool
  1148. config SYS_HAS_CPU_R4300
  1149. bool
  1150. config SYS_HAS_CPU_R4X00
  1151. bool
  1152. config SYS_HAS_CPU_TX49XX
  1153. bool
  1154. config SYS_HAS_CPU_R5000
  1155. bool
  1156. config SYS_HAS_CPU_R5432
  1157. bool
  1158. config SYS_HAS_CPU_R5500
  1159. bool
  1160. config SYS_HAS_CPU_R6000
  1161. bool
  1162. config SYS_HAS_CPU_NEVADA
  1163. bool
  1164. config SYS_HAS_CPU_R8000
  1165. bool
  1166. config SYS_HAS_CPU_R10000
  1167. bool
  1168. config SYS_HAS_CPU_RM7000
  1169. bool
  1170. config SYS_HAS_CPU_RM9000
  1171. bool
  1172. config SYS_HAS_CPU_SB1
  1173. bool
  1174. config SYS_HAS_CPU_CAVIUM_OCTEON
  1175. bool
  1176. #
  1177. # CPU may reorder R->R, R->W, W->R, W->W
  1178. # Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC
  1179. #
  1180. config WEAK_ORDERING
  1181. bool
  1182. #
  1183. # CPU may reorder reads and writes beyond LL/SC
  1184. # CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC
  1185. #
  1186. config WEAK_REORDERING_BEYOND_LLSC
  1187. bool
  1188. endmenu
  1189. #
  1190. # These two indicate any level of the MIPS32 and MIPS64 architecture
  1191. #
  1192. config CPU_MIPS32
  1193. bool
  1194. default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
  1195. config CPU_MIPS64
  1196. bool
  1197. default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
  1198. #
  1199. # These two indicate the revision of the architecture, either Release 1 or Release 2
  1200. #
  1201. config CPU_MIPSR1
  1202. bool
  1203. default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
  1204. config CPU_MIPSR2
  1205. bool
  1206. default y if CPU_MIPS32_R2 || CPU_MIPS64_R2 || CPU_CAVIUM_OCTEON
  1207. config SYS_SUPPORTS_32BIT_KERNEL
  1208. bool
  1209. config SYS_SUPPORTS_64BIT_KERNEL
  1210. bool
  1211. config CPU_SUPPORTS_32BIT_KERNEL
  1212. bool
  1213. config CPU_SUPPORTS_64BIT_KERNEL
  1214. bool
  1215. config CPU_SUPPORTS_HUGEPAGES
  1216. bool
  1217. #
  1218. # Set to y for ptrace access to watch registers.
  1219. #
  1220. config HARDWARE_WATCHPOINTS
  1221. bool
  1222. default y if CPU_MIPSR1 || CPU_MIPSR2
  1223. menu "Kernel type"
  1224. choice
  1225. prompt "Kernel code model"
  1226. help
  1227. You should only select this option if you have a workload that
  1228. actually benefits from 64-bit processing or if your machine has
  1229. large memory. You will only be presented a single option in this
  1230. menu if your system does not support both 32-bit and 64-bit kernels.
  1231. config 32BIT
  1232. bool "32-bit kernel"
  1233. depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
  1234. select TRAD_SIGNALS
  1235. help
  1236. Select this option if you want to build a 32-bit kernel.
  1237. config 64BIT
  1238. bool "64-bit kernel"
  1239. depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
  1240. select HAVE_SYSCALL_WRAPPERS
  1241. help
  1242. Select this option if you want to build a 64-bit kernel.
  1243. endchoice
  1244. choice
  1245. prompt "Kernel page size"
  1246. default PAGE_SIZE_4KB
  1247. config PAGE_SIZE_4KB
  1248. bool "4kB"
  1249. help
  1250. This option select the standard 4kB Linux page size. On some
  1251. R3000-family processors this is the only available page size. Using
  1252. 4kB page size will minimize memory consumption and is therefore
  1253. recommended for low memory systems.
  1254. config PAGE_SIZE_8KB
  1255. bool "8kB"
  1256. depends on (EXPERIMENTAL && CPU_R8000) || CPU_CAVIUM_OCTEON
  1257. help
  1258. Using 8kB page size will result in higher performance kernel at
  1259. the price of higher memory consumption. This option is available
  1260. only on R8000 and cnMIPS processors. Note that you will need a
  1261. suitable Linux distribution to support this.
  1262. config PAGE_SIZE_16KB
  1263. bool "16kB"
  1264. depends on !CPU_R3000 && !CPU_TX39XX
  1265. help
  1266. Using 16kB page size will result in higher performance kernel at
  1267. the price of higher memory consumption. This option is available on
  1268. all non-R3000 family processors. Note that you will need a suitable
  1269. Linux distribution to support this.
  1270. config PAGE_SIZE_32KB
  1271. bool "32kB"
  1272. depends on CPU_CAVIUM_OCTEON
  1273. help
  1274. Using 32kB page size will result in higher performance kernel at
  1275. the price of higher memory consumption. This option is available
  1276. only on cnMIPS cores. Note that you will need a suitable Linux
  1277. distribution to support this.
  1278. config PAGE_SIZE_64KB
  1279. bool "64kB"
  1280. depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
  1281. help
  1282. Using 64kB page size will result in higher performance kernel at
  1283. the price of higher memory consumption. This option is available on
  1284. all non-R3000 family processor. Not that at the time of this
  1285. writing this option is still high experimental.
  1286. endchoice
  1287. config BOARD_SCACHE
  1288. bool
  1289. config IP22_CPU_SCACHE
  1290. bool
  1291. select BOARD_SCACHE
  1292. #
  1293. # Support for a MIPS32 / MIPS64 style S-caches
  1294. #
  1295. config MIPS_CPU_SCACHE
  1296. bool
  1297. select BOARD_SCACHE
  1298. config R5000_CPU_SCACHE
  1299. bool
  1300. select BOARD_SCACHE
  1301. config RM7000_CPU_SCACHE
  1302. bool
  1303. select BOARD_SCACHE
  1304. config SIBYTE_DMA_PAGEOPS
  1305. bool "Use DMA to clear/copy pages"
  1306. depends on CPU_SB1
  1307. help
  1308. Instead of using the CPU to zero and copy pages, use a Data Mover
  1309. channel. These DMA channels are otherwise unused by the standard
  1310. SiByte Linux port. Seems to give a small performance benefit.
  1311. config CPU_HAS_PREFETCH
  1312. bool
  1313. choice
  1314. prompt "MIPS MT options"
  1315. config MIPS_MT_DISABLED
  1316. bool "Disable multithreading support."
  1317. help
  1318. Use this option if your workload can't take advantage of
  1319. MIPS hardware multithreading support. On systems that don't have
  1320. the option of an MT-enabled processor this option will be the only
  1321. option in this menu.
  1322. config MIPS_MT_SMP
  1323. bool "Use 1 TC on each available VPE for SMP"
  1324. depends on SYS_SUPPORTS_MULTITHREADING
  1325. select CPU_MIPSR2_IRQ_VI
  1326. select CPU_MIPSR2_IRQ_EI
  1327. select MIPS_MT
  1328. select NR_CPUS_DEFAULT_2
  1329. select SMP
  1330. select SYS_SUPPORTS_SCHED_SMT if SMP
  1331. select SYS_SUPPORTS_SMP
  1332. select SMP_UP
  1333. help
  1334. This is a kernel model which is also known a VSMP or lately
  1335. has been marketesed into SMVP.
  1336. config MIPS_MT_SMTC
  1337. bool "SMTC: Use all TCs on all VPEs for SMP"
  1338. depends on CPU_MIPS32_R2
  1339. #depends on CPU_MIPS64_R2 # once there is hardware ...
  1340. depends on SYS_SUPPORTS_MULTITHREADING
  1341. select CPU_MIPSR2_IRQ_VI
  1342. select CPU_MIPSR2_IRQ_EI
  1343. select MIPS_MT
  1344. select NR_CPUS_DEFAULT_8
  1345. select SMP
  1346. select SYS_SUPPORTS_SMP
  1347. select SMP_UP
  1348. help
  1349. This is a kernel model which is known a SMTC or lately has been
  1350. marketesed into SMVP.
  1351. endchoice
  1352. config MIPS_MT
  1353. bool
  1354. config SCHED_SMT
  1355. bool "SMT (multithreading) scheduler support"
  1356. depends on SYS_SUPPORTS_SCHED_SMT
  1357. default n
  1358. help
  1359. SMT scheduler support improves the CPU scheduler's decision making
  1360. when dealing with MIPS MT enabled cores at a cost of slightly
  1361. increased overhead in some places. If unsure say N here.
  1362. config SYS_SUPPORTS_SCHED_SMT
  1363. bool
  1364. config SYS_SUPPORTS_MULTITHREADING
  1365. bool
  1366. config MIPS_MT_FPAFF
  1367. bool "Dynamic FPU affinity for FP-intensive threads"
  1368. default y
  1369. depends on MIPS_MT_SMP || MIPS_MT_SMTC
  1370. config MIPS_VPE_LOADER
  1371. bool "VPE loader support."
  1372. depends on SYS_SUPPORTS_MULTITHREADING
  1373. select CPU_MIPSR2_IRQ_VI
  1374. select CPU_MIPSR2_IRQ_EI
  1375. select MIPS_MT
  1376. help
  1377. Includes a loader for loading an elf relocatable object
  1378. onto another VPE and running it.
  1379. config MIPS_MT_SMTC_IM_BACKSTOP
  1380. bool "Use per-TC register bits as backstop for inhibited IM bits"
  1381. depends on MIPS_MT_SMTC
  1382. default n
  1383. help
  1384. To support multiple TC microthreads acting as "CPUs" within
  1385. a VPE, VPE-wide interrupt mask bits must be specially manipulated
  1386. during interrupt handling. To support legacy drivers and interrupt
  1387. controller management code, SMTC has a "backstop" to track and
  1388. if necessary restore the interrupt mask. This has some performance
  1389. impact on interrupt service overhead.
  1390. config MIPS_MT_SMTC_IRQAFF
  1391. bool "Support IRQ affinity API"
  1392. depends on MIPS_MT_SMTC
  1393. default n
  1394. help
  1395. Enables SMP IRQ affinity API (/proc/irq/*/smp_affinity, etc.)
  1396. for SMTC Linux kernel. Requires platform support, of which
  1397. an example can be found in the MIPS kernel i8259 and Malta
  1398. platform code. Adds some overhead to interrupt dispatch, and
  1399. should be used only if you know what you are doing.
  1400. config MIPS_VPE_LOADER_TOM
  1401. bool "Load VPE program into memory hidden from linux"
  1402. depends on MIPS_VPE_LOADER
  1403. default y
  1404. help
  1405. The loader can use memory that is present but has been hidden from
  1406. Linux using the kernel command line option "mem=xxMB". It's up to
  1407. you to ensure the amount you put in the option and the space your
  1408. program requires is less or equal to the amount physically present.
  1409. # this should possibly be in drivers/char, but it is rather cpu related. Hmmm
  1410. config MIPS_VPE_APSP_API
  1411. bool "Enable support for AP/SP API (RTLX)"
  1412. depends on MIPS_VPE_LOADER
  1413. help
  1414. config MIPS_APSP_KSPD
  1415. bool "Enable KSPD"
  1416. depends on MIPS_VPE_APSP_API
  1417. default y
  1418. help
  1419. KSPD is a kernel daemon that accepts syscall requests from the SP
  1420. side, actions them and returns the results. It also handles the
  1421. "exit" syscall notifying other kernel modules the SP program is
  1422. exiting. You probably want to say yes here.
  1423. config MIPS_CMP
  1424. bool "MIPS CMP framework support"
  1425. depends on SYS_SUPPORTS_MIPS_CMP
  1426. select SYNC_R4K
  1427. select SYS_SUPPORTS_SMP
  1428. select SYS_SUPPORTS_SCHED_SMT if SMP
  1429. select WEAK_ORDERING
  1430. default n
  1431. help
  1432. This is a placeholder option for the GCMP work. It will need to
  1433. be handled differently...
  1434. config SB1_PASS_1_WORKAROUNDS
  1435. bool
  1436. depends on CPU_SB1_PASS_1
  1437. default y
  1438. config SB1_PASS_2_WORKAROUNDS
  1439. bool
  1440. depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
  1441. default y
  1442. config SB1_PASS_2_1_WORKAROUNDS
  1443. bool
  1444. depends on CPU_SB1 && CPU_SB1_PASS_2
  1445. default y
  1446. config 64BIT_PHYS_ADDR
  1447. bool
  1448. config CPU_HAS_LLSC
  1449. bool
  1450. config CPU_HAS_SMARTMIPS
  1451. depends on SYS_SUPPORTS_SMARTMIPS
  1452. bool "Support for the SmartMIPS ASE"
  1453. help
  1454. SmartMIPS is a extension of the MIPS32 architecture aimed at
  1455. increased security at both hardware and software level for
  1456. smartcards. Enabling this option will allow proper use of the
  1457. SmartMIPS instructions by Linux applications. However a kernel with
  1458. this option will not work on a MIPS core without SmartMIPS core. If
  1459. you don't know you probably don't have SmartMIPS and should say N
  1460. here.
  1461. config CPU_HAS_WB
  1462. bool
  1463. #
  1464. # Vectored interrupt mode is an R2 feature
  1465. #
  1466. config CPU_MIPSR2_IRQ_VI
  1467. bool
  1468. #
  1469. # Extended interrupt mode is an R2 feature
  1470. #
  1471. config CPU_MIPSR2_IRQ_EI
  1472. bool
  1473. config CPU_HAS_SYNC
  1474. bool
  1475. depends on !CPU_R3000
  1476. default y
  1477. config GENERIC_CLOCKEVENTS_BROADCAST
  1478. bool
  1479. #
  1480. # CPU non-features
  1481. #
  1482. config CPU_DADDI_WORKAROUNDS
  1483. bool
  1484. config CPU_R4000_WORKAROUNDS
  1485. bool
  1486. select CPU_R4400_WORKAROUNDS
  1487. config CPU_R4400_WORKAROUNDS
  1488. bool
  1489. #
  1490. # Use the generic interrupt handling code in kernel/irq/:
  1491. #
  1492. config GENERIC_HARDIRQS
  1493. bool
  1494. default y
  1495. config GENERIC_IRQ_PROBE
  1496. bool
  1497. default y
  1498. config IRQ_PER_CPU
  1499. bool
  1500. #
  1501. # - Highmem only makes sense for the 32-bit kernel.
  1502. # - The current highmem code will only work properly on physically indexed
  1503. # caches such as R3000, SB1, R7000 or those that look like they're virtually
  1504. # indexed such as R4000/R4400 SC and MC versions or R10000. So for the
  1505. # moment we protect the user and offer the highmem option only on machines
  1506. # where it's known to be safe. This will not offer highmem on a few systems
  1507. # such as MIPS32 and MIPS64 CPUs which may have virtual and physically
  1508. # indexed CPUs but we're playing safe.
  1509. # - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
  1510. # know they might have memory configurations that could make use of highmem
  1511. # support.
  1512. #
  1513. config HIGHMEM
  1514. bool "High Memory Support"
  1515. depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
  1516. config CPU_SUPPORTS_HIGHMEM
  1517. bool
  1518. config SYS_SUPPORTS_HIGHMEM
  1519. bool
  1520. config SYS_SUPPORTS_SMARTMIPS
  1521. bool
  1522. config ARCH_FLATMEM_ENABLE
  1523. def_bool y
  1524. depends on !NUMA
  1525. config ARCH_DISCONTIGMEM_ENABLE
  1526. bool
  1527. default y if SGI_IP27
  1528. help
  1529. Say Y to support efficient handling of discontiguous physical memory,
  1530. for architectures which are either NUMA (Non-Uniform Memory Access)
  1531. or have huge holes in the physical address space for other reasons.
  1532. See <file:Documentation/vm/numa> for more.
  1533. config ARCH_POPULATES_NODE_MAP
  1534. def_bool y
  1535. config ARCH_SPARSEMEM_ENABLE
  1536. bool
  1537. select SPARSEMEM_STATIC
  1538. config NUMA
  1539. bool "NUMA Support"
  1540. depends on SYS_SUPPORTS_NUMA
  1541. help
  1542. Say Y to compile the kernel to support NUMA (Non-Uniform Memory
  1543. Access). This option improves performance on systems with more
  1544. than two nodes; on two node systems it is generally better to
  1545. leave it disabled; on single node systems disable this option
  1546. disabled.
  1547. config SYS_SUPPORTS_NUMA
  1548. bool
  1549. config NODES_SHIFT
  1550. int
  1551. default "6"
  1552. depends on NEED_MULTIPLE_NODES
  1553. source "mm/Kconfig"
  1554. config SMP
  1555. bool "Multi-Processing support"
  1556. depends on SYS_SUPPORTS_SMP
  1557. select IRQ_PER_CPU
  1558. select USE_GENERIC_SMP_HELPERS
  1559. help
  1560. This enables support for systems with more than one CPU. If you have
  1561. a system with only one CPU, like most personal computers, say N. If
  1562. you have a system with more than one CPU, say Y.
  1563. If you say N here, the kernel will run on single and multiprocessor
  1564. machines, but will use only one CPU of a multiprocessor machine. If
  1565. you say Y here, the kernel will run on many, but not all,
  1566. singleprocessor machines. On a singleprocessor machine, the kernel
  1567. will run faster if you say N here.
  1568. People using multiprocessor machines who say Y here should also say
  1569. Y to "Enhanced Real Time Clock Support", below.
  1570. See also the SMP-HOWTO available at
  1571. <http://www.tldp.org/docs.html#howto>.
  1572. If you don't know what to do here, say N.
  1573. config SMP_UP
  1574. bool
  1575. config SYS_SUPPORTS_MIPS_CMP
  1576. bool
  1577. config SYS_SUPPORTS_SMP
  1578. bool
  1579. config NR_CPUS_DEFAULT_1
  1580. bool
  1581. config NR_CPUS_DEFAULT_2
  1582. bool
  1583. config NR_CPUS_DEFAULT_4
  1584. bool
  1585. config NR_CPUS_DEFAULT_8
  1586. bool
  1587. config NR_CPUS_DEFAULT_16
  1588. bool
  1589. config NR_CPUS_DEFAULT_32
  1590. bool
  1591. config NR_CPUS_DEFAULT_64
  1592. bool
  1593. config NR_CPUS
  1594. int "Maximum number of CPUs (2-64)"
  1595. range 1 64 if NR_CPUS_DEFAULT_1
  1596. depends on SMP
  1597. default "1" if NR_CPUS_DEFAULT_1
  1598. default "2" if NR_CPUS_DEFAULT_2
  1599. default "4" if NR_CPUS_DEFAULT_4
  1600. default "8" if NR_CPUS_DEFAULT_8
  1601. default "16" if NR_CPUS_DEFAULT_16
  1602. default "32" if NR_CPUS_DEFAULT_32
  1603. default "64" if NR_CPUS_DEFAULT_64
  1604. help
  1605. This allows you to specify the maximum number of CPUs which this
  1606. kernel will support. The maximum supported value is 32 for 32-bit
  1607. kernel and 64 for 64-bit kernels; the minimum value which makes
  1608. sense is 1 for Qemu (useful only for kernel debugging purposes)
  1609. and 2 for all others.
  1610. This is purely to save memory - each supported CPU adds
  1611. approximately eight kilobytes to the kernel image. For best
  1612. performance should round up your number of processors to the next
  1613. power of two.
  1614. source "kernel/time/Kconfig"
  1615. #
  1616. # Timer Interrupt Frequency Configuration
  1617. #
  1618. choice
  1619. prompt "Timer frequency"
  1620. default HZ_250
  1621. help
  1622. Allows the configuration of the timer frequency.
  1623. config HZ_48
  1624. bool "48 HZ" if SYS_SUPPORTS_48HZ || SYS_SUPPORTS_ARBIT_HZ
  1625. config HZ_100
  1626. bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
  1627. config HZ_128
  1628. bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
  1629. config HZ_250
  1630. bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
  1631. config HZ_256
  1632. bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
  1633. config HZ_1000
  1634. bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
  1635. config HZ_1024
  1636. bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
  1637. endchoice
  1638. config SYS_SUPPORTS_48HZ
  1639. bool
  1640. config SYS_SUPPORTS_100HZ
  1641. bool
  1642. config SYS_SUPPORTS_128HZ
  1643. bool
  1644. config SYS_SUPPORTS_250HZ
  1645. bool
  1646. config SYS_SUPPORTS_256HZ
  1647. bool
  1648. config SYS_SUPPORTS_1000HZ
  1649. bool
  1650. config SYS_SUPPORTS_1024HZ
  1651. bool
  1652. config SYS_SUPPORTS_ARBIT_HZ
  1653. bool
  1654. default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
  1655. !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
  1656. !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
  1657. !SYS_SUPPORTS_1024HZ
  1658. config HZ
  1659. int
  1660. default 48 if HZ_48
  1661. default 100 if HZ_100
  1662. default 128 if HZ_128
  1663. default 250 if HZ_250
  1664. default 256 if HZ_256
  1665. default 1000 if HZ_1000
  1666. default 1024 if HZ_1024
  1667. source "kernel/Kconfig.preempt"
  1668. config MIPS_INSANE_LARGE
  1669. bool "Support for large 64-bit configurations"
  1670. depends on CPU_R10000 && 64BIT
  1671. help
  1672. MIPS R10000 does support a 44 bit / 16TB address space as opposed to
  1673. previous 64-bit processors which only supported 40 bit / 1TB. If you
  1674. need processes of more than 1TB virtual address space, say Y here.
  1675. This will result in additional memory usage, so it is not
  1676. recommended for normal users.
  1677. config KEXEC
  1678. bool "Kexec system call (EXPERIMENTAL)"
  1679. depends on EXPERIMENTAL
  1680. help
  1681. kexec is a system call that implements the ability to shutdown your
  1682. current kernel, and to start another kernel. It is like a reboot
  1683. but it is independent of the system firmware. And like a reboot
  1684. you can start any kernel with it, not just Linux.
  1685. The name comes from the similarity to the exec system call.
  1686. It is an ongoing process to be certain the hardware in a machine
  1687. is properly shutdown, so do not be surprised if this code does not
  1688. initially work for you. It may help to enable device hotplugging
  1689. support. As of this writing the exact hardware interface is
  1690. strongly in flux, so no good recommendation can be made.
  1691. config SECCOMP
  1692. bool "Enable seccomp to safely compute untrusted bytecode"
  1693. depends on PROC_FS
  1694. default y
  1695. help
  1696. This kernel feature is useful for number crunching applications
  1697. that may need to compute untrusted bytecode during their
  1698. execution. By using pipes or other transports made available to
  1699. the process as file descriptors supporting the read/write
  1700. syscalls, it's possible to isolate those applications in
  1701. their own address space using seccomp. Once seccomp is
  1702. enabled via /proc/<pid>/seccomp, it cannot be disabled
  1703. and the task is only allowed to execute a few safe syscalls
  1704. defined by each seccomp mode.
  1705. If unsure, say Y. Only embedded should say N here.
  1706. endmenu
  1707. config LOCKDEP_SUPPORT
  1708. bool
  1709. default y
  1710. config STACKTRACE_SUPPORT
  1711. bool
  1712. default y
  1713. source "init/Kconfig"
  1714. config PROBE_INITRD_HEADER
  1715. bool "Probe initrd header created by addinitrd"
  1716. depends on BLK_DEV_INITRD
  1717. help
  1718. Probe initrd header at the last page of kernel image.
  1719. Say Y here if you are using arch/mips/boot/addinitrd.c to
  1720. add initrd or initramfs image to the kernel image.
  1721. Otherwise, say N.
  1722. source "kernel/Kconfig.freezer"
  1723. menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
  1724. config HW_HAS_EISA
  1725. bool
  1726. config HW_HAS_PCI
  1727. bool
  1728. config PCI
  1729. bool "Support for PCI controller"
  1730. depends on HW_HAS_PCI
  1731. select PCI_DOMAINS
  1732. help
  1733. Find out whether you have a PCI motherboard. PCI is the name of a
  1734. bus system, i.e. the way the CPU talks to the other stuff inside
  1735. your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
  1736. say Y, otherwise N.
  1737. config PCI_DOMAINS
  1738. bool
  1739. source "drivers/pci/Kconfig"
  1740. #
  1741. # ISA support is now enabled via select. Too many systems still have the one
  1742. # or other ISA chip on the board that users don't know about so don't expect
  1743. # users to choose the right thing ...
  1744. #
  1745. config ISA
  1746. bool
  1747. config EISA
  1748. bool "EISA support"
  1749. depends on HW_HAS_EISA
  1750. select ISA
  1751. select GENERIC_ISA_DMA
  1752. ---help---
  1753. The Extended Industry Standard Architecture (EISA) bus was
  1754. developed as an open alternative to the IBM MicroChannel bus.
  1755. The EISA bus provided some of the features of the IBM MicroChannel
  1756. bus while maintaining backward compatibility with cards made for
  1757. the older ISA bus. The EISA bus saw limited use between 1988 and
  1758. 1995 when it was made obsolete by the PCI bus.
  1759. Say Y here if you are building a kernel for an EISA-based machine.
  1760. Otherwise, say N.
  1761. source "drivers/eisa/Kconfig"
  1762. config TC
  1763. bool "TURBOchannel support"
  1764. depends on MACH_DECSTATION
  1765. help
  1766. TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
  1767. processors. Documentation on writing device drivers for TurboChannel
  1768. is available at:
  1769. <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
  1770. #config ACCESSBUS
  1771. # bool "Access.Bus support"
  1772. # depends on TC
  1773. config MMU
  1774. bool
  1775. default y
  1776. config I8253
  1777. bool
  1778. config ZONE_DMA32
  1779. bool
  1780. source "drivers/pcmcia/Kconfig"
  1781. source "drivers/pci/hotplug/Kconfig"
  1782. endmenu
  1783. menu "Executable file formats"
  1784. source "fs/Kconfig.binfmt"
  1785. config TRAD_SIGNALS
  1786. bool
  1787. config MIPS32_COMPAT
  1788. bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
  1789. depends on 64BIT
  1790. help
  1791. Select this option if you want Linux/MIPS 32-bit binary
  1792. compatibility. Since all software available for Linux/MIPS is
  1793. currently 32-bit you should say Y here.
  1794. config COMPAT
  1795. bool
  1796. depends on MIPS32_COMPAT
  1797. default y
  1798. config SYSVIPC_COMPAT
  1799. bool
  1800. depends on COMPAT && SYSVIPC
  1801. default y
  1802. config MIPS32_O32
  1803. bool "Kernel support for o32 binaries"
  1804. depends on MIPS32_COMPAT
  1805. help
  1806. Select this option if you want to run o32 binaries. These are pure
  1807. 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
  1808. existing binaries are in this format.
  1809. If unsure, say Y.
  1810. config MIPS32_N32
  1811. bool "Kernel support for n32 binaries"
  1812. depends on MIPS32_COMPAT
  1813. help
  1814. Select this option if you want to run n32 binaries. These are
  1815. 64-bit binaries using 32-bit quantities for addressing and certain
  1816. data that would normally be 64-bit. They are used in special
  1817. cases.
  1818. If unsure, say N.
  1819. config BINFMT_ELF32
  1820. bool
  1821. default y if MIPS32_O32 || MIPS32_N32
  1822. endmenu
  1823. menu "Power management options"
  1824. config ARCH_HIBERNATION_POSSIBLE
  1825. def_bool y
  1826. depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP
  1827. config ARCH_SUSPEND_POSSIBLE
  1828. def_bool y
  1829. depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP
  1830. source "kernel/power/Kconfig"
  1831. endmenu
  1832. source "net/Kconfig"
  1833. source "drivers/Kconfig"
  1834. source "fs/Kconfig"
  1835. source "arch/mips/Kconfig.debug"
  1836. source "security/Kconfig"
  1837. source "crypto/Kconfig"
  1838. source "lib/Kconfig"