blob: 0bce820428fca2e32d5ae5e04714b372fdeb4adc [file] [log] [blame]
Michal Simek575ca282009-03-27 14:25:50 +01001config MICROBLAZE
2 def_bool y
Riku Voipio957e3fa2014-12-12 16:57:44 -08003 select ARCH_HAS_GCOV_PROFILE_ALL
Mark Salter355f65a2013-10-07 22:12:28 -04004 select ARCH_MIGHT_HAVE_PC_PARPORT
Will Deaconc1d7e012012-07-30 14:42:46 -07005 select ARCH_WANT_IPC_PARSE_VERSION
Michal Simek25213382014-04-07 12:51:44 +02006 select ARCH_WANT_OPTIONAL_GPIOLIB
7 select BUILDTIME_EXTABLE_SORT
8 select CLKSRC_OF
9 select CLONE_BACKWARDS3
10 select COMMON_CLK
11 select GENERIC_ATOMIC64
12 select GENERIC_CLOCKEVENTS
13 select GENERIC_CPU_DEVICES
14 select GENERIC_IDLE_POLL_SETUP
Thomas Gleixnerb6e31622011-01-19 20:35:05 +010015 select GENERIC_IRQ_PROBE
Thomas Gleixner9d61c182011-03-24 14:55:52 +010016 select GENERIC_IRQ_SHOW
Michael S. Tsirkin1b34d162011-11-24 21:06:41 +020017 select GENERIC_PCI_IOMAP
Michal Simek839396a2013-12-20 10:16:40 +010018 select GENERIC_SCHED_CLOCK
Michal Simek25213382014-04-07 12:51:44 +020019 select HAVE_ARCH_KGDB
20 select HAVE_DEBUG_KMEMLEAK
21 select HAVE_DMA_API_DEBUG
22 select HAVE_DMA_ATTRS
23 select HAVE_DYNAMIC_FTRACE
24 select HAVE_FTRACE_MCOUNT_RECORD
25 select HAVE_FUNCTION_GRAPH_TRACER
Michal Simek25213382014-04-07 12:51:44 +020026 select HAVE_FUNCTION_TRACER
27 select HAVE_MEMBLOCK
28 select HAVE_MEMBLOCK_NODE_MAP
29 select HAVE_OPROFILE
30 select IRQ_DOMAIN
David Howells786d35d2012-09-28 14:31:03 +093031 select MODULES_USE_ELF_RELA
Michal Simek25213382014-04-07 12:51:44 +020032 select OF
33 select OF_EARLY_FLATTREE
34 select TRACING_SUPPORT
35 select VIRT_TO_BUS
Michal Simek575ca282009-03-27 14:25:50 +010036
37config SWAP
38 def_bool n
39
40config RWSEM_GENERIC_SPINLOCK
41 def_bool y
42
Michal Simek4e2e4122011-12-15 09:24:06 +010043config ZONE_DMA
44 def_bool y
45
Michal Simek575ca282009-03-27 14:25:50 +010046config RWSEM_XCHGADD_ALGORITHM
47 bool
48
49config ARCH_HAS_ILOG2_U32
50 def_bool n
51
52config ARCH_HAS_ILOG2_U64
53 def_bool n
54
Michal Simek575ca282009-03-27 14:25:50 +010055config GENERIC_HWEIGHT
56 def_bool y
57
Michal Simek575ca282009-03-27 14:25:50 +010058config GENERIC_CALIBRATE_DELAY
59 def_bool y
60
Remis Lima Baima14f87382009-06-18 19:55:32 +020061config GENERIC_CSUM
62 def_bool y
63
Michal Simek24b45a12009-11-10 15:57:01 +010064config STACKTRACE_SUPPORT
65 def_bool y
66
Michal Simekbf2d8092009-12-10 12:07:02 +010067config LOCKDEP_SUPPORT
68 def_bool y
69
Michal Simekfb5a32d2009-11-16 09:09:47 +010070config HAVE_LATENCYTOP_SUPPORT
71 def_bool y
72
Michal Simek575ca282009-03-27 14:25:50 +010073source "init/Kconfig"
74
75source "kernel/Kconfig.freezer"
76
Michal Simekc24cf712014-04-07 13:05:00 +020077source "arch/microblaze/Kconfig.platform"
Michal Simek575ca282009-03-27 14:25:50 +010078
79menu "Processor type and features"
80
Michal Simek575ca282009-03-27 14:25:50 +010081source "kernel/Kconfig.preempt"
82
83source "kernel/Kconfig.hz"
84
85config MMU
Michal Simeka116f6d2009-05-26 16:30:31 +020086 bool "MMU support"
87 default n
Michal Simek575ca282009-03-27 14:25:50 +010088
Michal Simek575ca282009-03-27 14:25:50 +010089comment "Boot options"
90
91config CMDLINE_BOOL
92 bool "Default bootloader kernel arguments"
93
94config CMDLINE
95 string "Default kernel command string"
96 depends on CMDLINE_BOOL
97 default "console=ttyUL0,115200"
98 help
99 On some architectures there is currently no way for the boot loader
100 to pass arguments to the kernel. For these architectures, you should
101 supply some command-line options at build time by entering them
102 here.
103
104config CMDLINE_FORCE
105 bool "Force default kernel command string"
106 depends on CMDLINE_BOOL
107 default n
108 help
109 Set this to have arguments from the default kernel command string
110 override those passed by the boot loader.
111
Michal Simek68c6ac32010-08-06 08:50:35 +0200112config SECCOMP
113 bool "Enable seccomp to safely compute untrusted bytecode"
114 depends on PROC_FS
115 default y
116 help
117 This kernel feature is useful for number crunching applications
118 that may need to compute untrusted bytecode during their
119 execution. By using pipes or other transports made available to
120 the process as file descriptors supporting the read/write
121 syscalls, it's possible to isolate those applications in
122 their own address space using seccomp. Once seccomp is
123 enabled via /proc/<pid>/seccomp, it cannot be disabled
124 and the task is only allowed to execute a few safe syscalls
125 defined by each seccomp mode.
126
127 If unsure, say Y. Only embedded should say N here.
128
Michal Simek575ca282009-03-27 14:25:50 +0100129endmenu
130
Michal Simekb408e2c2014-09-01 16:23:54 +0200131menu "Kernel features"
Michal Simeka116f6d2009-05-26 16:30:31 +0200132
Michal Simek4cbbbb42014-10-27 08:28:16 +0100133config NR_CPUS
134 int
135 default "1"
136
Michal Simeka116f6d2009-05-26 16:30:31 +0200137config ADVANCED_OPTIONS
138 bool "Prompt for advanced kernel configuration options"
Michal Simeka116f6d2009-05-26 16:30:31 +0200139 help
140 This option will enable prompting for a variety of advanced kernel
141 configuration options. These options can cause the kernel to not
142 work if they are set incorrectly, but can be used to optimize certain
143 aspects of kernel memory management.
144
145 Unless you know what you are doing, say N here.
146
147comment "Default settings for advanced configuration options are used"
148 depends on !ADVANCED_OPTIONS
149
Michal Simek3a0d7a42010-02-22 12:16:08 +0100150config XILINX_UNCACHED_SHADOW
151 bool "Are you using uncached shadow for RAM ?"
152 depends on ADVANCED_OPTIONS && !MMU
153 default n
154 help
155 This is needed to be able to allocate uncachable memory regions.
156 The feature requires the design to define the RAM memory controller
157 window to be twice as large as the actual physical memory.
158
Michal Simek2f2f3712011-12-15 15:02:37 +0100159config HIGHMEM
160 bool "High memory support"
Michal Simeka116f6d2009-05-26 16:30:31 +0200161 depends on MMU
Michal Simek2f2f3712011-12-15 15:02:37 +0100162 help
163 The address space of Microblaze processors is only 4 Gigabytes large
164 and it has to accommodate user address space, kernel address
165 space as well as some memory mapped IO. That means that, if you
166 have a large amount of physical memory and/or IO, not all of the
167 memory can be "permanently mapped" by the kernel. The physical
168 memory that is not permanently mapped is called "high memory".
169
170 If unsure, say n.
Michal Simeka116f6d2009-05-26 16:30:31 +0200171
172config LOWMEM_SIZE_BOOL
173 bool "Set maximum low memory"
Michal Simekb8a84052010-02-22 11:33:07 +0100174 depends on ADVANCED_OPTIONS && MMU
Michal Simeka116f6d2009-05-26 16:30:31 +0200175 help
176 This option allows you to set the maximum amount of memory which
177 will be used as "low memory", that is, memory which the kernel can
178 access directly, without having to set up a kernel virtual mapping.
179 This can be useful in optimizing the layout of kernel virtual
180 memory.
181
182 Say N here unless you know what you are doing.
183
184config LOWMEM_SIZE
185 hex "Maximum low memory size (in bytes)" if LOWMEM_SIZE_BOOL
Michal Simeka116f6d2009-05-26 16:30:31 +0200186 default "0x30000000"
187
Michal Simek0b9b0202010-11-08 12:37:40 +0100188config MANUAL_RESET_VECTOR
189 hex "Microblaze reset vector address setup"
190 default "0x0"
191 help
192 Set this option to have the kernel override the CPU Reset vector.
193 If zero, no change will be made to the MicroBlaze reset vector at
194 address 0x0.
195 If non-zero, a jump instruction to this address, will be written
196 to the reset vector at address 0x0.
197 If you are unsure, set it to default value 0x0.
198
Michal Simeka116f6d2009-05-26 16:30:31 +0200199config KERNEL_START_BOOL
200 bool "Set custom kernel base address"
201 depends on ADVANCED_OPTIONS
202 help
203 This option allows you to set the kernel virtual address at which
204 the kernel will map low memory (the kernel image will be linked at
205 this address). This can be useful in optimizing the virtual memory
206 layout of the system.
207
208 Say N here unless you know what you are doing.
209
210config KERNEL_START
211 hex "Virtual address of kernel base" if KERNEL_START_BOOL
212 default "0xc0000000" if MMU
213 default KERNEL_BASE_ADDR if !MMU
214
215config TASK_SIZE_BOOL
216 bool "Set custom user task size"
Michal Simekb8a84052010-02-22 11:33:07 +0100217 depends on ADVANCED_OPTIONS && MMU
Michal Simeka116f6d2009-05-26 16:30:31 +0200218 help
219 This option allows you to set the amount of virtual address space
220 allocated to user tasks. This can be useful in optimizing the
221 virtual memory layout of the system.
222
223 Say N here unless you know what you are doing.
224
225config TASK_SIZE
226 hex "Size of user task space" if TASK_SIZE_BOOL
Michal Simeka116f6d2009-05-26 16:30:31 +0200227 default "0x80000000"
228
Steven J. Magnaniba9c4f82010-05-13 10:48:27 -0500229choice
230 prompt "Page size"
231 default MICROBLAZE_4K_PAGES
232 depends on ADVANCED_OPTIONS && !MMU
233 help
234 Select the kernel logical page size. Increasing the page size
235 will reduce software overhead at each page boundary, allow
236 hardware prefetch mechanisms to be more effective, and allow
237 larger dma transfers increasing IO efficiency and reducing
238 overhead. However the utilization of memory will increase.
239 For example, each cached file will using a multiple of the
240 page size to hold its contents and the difference between the
241 end of file and the end of page is wasted.
242
243 If unsure, choose 4K_PAGES.
244
245config MICROBLAZE_4K_PAGES
246 bool "4k page size"
247
Steven J. Magnaniba9c4f82010-05-13 10:48:27 -0500248config MICROBLAZE_16K_PAGES
249 bool "16k page size"
250
Michal Simek6e80cff2012-08-01 10:29:28 +0200251config MICROBLAZE_64K_PAGES
252 bool "64k page size"
Steven J. Magnaniba9c4f82010-05-13 10:48:27 -0500253
254endchoice
255
Michal Simek575ca282009-03-27 14:25:50 +0100256source "mm/Kconfig"
257
Michal Simek7acdc1c2014-09-01 16:23:14 +0200258endmenu
259
Tobias Klauser910672d2011-03-02 18:38:35 +0100260menu "Executable file formats"
Michal Simek575ca282009-03-27 14:25:50 +0100261
262source "fs/Kconfig.binfmt"
263
264endmenu
265
Michal Simeka6475c12010-01-18 15:27:10 +0100266menu "Bus Options"
267
268config PCI
269 bool "PCI support"
270
271config PCI_DOMAINS
272 def_bool PCI
273
274config PCI_SYSCALL
275 def_bool PCI
276
Michal Simek733cc212010-01-18 15:27:11 +0100277config PCI_XILINX
278 bool "Xilinx PCI host bridge support"
279 depends on PCI
280
Michal Simeka6475c12010-01-18 15:27:10 +0100281source "drivers/pci/Kconfig"
282
283endmenu
284
Michal Simek575ca282009-03-27 14:25:50 +0100285source "net/Kconfig"
286
287source "drivers/Kconfig"
288
289source "fs/Kconfig"
290
291source "arch/microblaze/Kconfig.debug"
292
293source "security/Kconfig"
294
295source "crypto/Kconfig"
296
297source "lib/Kconfig"