Boot Linux faster!

Check our new training course

Boot Linux faster!

Check our new training course
and Creative Commons CC-BY-SA
lecture and lab materials

Bootlin logo

Elixir Cross Referencer

# Kconfig - x86 core configuration options

#
# Copyright (c) 2014-2015 Wind River Systems, Inc.
#
# SPDX-License-Identifier: Apache-2.0
#

menu "x86 Core Options"

config NESTED_INTERRUPTS
	bool
	prompt "Enable nested interrupts"
	default y
	help
	This option enables support for nested interrupts.

config EXCEPTION_DEBUG
	bool
	prompt "Unhandled exception debugging"
	default y
	depends on PRINTK
	help
	Install handlers for various CPU exception/trap vectors to
	make debugging them easier, at a small expense in code size.
	This prints out the specific exception vector and any associated
	error codes.

menu "Memory Layout Options"

config IDT_NUM_VECTORS
	int
	prompt "Number of IDT vectors"
	default 256
	range 32 256
	help
	This option specifies the number of interrupt vector entries in the
	Interrupt Descriptor Table (IDT). By default all 256 vectors are
	supported in an IDT requiring 2048 bytes of memory.

config MAX_IRQ_LINES
	int
	prompt "Number of IRQ lines"
	default 128
	range 0 256
	help
	This option specifies the number of IRQ lines in the system.
	It can be tuned to save some bytes in ROM, as it determines the
	size of the _irq_to_interrupt_vector_table, which is used at runtime
	to program to the PIC the association between vectors and
	interrupts.

config PHYS_LOAD_ADDR
	hex "Physical load address"
	# Default value must be supplied by platform
	help
	This option specifies the physical address where the kernel is loaded.

config PHYS_RAM_ADDR
	hex "Physical RAM address"
	# Default value must be supplied by platform
	help
	This option specifies the physical RAM address of the selected SoC.

config RAM_SIZE
	int "Amount of RAM given to the kernel (in kB)"
	help
	This option specifies the amount of RAM given to the kernel. It must
	not exceed the amount available on the target.  When running an XIP
	kernel, it must be large enough to contain the data, bss and noinit
	sections.  When not running an XIP kernel, it must be large enough to
	contain the full image.

	The default value is specified by the board.

config ROM_SIZE
	int "Amount of ROM given to the kernel (in kB)" if XIP
	help
	This option specifies the amount of ROM given to the kernel. It must
	not exceed the amount available on the target.  It must also be large
	enough to contain the full image.

	The default value is specified by the board.

config SET_GDT
	bool
	prompt "Setup GDT as part of boot process"
	default y
	help
	This option sets up the GDT as part of the boot process. However,
	this may conflict with some security scenarios where the GDT is
	already appropriately set by an earlier bootloader stage, in which
	case this should be disabled. If disabled, the global _gdt pointer
	will not be available.

config GDT_DYNAMIC
	bool
	prompt "Store GDT in RAM so that it can be modified"
	depends on SET_GDT
	default n
	help
	This option stores the GDT in RAM instead of ROM, so that it may
	be modified at runtime at the expense of some memory.

config DEBUG_IRQS
	bool
	prompt "Extra interrupt debugging functionality"
	default n
	help
	Enable additional debugging services for interrupts. May nontrivially
	increase ROM size, so use only when you need it.

endmenu

endmenu