Kconfig 12 KB

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