Kindly support DOTSLASHLINUX on Patreon to keep the website up and running while remaining ads free.

Part Section Link
1 Intro Click Here
2 [∗] Gentoo Linux support ---> Click Here
3 General setup ---> Click Here
4 [∗] Enable loadable module support ---> Click Here
5 [∗] Enable the block layer ---> Click Here
6 Processor type and features ---> Click Here
7 Power management and ACPI options ---> Click Here
8 Bus options (PCI etc.) ---> Click Here
9 Executable file formats / Emulations ---> Click Here
10 [∗] Networking support ---> Click Here
11 Device Drivers ---> Click Here
12 Firmware Drivers ---> Click Here
13 File systems ---> Click Here
14 Kernel hacking ---> Click Here
15 Security options ---> Click Here
16 -∗- Cryptographic API ---> Click Here
17 [∗] Virtualization ---> Click Here
18 Library routines ---> Click Here
Kernel Sources:       sys-kernel/gentoo-sources

Kernel Version:       4.14.12

Last Updated on:      06/01/2018

Update Notice:        1- Excluded 'CONFIG_PAGE_TABLE_ISOLATION' in 'Security options --->'
                      2- Included 'CONFIG_STANDALONE' in 'Device Drivers  --->'
                      3- Included 'CONFIG_PREVENT_FIRMWARE_BUILD' in 'Device Drivers  --->'
                      4- Included 'CONFIG_X86_5LEVEL' in 'Processor type and features  --->'
                      5- Included 'CONFIG_ORC_UNWINDER' in 'Kernel hacking  --->'
                      6- Excluded QEMU-virtualization-related options in favor of VirtualBox
                      7- Excluded swap-related options
                      8- Excluded 32-bit support
                      9- Switched from XFS to EXT4

Priorities:           1- high performance
                      2- minimal
                      3- low memory footprint
                      4- small size
                      5- power saving
                      6- security
                      7- low-latency

Total Options:        2469 (grep -c 'CONFIG_' DOTSLASHLINUX.config)

Included Options:     645 (grep -c '=y' DOTSLASHLINUX.config)

Excluded Options:     1761 (grep -c 'is not set' DOTSLASHLINUX.config)

Final Size (LZ4):     5,644,240 Bytes

Patches Applied:      1- UKSM-4.14 Patch (https://github.com/dolohow/uksm/blob/master/uksm-4.14.patch)

Contributors:         Firas Khalil Khana [irc: firas] [email: firasuke@gmail.com]

Side Notes:           1- Options that aren't listed here are excluded [ ].
                      2- These guides provide users with a solid starting setup to build on.
                      3- These guides are constantly being updated.
                      4- If there's something I didn't explain properly or I misexplained
                         then please do let me know either by kindly leaving a comment below
                         or by sending me an email on: firasuke@gmail.com

The Linux Kernel Configuration Guide Part 12 - Firmware Drivers --->

kernel12
Firas Khalil Khana | 12/09/2017

Firmware Drivers —>

< > BIOS Enhanced Disk Drive calls determine boot disk

Symbol:     CONFIG_EDD

Help:       Say Y or M here if you want to enable BIOS Enhanced Disk Drive
            Services real mode BIOS calls to determine which disk
            BIOS tries boot from.  This information is then exported via sysfs.

            This option is experimental and is known to fail to boot on some
            obscure configurations. Most disk controller BIOS vendors do
            not yet implement this feature.

Type:       tristate

Choice:     excluded < >

Reason:     You can safely exclude this option as it's experimental and may result
            in an unbootable system.

[ ] Add firmware-provided memory map to sysfs

Symbol:     CONFIG_FIRMWARE_MEMMAP

Help:       Add the firmware-provided (unmodified) memory map to /sys/firmware/memmap.
            That memory map is used for example by kexec to set up parameter area
            for the next kernel, but can also be used for debugging purposes.

            See also Documentation/ABI/testing/sysfs-firmware-memmap.

Type:       boolean

Choice:     excluded [ ]

Reason:     You can safely exclude this option if you've already excluded CONFIG_KEXEC
            and have no need for its debugging features.

< > BIOS update support for DELL systems via sysfs

Symbol:     CONFIG_DELL_RBU

Help:       Say m if you want to have the option of updating the BIOS for your
            DELL system. Note you need a Dell OpenManage or Dell Update package (DUP)
            supporting application to communicate with the BIOS regarding the new
            image for the image update to take effect.
            See <file:Documentation/dell_rbu.txt> for more details on the driver.

Type:       tristate

Choice:     excluded < >

Reason:     You can safely exclude this option if you're not using a DELL system.

< > Dell Systems Management Base Driver

Symbol:     CONFIG_DCDBAS

Help:       The Dell Systems Management Base Driver provides a sysfs interface
            for systems management software to perform System Management
            Interrupts (SMIs) and Host Control Actions (system power cycle or
            power off after OS shutdown) on certain Dell systems.

            See <file:Documentation/dcdbas.txt> for more details on the driver
            and the Dell systems on which Dell systems management software makes
            use of this driver.

            Say Y or M here to enable the driver for use by Dell systems
            management software such as Dell OpenManage.

Type:       tristate

Choice:     excluded < >

Reason:     You can safely exclude this option if you're not using a DELL system.

[∗] Export DMI identification via sysfs to userspace

Symbol:     CONFIG_DMIID

Help:       Say Y here if you want to query SMBIOS/DMI system identification
            information from userspace through /sys/class/dmi/id/ or if you want
            DMI-based module auto-loading.

Type:       boolean

Choice:     built-in [∗]

Reason:     It's recommended that you include this option in your kernel as it
            provides important information about your hardware. This option is
            also necessary if you want to use dmidecode.

< > DMI table support in sysfs

Symbol:     CONFIG_DMI_SYSFS

Help:       Say Y or M here to enable the exporting of the raw DMI table
            data via sysfs.  This is useful for consuming the data without
            requiring any access to /dev/mem at all.  Tables are found
            under /sys/firmware/dmi when this option is enabled and
            loaded.

Type:       tristate

Choice:     excluded < >

Reason:     You can safely exclude this option as some may say it's dangerous.
            
            Include this option only when needed.

[ ] iSCSI Boot Firmware Table Attributes

Symbol:     CONFIG_ISCSI_IBFT_FIND

Help:       This option enables the kernel to find the region of memory
            in which the ISCSI Boot Firmware Table (iBFT) resides. This
            is necessary for iSCSI Boot Firmware Table Attributes module to work
            properly.

Type:       boolean

Choice:     excluded [ ]

Reason:     You can safely exclude this option if you've already excluded
            CONFIG_ISCSI_BOOT_SYSFS.

< > QEMU fw_cfg device support in sysfs

Symbol:     CONFIG_FW_CFG_SYSFS

Help:       Say Y or M here to enable the exporting of the QEMU firmware
            configuration (fw_cfg) file entries via sysfs. Entries are
            found under /sys/firmware/fw_cfg when this option is enabled
            and loaded.

Type:       tristate

Choice:     excluded < >

Reason:     You can safely exclude this option.

            Include this option only if it's required by some QEMU setups.

[ ] Google Firmware Drivers —-

Symbol:     CONFIG_GOOGLE_FIRMWARE

Help:       These firmware drivers are used by Google's servers.  They are
            only useful if you are working directly on one of their
            proprietary servers.  If in doubt, say "N".

Type:       boolean

Choice:     excluded [ ]

Reason:     You can safely exclude this option as it's highly unlikely for
            any user to use this option unless he's/she's a developer working for
            Google on one of their proprietary servers.

Tegra firmware driver —-

Choice:     excluded ----

Chinese Translation

One of DOTSLASHLINUX followers 杨鑫 (Yang Mame) from China, decided to follow up with the series and provide Chinese translation of the kernel configuration guides on his blog.

To read this guide in Chinese click here.

Leave A Comment