Kconfig 33 KB

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