1 # SPDX-License-Identifier: GPL-2.0
4 select ARCH_32BIT_OFF_T
5 select ARCH_HAS_DMA_PREP_COHERENT
6 select ARCH_HAS_SYNC_DMA_FOR_CPU
7 select ARCH_HAS_SYNC_DMA_FOR_DEVICE
8 select ARCH_HAS_DMA_SET_UNCACHED
12 select GENERIC_ATOMIC64
13 select GENERIC_CLOCKEVENTS
14 select GENERIC_CPU_DEVICES
15 select GENERIC_IRQ_PROBE
16 select GENERIC_IRQ_SHOW
17 select GENERIC_STRNCPY_FROM_USER
18 select GENERIC_STRNLEN_USER
19 select HAVE_ARCH_TRACEHOOK
22 select MODULES_USE_ELF_RELA
24 select OF_EARLY_FLATTREE
27 select USB_ARCH_HAS_HCD if USB_SUPPORT
28 select CPU_NO_EFFICIENT_FFS
29 select MMU_GATHER_NO_RANGE if MMU
34 config GENERIC_HWEIGHT
37 config GENERIC_CALIBRATE_DELAY
46 config TRACE_IRQFLAGS_SUPPORT
49 menu "Kernel features"
51 source "kernel/Kconfig.hz"
53 config FORCE_MAX_ZONEORDER
54 int "Maximum zone order"
58 The kernel memory allocator divides physically contiguous memory
59 blocks into "zones", where each zone is a power of two number of
60 pages. This option selects the largest power of two that the kernel
61 keeps in the memory allocator. If you need to allocate very large
62 blocks of physically contiguous memory, then you may need to
65 This config option is actually maximum order plus one. For example,
66 a value of 11 means that the largest free memory block is 2^10 pages.
70 source "arch/nios2/platform/Kconfig.platform"
72 menu "Processor type and features"
81 config NIOS2_ALIGNMENT_TRAP
82 bool "Catch alignment trap"
85 Nios II CPUs cannot fetch/store data which is not bus aligned,
86 i.e., a 2 or 4 byte fetch must start at an address divisible by
87 2 or 4. Any non-aligned load/store instructions will be trapped and
88 emulated in software if you say Y here, which has a performance
91 comment "Boot options"
94 bool "Default bootloader kernel arguments"
98 string "Default kernel command string"
100 depends on CMDLINE_BOOL
102 On some platforms, there is currently no way for the boot loader to
103 pass arguments to the kernel. For these platforms, you can supply
104 some command-line options at build time by entering them here. In
105 other cases you can specify kernel args so that you don't have
106 to set them up in board prom initialization routines.
109 bool "Force default kernel command string"
110 depends on CMDLINE_BOOL
112 Set this to have arguments from the default kernel command string
113 override those passed by the boot loader.
115 config NIOS2_CMDLINE_IGNORE_DTB
116 bool "Ignore kernel command string from DTB"
117 depends on CMDLINE_BOOL
118 depends on !CMDLINE_FORCE
121 Set this to ignore the bootargs property from the devicetree's
122 chosen node and fall back to CMDLINE if nothing is passed.
124 config NIOS2_PASS_CMDLINE
125 bool "Passed kernel command line from u-boot"
127 Use bootargs env variable from u-boot for kernel command line.
128 will override "Default kernel command string".
129 Say N if you are unsure.
131 config NIOS2_BOOT_LINK_OFFSET
132 hex "Link address offset for booting"
135 This option allows you to set the link address offset of the zImage.
136 This can be useful if you are on a board which has a small amount of
141 menu "Advanced setup"
143 config ADVANCED_OPTIONS
144 bool "Prompt for advanced kernel configuration options"
146 comment "Default settings for advanced configuration options are used"
147 depends on !ADVANCED_OPTIONS
149 config NIOS2_KERNEL_MMU_REGION_BASE_BOOL
150 bool "Set custom kernel MMU region base address"
151 depends on ADVANCED_OPTIONS
153 This option allows you to set the virtual address of the kernel MMU region.
155 Say N here unless you know what you are doing.
157 config NIOS2_KERNEL_MMU_REGION_BASE
158 hex "Virtual base address of the kernel MMU region " if NIOS2_KERNEL_MMU_REGION_BASE_BOOL
161 This option allows you to set the virtual base address of the kernel MMU region.
163 config NIOS2_KERNEL_REGION_BASE_BOOL
164 bool "Set custom kernel region base address"
165 depends on ADVANCED_OPTIONS
167 This option allows you to set the virtual address of the kernel region.
169 Say N here unless you know what you are doing.
171 config NIOS2_KERNEL_REGION_BASE
172 hex "Virtual base address of the kernel region " if NIOS2_KERNEL_REGION_BASE_BOOL
175 config NIOS2_IO_REGION_BASE_BOOL
176 bool "Set custom I/O region base address"
177 depends on ADVANCED_OPTIONS
179 This option allows you to set the virtual address of the I/O region.
181 Say N here unless you know what you are doing.
183 config NIOS2_IO_REGION_BASE
184 hex "Virtual base address of the I/O region" if NIOS2_IO_REGION_BASE_BOOL