Commit | Line | Data |
---|---|---|
b2441318 | 1 | # SPDX-License-Identifier: GPL-2.0 |
2fc8483f LFT |
2 | config NIOS2 |
3 | def_bool y | |
942fa985 | 4 | select ARCH_32BIT_OFF_T |
fa7e2247 | 5 | select ARCH_HAS_DMA_PREP_COHERENT |
25622e04 CH |
6 | select ARCH_HAS_SYNC_DMA_FOR_CPU |
7 | select ARCH_HAS_SYNC_DMA_FOR_DEVICE | |
fa7e2247 | 8 | select ARCH_HAS_DMA_SET_UNCACHED |
17c46a6a | 9 | select ARCH_NO_SWAP |
f26e4331 | 10 | select COMMON_CLK |
bb0eb050 | 11 | select TIMER_OF |
2fc8483f | 12 | select GENERIC_ATOMIC64 |
2fc8483f LFT |
13 | select GENERIC_CPU_DEVICES |
14 | select GENERIC_IRQ_PROBE | |
15 | select GENERIC_IRQ_SHOW | |
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 |
6137fed0 | 26 | select MMU_GATHER_NO_RANGE if MMU |
2fc8483f LFT |
27 | |
28 | config GENERIC_CSUM | |
29 | def_bool y | |
30 | ||
31 | config GENERIC_HWEIGHT | |
32 | def_bool y | |
33 | ||
34 | config GENERIC_CALIBRATE_DELAY | |
35 | def_bool y | |
36 | ||
37 | config NO_IOPORT_MAP | |
38 | def_bool y | |
39 | ||
2fc8483f LFT |
40 | config FPU |
41 | def_bool n | |
42 | ||
2fc8483f LFT |
43 | menu "Kernel features" |
44 | ||
2fc8483f LFT |
45 | source "kernel/Kconfig.hz" |
46 | ||
0192445c | 47 | config ARCH_FORCE_MAX_ORDER |
5646e83d | 48 | int "Order of maximal physically contiguous allocations" |
23baf831 | 49 | default "10" |
2fc8483f | 50 | help |
5646e83d MRI |
51 | The kernel page allocator limits the size of maximal physically |
52 | contiguous allocations. The limit is called MAX_ORDER and it | |
53 | defines the maximal power of two of number of pages that can be | |
54 | allocated as a single contiguous block. This option allows | |
55 | overriding the default setting when ability to allocate very | |
56 | large blocks of physically contiguous memory is required. | |
57 | ||
58 | Don't change if unsure. | |
2fc8483f | 59 | |
2fc8483f LFT |
60 | endmenu |
61 | ||
62 | source "arch/nios2/platform/Kconfig.platform" | |
63 | ||
64 | menu "Processor type and features" | |
65 | ||
66 | config MMU | |
67 | def_bool y | |
68 | ||
6e5c8f5f TK |
69 | config NR_CPUS |
70 | int | |
71 | default "1" | |
72 | ||
2fc8483f LFT |
73 | config NIOS2_ALIGNMENT_TRAP |
74 | bool "Catch alignment trap" | |
75 | default y | |
76 | help | |
77 | Nios II CPUs cannot fetch/store data which is not bus aligned, | |
78 | i.e., a 2 or 4 byte fetch must start at an address divisible by | |
79 | 2 or 4. Any non-aligned load/store instructions will be trapped and | |
80 | emulated in software if you say Y here, which has a performance | |
81 | impact. | |
82 | ||
83 | comment "Boot options" | |
84 | ||
85 | config CMDLINE_BOOL | |
86 | bool "Default bootloader kernel arguments" | |
87 | default y | |
88 | ||
89 | config CMDLINE | |
90 | string "Default kernel command string" | |
91 | default "" | |
92 | depends on CMDLINE_BOOL | |
93 | help | |
94 | On some platforms, there is currently no way for the boot loader to | |
95 | pass arguments to the kernel. For these platforms, you can supply | |
96 | some command-line options at build time by entering them here. In | |
97 | other cases you can specify kernel args so that you don't have | |
98 | to set them up in board prom initialization routines. | |
99 | ||
100 | config CMDLINE_FORCE | |
101 | bool "Force default kernel command string" | |
102 | depends on CMDLINE_BOOL | |
103 | help | |
104 | Set this to have arguments from the default kernel command string | |
105 | override those passed by the boot loader. | |
106 | ||
107 | config NIOS2_CMDLINE_IGNORE_DTB | |
108 | bool "Ignore kernel command string from DTB" | |
2b2b4074 | 109 | depends on CMDLINE_BOOL |
2fc8483f LFT |
110 | depends on !CMDLINE_FORCE |
111 | default y | |
112 | help | |
113 | Set this to ignore the bootargs property from the devicetree's | |
114 | chosen node and fall back to CMDLINE if nothing is passed. | |
115 | ||
116 | config NIOS2_PASS_CMDLINE | |
117 | bool "Passed kernel command line from u-boot" | |
2fc8483f LFT |
118 | help |
119 | Use bootargs env variable from u-boot for kernel command line. | |
120 | will override "Default kernel command string". | |
121 | Say N if you are unsure. | |
122 | ||
01623627 LFT |
123 | config NIOS2_BOOT_LINK_OFFSET |
124 | hex "Link address offset for booting" | |
125 | default "0x00500000" | |
126 | help | |
127 | This option allows you to set the link address offset of the zImage. | |
128 | This can be useful if you are on a board which has a small amount of | |
129 | memory. | |
130 | ||
2fc8483f LFT |
131 | endmenu |
132 | ||
133 | menu "Advanced setup" | |
134 | ||
135 | config ADVANCED_OPTIONS | |
136 | bool "Prompt for advanced kernel configuration options" | |
2fc8483f LFT |
137 | |
138 | comment "Default settings for advanced configuration options are used" | |
139 | depends on !ADVANCED_OPTIONS | |
140 | ||
141 | config NIOS2_KERNEL_MMU_REGION_BASE_BOOL | |
142 | bool "Set custom kernel MMU region base address" | |
143 | depends on ADVANCED_OPTIONS | |
144 | help | |
145 | This option allows you to set the virtual address of the kernel MMU region. | |
146 | ||
147 | Say N here unless you know what you are doing. | |
148 | ||
149 | config NIOS2_KERNEL_MMU_REGION_BASE | |
150 | hex "Virtual base address of the kernel MMU region " if NIOS2_KERNEL_MMU_REGION_BASE_BOOL | |
151 | default "0x80000000" | |
152 | help | |
153 | This option allows you to set the virtual base address of the kernel MMU region. | |
154 | ||
155 | config NIOS2_KERNEL_REGION_BASE_BOOL | |
156 | bool "Set custom kernel region base address" | |
157 | depends on ADVANCED_OPTIONS | |
158 | help | |
159 | This option allows you to set the virtual address of the kernel region. | |
160 | ||
161 | Say N here unless you know what you are doing. | |
162 | ||
163 | config NIOS2_KERNEL_REGION_BASE | |
164 | hex "Virtual base address of the kernel region " if NIOS2_KERNEL_REGION_BASE_BOOL | |
165 | default "0xc0000000" | |
166 | ||
167 | config NIOS2_IO_REGION_BASE_BOOL | |
168 | bool "Set custom I/O region base address" | |
169 | depends on ADVANCED_OPTIONS | |
170 | help | |
171 | This option allows you to set the virtual address of the I/O region. | |
172 | ||
173 | Say N here unless you know what you are doing. | |
174 | ||
175 | config NIOS2_IO_REGION_BASE | |
176 | hex "Virtual base address of the I/O region" if NIOS2_IO_REGION_BASE_BOOL | |
177 | default "0xe0000000" | |
178 | ||
179 | endmenu |