Kconfig 34 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326
  1. # For a description of the syntax of this configuration file,
  2. # see Documentation/kbuild/kconfig-language.txt.
  3. #
  4. mainmenu "Linux/PowerPC Kernel Configuration"
  5. config WORD_SIZE
  6. int
  7. default 32
  8. config MMU
  9. bool
  10. default y
  11. config GENERIC_HARDIRQS
  12. bool
  13. default y
  14. config RWSEM_GENERIC_SPINLOCK
  15. bool
  16. config RWSEM_XCHGADD_ALGORITHM
  17. bool
  18. default y
  19. config ARCH_HAS_ILOG2_U32
  20. bool
  21. default y
  22. config ARCH_HAS_ILOG2_U64
  23. bool
  24. default n
  25. config GENERIC_HWEIGHT
  26. bool
  27. default y
  28. config GENERIC_CALIBRATE_DELAY
  29. bool
  30. default y
  31. config PPC
  32. bool
  33. default y
  34. config PPC32
  35. bool
  36. default y
  37. # All PPCs use generic nvram driver through ppc_md
  38. config GENERIC_NVRAM
  39. bool
  40. default y
  41. config GENERIC_FIND_NEXT_BIT
  42. bool
  43. default y
  44. config SCHED_NO_NO_OMIT_FRAME_POINTER
  45. bool
  46. default y
  47. config ARCH_MAY_HAVE_PC_FDC
  48. bool
  49. default y
  50. config GENERIC_BUG
  51. bool
  52. default y
  53. depends on BUG
  54. source "init/Kconfig"
  55. menu "Processor"
  56. choice
  57. prompt "Processor Type"
  58. default 6xx
  59. config 6xx
  60. bool "6xx/7xx/74xx/52xx/82xx/83xx"
  61. select PPC_FPU
  62. help
  63. There are four types of PowerPC chips supported. The more common
  64. types (601, 603, 604, 740, 750, 7400), the older Freescale
  65. (formerly Motorola) embedded versions (821, 823, 850, 855, 860,
  66. 52xx, 82xx, 83xx), the IBM embedded versions (403 and 405) and
  67. the Book E embedded processors from IBM (44x) and Freescale (85xx).
  68. For support for 64-bit processors, set ARCH=powerpc.
  69. Unless you are building a kernel for one of the embedded processor
  70. systems, choose 6xx.
  71. Also note that because the 52xx, 82xx, & 83xx family have a 603e
  72. core, specific support for that chipset is asked later on.
  73. config 40x
  74. bool "40x"
  75. select PPC_DCR_NATIVE
  76. config 44x
  77. bool "44x"
  78. select PPC_DCR_NATIVE
  79. config 8xx
  80. bool "8xx"
  81. select PPC_LIB_RHEAP
  82. config E200
  83. bool "e200"
  84. config E500
  85. bool "e500"
  86. endchoice
  87. config PPC_FPU
  88. bool
  89. config PPC_DCR_NATIVE
  90. bool
  91. default n
  92. config PPC_DCR
  93. bool
  94. depends on PPC_DCR_NATIVE
  95. default y
  96. config BOOKE
  97. bool
  98. depends on E200 || E500
  99. default y
  100. config FSL_BOOKE
  101. bool
  102. depends on E200 || E500
  103. default y
  104. config PTE_64BIT
  105. bool
  106. depends on 44x || E500
  107. default y if 44x
  108. default y if E500 && PHYS_64BIT
  109. config PHYS_64BIT
  110. bool 'Large physical address support' if E500
  111. depends on 44x || E500
  112. default y if 44x
  113. ---help---
  114. This option enables kernel support for larger than 32-bit physical
  115. addresses. This features is not be available on all e500 cores.
  116. If in doubt, say N here.
  117. config ALTIVEC
  118. bool "AltiVec Support"
  119. depends on 6xx
  120. depends on !8260 && !83xx
  121. ---help---
  122. This option enables kernel support for the Altivec extensions to the
  123. PowerPC processor. The kernel currently supports saving and restoring
  124. altivec registers, and turning on the 'altivec enable' bit so user
  125. processes can execute altivec instructions.
  126. This option is only usefully if you have a processor that supports
  127. altivec (G4, otherwise known as 74xx series), but does not have
  128. any affect on a non-altivec cpu (it does, however add code to the
  129. kernel).
  130. If in doubt, say Y here.
  131. config SPE
  132. bool "SPE Support"
  133. depends on E200 || E500
  134. ---help---
  135. This option enables kernel support for the Signal Processing
  136. Extensions (SPE) to the PowerPC processor. The kernel currently
  137. supports saving and restoring SPE registers, and turning on the
  138. 'spe enable' bit so user processes can execute SPE instructions.
  139. This option is only useful if you have a processor that supports
  140. SPE (e500, otherwise known as 85xx series), but does not have any
  141. effect on a non-spe cpu (it does, however add code to the kernel).
  142. If in doubt, say Y here.
  143. config TAU
  144. bool "Thermal Management Support"
  145. depends on 6xx && !8260 && !83xx
  146. help
  147. G3 and G4 processors have an on-chip temperature sensor called the
  148. 'Thermal Assist Unit (TAU)', which, in theory, can measure the on-die
  149. temperature within 2-4 degrees Celsius. This option shows the current
  150. on-die temperature in /proc/cpuinfo if the cpu supports it.
  151. Unfortunately, on some chip revisions, this sensor is very inaccurate
  152. and in some cases, does not work at all, so don't assume the cpu
  153. temp is actually what /proc/cpuinfo says it is.
  154. config TAU_INT
  155. bool "Interrupt driven TAU driver (DANGEROUS)"
  156. depends on TAU
  157. ---help---
  158. The TAU supports an interrupt driven mode which causes an interrupt
  159. whenever the temperature goes out of range. This is the fastest way
  160. to get notified the temp has exceeded a range. With this option off,
  161. a timer is used to re-check the temperature periodically.
  162. However, on some cpus it appears that the TAU interrupt hardware
  163. is buggy and can cause a situation which would lead unexplained hard
  164. lockups.
  165. Unless you are extending the TAU driver, or enjoy kernel/hardware
  166. debugging, leave this option off.
  167. config TAU_AVERAGE
  168. bool "Average high and low temp"
  169. depends on TAU
  170. ---help---
  171. The TAU hardware can compare the temperature to an upper and lower
  172. bound. The default behavior is to show both the upper and lower
  173. bound in /proc/cpuinfo. If the range is large, the temperature is
  174. either changing a lot, or the TAU hardware is broken (likely on some
  175. G4's). If the range is small (around 4 degrees), the temperature is
  176. relatively stable. If you say Y here, a single temperature value,
  177. halfway between the upper and lower bounds, will be reported in
  178. /proc/cpuinfo.
  179. If in doubt, say N here.
  180. config MATH_EMULATION
  181. bool "Math emulation"
  182. depends on 4xx || 8xx || E200 || E500
  183. ---help---
  184. Some PowerPC chips designed for embedded applications do not have
  185. a floating-point unit and therefore do not implement the
  186. floating-point instructions in the PowerPC instruction set. If you
  187. say Y here, the kernel will include code to emulate a floating-point
  188. unit, which will allow programs that use floating-point
  189. instructions to run.
  190. If you have an Apple machine or an IBM RS/6000 or pSeries machine,
  191. or any machine with a 6xx, 7xx or 7xxx series processor, say N
  192. here. Saying Y here will not hurt performance (on any machine) but
  193. will increase the size of the kernel.
  194. config KEXEC
  195. bool "kexec system call (EXPERIMENTAL)"
  196. depends on EXPERIMENTAL
  197. help
  198. kexec is a system call that implements the ability to shutdown your
  199. current kernel, and to start another kernel. It is like a reboot
  200. but it is independent of the system firmware. And like a reboot
  201. you can start any kernel with it, not just Linux.
  202. The name comes from the similarity to the exec system call.
  203. It is an ongoing process to be certain the hardware in a machine
  204. is properly shutdown, so do not be surprised if this code does not
  205. initially work for you. It may help to enable device hotplugging
  206. support. As of this writing the exact hardware interface is
  207. strongly in flux, so no good recommendation can be made.
  208. In the GameCube implementation, kexec allows you to load and
  209. run DOL files, including kernel and homebrew DOLs.
  210. source "drivers/cpufreq/Kconfig"
  211. config PPC601_SYNC_FIX
  212. bool "Workarounds for PPC601 bugs"
  213. depends on 6xx && PPC_PREP
  214. help
  215. Some versions of the PPC601 (the first PowerPC chip) have bugs which
  216. mean that extra synchronization instructions are required near
  217. certain instructions, typically those that make major changes to the
  218. CPU state. These extra instructions reduce performance slightly.
  219. If you say N here, these extra instructions will not be included,
  220. resulting in a kernel which will run faster but may not run at all
  221. on some systems with the PPC601 chip.
  222. If in doubt, say Y here.
  223. source arch/ppc/platforms/4xx/Kconfig
  224. source arch/ppc/platforms/85xx/Kconfig
  225. config PPC_STD_MMU
  226. bool
  227. depends on 6xx
  228. default y
  229. config NOT_COHERENT_CACHE
  230. bool
  231. depends on 4xx || 8xx || E200
  232. default y
  233. endmenu
  234. menu "Platform options"
  235. config FADS
  236. bool
  237. choice
  238. prompt "8xx Machine Type"
  239. depends on 8xx
  240. default RPXLITE
  241. config RPXLITE
  242. bool "RPX-Lite"
  243. ---help---
  244. Single-board computers based around the PowerPC MPC8xx chips and
  245. intended for embedded applications. The following types are
  246. supported:
  247. RPX-Lite:
  248. Embedded Planet RPX Lite. PC104 form-factor SBC based on the MPC823.
  249. RPX-Classic:
  250. Embedded Planet RPX Classic Low-fat. Credit-card-size SBC based on
  251. the MPC 860
  252. BSE-IP:
  253. Bright Star Engineering ip-Engine.
  254. TQM823L:
  255. TQM850L:
  256. TQM855L:
  257. TQM860L:
  258. MPC8xx based family of mini modules, half credit card size,
  259. up to 64 MB of RAM, 8 MB Flash, (Fast) Ethernet, 2 x serial ports,
  260. 2 x CAN bus interface, ...
  261. Manufacturer: TQ Components, www.tq-group.de
  262. Date of Release: October (?) 1999
  263. End of Life: not yet :-)
  264. URL:
  265. - module: <http://www.denx.de/PDF/TQM8xxLHWM201.pdf>
  266. - starter kit: <http://www.denx.de/PDF/STK8xxLHWM201.pdf>
  267. - images: <http://www.denx.de/embedded-ppc-en.html>
  268. FPS850L:
  269. FingerPrint Sensor System (based on TQM850L)
  270. Manufacturer: IKENDI AG, <http://www.ikendi.com/>
  271. Date of Release: November 1999
  272. End of life: end 2000 ?
  273. URL: see TQM850L
  274. IVMS8:
  275. MPC860 based board used in the "Integrated Voice Mail System",
  276. Small Version (8 voice channels)
  277. Manufacturer: Speech Design, <http://www.speech-design.de/>
  278. Date of Release: December 2000 (?)
  279. End of life: -
  280. URL: <http://www.speech-design.de/>
  281. IVML24:
  282. MPC860 based board used in the "Integrated Voice Mail System",
  283. Large Version (24 voice channels)
  284. Manufacturer: Speech Design, <http://www.speech-design.de/>
  285. Date of Release: March 2001 (?)
  286. End of life: -
  287. URL: <http://www.speech-design.de/>
  288. HERMES:
  289. Hermes-Pro ISDN/LAN router with integrated 8 x hub
  290. Manufacturer: Multidata Gesellschaft fur Datentechnik und Informatik
  291. <http://www.multidata.de/>
  292. Date of Release: 2000 (?)
  293. End of life: -
  294. URL: <http://www.multidata.de/english/products/hpro.htm>
  295. IP860:
  296. VMEBus IP (Industry Pack) carrier board with MPC860
  297. Manufacturer: MicroSys GmbH, <http://www.microsys.de/>
  298. Date of Release: ?
  299. End of life: -
  300. URL: <http://www.microsys.de/html/ip860.html>
  301. PCU_E:
  302. PCU = Peripheral Controller Unit, Extended
  303. Manufacturer: Siemens AG, ICN (Information and Communication Networks)
  304. <http://www.siemens.de/page/1,3771,224315-1-999_2_226207-0,00.html>
  305. Date of Release: April 2001
  306. End of life: August 2001
  307. URL: n. a.
  308. config RPXCLASSIC
  309. bool "RPX-Classic"
  310. help
  311. The RPX-Classic is a single-board computer based on the Motorola
  312. MPC860. It features 16MB of DRAM and a variable amount of flash,
  313. I2C EEPROM, thermal monitoring, a PCMCIA slot, a DIP switch and two
  314. LEDs. Variants with Ethernet ports exist. Say Y here to support it
  315. directly.
  316. config BSEIP
  317. bool "BSE-IP"
  318. help
  319. Say Y here to support the Bright Star Engineering ipEngine SBC.
  320. This is a credit-card-sized device featuring a MPC823 processor,
  321. 26MB DRAM, 4MB flash, Ethernet, a 16K-gate FPGA, USB, an LCD/video
  322. controller, and two RS232 ports.
  323. config MPC8XXFADS
  324. bool "FADS"
  325. select FADS
  326. config MPC86XADS
  327. bool "MPC86XADS"
  328. help
  329. MPC86x Application Development System by Freescale Semiconductor.
  330. The MPC86xADS is meant to serve as a platform for s/w and h/w
  331. development around the MPC86X processor families.
  332. select FADS
  333. config MPC885ADS
  334. bool "MPC885ADS"
  335. help
  336. Freescale Semiconductor MPC885 Application Development System (ADS).
  337. Also known as DUET.
  338. The MPC885ADS is meant to serve as a platform for s/w and h/w
  339. development around the MPC885 processor family.
  340. config TQM823L
  341. bool "TQM823L"
  342. help
  343. Say Y here to support the TQM823L, one of an MPC8xx-based family of
  344. mini SBCs (half credit-card size) from TQ Components first released
  345. in late 1999. Technical references are at
  346. <http://www.denx.de/PDF/TQM8xxLHWM201.pdf>, and
  347. <http://www.denx.de/PDF/STK8xxLHWM201.pdf>, and an image at
  348. <http://www.denx.de/embedded-ppc-en.html>.
  349. config TQM850L
  350. bool "TQM850L"
  351. help
  352. Say Y here to support the TQM850L, one of an MPC8xx-based family of
  353. mini SBCs (half credit-card size) from TQ Components first released
  354. in late 1999. Technical references are at
  355. <http://www.denx.de/PDF/TQM8xxLHWM201.pdf>, and
  356. <http://www.denx.de/PDF/STK8xxLHWM201.pdf>, and an image at
  357. <http://www.denx.de/embedded-ppc-en.html>.
  358. config TQM855L
  359. bool "TQM855L"
  360. help
  361. Say Y here to support the TQM855L, one of an MPC8xx-based family of
  362. mini SBCs (half credit-card size) from TQ Components first released
  363. in late 1999. Technical references are at
  364. <http://www.denx.de/PDF/TQM8xxLHWM201.pdf>, and
  365. <http://www.denx.de/PDF/STK8xxLHWM201.pdf>, and an image at
  366. <http://www.denx.de/embedded-ppc-en.html>.
  367. config TQM860L
  368. bool "TQM860L"
  369. help
  370. Say Y here to support the TQM860L, one of an MPC8xx-based family of
  371. mini SBCs (half credit-card size) from TQ Components first released
  372. in late 1999. Technical references are at
  373. <http://www.denx.de/PDF/TQM8xxLHWM201.pdf>, and
  374. <http://www.denx.de/PDF/STK8xxLHWM201.pdf>, and an image at
  375. <http://www.denx.de/embedded-ppc-en.html>.
  376. config FPS850L
  377. bool "FPS850L"
  378. config IVMS8
  379. bool "IVMS8"
  380. help
  381. Say Y here to support the Integrated Voice-Mail Small 8-channel SBC
  382. from Speech Design, released March 2001. The manufacturer's website
  383. is at <http://www.speech-design.de/>.
  384. config IVML24
  385. bool "IVML24"
  386. help
  387. Say Y here to support the Integrated Voice-Mail Large 24-channel SBC
  388. from Speech Design, released March 2001. The manufacturer's website
  389. is at <http://www.speech-design.de/>.
  390. config HERMES_PRO
  391. bool "HERMES"
  392. config IP860
  393. bool "IP860"
  394. config LWMON
  395. bool "LWMON"
  396. config PCU_E
  397. bool "PCU_E"
  398. config CCM
  399. bool "CCM"
  400. config LANTEC
  401. bool "LANTEC"
  402. config MBX
  403. bool "MBX"
  404. help
  405. MBX is a line of Motorola single-board computer based around the
  406. MPC821 and MPC860 processors, and intended for embedded-controller
  407. applications. Say Y here to support these boards directly.
  408. config WINCEPT
  409. bool "WinCept"
  410. help
  411. The Wincept 100/110 is a Motorola single-board computer based on the
  412. MPC821 PowerPC, introduced in 1998 and designed to be used in
  413. thin-client machines. Say Y to support it directly.
  414. endchoice
  415. menu "Freescale Ethernet driver platform-specific options"
  416. depends on FS_ENET
  417. config MPC8xx_SECOND_ETH
  418. bool "Second Ethernet channel"
  419. depends on (MPC885ADS || MPC86XADS)
  420. default y
  421. help
  422. This enables support for second Ethernet on MPC885ADS and MPC86xADS boards.
  423. The latter will use SCC1, for 885ADS you can select it below.
  424. choice
  425. prompt "Second Ethernet channel"
  426. depends on MPC8xx_SECOND_ETH
  427. default MPC8xx_SECOND_ETH_FEC2
  428. config MPC8xx_SECOND_ETH_FEC2
  429. bool "FEC2"
  430. depends on MPC885ADS
  431. help
  432. Enable FEC2 to serve as 2-nd Ethernet channel. Note that SMC2
  433. (often 2-nd UART) will not work if this is enabled.
  434. config MPC8xx_SECOND_ETH_SCC1
  435. bool "SCC1"
  436. depends on MPC86XADS
  437. select MPC8xx_SCC_ENET_FIXED
  438. help
  439. Enable SCC1 to serve as 2-nd Ethernet channel. Note that SMC1
  440. (often 1-nd UART) will not work if this is enabled.
  441. config MPC8xx_SECOND_ETH_SCC3
  442. bool "SCC3"
  443. depends on MPC885ADS
  444. help
  445. Enable SCC3 to serve as 2-nd Ethernet channel. Note that SMC1
  446. (often 1-nd UART) will not work if this is enabled.
  447. endchoice
  448. config MPC8xx_SCC_ENET_FIXED
  449. depends on MPC8xx_SECOND_ETH_SCC
  450. default n
  451. bool "Use fixed MII-less mode for SCC Ethernet"
  452. endmenu
  453. choice
  454. prompt "Machine Type"
  455. depends on 6xx
  456. default PPC_PREP
  457. ---help---
  458. Linux currently supports several different kinds of PowerPC-based
  459. machines: Apple Power Macintoshes and clones (such as the Motorola
  460. Starmax series), PReP (PowerPC Reference Platform) machines (such
  461. as the Motorola PowerStacks, Motorola cPCI/VME embedded systems,
  462. and some IBM RS/6000 systems), CHRP (Common Hardware Reference
  463. Platform) machines (including all of the recent IBM RS/6000 and
  464. pSeries machines), and several embedded PowerPC systems containing
  465. 4xx, 6xx, 7xx, 8xx, 74xx, and 82xx processors. Currently, the
  466. default option is to build a kernel which works on PReP.
  467. Note that support for Apple and CHRP machines is now only available
  468. with ARCH=powerpc, and has been removed from this menu. If you
  469. wish to build a kernel for an Apple or CHRP machine, exit this
  470. configuration process and re-run it with ARCH=powerpc.
  471. Select PReP if configuring for a PReP machine.
  472. config PPC_PREP
  473. bool "PReP"
  474. config KATANA
  475. bool "Artesyn-Katana"
  476. help
  477. Select KATANA if configuring an Artesyn KATANA 750i or 3750
  478. cPCI board.
  479. config WILLOW
  480. bool "Cogent-Willow"
  481. config CPCI690
  482. bool "Force-CPCI690"
  483. help
  484. Select CPCI690 if configuring a Force CPCI690 cPCI board.
  485. config POWERPMC250
  486. bool "Force-PowerPMC250"
  487. config CHESTNUT
  488. bool "IBM 750FX Eval board or 750GX Eval board"
  489. help
  490. Select CHESTNUT if configuring an IBM 750FX Eval Board or a
  491. IBM 750GX Eval board.
  492. config SPRUCE
  493. bool "IBM-Spruce"
  494. select PPC_INDIRECT_PCI
  495. config HDPU
  496. bool "Sky-HDPU"
  497. help
  498. Select HDPU if configuring a Sky Computers Compute Blade.
  499. config HDPU_FEATURES
  500. depends on HDPU
  501. tristate "HDPU-Features"
  502. help
  503. Select to enable HDPU enhanced features.
  504. config EV64260
  505. bool "Marvell-EV64260BP"
  506. help
  507. Select EV64260 if configuring a Marvell (formerly Galileo)
  508. EV64260BP Evaluation platform.
  509. config LOPEC
  510. bool "Motorola-LoPEC"
  511. select PPC_I8259
  512. config MVME5100
  513. bool "Motorola-MVME5100"
  514. select PPC_INDIRECT_PCI
  515. config PPLUS
  516. bool "Motorola-PowerPlus"
  517. select PPC_I8259
  518. select PPC_INDIRECT_PCI
  519. config PRPMC750
  520. bool "Motorola-PrPMC750"
  521. select PPC_INDIRECT_PCI
  522. config PRPMC800
  523. bool "Motorola-PrPMC800"
  524. select PPC_INDIRECT_PCI
  525. config SANDPOINT
  526. bool "Motorola-Sandpoint"
  527. select PPC_I8259
  528. help
  529. Select SANDPOINT if configuring for a Motorola Sandpoint X3
  530. (any flavor).
  531. config RADSTONE_PPC7D
  532. bool "Radstone Technology PPC7D board"
  533. select PPC_I8259
  534. config PAL4
  535. bool "SBS-Palomar4"
  536. config EST8260
  537. bool "EST8260"
  538. ---help---
  539. The EST8260 is a single-board computer manufactured by Wind River
  540. Systems, Inc. (formerly Embedded Support Tools Corp.) and based on
  541. the MPC8260. Wind River Systems has a website at
  542. <http://www.windriver.com/>, but the EST8260 cannot be found on it
  543. and has probably been discontinued or rebadged.
  544. config SBC82xx
  545. bool "SBC82xx"
  546. ---help---
  547. SBC PowerQUICC II, single-board computer with MPC82xx CPU
  548. Manufacturer: Wind River Systems, Inc.
  549. Date of Release: May 2003
  550. End of Life: -
  551. URL: <http://www.windriver.com/>
  552. config SBS8260
  553. bool "SBS8260"
  554. config RPX8260
  555. bool "RPXSUPER"
  556. config TQM8260
  557. bool "TQM8260"
  558. ---help---
  559. MPC8260 based module, little larger than credit card,
  560. up to 128 MB global + 64 MB local RAM, 32 MB Flash,
  561. 32 kB EEPROM, 256 kB L@ Cache, 10baseT + 100baseT Ethernet,
  562. 2 x serial ports, ...
  563. Manufacturer: TQ Components, www.tq-group.de
  564. Date of Release: June 2001
  565. End of Life: not yet :-)
  566. URL: <http://www.denx.de/PDF/TQM82xx_SPEC_Rev005.pdf>
  567. config ADS8272
  568. bool "ADS8272"
  569. config PQ2FADS
  570. bool "Freescale-PQ2FADS"
  571. help
  572. Select PQ2FADS if you wish to configure for a Freescale
  573. PQ2FADS board (-VR or -ZU).
  574. config LITE5200
  575. bool "Freescale LITE5200 / (IceCube)"
  576. select PPC_MPC52xx
  577. help
  578. Support for the LITE5200 dev board for the MPC5200 from Freescale.
  579. This is for the LITE5200 version 2.0 board. Don't know if it changes
  580. much but it's only been tested on this board version. I think this
  581. board is also known as IceCube.
  582. config LITE5200B
  583. bool "Freescale LITE5200B"
  584. depends on LITE5200
  585. help
  586. Support for the LITE5200B dev board for the MPC5200 from Freescale.
  587. This is the new board with 2 PCI slots.
  588. config MPC834x_SYS
  589. bool "Freescale MPC834x SYS"
  590. help
  591. This option enables support for the MPC 834x SYS evaluation board.
  592. Be aware that PCI buses can only function when SYS board is plugged
  593. into the PIB (Platform IO Board) board from Freescale which provide
  594. 3 PCI slots. The PIBs PCI initialization is the bootloader's
  595. responsibility.
  596. config EV64360
  597. bool "Marvell-EV64360BP"
  598. help
  599. Select EV64360 if configuring a Marvell EV64360BP Evaluation
  600. platform.
  601. endchoice
  602. config PQ2ADS
  603. bool
  604. depends on ADS8272
  605. default y
  606. config TQM8xxL
  607. bool
  608. depends on 8xx && (TQM823L || TQM850L || FPS850L || TQM855L || TQM860L)
  609. default y
  610. config EMBEDDEDBOOT
  611. bool
  612. depends on 8xx || 8260
  613. default y
  614. config PPC_MPC52xx
  615. bool
  616. config 8260
  617. bool "CPM2 Support" if WILLOW
  618. depends on 6xx
  619. default y if TQM8260 || RPX8260 || EST8260 || SBS8260 || SBC82xx || PQ2FADS
  620. help
  621. The MPC8260 is a typical embedded CPU made by Motorola. Selecting
  622. this option means that you wish to build a kernel for a machine with
  623. an 8260 class CPU.
  624. config 8272
  625. bool
  626. depends on 6xx
  627. default y if ADS8272
  628. select 8260
  629. help
  630. The MPC8272 CPM has a different internal dpram setup than other CPM2
  631. devices
  632. config 83xx
  633. bool
  634. default y if MPC834x_SYS
  635. config MPC834x
  636. bool
  637. default y if MPC834x_SYS
  638. config PPC_83xx
  639. bool
  640. default y if 83xx
  641. config CPM1
  642. bool
  643. depends on 8xx
  644. default y
  645. help
  646. The CPM1 (Communications Processor Module) is a coprocessor on
  647. embedded CPUs made by Motorola. Selecting this option means that
  648. you wish to build a kernel for a machine with a CPM1 coprocessor
  649. on it (8xx, 827x, 8560).
  650. config CPM2
  651. bool
  652. depends on 8260 || MPC8560 || MPC8555
  653. select PPC_LIB_RHEAP
  654. default y
  655. help
  656. The CPM2 (Communications Processor Module) is a coprocessor on
  657. embedded CPUs made by Motorola. Selecting this option means that
  658. you wish to build a kernel for a machine with a CPM2 coprocessor
  659. on it (826x, 827x, 8560).
  660. config PPC_GEN550
  661. bool
  662. depends on SANDPOINT || SPRUCE || PPLUS || \
  663. PRPMC750 || PRPMC800 || LOPEC || \
  664. (EV64260 && !SERIAL_MPSC) || CHESTNUT || RADSTONE_PPC7D || \
  665. 83xx
  666. default y
  667. config FORCE
  668. bool
  669. depends on 6xx && POWERPMC250
  670. default y
  671. config GT64260
  672. bool
  673. depends on EV64260 || CPCI690
  674. default y
  675. config MV64360 # Really MV64360 & MV64460
  676. bool
  677. depends on CHESTNUT || KATANA || RADSTONE_PPC7D || HDPU || EV64360
  678. default y
  679. config MV64X60
  680. bool
  681. depends on (GT64260 || MV64360)
  682. select PPC_INDIRECT_PCI
  683. default y
  684. config MV643XX_ETH_0
  685. bool
  686. depends on MV643XX_ETH && (KATANA || RADSTONE_PPC7D || EV64360 || HDPU)
  687. default y
  688. config MV643XX_ETH_1
  689. bool
  690. depends on MV643XX_ETH && (KATANA || RADSTONE_PPC7D || EV64360)
  691. default y
  692. config MV643XX_ETH_2
  693. bool
  694. depends on MV643XX_ETH && (KATANA || RADSTONE_PPC7D || EV64360)
  695. default y
  696. menu "Set bridge options"
  697. depends on MV64X60
  698. config NOT_COHERENT_CACHE
  699. bool "Turn off Cache Coherency"
  700. default n
  701. help
  702. Some 64x60 bridges lock up when trying to enforce cache coherency.
  703. When this option is selected, cache coherency will be turned off.
  704. Note that this can cause other problems (e.g., stale data being
  705. speculatively loaded via a cached mapping). Use at your own risk.
  706. config MV64X60_BASE
  707. hex "Set bridge base used by firmware"
  708. default "0xf1000000"
  709. help
  710. A firmware can leave the base address of the bridge's registers at
  711. a non-standard location. If so, set this value to reflect the
  712. address of that non-standard location.
  713. config MV64X60_NEW_BASE
  714. hex "Set bridge base used by kernel"
  715. default "0xf1000000"
  716. help
  717. If the current base address of the bridge's registers is not where
  718. you want it, set this value to the address that you want it moved to.
  719. endmenu
  720. config NONMONARCH_SUPPORT
  721. bool "Enable Non-Monarch Support"
  722. depends on PRPMC800
  723. config HARRIER
  724. bool
  725. depends on PRPMC800
  726. default y
  727. config EPIC_SERIAL_MODE
  728. bool
  729. depends on 6xx && (LOPEC || SANDPOINT)
  730. default y
  731. config MPC10X_BRIDGE
  732. bool
  733. depends on POWERPMC250 || LOPEC || SANDPOINT
  734. select PPC_INDIRECT_PCI
  735. default y
  736. config MPC10X_OPENPIC
  737. bool
  738. depends on POWERPMC250 || LOPEC || SANDPOINT
  739. default y
  740. config MPC10X_STORE_GATHERING
  741. bool "Enable MPC10x store gathering"
  742. depends on MPC10X_BRIDGE
  743. config SANDPOINT_ENABLE_UART1
  744. bool "Enable DUART mode on Sandpoint"
  745. depends on SANDPOINT
  746. help
  747. If this option is enabled then the MPC824x processor will run
  748. in DUART mode instead of UART mode.
  749. config HARRIER_STORE_GATHERING
  750. bool "Enable Harrier store gathering"
  751. depends on HARRIER
  752. config MVME5100_IPMC761_PRESENT
  753. bool "MVME5100 configured with an IPMC761"
  754. depends on MVME5100
  755. select PPC_I8259
  756. config SPRUCE_BAUD_33M
  757. bool "Spruce baud clock support"
  758. depends on SPRUCE
  759. config PC_KEYBOARD
  760. bool "PC PS/2 style Keyboard"
  761. depends on 4xx || CPM2
  762. config PPCBUG_NVRAM
  763. bool "Enable reading PPCBUG NVRAM during boot" if PPLUS || LOPEC
  764. default y if PPC_PREP
  765. config SMP
  766. depends on PPC_STD_MMU
  767. bool "Symmetric multi-processing support"
  768. ---help---
  769. This enables support for systems with more than one CPU. If you have
  770. a system with only one CPU, say N. If you have a system with more
  771. than one CPU, say Y. Note that the kernel does not currently
  772. support SMP machines with 603/603e/603ev or PPC750 ("G3") processors
  773. since they have inadequate hardware support for multiprocessor
  774. operation.
  775. If you say N here, the kernel will run on single and multiprocessor
  776. machines, but will use only one CPU of a multiprocessor machine. If
  777. you say Y here, the kernel will run on single-processor machines.
  778. On a single-processor machine, the kernel will run faster if you say
  779. N here.
  780. If you don't know what to do here, say N.
  781. config IRQ_ALL_CPUS
  782. bool "Distribute interrupts on all CPUs by default"
  783. depends on SMP && !MV64360
  784. help
  785. This option gives the kernel permission to distribute IRQs across
  786. multiple CPUs. Saying N here will route all IRQs to the first
  787. CPU. Generally saying Y is safe, although some problems have been
  788. reported with SMP Power Macintoshes with this option enabled.
  789. config NR_CPUS
  790. int "Maximum number of CPUs (2-32)"
  791. range 2 32
  792. depends on SMP
  793. default "4"
  794. config HIGHMEM
  795. bool "High memory support"
  796. config ARCH_POPULATES_NODE_MAP
  797. def_bool y
  798. source kernel/Kconfig.hz
  799. source kernel/Kconfig.preempt
  800. source "mm/Kconfig"
  801. source "fs/Kconfig.binfmt"
  802. config PREP_RESIDUAL
  803. bool "Support for PReP Residual Data"
  804. depends on PPC_PREP
  805. help
  806. Some PReP systems have residual data passed to the kernel by the
  807. firmware. This allows detection of memory size, devices present and
  808. other useful pieces of information. Sometimes this information is
  809. not present or incorrect, in which case it could lead to the machine
  810. behaving incorrectly. If this happens, either disable PREP_RESIDUAL
  811. or pass the 'noresidual' option to the kernel.
  812. If you are running a PReP system, say Y here, otherwise say N.
  813. config PROC_PREPRESIDUAL
  814. bool "Support for reading of PReP Residual Data in /proc"
  815. depends on PREP_RESIDUAL && PROC_FS
  816. help
  817. Enabling this option will create a /proc/residual file which allows
  818. you to get at the residual data on PReP systems. You will need a tool
  819. (lsresidual) to parse it. If you aren't on a PReP system, you don't
  820. want this.
  821. config CMDLINE_BOOL
  822. bool "Default bootloader kernel arguments"
  823. config CMDLINE
  824. string "Initial kernel command string"
  825. depends on CMDLINE_BOOL
  826. default "console=ttyS0,9600 console=tty0 root=/dev/sda2"
  827. help
  828. On some platforms, there is currently no way for the boot loader to
  829. pass arguments to the kernel. For these platforms, you can supply
  830. some command-line options at build time by entering them here. In
  831. most cases you will need to specify the root device here.
  832. if BROKEN
  833. source kernel/power/Kconfig
  834. endif
  835. config SECCOMP
  836. bool "Enable seccomp to safely compute untrusted bytecode"
  837. depends on PROC_FS
  838. default y
  839. help
  840. This kernel feature is useful for number crunching applications
  841. that may need to compute untrusted bytecode during their
  842. execution. By using pipes or other transports made available to
  843. the process as file descriptors supporting the read/write
  844. syscalls, it's possible to isolate those applications in
  845. their own address space using seccomp. Once seccomp is
  846. enabled via /proc/<pid>/seccomp, it cannot be disabled
  847. and the task is only allowed to execute a few safe syscalls
  848. defined by each seccomp mode.
  849. If unsure, say Y. Only embedded should say N here.
  850. endmenu
  851. config ISA_DMA_API
  852. bool
  853. default y
  854. menu "Bus options"
  855. config ISA
  856. bool "Support for ISA-bus hardware"
  857. depends on PPC_PREP
  858. help
  859. Find out whether you have ISA slots on your motherboard. ISA is the
  860. name of a bus system, i.e. the way the CPU talks to the other stuff
  861. inside your box. If you have an Apple machine, say N here; if you
  862. have an IBM RS/6000 or pSeries machine or a PReP machine, say Y. If
  863. you have an embedded board, consult your board documentation.
  864. config ZONE_DMA
  865. bool
  866. default y
  867. config GENERIC_ISA_DMA
  868. bool
  869. depends on 6xx && !CPM2
  870. default y
  871. config PPC_I8259
  872. bool
  873. default y if 85xx || PPC_PREP
  874. default n
  875. config PPC_INDIRECT_PCI
  876. bool
  877. depends on PCI
  878. default y if 40x || 44x || 85xx || 83xx || PPC_PREP
  879. default n
  880. config EISA
  881. bool
  882. help
  883. The Extended Industry Standard Architecture (EISA) bus is a bus
  884. architecture used on some older intel-based PCs.
  885. config SBUS
  886. bool
  887. # Yes MCA RS/6000s exist but Linux-PPC does not currently support any
  888. config MCA
  889. bool
  890. config PCI
  891. bool "PCI support" if 40x || CPM2 || 83xx || 85xx || PPC_MPC52xx
  892. default y if !40x && !CPM2 && !8xx && !83xx && !85xx
  893. default PCI_QSPAN if !4xx && !CPM2 && 8xx
  894. help
  895. Find out whether your system includes a PCI bus. PCI is the name of
  896. a bus system, i.e. the way the CPU talks to the other stuff inside
  897. your box. If you say Y here, the kernel will include drivers and
  898. infrastructure code to support PCI bus devices.
  899. config PCI_DOMAINS
  900. def_bool PCI
  901. config PCI_SYSCALL
  902. def_bool PCI
  903. config MPC83xx_PCI2
  904. bool "Support for 2nd PCI host controller"
  905. depends on PCI && MPC834x
  906. default y if MPC834x_SYS
  907. config PCI_QSPAN
  908. bool "QSpan PCI"
  909. depends on !4xx && !CPM2 && 8xx
  910. select PPC_I8259
  911. help
  912. Say Y here if you have a system based on a Motorola 8xx-series
  913. embedded processor with a QSPAN PCI interface, otherwise say N.
  914. config PCI_8260
  915. bool
  916. depends on PCI && 8260
  917. select PPC_INDIRECT_PCI
  918. default y
  919. config 8260_PCI9
  920. bool "Enable workaround for MPC826x erratum PCI 9"
  921. depends on PCI_8260 && !ADS8272
  922. default y
  923. choice
  924. prompt "IDMA channel for PCI 9 workaround"
  925. depends on 8260_PCI9
  926. config 8260_PCI9_IDMA1
  927. bool "IDMA1"
  928. config 8260_PCI9_IDMA2
  929. bool "IDMA2"
  930. config 8260_PCI9_IDMA3
  931. bool "IDMA3"
  932. config 8260_PCI9_IDMA4
  933. bool "IDMA4"
  934. endchoice
  935. source "drivers/pci/Kconfig"
  936. source "drivers/pcmcia/Kconfig"
  937. config RAPIDIO
  938. bool "RapidIO support" if MPC8540 || MPC8560
  939. help
  940. If you say Y here, the kernel will include drivers and
  941. infrastructure code to support RapidIO interconnect devices.
  942. source "drivers/rapidio/Kconfig"
  943. endmenu
  944. menu "Advanced setup"
  945. config ADVANCED_OPTIONS
  946. bool "Prompt for advanced kernel configuration options"
  947. help
  948. This option will enable prompting for a variety of advanced kernel
  949. configuration options. These options can cause the kernel to not
  950. work if they are set incorrectly, but can be used to optimize certain
  951. aspects of kernel memory management.
  952. Unless you know what you are doing, say N here.
  953. comment "Default settings for advanced configuration options are used"
  954. depends on !ADVANCED_OPTIONS
  955. config HIGHMEM_START_BOOL
  956. bool "Set high memory pool address"
  957. depends on ADVANCED_OPTIONS && HIGHMEM
  958. help
  959. This option allows you to set the base address of the kernel virtual
  960. area used to map high memory pages. This can be useful in
  961. optimizing the layout of kernel virtual memory.
  962. Say N here unless you know what you are doing.
  963. config HIGHMEM_START
  964. hex "Virtual start address of high memory pool" if HIGHMEM_START_BOOL
  965. default "0xfe000000"
  966. config LOWMEM_SIZE_BOOL
  967. bool "Set maximum low memory"
  968. depends on ADVANCED_OPTIONS
  969. help
  970. This option allows you to set the maximum amount of memory which
  971. will be used as "low memory", that is, memory which the kernel can
  972. access directly, without having to set up a kernel virtual mapping.
  973. This can be useful in optimizing the layout of kernel virtual
  974. memory.
  975. Say N here unless you know what you are doing.
  976. config LOWMEM_SIZE
  977. hex "Maximum low memory size (in bytes)" if LOWMEM_SIZE_BOOL
  978. default "0x30000000"
  979. config KERNEL_START_BOOL
  980. bool "Set custom kernel base address"
  981. depends on ADVANCED_OPTIONS
  982. help
  983. This option allows you to set the kernel virtual address at which
  984. the kernel will map low memory (the kernel image will be linked at
  985. this address). This can be useful in optimizing the virtual memory
  986. layout of the system.
  987. Say N here unless you know what you are doing.
  988. config KERNEL_START
  989. hex "Virtual address of kernel base" if KERNEL_START_BOOL
  990. default "0xc0000000"
  991. config TASK_SIZE_BOOL
  992. bool "Set custom user task size"
  993. depends on ADVANCED_OPTIONS
  994. help
  995. This option allows you to set the amount of virtual address space
  996. allocated to user tasks. This can be useful in optimizing the
  997. virtual memory layout of the system.
  998. Say N here unless you know what you are doing.
  999. config TASK_SIZE
  1000. hex "Size of user task space" if TASK_SIZE_BOOL
  1001. default "0x80000000"
  1002. config CONSISTENT_START_BOOL
  1003. bool "Set custom consistent memory pool address"
  1004. depends on ADVANCED_OPTIONS && NOT_COHERENT_CACHE
  1005. help
  1006. This option allows you to set the base virtual address
  1007. of the consistent memory pool. This pool of virtual
  1008. memory is used to make consistent memory allocations.
  1009. config CONSISTENT_START
  1010. hex "Base virtual address of consistent memory pool" if CONSISTENT_START_BOOL
  1011. default "0xff100000" if NOT_COHERENT_CACHE
  1012. config CONSISTENT_SIZE_BOOL
  1013. bool "Set custom consistent memory pool size"
  1014. depends on ADVANCED_OPTIONS && NOT_COHERENT_CACHE
  1015. help
  1016. This option allows you to set the size of the
  1017. consistent memory pool. This pool of virtual memory
  1018. is used to make consistent memory allocations.
  1019. config CONSISTENT_SIZE
  1020. hex "Size of consistent memory pool" if CONSISTENT_SIZE_BOOL
  1021. default "0x00200000" if NOT_COHERENT_CACHE
  1022. config BOOT_LOAD_BOOL
  1023. bool "Set the boot link/load address"
  1024. depends on ADVANCED_OPTIONS && !PPC_PREP
  1025. help
  1026. This option allows you to set the initial load address of the zImage
  1027. or zImage.initrd file. This can be useful if you are on a board
  1028. which has a small amount of memory.
  1029. Say N here unless you know what you are doing.
  1030. config BOOT_LOAD
  1031. hex "Link/load address for booting" if BOOT_LOAD_BOOL
  1032. default "0x00400000" if 40x || 8xx || 8260
  1033. default "0x01000000" if 44x
  1034. default "0x00800000"
  1035. config PIN_TLB
  1036. bool "Pinned Kernel TLBs (860 ONLY)"
  1037. depends on ADVANCED_OPTIONS && 8xx
  1038. config PPC_LIB_RHEAP
  1039. bool
  1040. endmenu
  1041. source "net/Kconfig"
  1042. source "drivers/Kconfig"
  1043. source "fs/Kconfig"
  1044. source "arch/ppc/8xx_io/Kconfig"
  1045. source "arch/ppc/8260_io/Kconfig"
  1046. menu "IBM 40x options"
  1047. depends on 40x
  1048. config SERIAL_SICC
  1049. bool "SICC Serial port"
  1050. depends on STB03xxx
  1051. config UART1_DFLT_CONSOLE
  1052. bool
  1053. depends on SERIAL_SICC && UART0_TTYS1
  1054. default y
  1055. config SERIAL_SICC_CONSOLE
  1056. bool
  1057. depends on SERIAL_SICC && UART0_TTYS1
  1058. default y
  1059. endmenu
  1060. source "lib/Kconfig"
  1061. source "kernel/Kconfig.instrumentation"
  1062. source "arch/ppc/Kconfig.debug"
  1063. source "security/Kconfig"
  1064. source "crypto/Kconfig"