blob: 198abf6d41c479ab119f02ad855a68a27bdbf2ce [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
22 select GENERIC_IRQ_PROBE
Thomas Gleixner9d61c182011-03-24 14:55:52 +010023 select GENERIC_IRQ_SHOW
Michael S. Tsirkin1b34d162011-11-24 21:06:41 +020024 select GENERIC_PCI_IOMAP
Ben Hutchings9f13a1f2012-01-10 03:04:32 +000025 select GENERIC_CPU_DEVICES
Daniel Borkmanneacb6ec2012-01-19 12:37:13 +010026 select GENERIC_ATOMIC64
Anna-Maria Gleixnerd6412e22012-05-18 16:45:49 +000027 select GENERIC_CLOCKEVENTS
David Howells786d35d2012-09-28 14:31:03 +093028 select MODULES_USE_ELF_RELA
Al Viro23192952012-10-06 13:52:37 -040029 select GENERIC_KERNEL_THREAD
Al Viro99c59f62012-10-10 11:52:44 -040030 select GENERIC_KERNEL_EXECVE
Michal Simek575ca282009-03-27 14:25:50 +010031
32config SWAP
33 def_bool n
34
35config RWSEM_GENERIC_SPINLOCK
36 def_bool y
37
Michal Simek4e2e4122011-12-15 09:24:06 +010038config ZONE_DMA
39 def_bool y
40
Michal Simekbaab8a82011-12-15 15:47:16 +010041config ARCH_POPULATES_NODE_MAP
42 def_bool y
43
Michal Simek575ca282009-03-27 14:25:50 +010044config RWSEM_XCHGADD_ALGORITHM
45 bool
46
47config ARCH_HAS_ILOG2_U32
48 def_bool n
49
50config ARCH_HAS_ILOG2_U64
51 def_bool n
52
Michal Simek575ca282009-03-27 14:25:50 +010053config GENERIC_HWEIGHT
54 def_bool y
55
Michal Simek575ca282009-03-27 14:25:50 +010056config GENERIC_CALIBRATE_DELAY
57 def_bool y
58
Michal Simek6fa612b2009-05-11 15:49:12 +020059config GENERIC_GPIO
Lars-Peter Clausen59516b02012-04-09 15:05:44 +020060 bool
Michal Simek6fa612b2009-05-11 15:49:12 +020061
Remis Lima Baima14f87382009-06-18 19:55:32 +020062config GENERIC_CSUM
63 def_bool y
64
Michal Simek24b45a12009-11-10 15:57:01 +010065config STACKTRACE_SUPPORT
66 def_bool y
67
Michal Simekbf2d8092009-12-10 12:07:02 +010068config LOCKDEP_SUPPORT
69 def_bool y
70
Michal Simekfb5a32d2009-11-16 09:09:47 +010071config HAVE_LATENCYTOP_SUPPORT
72 def_bool y
73
Michal Simek575ca282009-03-27 14:25:50 +010074source "init/Kconfig"
75
76source "kernel/Kconfig.freezer"
77
78source "arch/microblaze/platform/Kconfig.platform"
79
80menu "Processor type and features"
81
Michal Simek575ca282009-03-27 14:25:50 +010082source "kernel/Kconfig.preempt"
83
84source "kernel/Kconfig.hz"
85
86config MMU
Michal Simeka116f6d2009-05-26 16:30:31 +020087 bool "MMU support"
88 default n
Michal Simek575ca282009-03-27 14:25:50 +010089
90config NO_MMU
91 bool
92 depends on !MMU
93 default y
94
95comment "Boot options"
96
97config CMDLINE_BOOL
98 bool "Default bootloader kernel arguments"
99
100config CMDLINE
101 string "Default kernel command string"
102 depends on CMDLINE_BOOL
103 default "console=ttyUL0,115200"
104 help
105 On some architectures there is currently no way for the boot loader
106 to pass arguments to the kernel. For these architectures, you should
107 supply some command-line options at build time by entering them
108 here.
109
110config CMDLINE_FORCE
111 bool "Force default kernel command string"
112 depends on CMDLINE_BOOL
113 default n
114 help
115 Set this to have arguments from the default kernel command string
116 override those passed by the boot loader.
117
Michal Simek68c6ac32010-08-06 08:50:35 +0200118config SECCOMP
119 bool "Enable seccomp to safely compute untrusted bytecode"
120 depends on PROC_FS
121 default y
122 help
123 This kernel feature is useful for number crunching applications
124 that may need to compute untrusted bytecode during their
125 execution. By using pipes or other transports made available to
126 the process as file descriptors supporting the read/write
127 syscalls, it's possible to isolate those applications in
128 their own address space using seccomp. Once seccomp is
129 enabled via /proc/<pid>/seccomp, it cannot be disabled
130 and the task is only allowed to execute a few safe syscalls
131 defined by each seccomp mode.
132
133 If unsure, say Y. Only embedded should say N here.
134
Michal Simek575ca282009-03-27 14:25:50 +0100135endmenu
136
Michal Simeka116f6d2009-05-26 16:30:31 +0200137menu "Advanced setup"
138
139config ADVANCED_OPTIONS
140 bool "Prompt for advanced kernel configuration options"
Michal Simeka116f6d2009-05-26 16:30:31 +0200141 help
142 This option will enable prompting for a variety of advanced kernel
143 configuration options. These options can cause the kernel to not
144 work if they are set incorrectly, but can be used to optimize certain
145 aspects of kernel memory management.
146
147 Unless you know what you are doing, say N here.
148
149comment "Default settings for advanced configuration options are used"
150 depends on !ADVANCED_OPTIONS
151
Michal Simek3a0d7a42010-02-22 12:16:08 +0100152config XILINX_UNCACHED_SHADOW
153 bool "Are you using uncached shadow for RAM ?"
154 depends on ADVANCED_OPTIONS && !MMU
155 default n
156 help
157 This is needed to be able to allocate uncachable memory regions.
158 The feature requires the design to define the RAM memory controller
159 window to be twice as large as the actual physical memory.
160
Michal Simek2f2f3712011-12-15 15:02:37 +0100161config HIGHMEM
162 bool "High memory support"
Michal Simeka116f6d2009-05-26 16:30:31 +0200163 depends on MMU
Michal Simek2f2f3712011-12-15 15:02:37 +0100164 help
165 The address space of Microblaze processors is only 4 Gigabytes large
166 and it has to accommodate user address space, kernel address
167 space as well as some memory mapped IO. That means that, if you
168 have a large amount of physical memory and/or IO, not all of the
169 memory can be "permanently mapped" by the kernel. The physical
170 memory that is not permanently mapped is called "high memory".
171
172 If unsure, say n.
Michal Simeka116f6d2009-05-26 16:30:31 +0200173
174config LOWMEM_SIZE_BOOL
175 bool "Set maximum low memory"
Michal Simekb8a84052010-02-22 11:33:07 +0100176 depends on ADVANCED_OPTIONS && MMU
Michal Simeka116f6d2009-05-26 16:30:31 +0200177 help
178 This option allows you to set the maximum amount of memory which
179 will be used as "low memory", that is, memory which the kernel can
180 access directly, without having to set up a kernel virtual mapping.
181 This can be useful in optimizing the layout of kernel virtual
182 memory.
183
184 Say N here unless you know what you are doing.
185
186config LOWMEM_SIZE
187 hex "Maximum low memory size (in bytes)" if LOWMEM_SIZE_BOOL
Michal Simeka116f6d2009-05-26 16:30:31 +0200188 default "0x30000000"
189
Michal Simek0b9b0202010-11-08 12:37:40 +0100190config MANUAL_RESET_VECTOR
191 hex "Microblaze reset vector address setup"
192 default "0x0"
193 help
194 Set this option to have the kernel override the CPU Reset vector.
195 If zero, no change will be made to the MicroBlaze reset vector at
196 address 0x0.
197 If non-zero, a jump instruction to this address, will be written
198 to the reset vector at address 0x0.
199 If you are unsure, set it to default value 0x0.
200
Michal Simeka116f6d2009-05-26 16:30:31 +0200201config KERNEL_START_BOOL
202 bool "Set custom kernel base address"
203 depends on ADVANCED_OPTIONS
204 help
205 This option allows you to set the kernel virtual address at which
206 the kernel will map low memory (the kernel image will be linked at
207 this address). This can be useful in optimizing the virtual memory
208 layout of the system.
209
210 Say N here unless you know what you are doing.
211
212config KERNEL_START
213 hex "Virtual address of kernel base" if KERNEL_START_BOOL
214 default "0xc0000000" if MMU
215 default KERNEL_BASE_ADDR if !MMU
216
217config TASK_SIZE_BOOL
218 bool "Set custom user task size"
Michal Simekb8a84052010-02-22 11:33:07 +0100219 depends on ADVANCED_OPTIONS && MMU
Michal Simeka116f6d2009-05-26 16:30:31 +0200220 help
221 This option allows you to set the amount of virtual address space
222 allocated to user tasks. This can be useful in optimizing the
223 virtual memory layout of the system.
224
225 Say N here unless you know what you are doing.
226
227config TASK_SIZE
228 hex "Size of user task space" if TASK_SIZE_BOOL
Michal Simeka116f6d2009-05-26 16:30:31 +0200229 default "0x80000000"
230
Steven J. Magnaniba9c4f82010-05-13 10:48:27 -0500231choice
232 prompt "Page size"
233 default MICROBLAZE_4K_PAGES
234 depends on ADVANCED_OPTIONS && !MMU
235 help
236 Select the kernel logical page size. Increasing the page size
237 will reduce software overhead at each page boundary, allow
238 hardware prefetch mechanisms to be more effective, and allow
239 larger dma transfers increasing IO efficiency and reducing
240 overhead. However the utilization of memory will increase.
241 For example, each cached file will using a multiple of the
242 page size to hold its contents and the difference between the
243 end of file and the end of page is wasted.
244
245 If unsure, choose 4K_PAGES.
246
247config MICROBLAZE_4K_PAGES
248 bool "4k page size"
249
Steven J. Magnaniba9c4f82010-05-13 10:48:27 -0500250config MICROBLAZE_16K_PAGES
251 bool "16k page size"
252
Michal Simek6e80cff2012-08-01 10:29:28 +0200253config MICROBLAZE_64K_PAGES
254 bool "64k page size"
Steven J. Magnaniba9c4f82010-05-13 10:48:27 -0500255
256endchoice
257
Michal Simek95b0f9e2010-02-08 16:41:38 +0100258config KERNEL_PAD
259 hex "Kernel PAD for unpacking" if ADVANCED_OPTIONS
260 default "0x80000" if MMU
261
Michal Simeka116f6d2009-05-26 16:30:31 +0200262endmenu
263
Michal Simek575ca282009-03-27 14:25:50 +0100264source "mm/Kconfig"
265
Tobias Klauser910672d2011-03-02 18:38:35 +0100266menu "Executable file formats"
Michal Simek575ca282009-03-27 14:25:50 +0100267
268source "fs/Kconfig.binfmt"
269
270endmenu
271
Michal Simeka6475c12010-01-18 15:27:10 +0100272menu "Bus Options"
273
274config PCI
275 bool "PCI support"
276
277config PCI_DOMAINS
278 def_bool PCI
279
280config PCI_SYSCALL
281 def_bool PCI
282
Michal Simek733cc212010-01-18 15:27:11 +0100283config PCI_XILINX
284 bool "Xilinx PCI host bridge support"
285 depends on PCI
286
Michal Simeka6475c12010-01-18 15:27:10 +0100287source "drivers/pci/Kconfig"
288
289endmenu
290
Michal Simek575ca282009-03-27 14:25:50 +0100291source "net/Kconfig"
292
293source "drivers/Kconfig"
294
295source "fs/Kconfig"
296
297source "arch/microblaze/Kconfig.debug"
298
299source "security/Kconfig"
300
301source "crypto/Kconfig"
302
303source "lib/Kconfig"