1# 2# For a description of the syntax of this configuration file, 3# see Documentation/kbuild/kconfig-language.txt. 4# 5 6mainmenu "Linux Kernel Configuration" 7 8config ARM 9 bool 10 default y 11 help 12 The ARM series is a line of low-power-consumption RISC chip designs 13 licensed by ARM ltd and targeted at embedded applications and 14 handhelds such as the Compaq IPAQ. ARM-based PCs are no longer 15 manufactured, but legacy ARM-based PC hardware remains popular in 16 Europe. There is an ARM Linux project with a web page at 17 <http://www.arm.linux.org.uk/>. 18 19config MMU 20 bool 21 default y 22 23config EISA 24 bool 25 ---help--- 26 The Extended Industry Standard Architecture (EISA) bus was 27 developed as an open alternative to the IBM MicroChannel bus. 28 29 The EISA bus provided some of the features of the IBM MicroChannel 30 bus while maintaining backward compatibility with cards made for 31 the older ISA bus. The EISA bus saw limited use between 1988 and 32 1995 when it was made obsolete by the PCI bus. 33 34 Say Y here if you are building a kernel for an EISA-based machine. 35 36 Otherwise, say N. 37 38config SBUS 39 bool 40 41config MCA 42 bool 43 help 44 MicroChannel Architecture is found in some IBM PS/2 machines and 45 laptops. It is a bus system similar to PCI or ISA. See 46 <file:Documentation/mca.txt> (and especially the web page given 47 there) before attempting to build an MCA bus kernel. 48 49config UID16 50 bool 51 default y 52 53config RWSEM_GENERIC_SPINLOCK 54 bool 55 default y 56 57config RWSEM_XCHGADD_ALGORITHM 58 bool 59 60config GENERIC_CALIBRATE_DELAY 61 bool 62 default y 63 64config GENERIC_BUST_SPINLOCK 65 bool 66 67config GENERIC_ISA_DMA 68 bool 69 70config FIQ 71 bool 72 73source "init/Kconfig" 74 75menu "System Type" 76 77choice 78 prompt "ARM system type" 79 default ARCH_RPC 80 81config ARCH_CLPS7500 82 bool "Cirrus-CL-PS7500FE" 83 select TIMER_ACORN 84 select ISA 85 86config ARCH_CLPS711X 87 bool "CLPS711x/EP721x-based" 88 89config ARCH_CO285 90 bool "Co-EBSA285" 91 select FOOTBRIDGE 92 select FOOTBRIDGE_ADDIN 93 94config ARCH_EBSA110 95 bool "EBSA-110" 96 select ISA 97 help 98 This is an evaluation board for the StrongARM processor available 99 from Digital. It has limited hardware on-board, including an onboard 100 Ethernet interface, two PCMCIA sockets, two serial ports and a 101 parallel port. 102 103config ARCH_CAMELOT 104 bool "Epxa10db" 105 help 106 This enables support for Altera's Excalibur XA10 development board. 107 If you would like to build your kernel to run on one of these boards 108 then you must say 'Y' here. Otherwise say 'N' 109 110config ARCH_FOOTBRIDGE 111 bool "FootBridge" 112 select FOOTBRIDGE 113 114config ARCH_INTEGRATOR 115 bool "Integrator" 116 select ARM_AMBA 117 select ICST525 118 119config ARCH_IOP3XX 120 bool "IOP3xx-based" 121 select PCI 122 123config ARCH_IXP4XX 124 bool "IXP4xx-based" 125 select DMABOUNCE 126 select PCI 127 128config ARCH_IXP2000 129 bool "IXP2400/2800-based" 130 select PCI 131 132config ARCH_L7200 133 bool "LinkUp-L7200" 134 select FIQ 135 help 136 Say Y here if you intend to run this kernel on a LinkUp Systems 137 L7200 Software Development Board which uses an ARM720T processor. 138 Information on this board can be obtained at: 139 140 <http://www.linkupsys.com/> 141 142 If you have any questions or comments about the Linux kernel port 143 to this board, send e-mail to <sjhill@cotw.com>. 144 145config ARCH_PXA 146 bool "PXA2xx-based" 147 148config ARCH_RPC 149 bool "RiscPC" 150 select ARCH_ACORN 151 select FIQ 152 select TIMER_ACORN 153 help 154 On the Acorn Risc-PC, Linux can support the internal IDE disk and 155 CD-ROM interface, serial and parallel port, and the floppy drive. 156 157config ARCH_SA1100 158 bool "SA1100-based" 159 select ISA 160 select DISCONTIGMEM 161 162config ARCH_S3C2410 163 bool "Samsung S3C2410" 164 help 165 Samsung S3C2410X CPU based systems, such as the Simtec Electronics 166 BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or 167 the Samsung SMDK2410 development board (and derviatives). 168 169config ARCH_SHARK 170 bool "Shark" 171 select ISA 172 select ISA_DMA 173 select PCI 174 175config ARCH_LH7A40X 176 bool "Sharp LH7A40X" 177 help 178 Say Y here for systems based on one of the Sharp LH7A40X 179 System on a Chip processors. These CPUs include an ARM922T 180 core with a wide array of integrated devices for 181 hand-held and low-power applications. 182 183config ARCH_OMAP 184 bool "TI OMAP" 185 186config ARCH_VERSATILE 187 bool "Versatile" 188 select ARM_AMBA 189 select ICST307 190 help 191 This enables support for ARM Ltd Versatile board. 192 193config ARCH_IMX 194 bool "IMX" 195 196config ARCH_H720X 197 bool "Hynix-HMS720x-based" 198 help 199 This enables support for systems based on the Hynix HMS720x 200 201config ARCH_AAEC2000 202 bool "Agilent AAEC-2000 based" 203 help 204 This enables support for systems based on the Agilent AAEC-2000 205 206endchoice 207 208source "arch/arm/mach-clps711x/Kconfig" 209 210source "arch/arm/mach-epxa10db/Kconfig" 211 212source "arch/arm/mach-footbridge/Kconfig" 213 214source "arch/arm/mach-integrator/Kconfig" 215 216source "arch/arm/mach-iop3xx/Kconfig" 217 218source "arch/arm/mach-ixp4xx/Kconfig" 219 220source "arch/arm/mach-ixp2000/Kconfig" 221 222source "arch/arm/mach-pxa/Kconfig" 223 224source "arch/arm/mach-sa1100/Kconfig" 225 226source "arch/arm/mach-omap/Kconfig" 227 228source "arch/arm/mach-s3c2410/Kconfig" 229 230source "arch/arm/mach-lh7a40x/Kconfig" 231 232source "arch/arm/mach-imx/Kconfig" 233 234source "arch/arm/mach-h720x/Kconfig" 235 236source "arch/arm/mach-versatile/Kconfig" 237 238source "arch/arm/mach-aaec2000/Kconfig" 239 240# Definitions to make life easier 241config ARCH_ACORN 242 bool 243 244source arch/arm/mm/Kconfig 245 246# bool 'Use XScale PMU as timer source' CONFIG_XSCALE_PMU_TIMER 247config XSCALE_PMU 248 bool 249 depends on CPU_XSCALE && !XSCALE_PMU_TIMER 250 default y 251 252endmenu 253 254source "arch/arm/common/Kconfig" 255 256config FORCE_MAX_ZONEORDER 257 int 258 depends on SA1111 259 default "9" 260 261menu "Bus support" 262 263config ARM_AMBA 264 bool 265 266config ISA 267 bool 268 help 269 Find out whether you have ISA slots on your motherboard. ISA is the 270 name of a bus system, i.e. the way the CPU talks to the other stuff 271 inside your box. Other bus systems are PCI, EISA, MicroChannel 272 (MCA) or VESA. ISA is an older system, now being displaced by PCI; 273 newer boards don't support it. If you have ISA, say Y, otherwise N. 274 275config ISA_DMA 276 bool 277 278config ISA_DMA_API 279 bool 280 default y 281 282config PCI 283 bool "PCI support" if ARCH_INTEGRATOR_AP || ARCH_VERSATILE_PB 284 help 285 Find out whether you have a PCI motherboard. PCI is the name of a 286 bus system, i.e. the way the CPU talks to the other stuff inside 287 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or 288 VESA. If you have PCI, say Y, otherwise N. 289 290 The PCI-HOWTO, available from 291 <http://www.tldp.org/docs.html#howto>, contains valuable 292 information about which PCI hardware does work under Linux and which 293 doesn't. 294 295# Select the host bridge type 296config PCI_HOST_VIA82C505 297 bool 298 depends on PCI && ARCH_SHARK 299 default y 300 301source "drivers/pci/Kconfig" 302 303source "drivers/pcmcia/Kconfig" 304 305endmenu 306 307menu "Kernel Features" 308 309config SMP 310 bool "Symmetric Multi-Processing (EXPERIMENTAL)" 311 depends on EXPERIMENTAL #&& n 312 help 313 This enables support for systems with more than one CPU. If you have 314 a system with only one CPU, like most personal computers, say N. If 315 you have a system with more than one CPU, say Y. 316 317 If you say N here, the kernel will run on single and multiprocessor 318 machines, but will use only one CPU of a multiprocessor machine. If 319 you say Y here, the kernel will run on many, but not all, single 320 processor machines. On a single processor machine, the kernel will 321 run faster if you say N here. 322 323 See also the <file:Documentation/smp.tex>, 324 <file:Documentation/smp.txt>, <file:Documentation/i386/IO-APIC.txt>, 325 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at 326 <http://www.linuxdoc.org/docs.html#howto>. 327 328 If you don't know what to do here, say N. 329 330config NR_CPUS 331 int "Maximum number of CPUs (2-32)" 332 range 2 32 333 depends on SMP 334 default "4" 335 336config PREEMPT 337 bool "Preemptible Kernel (EXPERIMENTAL)" 338 depends on EXPERIMENTAL 339 help 340 This option reduces the latency of the kernel when reacting to 341 real-time or interactive events by allowing a low priority process to 342 be preempted even if it is in kernel mode executing a system call. 343 This allows applications to run more reliably even when the system is 344 under load. 345 346 Say Y here if you are building a kernel for a desktop, embedded 347 or real-time system. Say N if you are unsure. 348 349config DISCONTIGMEM 350 bool 351 default (ARCH_LH7A40X && !LH7A40X_CONTIGMEM) 352 help 353 Say Y to support efficient handling of discontiguous physical memory, 354 for architectures which are either NUMA (Non-Uniform Memory Access) 355 or have huge holes in the physical address space for other reasons. 356 See <file:Documentation/vm/numa> for more. 357 358config LEDS 359 bool "Timer and CPU usage LEDs" 360 depends on ARCH_CDB89712 || ARCH_CO285 || ARCH_EBSA110 || \ 361 ARCH_EBSA285 || ARCH_IMX || ARCH_INTEGRATOR || \ 362 ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_NETWINDER || \ 363 ARCH_OMAP || ARCH_P720T || ARCH_PXA_IDP || \ 364 ARCH_SA1100 || ARCH_SHARK || ARCH_VERSATILE 365 help 366 If you say Y here, the LEDs on your machine will be used 367 to provide useful information about your current system status. 368 369 If you are compiling a kernel for a NetWinder or EBSA-285, you will 370 be able to select which LEDs are active using the options below. If 371 you are compiling a kernel for the EBSA-110 or the LART however, the 372 red LED will simply flash regularly to indicate that the system is 373 still functional. It is safe to say Y here if you have a CATS 374 system, but the driver will do nothing. 375 376config LEDS_TIMER 377 bool "Timer LED" if (!ARCH_CDB89712 && !ARCH_OMAP) || \ 378 MACH_OMAP_H2 || MACH_OMAP_PERSEUS2 379 depends on LEDS 380 default y if ARCH_EBSA110 381 help 382 If you say Y here, one of the system LEDs (the green one on the 383 NetWinder, the amber one on the EBSA285, or the red one on the LART) 384 will flash regularly to indicate that the system is still 385 operational. This is mainly useful to kernel hackers who are 386 debugging unstable kernels. 387 388 The LART uses the same LED for both Timer LED and CPU usage LED 389 functions. You may choose to use both, but the Timer LED function 390 will overrule the CPU usage LED. 391 392config LEDS_CPU 393 bool "CPU usage LED" if (!ARCH_CDB89712 && !ARCH_EBSA110 && \ 394 !ARCH_OMAP) || MACH_OMAP_H2 || MACH_OMAP_PERSEUS2 395 depends on LEDS 396 help 397 If you say Y here, the red LED will be used to give a good real 398 time indication of CPU usage, by lighting whenever the idle task 399 is not currently executing. 400 401 The LART uses the same LED for both Timer LED and CPU usage LED 402 functions. You may choose to use both, but the Timer LED function 403 will overrule the CPU usage LED. 404 405config ALIGNMENT_TRAP 406 bool 407 default y if !ARCH_EBSA110 408 help 409 ARM processors can not fetch/store information which is not 410 naturally aligned on the bus, i.e., a 4 byte fetch must start at an 411 address divisible by 4. On 32-bit ARM processors, these non-aligned 412 fetch/store instructions will be emulated in software if you say 413 here, which has a severe performance impact. This is necessary for 414 correct operation of some network protocols. With an IP-only 415 configuration it is safe to say N, otherwise say Y. 416 417endmenu 418 419menu "Boot options" 420 421# Compressed boot loader in ROM. Yes, we really want to ask about 422# TEXT and BSS so we preserve their values in the config files. 423config ZBOOT_ROM_TEXT 424 hex "Compressed ROM boot loader base address" 425 default "0" 426 help 427 The physical address at which the ROM-able zImage is to be 428 placed in the target. Platforms which normally make use of 429 ROM-able zImage formats normally set this to a suitable 430 value in their defconfig file. 431 432 If ZBOOT_ROM is not enabled, this has no effect. 433 434config ZBOOT_ROM_BSS 435 hex "Compressed ROM boot loader BSS address" 436 default "0" 437 help 438 The base address of 64KiB of read/write memory in the target 439 for the ROM-able zImage, which must be available while the 440 decompressor is running. Platforms which normally make use of 441 ROM-able zImage formats normally set this to a suitable 442 value in their defconfig file. 443 444 If ZBOOT_ROM is not enabled, this has no effect. 445 446config ZBOOT_ROM 447 bool "Compressed boot loader in ROM/flash" 448 depends on ZBOOT_ROM_TEXT != ZBOOT_ROM_BSS 449 help 450 Say Y here if you intend to execute your compressed kernel image 451 (zImage) directly from ROM or flash. If unsure, say N. 452 453config CMDLINE 454 string "Default kernel command string" 455 default "" 456 help 457 On some architectures (EBSA110 and CATS), there is currently no way 458 for the boot loader to pass arguments to the kernel. For these 459 architectures, you should supply some command-line options at build 460 time by entering them here. As a minimum, you should specify the 461 memory size and the root device (e.g., mem=64M root=/dev/nfs). 462 463config XIP_KERNEL 464 bool "Kernel Execute-In-Place from ROM" 465 depends on !ZBOOT_ROM 466 help 467 Execute-In-Place allows the kernel to run from non-volatile storage 468 directly addressable by the CPU, such as NOR flash. This saves RAM 469 space since the text section of the kernel is not loaded from flash 470 to RAM. Read-write sections, such as the data section and stack, 471 are still copied to RAM. The XIP kernel is not compressed since 472 it has to run directly from flash, so it will take more space to 473 store it. The flash address used to link the kernel object files, 474 and for storing it, is configuration dependent. Therefore, if you 475 say Y here, you must know the proper physical address where to 476 store the kernel image depending on your own flash memory usage. 477 478 Also note that the make target becomes "make xipImage" rather than 479 "make zImage" or "make Image". The final kernel binary to put in 480 ROM memory will be arch/arm/boot/xipImage. 481 482 If unsure, say N. 483 484config XIP_PHYS_ADDR 485 hex "XIP Kernel Physical Location" 486 depends on XIP_KERNEL 487 default "0x00080000" 488 help 489 This is the physical address in your flash memory the kernel will 490 be linked for and stored to. This address is dependent on your 491 own flash usage. 492 493endmenu 494 495if (ARCH_SA1100 || ARCH_INTEGRATOR) 496 497menu "CPU Frequency scaling" 498 499source "drivers/cpufreq/Kconfig" 500 501config CPU_FREQ_SA1100 502 bool 503 depends on CPU_FREQ && (SA1100_H3100 || SA1100_H3600 || SA1100_H3800 || SA1100_LART || SA1100_PLEB || SA1100_BADGE4 || SA1100_HACKKIT) 504 default y 505 506config CPU_FREQ_SA1110 507 bool 508 depends on CPU_FREQ && (SA1100_ASSABET || SA1100_CERF || SA1100_PT_SYSTEM3) 509 default y 510 511config CPU_FREQ_INTEGRATOR 512 tristate "CPUfreq driver for ARM Integrator CPUs" 513 depends on ARCH_INTEGRATOR && CPU_FREQ 514 default y 515 help 516 This enables the CPUfreq driver for ARM Integrator CPUs. 517 518 For details, take a look at <file:Documentation/cpu-freq>. 519 520 If in doubt, say Y. 521 522endmenu 523 524endif 525 526menu "Floating point emulation" 527 528comment "At least one emulation must be selected" 529 530config FPE_NWFPE 531 bool "NWFPE math emulation" 532 ---help--- 533 Say Y to include the NWFPE floating point emulator in the kernel. 534 This is necessary to run most binaries. Linux does not currently 535 support floating point hardware so you need to say Y here even if 536 your machine has an FPA or floating point co-processor podule. 537 538 You may say N here if you are going to load the Acorn FPEmulator 539 early in the bootup. 540 541config FPE_NWFPE_XP 542 bool "Support extended precision" 543 depends on FPE_NWFPE && !CPU_BIG_ENDIAN 544 help 545 Say Y to include 80-bit support in the kernel floating-point 546 emulator. Otherwise, only 32 and 64-bit support is compiled in. 547 Note that gcc does not generate 80-bit operations by default, 548 so in most cases this option only enlarges the size of the 549 floating point emulator without any good reason. 550 551 You almost surely want to say N here. 552 553config FPE_FASTFPE 554 bool "FastFPE math emulation (EXPERIMENTAL)" 555 depends on !CPU_32v3 && EXPERIMENTAL 556 ---help--- 557 Say Y here to include the FAST floating point emulator in the kernel. 558 This is an experimental much faster emulator which now also has full 559 precision for the mantissa. It does not support any exceptions. 560 It is very simple, and approximately 3-6 times faster than NWFPE. 561 562 It should be sufficient for most programs. It may be not suitable 563 for scientific calculations, but you have to check this for yourself. 564 If you do not feel you need a faster FP emulation you should better 565 choose NWFPE. 566 567config VFP 568 bool "VFP-format floating point maths" 569 depends on CPU_V6 || CPU_ARM926T 570 help 571 Say Y to include VFP support code in the kernel. This is needed 572 if your hardware includes a VFP unit. 573 574 Please see <file:Documentation/arm/VFP/release-notes.txt> for 575 release notes and additional status information. 576 577 Say N if your target does not have VFP hardware. 578 579endmenu 580 581menu "Userspace binary formats" 582 583source "fs/Kconfig.binfmt" 584 585config ARTHUR 586 tristate "RISC OS personality" 587 help 588 Say Y here to include the kernel code necessary if you want to run 589 Acorn RISC OS/Arthur binaries under Linux. This code is still very 590 experimental; if this sounds frightening, say N and sleep in peace. 591 You can also say M here to compile this support as a module (which 592 will be called arthur). 593 594endmenu 595 596menu "Power management options" 597 598config PM 599 bool "Power Management support" 600 ---help--- 601 "Power Management" means that parts of your computer are shut 602 off or put into a power conserving "sleep" mode if they are not 603 being used. There are two competing standards for doing this: APM 604 and ACPI. If you want to use either one, say Y here and then also 605 to the requisite support below. 606 607 Power Management is most important for battery powered laptop 608 computers; if you have a laptop, check out the Linux Laptop home 609 page on the WWW at <http://www.linux-on-laptops.com/> or 610 Tuxmobil - Linux on Mobile Computers at <http://www.tuxmobil.org/> 611 and the Battery Powered Linux mini-HOWTO, available from 612 <http://www.tldp.org/docs.html#howto>. 613 614 Note that, even if you say N here, Linux on the x86 architecture 615 will issue the hlt instruction if nothing is to be done, thereby 616 sending the processor to sleep and saving power. 617 618config APM 619 tristate "Advanced Power Management Emulation" 620 depends on PM 621 ---help--- 622 APM is a BIOS specification for saving power using several different 623 techniques. This is mostly useful for battery powered laptops with 624 APM compliant BIOSes. If you say Y here, the system time will be 625 reset after a RESUME operation, the /proc/apm device will provide 626 battery status information, and user-space programs will receive 627 notification of APM "events" (e.g. battery status change). 628 629 If you select "Y" here, you can disable actual use of the APM 630 BIOS by passing the "apm=off" option to the kernel at boot time. 631 632 Note that the APM support is almost completely disabled for 633 machines with more than one CPU. 634 635 In order to use APM, you will need supporting software. For location 636 and more information, read <file:Documentation/pm.txt> and the 637 Battery Powered Linux mini-HOWTO, available from 638 <http://www.tldp.org/docs.html#howto>. 639 640 This driver does not spin down disk drives (see the hdparm(8) 641 manpage ("man 8 hdparm") for that), and it doesn't turn off 642 VESA-compliant "green" monitors. 643 644 This driver does not support the TI 4000M TravelMate and the ACER 645 486/DX4/75 because they don't have compliant BIOSes. Many "green" 646 desktop machines also don't have compliant BIOSes, and this driver 647 may cause those machines to panic during the boot phase. 648 649 Generally, if you don't have a battery in your machine, there isn't 650 much point in using this driver and you should say N. If you get 651 random kernel OOPSes or reboots that don't seem to be related to 652 anything, try disabling/enabling this option (or disabling/enabling 653 APM in your BIOS). 654 655 Some other things you should try when experiencing seemingly random, 656 "weird" problems: 657 658 1) make sure that you have enough swap space and that it is 659 enabled. 660 2) pass the "no-hlt" option to the kernel 661 3) switch on floating point emulation in the kernel and pass 662 the "no387" option to the kernel 663 4) pass the "floppy=nodma" option to the kernel 664 5) pass the "mem=4M" option to the kernel (thereby disabling 665 all but the first 4 MB of RAM) 666 6) make sure that the CPU is not over clocked. 667 7) read the sig11 FAQ at <http://www.bitwizard.nl/sig11/> 668 8) disable the cache from your BIOS settings 669 9) install a fan for the video card or exchange video RAM 670 10) install a better fan for the CPU 671 11) exchange RAM chips 672 12) exchange the motherboard. 673 674 To compile this driver as a module, choose M here: the 675 module will be called apm. 676 677endmenu 678 679menu "Device Drivers" 680 681source "drivers/base/Kconfig" 682 683if ALIGNMENT_TRAP 684source "drivers/mtd/Kconfig" 685endif 686 687source "drivers/parport/Kconfig" 688 689source "drivers/pnp/Kconfig" 690 691source "drivers/block/Kconfig" 692 693source "drivers/acorn/block/Kconfig" 694 695if PCMCIA || ARCH_CLPS7500 || ARCH_IOP3XX || ARCH_IXP4XX \ 696 || ARCH_L7200 || ARCH_LH7A40X || ARCH_PXA || ARCH_RPC \ 697 || ARCH_S3C2410 || ARCH_SA1100 || ARCH_SHARK || FOOTBRIDGE 698source "drivers/ide/Kconfig" 699endif 700 701source "drivers/scsi/Kconfig" 702 703source "drivers/md/Kconfig" 704 705source "drivers/message/fusion/Kconfig" 706 707source "drivers/ieee1394/Kconfig" 708 709source "drivers/message/i2o/Kconfig" 710 711source "net/Kconfig" 712 713source "drivers/isdn/Kconfig" 714 715# input before char - char/joystick depends on it. As does USB. 716 717source "drivers/input/Kconfig" 718 719source "drivers/char/Kconfig" 720 721source "drivers/i2c/Kconfig" 722 723#source "drivers/l3/Kconfig" 724 725source "drivers/misc/Kconfig" 726 727source "drivers/media/Kconfig" 728 729source "drivers/video/Kconfig" 730 731source "sound/Kconfig" 732 733source "drivers/usb/Kconfig" 734 735source "drivers/mmc/Kconfig" 736 737endmenu 738 739source "fs/Kconfig" 740 741source "arch/arm/oprofile/Kconfig" 742 743source "arch/arm/Kconfig.debug" 744 745source "security/Kconfig" 746 747source "crypto/Kconfig" 748 749source "lib/Kconfig" 750