Linux kernel Configuration resolution-Boot options

Source: Internet
Author: User
Tags documentation stub

1. Preface

This article describes the configuration items that are related to Linux kernel and startup under the ARM64 architecture.

NOTE 1: The Linux kernel version used in this article series is " X Project "The use of" Linux 4.6-RC5 ", for specific reference" Https://github.com/wowotechX/linux.git ".

2. kconfig file

The configuration items in the ARM64 schema that are related to boot are very simple, mainly including ACPI, command-line parameters, and Uefi. These configuration items are located in "Arch/arm64/kconfig", as follows:

  1:menu "Boot Options"
  
  3:config Arm64_acpi_parking_protocol
  4:bool "Enable support for theARM64 ACPI Parking Protocol"
  5:depends on ACPI
  6:help
  7: For the   ARM64 ACPI Parking protocol. If Disabled
  8: The kernel won't allow   booting through the ARM64 ACPI parking
  9:   If the corresponding data is present in the ACPI
Ten:   Madt table.
12:config CmdLine
13:string "Default kernel command string"
Default ""
15:help
: Time by   
:   entering them here. As a minimum, you should specify the
:   root device (e.g. Root=/dev/nfs).
20:config Cmdline_force
21:bool "Always use thedefault kernel command string"
22:help
:   if the boot
:   loader passes and arguments to the kernel.
:   If you cannot or don ' t want
:   Command-Line options your boot loader passes to the kernel.
28:config efi_stub
29:bool
31:config EFI
32:bool "UEFI Runtime Support"
33:depends on &&! Cpu_big_endian
34:select LIBFDT
35:select ucs2_string
36:select EFI_PARAMS_FROM_FDT
37:select efi_runtime_wrappers
38:select efi_stub
39:select efi_armstub
Default Y
41:help
: For   runtime services provided
:   by UEFI firmware (suchas non-volatile variables, realtime
:           clock, and platform reset). A UEFI stub is also provided to
The kernel to is booted as an   EFI application. This
Useful on systems, which has   UEFI firmware.
48:config DMI
49:bool "Enable support for SMBIOS (DMI) tables"
50:depends on EFI
Default Y
52:help
: For   systems.
A: This option is only useful on systems and that has the   UEFI firmware.
   However, even with this option, the resultant kernel should
£ º   continue to boot on existing NON-UEFI platforms.
59:endmenu
3. Configuration Item Description

Note 2:linux Kernel's configuration items are numerous, but most of them use the default values. Therefore, in the process of kernel transplant and development, the real need to care is not particularly much. For commonly used configuration items that need to be cared for, I'll mark them with a yellow background in the analysis article.

3.1 ACPI-related configuration items

Configuration Items Description Default value
Config_arm64_acpi_ Parking_protocol Whether to support "ARM64 ACPI Parking Protocol". With regard to ACPI and parking protocol, there are opportunities to analyze in other articles, and there is no need to pay much attention. dependent on the CONFIG_ACPI
3.2 Configuration items related to kernel command line arguments

Configuration Items Description Default value
Config_cmdline Kernel default command-line arguments. After setting this parameter, you can not need bootloader delivery (it is useful to start porting kernel, because bootloader can not be guaranteed to pass ^_^ correctly) No
Config_cmdline_force Enforces the kernel's default command-line arguments (which can be ignored by bootloader), and is typically used to test some new command-line arguments (without modifying the content passed by bootloader) during kernel development. No

Note 3: If Kconfig does not specify a default value for a configuration item through the "default" keyword, then the configuration item will not appear in the generated. config file, which is "forbidden" in disguise. After the same.

3.3 Uefi-related configuration items

Dmi

Configuration Items Description Default value
Config_efi_stub Used to support EFI boot; After enabling the configuration item, the Kenrel Bzimage header is modified to turn the kernel image into a pe/coff image that can be run by EFI.
Refer to the Documentation/efi-stub.txt for details.
No
Config_efi Supports some runtime services provided by Uefi Firmware, such as RTC, reset, etc., which depend on open Firmware and have a number of associated items (you can refer to the SELECT keyword in the kconfig file);
In addition, it is interesting to refer to the "Depends on &&!" in the 2nd chapter of the Kconfig file. Cpu_big_endian "), the configuration item can only be used in the small-end CPU. Be free to study why.
Y
Config_dmi Used to control whether "SMBIOS/DMI feature" is supported, depending on config_efi, it is important to note that, even if the configuration item is enabled, kernel needs to be able to start normally in other non-UEFI environments. Y

4. Reference documentation

[1] uefi,http://www.wowotech.net/armv8a_arch/uefi.html

[2] Acpi,https://zh.wikipedia.org/zh-cn/%e9%ab%98%e7%ba%a7%e9%85%8d%e7%bd%ae%e4%b8%8e%e7%94%b5%e6%ba%90%e6%8e%a5%e5%8f%a3

[3] Smbios/dmi,http://www.dmtf.org/cn/standards/smbios

Linux Kernel Configuration resolution-Boot options

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.