Kconfig 34 KB

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