Kconfig 61 KB

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