1 # SPDX-License-Identifier: GPL-2.0
4 select ARCH_32BIT_OFF_T
5 select ARCH_HAS_SYNC_DMA_FOR_CPU
6 select ARCH_HAS_SYNC_DMA_FOR_DEVICE
7 select ARCH_HAS_UNCACHED_SEGMENT
10 select GENERIC_ATOMIC64
11 select GENERIC_CLOCKEVENTS
12 select GENERIC_CPU_DEVICES
13 select GENERIC_IRQ_PROBE
14 select GENERIC_IRQ_SHOW
15 select GENERIC_STRNCPY_FROM_USER
16 select GENERIC_STRNLEN_USER
17 select HAVE_ARCH_TRACEHOOK
20 select MODULES_USE_ELF_RELA
22 select OF_EARLY_FLATTREE
25 select USB_ARCH_HAS_HCD if USB_SUPPORT
26 select CPU_NO_EFFICIENT_FFS
27 select MMU_GATHER_NO_RANGE if MMU
32 config GENERIC_HWEIGHT
35 config GENERIC_CALIBRATE_DELAY
44 config TRACE_IRQFLAGS_SUPPORT
47 menu "Kernel features"
49 source "kernel/Kconfig.hz"
51 config FORCE_MAX_ZONEORDER
52 int "Maximum zone order"
56 The kernel memory allocator divides physically contiguous memory
57 blocks into "zones", where each zone is a power of two number of
58 pages. This option selects the largest power of two that the kernel
59 keeps in the memory allocator. If you need to allocate very large
60 blocks of physically contiguous memory, then you may need to
63 This config option is actually maximum order plus one. For example,
64 a value of 11 means that the largest free memory block is 2^10 pages.
68 source "arch/nios2/platform/Kconfig.platform"
70 menu "Processor type and features"
79 config NIOS2_ALIGNMENT_TRAP
80 bool "Catch alignment trap"
83 Nios II CPUs cannot fetch/store data which is not bus aligned,
84 i.e., a 2 or 4 byte fetch must start at an address divisible by
85 2 or 4. Any non-aligned load/store instructions will be trapped and
86 emulated in software if you say Y here, which has a performance
89 comment "Boot options"
92 bool "Default bootloader kernel arguments"
96 string "Default kernel command string"
98 depends on CMDLINE_BOOL
100 On some platforms, there is currently no way for the boot loader to
101 pass arguments to the kernel. For these platforms, you can supply
102 some command-line options at build time by entering them here. In
103 other cases you can specify kernel args so that you don't have
104 to set them up in board prom initialization routines.
107 bool "Force default kernel command string"
108 depends on CMDLINE_BOOL
110 Set this to have arguments from the default kernel command string
111 override those passed by the boot loader.
113 config NIOS2_CMDLINE_IGNORE_DTB
114 bool "Ignore kernel command string from DTB"
115 depends on CMDLINE_BOOL
116 depends on !CMDLINE_FORCE
119 Set this to ignore the bootargs property from the devicetree's
120 chosen node and fall back to CMDLINE if nothing is passed.
122 config NIOS2_PASS_CMDLINE
123 bool "Passed kernel command line from u-boot"
125 Use bootargs env variable from u-boot for kernel command line.
126 will override "Default kernel command string".
127 Say N if you are unsure.
129 config NIOS2_BOOT_LINK_OFFSET
130 hex "Link address offset for booting"
133 This option allows you to set the link address offset of the zImage.
134 This can be useful if you are on a board which has a small amount of
139 menu "Advanced setup"
141 config ADVANCED_OPTIONS
142 bool "Prompt for advanced kernel configuration options"
144 comment "Default settings for advanced configuration options are used"
145 depends on !ADVANCED_OPTIONS
147 config NIOS2_KERNEL_MMU_REGION_BASE_BOOL
148 bool "Set custom kernel MMU region base address"
149 depends on ADVANCED_OPTIONS
151 This option allows you to set the virtual address of the kernel MMU region.
153 Say N here unless you know what you are doing.
155 config NIOS2_KERNEL_MMU_REGION_BASE
156 hex "Virtual base address of the kernel MMU region " if NIOS2_KERNEL_MMU_REGION_BASE_BOOL
159 This option allows you to set the virtual base address of the kernel MMU region.
161 config NIOS2_KERNEL_REGION_BASE_BOOL
162 bool "Set custom kernel region base address"
163 depends on ADVANCED_OPTIONS
165 This option allows you to set the virtual address of the kernel region.
167 Say N here unless you know what you are doing.
169 config NIOS2_KERNEL_REGION_BASE
170 hex "Virtual base address of the kernel region " if NIOS2_KERNEL_REGION_BASE_BOOL
173 config NIOS2_IO_REGION_BASE_BOOL
174 bool "Set custom I/O region base address"
175 depends on ADVANCED_OPTIONS
177 This option allows you to set the virtual address of the I/O region.
179 Say N here unless you know what you are doing.
181 config NIOS2_IO_REGION_BASE
182 hex "Virtual base address of the I/O region" if NIOS2_IO_REGION_BASE_BOOL