# Kconfig - x86 core configuration options # # Copyright (c) 2014-2015 Wind River Systems, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # 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