TODO
Setting the config option OPT
to m
results in #define CONFIG_OPT_MODULE 1
in include/generated/autoconf.h
.
The macros IS_BUILTIN
, IS_MODULE
, IS_ENABLED
and IS_REACHABLE
defined in include/linux/kconfig.h
.
Some config options
EFI_HANDOVER_PROTOCOL | Support for the deprecated EFI handover protocol which defines alternative entry points into the EFI stub (which has not basis in the UEFI specification). Although the corresponding support is not present in upstream GRUB or other bootloaders, most distros build GRUB with downstream patches applied which rely on the handover protocol. See also EFI_MIXED . |
EFI_MIXED | allows a 64-bit kernel to be booted on a 32-bit firmware (if CPU supported 64-bit mode). A mixed-mode enalbed kernal cannot be booted via the EFI boot stub, though - a bootloader that supports the EFI handover protocol must be used. See also EFI_HANDOVER_PROTOCOL |
EFI_STUB | allows bzImage to be loaded directly be EFI firmware without a bootloader. See Documentation/admin-guide/efi-stub.rst . |
FB | Frame buffer device (see also /dev/fbN ) |
HYPERV | Hyper-V client drivers |
HZ , HZ_100 etc. | include/asm-generic/param.h defines HZ to the value of CONFIG_HZ and has the comment Internal kernel timer frequency. See also kernel/Kconfig.hz |
INPUT_EVDEV | Required for input device events to be accessible in /dev/input/eventX (which seems to be necessary for X Server ?) |
PACKET | The packet protocol allows applications (such as tcpdump ) to communicate directly with network devices withou an intermediate network protocol. Apparently, PACKET needs to be enabled for wpa_supplicant . |
X86 , X86_32 , X86_64 | |
Modification of CONFIG symbols
As the Kernel is developed,
CONFIG
symbols are deleted, added or renamed with the potential consequence that
make oldconfig
won't necessarily produce a working Kernel anymore.
A list of new config symbols can be produced with
$ cp /path/to/old.config .config
$ make listnewconfig
The alternative brute force method is:
$ make oldconfig
$ scripts/diffconfig old.config .config