Loading...
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 | # Kconfig - miscellany configuration options
#
# Copyright (c) 2014-2015 Wind River Systems, Inc.
#
# SPDX-License-Identifier: Apache-2.0
#
menu "Build and Link Features"
menu "Linker Options"
config HAS_FLASH_LOAD_OFFSET
bool
help
This option is selected by targets having a FLASH_LOAD_OFFSET
and FLASH_LOAD_SIZE.
if !HAS_DTS
config FLASH_LOAD_OFFSET
hex "Kernel load offset"
default 0
depends on HAS_FLASH_LOAD_OFFSET
help
This option specifies the byte offset from the beginning of flash that
the kernel should be loaded into. Changing this value from zero will
affect the Zephyr image's link, and will decrease the total amount of
flash available for use by application code.
If unsure, leave at the default value 0.
config FLASH_LOAD_SIZE
hex "Kernel load size"
default 0
depends on HAS_FLASH_LOAD_OFFSET
help
If non-zero, this option specifies the size, in bytes, of the flash
area that the Zephyr image will be allowed to occupy. If zero, the
image will be able to occupy from the FLASH_LOAD_OFFSET to the end of
the device.
If unsure, leave at the default value 0.
endif
config TEXT_SECTION_OFFSET
hex "TEXT section offset"
default 0
help
This sets and offset before the text section and allows booting images
with custom headers that are inserted at the beginning of the image.
config HAVE_CUSTOM_LINKER_SCRIPT
prompt "Custom linker scripts provided"
def_bool n
help
Set this option if you have a custom linker script which needed to
be define in CUSTOM_LINKER_SCRIPT.
config CUSTOM_LINKER_SCRIPT
string "Path to custom linker script"
default ""
depends on HAVE_CUSTOM_LINKER_SCRIPT
help
Path to the linker script to be used instead of the one define by the
board.
The linker script must be based on a version provided by Zephyr since
the kernel can expect a certain layout/certain regions.
This is useful when an application needs to add sections into the
linker script and avoid having to change the script provided by
Zephyr.
config CUSTOM_RODATA_LD
bool "Include custom-rodata.ld"
default n
help
Include a customized linker script fragment for inserting additional
data and linker directives into the rodata section.
config CUSTOM_RWDATA_LD
bool "Include custom-rwdata.ld"
default n
help
Include a customized linker script fragment for inserting additional
data and linker directives into the data section.
config CUSTOM_SECTIONS_LD
bool "Include custom-sections.ld"
default n
help
Include a customized linker script fragment for inserting additional
arbitrary sections.
config LINK_WHOLE_ARCHIVE
bool "Allow linking with --whole-archive"
default n
help
This options allows linking external libraries with the
--whole-archive option to keep all symbols.
config KERNEL_ENTRY
string "Kernel entry symbol"
default "__start"
help
Code entry symbol, to be set at linking phase.
config CHECK_LINK_MAP
bool "Check linker map"
default y
help
Run a linker address generation validity checker at the end of the
build.
endmenu
menu "Compiler Options"
config CROSS_COMPILE
string "Cross-compiler tool prefix"
help
Same as running 'make CROSS_COMPILE=prefix-' but stored for
default make runs in this kernel build directory. You don't
need to set this unless you want the configured kernel build
directory to select the cross-compiler automatically.
config COMPILER_OPT
string
prompt "Custom compiler options"
default ""
help
This option is a free-form string that is passed to the compiler
when building all parts of a project (i.e. kernel).
The compiler options specified by this string supplement the
predefined set of compiler supplied by the build system,
and can be used to change compiler optimization, warning and error
messages, and so on.
config TOOLCHAIN_VARIANT
string "Cross-compiler variant name"
help
For optimized compilers with reduced features, specify the name
of the variant.
endmenu
menu "Build Options"
config KERNEL_BIN_NAME
string "The kernel binary name"
default "zephyr"
help
This option sets the name of the generated kernel binary.
config OUTPUT_STAT
bool "Create a statistics file"
default y
help
Create a stat file using readelf -e <elf>
config BUILD_OUTPUT_HEX
bool "Build a binary in HEX format"
default n
help
Build a binary in HEX format. This will build a zephyr.hex file need
by some platforms.
config BUILD_OUTPUT_BIN
bool "Build a binary in BIN format"
default y
help
Build a binary in BIN format. This will build a zephyr.bin file need
by some platforms.
config BUILD_OUTPUT_S19
bool "Build a binary in S19 format"
default n
help
Build a binary in S19 format. This will build a zephyr.s19 file need
by some platforms.
config BUILD_OUTPUT_STRIPPED
bool "Build a stripped binary"
default n
help
Build a stripped binary. This will build a zephyr.stripped file need
by some platforms.
endmenu
endmenu
menu "System Monitoring Options"
config PERFORMANCE_METRICS
bool
prompt "Enable performance metrics [EXPERIMENTAL]"
default n
help
Enable Performance Metrics.
config BOOT_TIME_MEASUREMENT
bool
prompt "Boot time measurements [EXPERIMENTAL]"
default n
depends on PERFORMANCE_METRICS
help
This option enables the recording of timestamps during system start
up. The global variable __start_time_stamp records the time kernel begins
executing, while __main_time_stamp records when main() begins executing,
and __idle_time_stamp records when the CPU becomes idle. All values are
recorded in terms of CPU clock cycles since system reset.
config CPU_CLOCK_FREQ_MHZ
int
prompt "CPU Clock Frequency in MHz"
default 20
depends on BOOT_TIME_MEASUREMENT
help
This option specifies the CPU Clock Frequency in MHz in order to
convert Intel RDTSC timestamp to microseconds.
endmenu
menu "Boot Options"
config IS_BOOTLOADER
bool "Act as a bootloader"
default n
depends on XIP
depends on ARM
help
This option indicates that Zephyr will act as a bootloader to execute
a separate Zephyr image payload.
config BOOTLOADER_SRAM_SIZE
int "SRAM reserved for when Zephyr acts as a bootloader"
default 16
depends on !XIP || IS_BOOTLOADER
depends on ARM
help
This option specifies the amount of SRAM (measure in kB) reserved for
when Zephyr is to act as a bootloader.
config BOOTLOADER_KEXEC
bool
prompt "Boot using Linux kexec() system call"
depends on X86
default n
help
This option signifies that Linux boots the kernel using kexec system call
and utility. This method is used to boot the kernel over the network.
config BOOTLOADER_UNKNOWN
bool
prompt "Generic boot loader support"
default n
depends on X86
help
This option signifies that the target has a generic bootloader
or that it supports multiple ways of booting and it isn't clear
at build time which method is to be used. When this option is enabled
the board may have to do extra work to ensure a proper startup.
config BOOTLOADER_CONTEXT_RESTORE
bool
prompt "Boot loader has context restore support"
default y
depends on SYS_POWER_DEEP_SLEEP && BOOTLOADER_CONTEXT_RESTORE_SUPPORTED
help
This option signifies that the target has a bootloader
that restores CPU context upon resuming from deep sleep
power state.
config REBOOT
bool "Reboot functionality"
default n
select SYSTEM_CLOCK_DISABLE
help
Enable the sys_reboot() API. Enabling this can drag in other subsystems
needed to perform a "safe" reboot (e.g. SYSTEM_CLOCK_DISABLE, to stop the
system clock before issuing a reset).
endmenu
|