blob: 60fae03dac79aff43289bcb3c9f0e85ac83e0fcd [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001# SPDX-License-Identifier: GPL-2.0
Ley Foon Tan2fc84832014-11-06 15:20:19 +08002config NIOS2
3 def_bool y
Daniel Lezcanobb0eb052017-05-26 19:34:11 +02004 select TIMER_OF
Ley Foon Tan2fc84832014-11-06 15:20:19 +08005 select GENERIC_ATOMIC64
6 select GENERIC_CLOCKEVENTS
7 select GENERIC_CPU_DEVICES
8 select GENERIC_IRQ_PROBE
9 select GENERIC_IRQ_SHOW
Ley Foon Tan7f1e6142017-05-08 17:14:14 +080010 select GENERIC_STRNCPY_FROM_USER
11 select GENERIC_STRNLEN_USER
Ley Foon Tan2fc84832014-11-06 15:20:19 +080012 select HAVE_ARCH_TRACEHOOK
Ley Foon Tand16d2be2015-02-16 19:26:43 +080013 select HAVE_ARCH_KGDB
Ley Foon Tan2fc84832014-11-06 15:20:19 +080014 select IRQ_DOMAIN
15 select MODULES_USE_ELF_RELA
16 select OF
17 select OF_EARLY_FLATTREE
18 select SOC_BUS
19 select SPARSE_IRQ
20 select USB_ARCH_HAS_HCD if USB_SUPPORT
Zhaoxiu Zengfff7fb02016-05-20 17:03:57 -070021 select CPU_NO_EFFICIENT_FFS
Ley Foon Tan2fc84832014-11-06 15:20:19 +080022
23config GENERIC_CSUM
24 def_bool y
25
26config GENERIC_HWEIGHT
27 def_bool y
28
29config GENERIC_CALIBRATE_DELAY
30 def_bool y
31
32config NO_IOPORT_MAP
33 def_bool y
34
35config HAS_DMA
36 def_bool y
37
38config FPU
39 def_bool n
40
41config SWAP
42 def_bool n
43
44config RWSEM_GENERIC_SPINLOCK
45 def_bool y
46
47config TRACE_IRQFLAGS_SUPPORT
48 def_bool n
49
50source "init/Kconfig"
51
52menu "Kernel features"
53
54source "kernel/Kconfig.preempt"
55
56source "kernel/Kconfig.freezer"
57
58source "kernel/Kconfig.hz"
59
60source "mm/Kconfig"
61
62config FORCE_MAX_ZONEORDER
63 int "Maximum zone order"
64 range 9 20
65 default "11"
66 help
67 The kernel memory allocator divides physically contiguous memory
68 blocks into "zones", where each zone is a power of two number of
69 pages. This option selects the largest power of two that the kernel
70 keeps in the memory allocator. If you need to allocate very large
71 blocks of physically contiguous memory, then you may need to
72 increase this value.
73
74 This config option is actually maximum order plus one. For example,
75 a value of 11 means that the largest free memory block is 2^10 pages.
76
77endmenu
78
79source "arch/nios2/platform/Kconfig.platform"
80
81menu "Processor type and features"
82
83config MMU
84 def_bool y
85
Tobias Klauser6e5c8f52014-11-24 16:13:39 +080086config NR_CPUS
87 int
88 default "1"
89
Ley Foon Tan2fc84832014-11-06 15:20:19 +080090config NIOS2_ALIGNMENT_TRAP
91 bool "Catch alignment trap"
92 default y
93 help
94 Nios II CPUs cannot fetch/store data which is not bus aligned,
95 i.e., a 2 or 4 byte fetch must start at an address divisible by
96 2 or 4. Any non-aligned load/store instructions will be trapped and
97 emulated in software if you say Y here, which has a performance
98 impact.
99
100comment "Boot options"
101
102config CMDLINE_BOOL
103 bool "Default bootloader kernel arguments"
104 default y
105
106config CMDLINE
107 string "Default kernel command string"
108 default ""
109 depends on CMDLINE_BOOL
110 help
111 On some platforms, there is currently no way for the boot loader to
112 pass arguments to the kernel. For these platforms, you can supply
113 some command-line options at build time by entering them here. In
114 other cases you can specify kernel args so that you don't have
115 to set them up in board prom initialization routines.
116
117config CMDLINE_FORCE
118 bool "Force default kernel command string"
119 depends on CMDLINE_BOOL
120 help
121 Set this to have arguments from the default kernel command string
122 override those passed by the boot loader.
123
124config NIOS2_CMDLINE_IGNORE_DTB
125 bool "Ignore kernel command string from DTB"
Tobias Klauser2b2b4072014-11-24 16:40:04 +0800126 depends on CMDLINE_BOOL
Ley Foon Tan2fc84832014-11-06 15:20:19 +0800127 depends on !CMDLINE_FORCE
128 default y
129 help
130 Set this to ignore the bootargs property from the devicetree's
131 chosen node and fall back to CMDLINE if nothing is passed.
132
133config NIOS2_PASS_CMDLINE
134 bool "Passed kernel command line from u-boot"
135 default n
136 help
137 Use bootargs env variable from u-boot for kernel command line.
138 will override "Default kernel command string".
139 Say N if you are unsure.
140
Ley Foon Tan01623622015-02-10 23:26:34 +0800141config NIOS2_BOOT_LINK_OFFSET
142 hex "Link address offset for booting"
143 default "0x00500000"
144 help
145 This option allows you to set the link address offset of the zImage.
146 This can be useful if you are on a board which has a small amount of
147 memory.
148
Ley Foon Tan2fc84832014-11-06 15:20:19 +0800149endmenu
150
151menu "Advanced setup"
152
153config ADVANCED_OPTIONS
154 bool "Prompt for advanced kernel configuration options"
155 help
156
157comment "Default settings for advanced configuration options are used"
158 depends on !ADVANCED_OPTIONS
159
160config NIOS2_KERNEL_MMU_REGION_BASE_BOOL
161 bool "Set custom kernel MMU region base address"
162 depends on ADVANCED_OPTIONS
163 help
164 This option allows you to set the virtual address of the kernel MMU region.
165
166 Say N here unless you know what you are doing.
167
168config NIOS2_KERNEL_MMU_REGION_BASE
169 hex "Virtual base address of the kernel MMU region " if NIOS2_KERNEL_MMU_REGION_BASE_BOOL
170 default "0x80000000"
171 help
172 This option allows you to set the virtual base address of the kernel MMU region.
173
174config NIOS2_KERNEL_REGION_BASE_BOOL
175 bool "Set custom kernel region base address"
176 depends on ADVANCED_OPTIONS
177 help
178 This option allows you to set the virtual address of the kernel region.
179
180 Say N here unless you know what you are doing.
181
182config NIOS2_KERNEL_REGION_BASE
183 hex "Virtual base address of the kernel region " if NIOS2_KERNEL_REGION_BASE_BOOL
184 default "0xc0000000"
185
186config NIOS2_IO_REGION_BASE_BOOL
187 bool "Set custom I/O region base address"
188 depends on ADVANCED_OPTIONS
189 help
190 This option allows you to set the virtual address of the I/O region.
191
192 Say N here unless you know what you are doing.
193
194config NIOS2_IO_REGION_BASE
195 hex "Virtual base address of the I/O region" if NIOS2_IO_REGION_BASE_BOOL
196 default "0xe0000000"
197
198endmenu
199
200menu "Executable file formats"
201
202source "fs/Kconfig.binfmt"
203
204endmenu
205
206source "net/Kconfig"
207
208source "drivers/Kconfig"
209
210source "fs/Kconfig"
211
212source "arch/nios2/Kconfig.debug"
213
214source "security/Kconfig"
215
216source "crypto/Kconfig"
217
218source "lib/Kconfig"