Commit | Line | Data |
---|---|---|
b2441318 | 1 | # SPDX-License-Identifier: GPL-2.0 |
2fc8483f LFT |
2 | config NIOS2 |
3 | def_bool y | |
25622e04 CH |
4 | select ARCH_HAS_SYNC_DMA_FOR_CPU |
5 | select ARCH_HAS_SYNC_DMA_FOR_DEVICE | |
17c46a6a | 6 | select ARCH_NO_SWAP |
bc3ec75d | 7 | select DMA_DIRECT_OPS |
bb0eb050 | 8 | select TIMER_OF |
2fc8483f LFT |
9 | select GENERIC_ATOMIC64 |
10 | select GENERIC_CLOCKEVENTS | |
11 | select GENERIC_CPU_DEVICES | |
12 | select GENERIC_IRQ_PROBE | |
13 | select GENERIC_IRQ_SHOW | |
7f1e6141 LFT |
14 | select GENERIC_STRNCPY_FROM_USER |
15 | select GENERIC_STRNLEN_USER | |
2fc8483f | 16 | select HAVE_ARCH_TRACEHOOK |
d16d2be1 | 17 | select HAVE_ARCH_KGDB |
2fc8483f LFT |
18 | select IRQ_DOMAIN |
19 | select MODULES_USE_ELF_RELA | |
20 | select OF | |
21 | select OF_EARLY_FLATTREE | |
22 | select SOC_BUS | |
23 | select SPARSE_IRQ | |
24 | select USB_ARCH_HAS_HCD if USB_SUPPORT | |
fff7fb0b | 25 | select CPU_NO_EFFICIENT_FFS |
a811c05c | 26 | select HAVE_MEMBLOCK |
00423792 | 27 | select ARCH_DISCARD_MEMBLOCK |
2fc8483f LFT |
28 | |
29 | config GENERIC_CSUM | |
30 | def_bool y | |
31 | ||
32 | config GENERIC_HWEIGHT | |
33 | def_bool y | |
34 | ||
35 | config GENERIC_CALIBRATE_DELAY | |
36 | def_bool y | |
37 | ||
38 | config NO_IOPORT_MAP | |
39 | def_bool y | |
40 | ||
41 | config HAS_DMA | |
42 | def_bool y | |
43 | ||
44 | config FPU | |
45 | def_bool n | |
46 | ||
2fc8483f LFT |
47 | config RWSEM_GENERIC_SPINLOCK |
48 | def_bool y | |
49 | ||
50 | config TRACE_IRQFLAGS_SUPPORT | |
51 | def_bool n | |
52 | ||
2fc8483f LFT |
53 | menu "Kernel features" |
54 | ||
2fc8483f LFT |
55 | source "kernel/Kconfig.hz" |
56 | ||
2fc8483f LFT |
57 | config FORCE_MAX_ZONEORDER |
58 | int "Maximum zone order" | |
59 | range 9 20 | |
60 | default "11" | |
61 | help | |
62 | The kernel memory allocator divides physically contiguous memory | |
63 | blocks into "zones", where each zone is a power of two number of | |
64 | pages. This option selects the largest power of two that the kernel | |
65 | keeps in the memory allocator. If you need to allocate very large | |
66 | blocks of physically contiguous memory, then you may need to | |
67 | increase this value. | |
68 | ||
69 | This config option is actually maximum order plus one. For example, | |
70 | a value of 11 means that the largest free memory block is 2^10 pages. | |
71 | ||
72 | endmenu | |
73 | ||
74 | source "arch/nios2/platform/Kconfig.platform" | |
75 | ||
76 | menu "Processor type and features" | |
77 | ||
78 | config MMU | |
79 | def_bool y | |
80 | ||
6e5c8f5f TK |
81 | config NR_CPUS |
82 | int | |
83 | default "1" | |
84 | ||
2fc8483f LFT |
85 | config NIOS2_ALIGNMENT_TRAP |
86 | bool "Catch alignment trap" | |
87 | default y | |
88 | help | |
89 | Nios II CPUs cannot fetch/store data which is not bus aligned, | |
90 | i.e., a 2 or 4 byte fetch must start at an address divisible by | |
91 | 2 or 4. Any non-aligned load/store instructions will be trapped and | |
92 | emulated in software if you say Y here, which has a performance | |
93 | impact. | |
94 | ||
95 | comment "Boot options" | |
96 | ||
97 | config CMDLINE_BOOL | |
98 | bool "Default bootloader kernel arguments" | |
99 | default y | |
100 | ||
101 | config CMDLINE | |
102 | string "Default kernel command string" | |
103 | default "" | |
104 | depends on CMDLINE_BOOL | |
105 | help | |
106 | On some platforms, there is currently no way for the boot loader to | |
107 | pass arguments to the kernel. For these platforms, you can supply | |
108 | some command-line options at build time by entering them here. In | |
109 | other cases you can specify kernel args so that you don't have | |
110 | to set them up in board prom initialization routines. | |
111 | ||
112 | config CMDLINE_FORCE | |
113 | bool "Force default kernel command string" | |
114 | depends on CMDLINE_BOOL | |
115 | help | |
116 | Set this to have arguments from the default kernel command string | |
117 | override those passed by the boot loader. | |
118 | ||
119 | config NIOS2_CMDLINE_IGNORE_DTB | |
120 | bool "Ignore kernel command string from DTB" | |
2b2b4074 | 121 | depends on CMDLINE_BOOL |
2fc8483f LFT |
122 | depends on !CMDLINE_FORCE |
123 | default y | |
124 | help | |
125 | Set this to ignore the bootargs property from the devicetree's | |
126 | chosen node and fall back to CMDLINE if nothing is passed. | |
127 | ||
128 | config NIOS2_PASS_CMDLINE | |
129 | bool "Passed kernel command line from u-boot" | |
130 | default n | |
131 | help | |
132 | Use bootargs env variable from u-boot for kernel command line. | |
133 | will override "Default kernel command string". | |
134 | Say N if you are unsure. | |
135 | ||
01623627 LFT |
136 | config NIOS2_BOOT_LINK_OFFSET |
137 | hex "Link address offset for booting" | |
138 | default "0x00500000" | |
139 | help | |
140 | This option allows you to set the link address offset of the zImage. | |
141 | This can be useful if you are on a board which has a small amount of | |
142 | memory. | |
143 | ||
2fc8483f LFT |
144 | endmenu |
145 | ||
146 | menu "Advanced setup" | |
147 | ||
148 | config ADVANCED_OPTIONS | |
149 | bool "Prompt for advanced kernel configuration options" | |
2fc8483f LFT |
150 | |
151 | comment "Default settings for advanced configuration options are used" | |
152 | depends on !ADVANCED_OPTIONS | |
153 | ||
154 | config NIOS2_KERNEL_MMU_REGION_BASE_BOOL | |
155 | bool "Set custom kernel MMU region base address" | |
156 | depends on ADVANCED_OPTIONS | |
157 | help | |
158 | This option allows you to set the virtual address of the kernel MMU region. | |
159 | ||
160 | Say N here unless you know what you are doing. | |
161 | ||
162 | config NIOS2_KERNEL_MMU_REGION_BASE | |
163 | hex "Virtual base address of the kernel MMU region " if NIOS2_KERNEL_MMU_REGION_BASE_BOOL | |
164 | default "0x80000000" | |
165 | help | |
166 | This option allows you to set the virtual base address of the kernel MMU region. | |
167 | ||
168 | config NIOS2_KERNEL_REGION_BASE_BOOL | |
169 | bool "Set custom kernel region base address" | |
170 | depends on ADVANCED_OPTIONS | |
171 | help | |
172 | This option allows you to set the virtual address of the kernel region. | |
173 | ||
174 | Say N here unless you know what you are doing. | |
175 | ||
176 | config NIOS2_KERNEL_REGION_BASE | |
177 | hex "Virtual base address of the kernel region " if NIOS2_KERNEL_REGION_BASE_BOOL | |
178 | default "0xc0000000" | |
179 | ||
180 | config NIOS2_IO_REGION_BASE_BOOL | |
181 | bool "Set custom I/O region base address" | |
182 | depends on ADVANCED_OPTIONS | |
183 | help | |
184 | This option allows you to set the virtual address of the I/O region. | |
185 | ||
186 | Say N here unless you know what you are doing. | |
187 | ||
188 | config NIOS2_IO_REGION_BASE | |
189 | hex "Virtual base address of the I/O region" if NIOS2_IO_REGION_BASE_BOOL | |
190 | default "0xe0000000" | |
191 | ||
192 | endmenu |