Kconfig 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520
  1. #
  2. # For a description of the syntax of this configuration file,
  3. # see Documentation/kbuild/kconfig-language.txt.
  4. #
  5. config 64BIT
  6. def_bool y
  7. config MMU
  8. bool
  9. default y
  10. config PPC_STD_MMU
  11. def_bool y
  12. config UID16
  13. bool
  14. config RWSEM_GENERIC_SPINLOCK
  15. bool
  16. config RWSEM_XCHGADD_ALGORITHM
  17. bool
  18. default y
  19. config GENERIC_CALIBRATE_DELAY
  20. bool
  21. default y
  22. config GENERIC_ISA_DMA
  23. bool
  24. default y
  25. config EARLY_PRINTK
  26. bool
  27. default y
  28. config COMPAT
  29. bool
  30. default y
  31. config SCHED_NO_NO_OMIT_FRAME_POINTER
  32. bool
  33. default y
  34. config ARCH_MAY_HAVE_PC_FDC
  35. bool
  36. default y
  37. config PPC_STD_MMU
  38. bool
  39. default y
  40. # We optimistically allocate largepages from the VM, so make the limit
  41. # large enough (16MB). This badly named config option is actually
  42. # max order + 1
  43. config FORCE_MAX_ZONEORDER
  44. int
  45. default "13"
  46. source "init/Kconfig"
  47. config SYSVIPC_COMPAT
  48. bool
  49. depends on COMPAT && SYSVIPC
  50. default y
  51. menu "Platform support"
  52. choice
  53. prompt "Platform Type"
  54. default PPC_MULTIPLATFORM
  55. config PPC_ISERIES
  56. bool "IBM Legacy iSeries"
  57. config PPC_MULTIPLATFORM
  58. bool "Generic"
  59. endchoice
  60. config PPC_PSERIES
  61. depends on PPC_MULTIPLATFORM
  62. bool " IBM pSeries & new iSeries"
  63. default y
  64. config PPC_BPA
  65. bool " Broadband Processor Architecture"
  66. depends on PPC_MULTIPLATFORM
  67. config PPC_PMAC
  68. depends on PPC_MULTIPLATFORM
  69. bool " Apple G5 based machines"
  70. default y
  71. select U3_DART
  72. select GENERIC_TBSYNC
  73. config PPC_MAPLE
  74. depends on PPC_MULTIPLATFORM
  75. bool " Maple 970FX Evaluation Board"
  76. select U3_DART
  77. select MPIC_BROKEN_U3
  78. select GENERIC_TBSYNC
  79. default n
  80. help
  81. This option enables support for the Maple 970FX Evaluation Board.
  82. For more informations, refer to <http://www.970eval.com>
  83. config PPC
  84. bool
  85. default y
  86. config PPC64
  87. bool
  88. default y
  89. config PPC_OF
  90. depends on PPC_MULTIPLATFORM
  91. bool
  92. default y
  93. config XICS
  94. depends on PPC_PSERIES
  95. bool
  96. default y
  97. config MPIC
  98. depends on PPC_PSERIES || PPC_PMAC || PPC_MAPLE
  99. bool
  100. default y
  101. config PPC_I8259
  102. depends on PPC_PSERIES
  103. bool
  104. default y
  105. config BPA_IIC
  106. depends on PPC_BPA
  107. bool
  108. default y
  109. # VMX is pSeries only for now until somebody writes the iSeries
  110. # exception vectors for it
  111. config ALTIVEC
  112. bool "Support for VMX (Altivec) vector unit"
  113. depends on PPC_MULTIPLATFORM
  114. default y
  115. config PPC_SPLPAR
  116. depends on PPC_PSERIES
  117. bool "Support for shared-processor logical partitions"
  118. default n
  119. help
  120. Enabling this option will make the kernel run more efficiently
  121. on logically-partitioned pSeries systems which use shared
  122. processors, that is, which share physical processors between
  123. two or more partitions.
  124. config KEXEC
  125. bool "kexec system call (EXPERIMENTAL)"
  126. depends on PPC_MULTIPLATFORM && EXPERIMENTAL
  127. help
  128. kexec is a system call that implements the ability to shutdown your
  129. current kernel, and to start another kernel. It is like a reboot
  130. but it is indepedent of the system firmware. And like a reboot
  131. you can start any kernel with it, not just Linux.
  132. The name comes from the similiarity to the exec system call.
  133. It is an ongoing process to be certain the hardware in a machine
  134. is properly shutdown, so do not be surprised if this code does not
  135. initially work for you. It may help to enable device hotplugging
  136. support. As of this writing the exact hardware interface is
  137. strongly in flux, so no good recommendation can be made.
  138. source "drivers/cpufreq/Kconfig"
  139. config CPU_FREQ_PMAC64
  140. bool "Support for some Apple G5s"
  141. depends on CPU_FREQ && PMAC_SMU && PPC64
  142. select CPU_FREQ_TABLE
  143. help
  144. This adds support for frequency switching on Apple iMac G5,
  145. and some of the more recent desktop G5 machines as well.
  146. config IBMVIO
  147. depends on PPC_PSERIES || PPC_ISERIES
  148. bool
  149. default y
  150. config U3_DART
  151. bool
  152. depends on PPC_MULTIPLATFORM
  153. default n
  154. config MPIC_BROKEN_U3
  155. bool
  156. depends on PPC_MAPLE
  157. default y
  158. config GENERIC_TBSYNC
  159. def_bool n
  160. config PPC_PMAC64
  161. bool
  162. depends on PPC_PMAC
  163. default y
  164. config BOOTX_TEXT
  165. bool "Support for early boot text console"
  166. depends PPC_OF
  167. help
  168. Say Y here to see progress messages from the boot firmware in text
  169. mode. Requires an Open Firmware compatible video card.
  170. config POWER4
  171. def_bool y
  172. config PPC_FPU
  173. def_bool y
  174. config POWER4_ONLY
  175. bool "Optimize for POWER4"
  176. default n
  177. ---help---
  178. Cause the compiler to optimize for POWER4 processors. The resulting
  179. binary will not work on POWER3 or RS64 processors when compiled with
  180. binutils 2.15 or later.
  181. config IOMMU_VMERGE
  182. bool "Enable IOMMU virtual merging (EXPERIMENTAL)"
  183. depends on EXPERIMENTAL
  184. default n
  185. help
  186. Cause IO segments sent to a device for DMA to be merged virtually
  187. by the IOMMU when they happen to have been allocated contiguously.
  188. This doesn't add pressure to the IOMMU allocator. However, some
  189. drivers don't support getting large merged segments coming back
  190. from *_map_sg(). Say Y if you know the drivers you are using are
  191. properly handling this case.
  192. config SMP
  193. bool "Symmetric multi-processing support"
  194. ---help---
  195. This enables support for systems with more than one CPU. If you have
  196. a system with only one CPU, say N. If you have a system with more
  197. than one CPU, say Y.
  198. If you say N here, the kernel will run on single and multiprocessor
  199. machines, but will use only one CPU of a multiprocessor machine. If
  200. you say Y here, the kernel will run on single-processor machines.
  201. On a single-processor machine, the kernel will run faster if you say
  202. N here.
  203. If you don't know what to do here, say Y.
  204. config NR_CPUS
  205. int "Maximum number of CPUs (2-128)"
  206. range 2 128
  207. depends on SMP
  208. default "32"
  209. config HMT
  210. bool "Hardware multithreading"
  211. depends on SMP && PPC_PSERIES && BROKEN
  212. help
  213. This option enables hardware multithreading on RS64 cpus.
  214. pSeries systems p620 and p660 have such a cpu type.
  215. config NUMA
  216. bool "NUMA support"
  217. default y if SMP && PPC_PSERIES
  218. config ARCH_SELECT_MEMORY_MODEL
  219. def_bool y
  220. config ARCH_FLATMEM_ENABLE
  221. def_bool y
  222. depends on !NUMA
  223. config ARCH_DISCONTIGMEM_ENABLE
  224. def_bool y
  225. depends on SMP && PPC_PSERIES
  226. config ARCH_DISCONTIGMEM_DEFAULT
  227. def_bool y
  228. depends on ARCH_DISCONTIGMEM_ENABLE
  229. config ARCH_SPARSEMEM_ENABLE
  230. def_bool y
  231. depends on ARCH_DISCONTIGMEM_ENABLE
  232. source "mm/Kconfig"
  233. config HAVE_ARCH_EARLY_PFN_TO_NID
  234. def_bool y
  235. depends on NEED_MULTIPLE_NODES
  236. # Some NUMA nodes have memory ranges that span
  237. # other nodes. Even though a pfn is valid and
  238. # between a node's start and end pfns, it may not
  239. # reside on that node.
  240. #
  241. # This is a relatively temporary hack that should
  242. # be able to go away when sparsemem is fully in
  243. # place
  244. config NODES_SPAN_OTHER_NODES
  245. def_bool y
  246. depends on NEED_MULTIPLE_NODES
  247. config PPC_64K_PAGES
  248. bool "64k page size"
  249. help
  250. This option changes the kernel logical page size to 64k. On machines
  251. without processor support for 64k pages, the kernel will simulate
  252. them by loading each individual 4k page on demand transparently,
  253. while on hardware with such support, it will be used to map
  254. normal application pages.
  255. config SCHED_SMT
  256. bool "SMT (Hyperthreading) scheduler support"
  257. depends on SMP
  258. default off
  259. help
  260. SMT scheduler support improves the CPU scheduler's decision making
  261. when dealing with POWER5 cpus at a cost of slightly increased
  262. overhead in some places. If unsure say N here.
  263. source "kernel/Kconfig.preempt"
  264. source kernel/Kconfig.hz
  265. config EEH
  266. bool "PCI Extended Error Handling (EEH)" if EMBEDDED
  267. depends on PPC_PSERIES
  268. default y if !EMBEDDED
  269. #
  270. # Use the generic interrupt handling code in kernel/irq/:
  271. #
  272. config GENERIC_HARDIRQS
  273. bool
  274. default y
  275. config PPC_RTAS
  276. bool
  277. depends on PPC_PSERIES || PPC_BPA
  278. default y
  279. config RTAS_ERROR_LOGGING
  280. bool
  281. depends on PPC_RTAS
  282. default y
  283. config RTAS_PROC
  284. bool "Proc interface to RTAS"
  285. depends on PPC_RTAS
  286. default y
  287. config RTAS_FLASH
  288. tristate "Firmware flash interface"
  289. depends on RTAS_PROC
  290. config SCANLOG
  291. tristate "Scanlog dump interface"
  292. depends on RTAS_PROC && PPC_PSERIES
  293. config LPARCFG
  294. tristate "LPAR Configuration Data"
  295. depends on PPC_PSERIES || PPC_ISERIES
  296. help
  297. Provide system capacity information via human readable
  298. <key word>=<value> pairs through a /proc/ppc64/lparcfg interface.
  299. config SECCOMP
  300. bool "Enable seccomp to safely compute untrusted bytecode"
  301. depends on PROC_FS
  302. default y
  303. help
  304. This kernel feature is useful for number crunching applications
  305. that may need to compute untrusted bytecode during their
  306. execution. By using pipes or other transports made available to
  307. the process as file descriptors supporting the read/write
  308. syscalls, it's possible to isolate those applications in
  309. their own address space using seccomp. Once seccomp is
  310. enabled via /proc/<pid>/seccomp, it cannot be disabled
  311. and the task is only allowed to execute a few safe syscalls
  312. defined by each seccomp mode.
  313. If unsure, say Y. Only embedded should say N here.
  314. source "fs/Kconfig.binfmt"
  315. config HOTPLUG_CPU
  316. bool "Support for hot-pluggable CPUs"
  317. depends on SMP && EXPERIMENTAL && (PPC_PSERIES || PPC_PMAC)
  318. select HOTPLUG
  319. ---help---
  320. Say Y here to be able to turn CPUs off and on.
  321. Say N if you are unsure.
  322. config PROC_DEVICETREE
  323. bool "Support for Open Firmware device tree in /proc"
  324. help
  325. This option adds a device-tree directory under /proc which contains
  326. an image of the device tree that the kernel copies from Open
  327. Firmware. If unsure, say Y here.
  328. config CMDLINE_BOOL
  329. bool "Default bootloader kernel arguments"
  330. depends on !PPC_ISERIES
  331. config CMDLINE
  332. string "Initial kernel command string"
  333. depends on CMDLINE_BOOL
  334. default "console=ttyS0,9600 console=tty0 root=/dev/sda2"
  335. help
  336. On some platforms, there is currently no way for the boot loader to
  337. pass arguments to the kernel. For these platforms, you can supply
  338. some command-line options at build time by entering them here. In
  339. most cases you will need to specify the root device here.
  340. endmenu
  341. config ISA_DMA_API
  342. bool
  343. default y
  344. menu "Bus Options"
  345. config ISA
  346. bool
  347. help
  348. Find out whether you have ISA slots on your motherboard. ISA is the
  349. name of a bus system, i.e. the way the CPU talks to the other stuff
  350. inside your box. If you have an Apple machine, say N here; if you
  351. have an IBM RS/6000 or pSeries machine or a PReP machine, say Y. If
  352. you have an embedded board, consult your board documentation.
  353. config SBUS
  354. bool
  355. config MCA
  356. bool
  357. config EISA
  358. bool
  359. config PCI
  360. bool "support for PCI devices" if (EMBEDDED && PPC_ISERIES)
  361. default y
  362. help
  363. Find out whether your system includes a PCI bus. PCI is the name of
  364. a bus system, i.e. the way the CPU talks to the other stuff inside
  365. your box. If you say Y here, the kernel will include drivers and
  366. infrastructure code to support PCI bus devices.
  367. config PCI_DOMAINS
  368. bool
  369. default PCI
  370. source "drivers/pci/Kconfig"
  371. source "drivers/pcmcia/Kconfig"
  372. source "drivers/pci/hotplug/Kconfig"
  373. endmenu
  374. source "net/Kconfig"
  375. source "drivers/Kconfig"
  376. source "fs/Kconfig"
  377. menu "iSeries device drivers"
  378. depends on PPC_ISERIES
  379. config VIOCONS
  380. tristate "iSeries Virtual Console Support"
  381. config VIODASD
  382. tristate "iSeries Virtual I/O disk support"
  383. help
  384. If you are running on an iSeries system and you want to use
  385. virtual disks created and managed by OS/400, say Y.
  386. config VIOCD
  387. tristate "iSeries Virtual I/O CD support"
  388. help
  389. If you are running Linux on an IBM iSeries system and you want to
  390. read a CD drive owned by OS/400, say Y here.
  391. config VIOTAPE
  392. tristate "iSeries Virtual Tape Support"
  393. help
  394. If you are running Linux on an iSeries system and you want Linux
  395. to read and/or write a tape drive owned by OS/400, say Y here.
  396. endmenu
  397. config VIOPATH
  398. bool
  399. depends on VIOCONS || VIODASD || VIOCD || VIOTAPE || VETH
  400. default y
  401. source "arch/powerpc/oprofile/Kconfig"
  402. source "arch/ppc64/Kconfig.debug"
  403. source "security/Kconfig"
  404. config KEYS_COMPAT
  405. bool
  406. depends on COMPAT && KEYS
  407. default y
  408. source "crypto/Kconfig"
  409. source "lib/Kconfig"