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

#
# Copyright (c) 2016 Intel Corporation
#
# 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.
#

choice
	prompt "Nios II configuration selection"
	depends on NIOS2
	source "arch/nios2/soc/*/Kconfig.soc"
endchoice

menu "Nios II Options"
	depends on NIOS2

config ARCH
	string
	default "nios2"

config ARCH_DEFCONFIG
	string
	default "arch/nios2/defconfig"

menu "Nios II Gen 2 Processor Options"

config CPU_NIOS2_GEN2
	bool
	default y
	help
	This option signifies the use of a Nios II Gen 2 CPU

endmenu

menu "Nios II Family Options"

config XIP
	bool
	default y

config IRQ_OFFLOAD
	bool "Enable IRQ offload"
	default n
	help
	Enable irq_offload() API which allows functions to be synchronously
	run in interrupt context. Mainly useful for test cases.

config HAS_MUL_INSTRUCTION
	bool
	default n

config HAS_DIV_INSTRUCTION
	bool
	default n

config HAS_MULX_INSTRUCTION
	bool
	default n

config INCLUDE_RESET_VECTOR
	bool "Include Reset vector"
	default y
	help
	Include the reset vector stub, which enables instruction/data caches
	and then jumps to __start. This code is typically located at the very
	beginning of flash memory. You may need to omit this if using the
	nios2-download tool since it refuses to load data anywhere other than
	RAM.

config EXTRA_EXCEPTION_INFO
	bool "Extra exception debug information"
	default n
	help
	Have exceptions print additional useful debugging information in
	human-readable form, at the expense of code size. For example,
	the cause code for an exception will be supplemented by a string
	describing what that cause code means.

choice
prompt "Global Pointer options"
default GP_GLOBAL

config GP_NONE
	bool "No global pointer"
	help
	Do not use global pointer relative offsets at all

config GP_LOCAL
	bool "Local data global pointer references"
	help
	Use global pointer relative offsets for small globals declared in the
	same C file as the code that uses it.

config GP_GLOBAL
	bool "Global data global pointer references"
	help
	Use global pointer relative offsets for small globals declared
	anywhere in the executable. Note that if any small globals that are put
	in alternate sections (such as _k_task_list_ptr in the microkernel)
	they must be declared in headers with proper __attribute__((section)) or
	the linker will error out.

config GP_ALL_DATA
	bool "All data global pointer references"
	help
	Use GP relative access for all data in the program, not just
	small data. Use this if your board has 64K or less of RAM.

endchoice

endmenu

source "arch/nios2/soc/*/Kconfig"

endmenu