blob: 0bb0d519a2336cd3f7e6be4cfc7b419259bef01b [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_LOOP
30 select GENERIC_IDLE_POLL_SETUP
David Howells786d35d2012-09-28 14:31:03 +093031 select MODULES_USE_ELF_RELA
Al Virof3268ed2012-10-27 00:03:41 -040032 select CLONE_BACKWARDS
Michal Simek575ca282009-03-27 14:25:50 +010033
34config SWAP
35 def_bool n
36
37config RWSEM_GENERIC_SPINLOCK
38 def_bool y
39
Michal Simek4e2e4122011-12-15 09:24:06 +010040config ZONE_DMA
41 def_bool y
42
Michal Simekbaab8a82011-12-15 15:47:16 +010043config ARCH_POPULATES_NODE_MAP
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
Michal Simek6fa612b2009-05-11 15:49:12 +020061config GENERIC_GPIO
Lars-Peter Clausen59516b02012-04-09 15:05:44 +020062 bool
Michal Simek6fa612b2009-05-11 15:49:12 +020063
Remis Lima Baima14f87382009-06-18 19:55:32 +020064config GENERIC_CSUM
65 def_bool y
66
Michal Simek24b45a12009-11-10 15:57:01 +010067config STACKTRACE_SUPPORT
68 def_bool y
69
Michal Simekbf2d8092009-12-10 12:07:02 +010070config LOCKDEP_SUPPORT
71 def_bool y
72
Michal Simekfb5a32d2009-11-16 09:09:47 +010073config HAVE_LATENCYTOP_SUPPORT
74 def_bool y
75
Michal Simek575ca282009-03-27 14:25:50 +010076source "init/Kconfig"
77
78source "kernel/Kconfig.freezer"
79
80source "arch/microblaze/platform/Kconfig.platform"
81
82menu "Processor type and features"
83
Michal Simek575ca282009-03-27 14:25:50 +010084source "kernel/Kconfig.preempt"
85
86source "kernel/Kconfig.hz"
87
88config MMU
Michal Simeka116f6d2009-05-26 16:30:31 +020089 bool "MMU support"
90 default n
Michal Simek575ca282009-03-27 14:25:50 +010091
92config NO_MMU
93 bool
94 depends on !MMU
95 default y
96
97comment "Boot options"
98
99config CMDLINE_BOOL
100 bool "Default bootloader kernel arguments"
101
102config CMDLINE
103 string "Default kernel command string"
104 depends on CMDLINE_BOOL
105 default "console=ttyUL0,115200"
106 help
107 On some architectures there is currently no way for the boot loader
108 to pass arguments to the kernel. For these architectures, you should
109 supply some command-line options at build time by entering them
110 here.
111
112config CMDLINE_FORCE
113 bool "Force default kernel command string"
114 depends on CMDLINE_BOOL
115 default n
116 help
117 Set this to have arguments from the default kernel command string
118 override those passed by the boot loader.
119
Michal Simek68c6ac32010-08-06 08:50:35 +0200120config SECCOMP
121 bool "Enable seccomp to safely compute untrusted bytecode"
122 depends on PROC_FS
123 default y
124 help
125 This kernel feature is useful for number crunching applications
126 that may need to compute untrusted bytecode during their
127 execution. By using pipes or other transports made available to
128 the process as file descriptors supporting the read/write
129 syscalls, it's possible to isolate those applications in
130 their own address space using seccomp. Once seccomp is
131 enabled via /proc/<pid>/seccomp, it cannot be disabled
132 and the task is only allowed to execute a few safe syscalls
133 defined by each seccomp mode.
134
135 If unsure, say Y. Only embedded should say N here.
136
Michal Simek575ca282009-03-27 14:25:50 +0100137endmenu
138
Michal Simeka116f6d2009-05-26 16:30:31 +0200139menu "Advanced setup"
140
141config ADVANCED_OPTIONS
142 bool "Prompt for advanced kernel configuration options"
Michal Simeka116f6d2009-05-26 16:30:31 +0200143 help
144 This option will enable prompting for a variety of advanced kernel
145 configuration options. These options can cause the kernel to not
146 work if they are set incorrectly, but can be used to optimize certain
147 aspects of kernel memory management.
148
149 Unless you know what you are doing, say N here.
150
151comment "Default settings for advanced configuration options are used"
152 depends on !ADVANCED_OPTIONS
153
Michal Simek3a0d7a42010-02-22 12:16:08 +0100154config XILINX_UNCACHED_SHADOW
155 bool "Are you using uncached shadow for RAM ?"
156 depends on ADVANCED_OPTIONS && !MMU
157 default n
158 help
159 This is needed to be able to allocate uncachable memory regions.
160 The feature requires the design to define the RAM memory controller
161 window to be twice as large as the actual physical memory.
162
Michal Simek2f2f3712011-12-15 15:02:37 +0100163config HIGHMEM
164 bool "High memory support"
Michal Simeka116f6d2009-05-26 16:30:31 +0200165 depends on MMU
Michal Simek2f2f3712011-12-15 15:02:37 +0100166 help
167 The address space of Microblaze processors is only 4 Gigabytes large
168 and it has to accommodate user address space, kernel address
169 space as well as some memory mapped IO. That means that, if you
170 have a large amount of physical memory and/or IO, not all of the
171 memory can be "permanently mapped" by the kernel. The physical
172 memory that is not permanently mapped is called "high memory".
173
174 If unsure, say n.
Michal Simeka116f6d2009-05-26 16:30:31 +0200175
176config LOWMEM_SIZE_BOOL
177 bool "Set maximum low memory"
Michal Simekb8a84052010-02-22 11:33:07 +0100178 depends on ADVANCED_OPTIONS && MMU
Michal Simeka116f6d2009-05-26 16:30:31 +0200179 help
180 This option allows you to set the maximum amount of memory which
181 will be used as "low memory", that is, memory which the kernel can
182 access directly, without having to set up a kernel virtual mapping.
183 This can be useful in optimizing the layout of kernel virtual
184 memory.
185
186 Say N here unless you know what you are doing.
187
188config LOWMEM_SIZE
189 hex "Maximum low memory size (in bytes)" if LOWMEM_SIZE_BOOL
Michal Simeka116f6d2009-05-26 16:30:31 +0200190 default "0x30000000"
191
Michal Simek0b9b0202010-11-08 12:37:40 +0100192config MANUAL_RESET_VECTOR
193 hex "Microblaze reset vector address setup"
194 default "0x0"
195 help
196 Set this option to have the kernel override the CPU Reset vector.
197 If zero, no change will be made to the MicroBlaze reset vector at
198 address 0x0.
199 If non-zero, a jump instruction to this address, will be written
200 to the reset vector at address 0x0.
201 If you are unsure, set it to default value 0x0.
202
Michal Simeka116f6d2009-05-26 16:30:31 +0200203config KERNEL_START_BOOL
204 bool "Set custom kernel base address"
205 depends on ADVANCED_OPTIONS
206 help
207 This option allows you to set the kernel virtual address at which
208 the kernel will map low memory (the kernel image will be linked at
209 this address). This can be useful in optimizing the virtual memory
210 layout of the system.
211
212 Say N here unless you know what you are doing.
213
214config KERNEL_START
215 hex "Virtual address of kernel base" if KERNEL_START_BOOL
216 default "0xc0000000" if MMU
217 default KERNEL_BASE_ADDR if !MMU
218
219config TASK_SIZE_BOOL
220 bool "Set custom user task size"
Michal Simekb8a84052010-02-22 11:33:07 +0100221 depends on ADVANCED_OPTIONS && MMU
Michal Simeka116f6d2009-05-26 16:30:31 +0200222 help
223 This option allows you to set the amount of virtual address space
224 allocated to user tasks. This can be useful in optimizing the
225 virtual memory layout of the system.
226
227 Say N here unless you know what you are doing.
228
229config TASK_SIZE
230 hex "Size of user task space" if TASK_SIZE_BOOL
Michal Simeka116f6d2009-05-26 16:30:31 +0200231 default "0x80000000"
232
Steven J. Magnaniba9c4f82010-05-13 10:48:27 -0500233choice
234 prompt "Page size"
235 default MICROBLAZE_4K_PAGES
236 depends on ADVANCED_OPTIONS && !MMU
237 help
238 Select the kernel logical page size. Increasing the page size
239 will reduce software overhead at each page boundary, allow
240 hardware prefetch mechanisms to be more effective, and allow
241 larger dma transfers increasing IO efficiency and reducing
242 overhead. However the utilization of memory will increase.
243 For example, each cached file will using a multiple of the
244 page size to hold its contents and the difference between the
245 end of file and the end of page is wasted.
246
247 If unsure, choose 4K_PAGES.
248
249config MICROBLAZE_4K_PAGES
250 bool "4k page size"
251
Steven J. Magnaniba9c4f82010-05-13 10:48:27 -0500252config MICROBLAZE_16K_PAGES
253 bool "16k page size"
254
Michal Simek6e80cff2012-08-01 10:29:28 +0200255config MICROBLAZE_64K_PAGES
256 bool "64k page size"
Steven J. Magnaniba9c4f82010-05-13 10:48:27 -0500257
258endchoice
259
Michal Simek95b0f9e2010-02-08 16:41:38 +0100260config KERNEL_PAD
261 hex "Kernel PAD for unpacking" if ADVANCED_OPTIONS
262 default "0x80000" if MMU
263
Michal Simeka116f6d2009-05-26 16:30:31 +0200264endmenu
265
Michal Simek575ca282009-03-27 14:25:50 +0100266source "mm/Kconfig"
267
Tobias Klauser910672d2011-03-02 18:38:35 +0100268menu "Executable file formats"
Michal Simek575ca282009-03-27 14:25:50 +0100269
270source "fs/Kconfig.binfmt"
271
272endmenu
273
Michal Simeka6475c12010-01-18 15:27:10 +0100274menu "Bus Options"
275
276config PCI
277 bool "PCI support"
278
279config PCI_DOMAINS
280 def_bool PCI
281
282config PCI_SYSCALL
283 def_bool PCI
284
Michal Simek733cc212010-01-18 15:27:11 +0100285config PCI_XILINX
286 bool "Xilinx PCI host bridge support"
287 depends on PCI
288
Michal Simeka6475c12010-01-18 15:27:10 +0100289source "drivers/pci/Kconfig"
290
291endmenu
292
Michal Simek575ca282009-03-27 14:25:50 +0100293source "net/Kconfig"
294
295source "drivers/Kconfig"
296
297source "fs/Kconfig"
298
299source "arch/microblaze/Kconfig.debug"
300
301source "security/Kconfig"
302
303source "crypto/Kconfig"
304
305source "lib/Kconfig"