blob: d22a4ecffff422f542e96f81527b45a4e3f9c6c2 [file] [log] [blame]
Michal Simek575ca282009-03-27 14:25:50 +01001config MICROBLAZE
2 def_bool y
Yinghai Lu95f72d12010-07-12 14:36:09 +10003 select HAVE_MEMBLOCK
Michal Simekbaab8a82011-12-15 15:47:16 +01004 select HAVE_MEMBLOCK_NODE_MAP
Michal Simek2fd7c762009-11-16 09:40:14 +01005 select HAVE_FUNCTION_TRACER
Michal Simek6d9e60c2009-11-16 09:55:08 +01006 select HAVE_FUNCTION_TRACE_MCOUNT_TEST
Michal Simeka0d3e662009-11-16 10:32:10 +01007 select HAVE_FUNCTION_GRAPH_TRACER
Michal Simek7d241ff2009-12-10 14:15:44 +01008 select HAVE_DYNAMIC_FTRACE
9 select HAVE_FTRACE_MCOUNT_RECORD
Michal Simek6fa612b2009-05-11 15:49:12 +020010 select ARCH_WANT_OPTIONAL_GPIOLIB
John Williams3540ce82009-11-24 20:27:54 +100011 select HAVE_OPROFILE
Michal Simek2d5973c2010-08-03 11:45:08 +020012 select HAVE_ARCH_KGDB
Michal Simekccfe27d2010-01-14 11:21:02 +010013 select HAVE_DMA_ATTRS
14 select HAVE_DMA_API_DEBUG
John Williams3540ce82009-11-24 20:27:54 +100015 select TRACING_SUPPORT
Stephen Rothwellae5bf632010-06-29 12:42:00 +100016 select OF
Stephen Neuendorffere6ce1322010-11-18 15:54:56 -080017 select OF_EARLY_FLATTREE
Will Deaconc1d7e012012-07-30 14:42:46 -070018 select ARCH_WANT_IPC_PARSE_VERSION
Catalin Marinasb69ec422012-10-08 16:28:11 -070019 select HAVE_DEBUG_KMEMLEAK
Grant Likely2462bac2012-01-26 14:10:13 -070020 select IRQ_DOMAIN
Thomas Gleixnerb6e31622011-01-19 20:35:05 +010021 select HAVE_GENERIC_HARDIRQS
Stephen Rothwell4febd952013-03-07 15:48:16 +110022 select VIRT_TO_BUS
Thomas Gleixnerb6e31622011-01-19 20:35:05 +010023 select GENERIC_IRQ_PROBE
Thomas Gleixner9d61c182011-03-24 14:55:52 +010024 select GENERIC_IRQ_SHOW
Michael S. Tsirkin1b34d162011-11-24 21:06:41 +020025 select GENERIC_PCI_IOMAP
Ben Hutchings9f13a1f2012-01-10 03:04:32 +000026 select GENERIC_CPU_DEVICES
Daniel Borkmanneacb6ec2012-01-19 12:37:13 +010027 select GENERIC_ATOMIC64
Anna-Maria Gleixnerd6412e22012-05-18 16:45:49 +000028 select GENERIC_CLOCKEVENTS
Thomas Gleixnere962bb92013-03-21 22:49:51 +010029 select GENERIC_IDLE_POLL_SETUP
David Howells786d35d2012-09-28 14:31:03 +093030 select MODULES_USE_ELF_RELA
Al Virof3268ed2012-10-27 00:03:41 -040031 select CLONE_BACKWARDS
Michal Simek575ca282009-03-27 14:25:50 +010032
33config SWAP
34 def_bool n
35
36config RWSEM_GENERIC_SPINLOCK
37 def_bool y
38
Michal Simek4e2e4122011-12-15 09:24:06 +010039config ZONE_DMA
40 def_bool y
41
Michal Simek575ca282009-03-27 14:25:50 +010042config RWSEM_XCHGADD_ALGORITHM
43 bool
44
45config ARCH_HAS_ILOG2_U32
46 def_bool n
47
48config ARCH_HAS_ILOG2_U64
49 def_bool n
50
Michal Simek575ca282009-03-27 14:25:50 +010051config GENERIC_HWEIGHT
52 def_bool y
53
Michal Simek575ca282009-03-27 14:25:50 +010054config GENERIC_CALIBRATE_DELAY
55 def_bool y
56
Remis Lima Baima14f87382009-06-18 19:55:32 +020057config GENERIC_CSUM
58 def_bool y
59
Michal Simek24b45a12009-11-10 15:57:01 +010060config STACKTRACE_SUPPORT
61 def_bool y
62
Michal Simekbf2d8092009-12-10 12:07:02 +010063config LOCKDEP_SUPPORT
64 def_bool y
65
Michal Simekfb5a32d2009-11-16 09:09:47 +010066config HAVE_LATENCYTOP_SUPPORT
67 def_bool y
68
Michal Simek575ca282009-03-27 14:25:50 +010069source "init/Kconfig"
70
71source "kernel/Kconfig.freezer"
72
73source "arch/microblaze/platform/Kconfig.platform"
74
75menu "Processor type and features"
76
Michal Simek575ca282009-03-27 14:25:50 +010077source "kernel/Kconfig.preempt"
78
79source "kernel/Kconfig.hz"
80
81config MMU
Michal Simeka116f6d2009-05-26 16:30:31 +020082 bool "MMU support"
83 default n
Michal Simek575ca282009-03-27 14:25:50 +010084
85config NO_MMU
86 bool
87 depends on !MMU
88 default y
89
90comment "Boot options"
91
92config CMDLINE_BOOL
93 bool "Default bootloader kernel arguments"
94
95config CMDLINE
96 string "Default kernel command string"
97 depends on CMDLINE_BOOL
98 default "console=ttyUL0,115200"
99 help
100 On some architectures there is currently no way for the boot loader
101 to pass arguments to the kernel. For these architectures, you should
102 supply some command-line options at build time by entering them
103 here.
104
105config CMDLINE_FORCE
106 bool "Force default kernel command string"
107 depends on CMDLINE_BOOL
108 default n
109 help
110 Set this to have arguments from the default kernel command string
111 override those passed by the boot loader.
112
Michal Simek68c6ac32010-08-06 08:50:35 +0200113config SECCOMP
114 bool "Enable seccomp to safely compute untrusted bytecode"
115 depends on PROC_FS
116 default y
117 help
118 This kernel feature is useful for number crunching applications
119 that may need to compute untrusted bytecode during their
120 execution. By using pipes or other transports made available to
121 the process as file descriptors supporting the read/write
122 syscalls, it's possible to isolate those applications in
123 their own address space using seccomp. Once seccomp is
124 enabled via /proc/<pid>/seccomp, it cannot be disabled
125 and the task is only allowed to execute a few safe syscalls
126 defined by each seccomp mode.
127
128 If unsure, say Y. Only embedded should say N here.
129
Michal Simek575ca282009-03-27 14:25:50 +0100130endmenu
131
Michal Simeka116f6d2009-05-26 16:30:31 +0200132menu "Advanced setup"
133
134config ADVANCED_OPTIONS
135 bool "Prompt for advanced kernel configuration options"
Michal Simeka116f6d2009-05-26 16:30:31 +0200136 help
137 This option will enable prompting for a variety of advanced kernel
138 configuration options. These options can cause the kernel to not
139 work if they are set incorrectly, but can be used to optimize certain
140 aspects of kernel memory management.
141
142 Unless you know what you are doing, say N here.
143
144comment "Default settings for advanced configuration options are used"
145 depends on !ADVANCED_OPTIONS
146
Michal Simek3a0d7a42010-02-22 12:16:08 +0100147config XILINX_UNCACHED_SHADOW
148 bool "Are you using uncached shadow for RAM ?"
149 depends on ADVANCED_OPTIONS && !MMU
150 default n
151 help
152 This is needed to be able to allocate uncachable memory regions.
153 The feature requires the design to define the RAM memory controller
154 window to be twice as large as the actual physical memory.
155
Michal Simek2f2f3712011-12-15 15:02:37 +0100156config HIGHMEM
157 bool "High memory support"
Michal Simeka116f6d2009-05-26 16:30:31 +0200158 depends on MMU
Michal Simek2f2f3712011-12-15 15:02:37 +0100159 help
160 The address space of Microblaze processors is only 4 Gigabytes large
161 and it has to accommodate user address space, kernel address
162 space as well as some memory mapped IO. That means that, if you
163 have a large amount of physical memory and/or IO, not all of the
164 memory can be "permanently mapped" by the kernel. The physical
165 memory that is not permanently mapped is called "high memory".
166
167 If unsure, say n.
Michal Simeka116f6d2009-05-26 16:30:31 +0200168
169config LOWMEM_SIZE_BOOL
170 bool "Set maximum low memory"
Michal Simekb8a84052010-02-22 11:33:07 +0100171 depends on ADVANCED_OPTIONS && MMU
Michal Simeka116f6d2009-05-26 16:30:31 +0200172 help
173 This option allows you to set the maximum amount of memory which
174 will be used as "low memory", that is, memory which the kernel can
175 access directly, without having to set up a kernel virtual mapping.
176 This can be useful in optimizing the layout of kernel virtual
177 memory.
178
179 Say N here unless you know what you are doing.
180
181config LOWMEM_SIZE
182 hex "Maximum low memory size (in bytes)" if LOWMEM_SIZE_BOOL
Michal Simeka116f6d2009-05-26 16:30:31 +0200183 default "0x30000000"
184
Michal Simek0b9b0202010-11-08 12:37:40 +0100185config MANUAL_RESET_VECTOR
186 hex "Microblaze reset vector address setup"
187 default "0x0"
188 help
189 Set this option to have the kernel override the CPU Reset vector.
190 If zero, no change will be made to the MicroBlaze reset vector at
191 address 0x0.
192 If non-zero, a jump instruction to this address, will be written
193 to the reset vector at address 0x0.
194 If you are unsure, set it to default value 0x0.
195
Michal Simeka116f6d2009-05-26 16:30:31 +0200196config KERNEL_START_BOOL
197 bool "Set custom kernel base address"
198 depends on ADVANCED_OPTIONS
199 help
200 This option allows you to set the kernel virtual address at which
201 the kernel will map low memory (the kernel image will be linked at
202 this address). This can be useful in optimizing the virtual memory
203 layout of the system.
204
205 Say N here unless you know what you are doing.
206
207config KERNEL_START
208 hex "Virtual address of kernel base" if KERNEL_START_BOOL
209 default "0xc0000000" if MMU
210 default KERNEL_BASE_ADDR if !MMU
211
212config TASK_SIZE_BOOL
213 bool "Set custom user task size"
Michal Simekb8a84052010-02-22 11:33:07 +0100214 depends on ADVANCED_OPTIONS && MMU
Michal Simeka116f6d2009-05-26 16:30:31 +0200215 help
216 This option allows you to set the amount of virtual address space
217 allocated to user tasks. This can be useful in optimizing the
218 virtual memory layout of the system.
219
220 Say N here unless you know what you are doing.
221
222config TASK_SIZE
223 hex "Size of user task space" if TASK_SIZE_BOOL
Michal Simeka116f6d2009-05-26 16:30:31 +0200224 default "0x80000000"
225
Steven J. Magnaniba9c4f82010-05-13 10:48:27 -0500226choice
227 prompt "Page size"
228 default MICROBLAZE_4K_PAGES
229 depends on ADVANCED_OPTIONS && !MMU
230 help
231 Select the kernel logical page size. Increasing the page size
232 will reduce software overhead at each page boundary, allow
233 hardware prefetch mechanisms to be more effective, and allow
234 larger dma transfers increasing IO efficiency and reducing
235 overhead. However the utilization of memory will increase.
236 For example, each cached file will using a multiple of the
237 page size to hold its contents and the difference between the
238 end of file and the end of page is wasted.
239
240 If unsure, choose 4K_PAGES.
241
242config MICROBLAZE_4K_PAGES
243 bool "4k page size"
244
Steven J. Magnaniba9c4f82010-05-13 10:48:27 -0500245config MICROBLAZE_16K_PAGES
246 bool "16k page size"
247
Michal Simek6e80cff2012-08-01 10:29:28 +0200248config MICROBLAZE_64K_PAGES
249 bool "64k page size"
Steven J. Magnaniba9c4f82010-05-13 10:48:27 -0500250
251endchoice
252
Michal Simek95b0f9e2010-02-08 16:41:38 +0100253config KERNEL_PAD
254 hex "Kernel PAD for unpacking" if ADVANCED_OPTIONS
255 default "0x80000" if MMU
256
Michal Simeka116f6d2009-05-26 16:30:31 +0200257endmenu
258
Michal Simek575ca282009-03-27 14:25:50 +0100259source "mm/Kconfig"
260
Tobias Klauser910672d2011-03-02 18:38:35 +0100261menu "Executable file formats"
Michal Simek575ca282009-03-27 14:25:50 +0100262
263source "fs/Kconfig.binfmt"
264
265endmenu
266
Michal Simeka6475c12010-01-18 15:27:10 +0100267menu "Bus Options"
268
269config PCI
270 bool "PCI support"
271
272config PCI_DOMAINS
273 def_bool PCI
274
275config PCI_SYSCALL
276 def_bool PCI
277
Michal Simek733cc212010-01-18 15:27:11 +0100278config PCI_XILINX
279 bool "Xilinx PCI host bridge support"
280 depends on PCI
281
Michal Simeka6475c12010-01-18 15:27:10 +0100282source "drivers/pci/Kconfig"
283
284endmenu
285
Michal Simek575ca282009-03-27 14:25:50 +0100286source "net/Kconfig"
287
288source "drivers/Kconfig"
289
290source "fs/Kconfig"
291
292source "arch/microblaze/Kconfig.debug"
293
294source "security/Kconfig"
295
296source "crypto/Kconfig"
297
298source "lib/Kconfig"