blob: 6ae9a0306b35e29b5303f1526887bba2a2cb98ac [file] [log] [blame]
Bryan Wu1394f032007-05-06 14:50:22 -07001#
2# For a description of the syntax of this configuration file,
3# see Documentation/kbuild/kconfig-language.txt.
4#
5
Mike Frysinger53f8a252007-11-15 15:48:01 +08006mainmenu "Blackfin Kernel Configuration"
Bryan Wu1394f032007-05-06 14:50:22 -07007
8config MMU
Mike Frysingerbac7d892009-06-07 03:46:06 -04009 def_bool n
Bryan Wu1394f032007-05-06 14:50:22 -070010
11config FPU
Mike Frysingerbac7d892009-06-07 03:46:06 -040012 def_bool n
Bryan Wu1394f032007-05-06 14:50:22 -070013
14config RWSEM_GENERIC_SPINLOCK
Mike Frysingerbac7d892009-06-07 03:46:06 -040015 def_bool y
Bryan Wu1394f032007-05-06 14:50:22 -070016
17config RWSEM_XCHGADD_ALGORITHM
Mike Frysingerbac7d892009-06-07 03:46:06 -040018 def_bool n
Bryan Wu1394f032007-05-06 14:50:22 -070019
20config BLACKFIN
Mike Frysingerbac7d892009-06-07 03:46:06 -040021 def_bool y
Sam Ravnborgec7748b2008-02-09 10:46:40 +010022 select HAVE_IDE
Mike Frysinger538067c2009-06-07 03:47:01 -040023 select HAVE_KERNEL_GZIP
24 select HAVE_KERNEL_BZIP2
25 select HAVE_KERNEL_LZMA
Mathieu Desnoyers42d4b832008-02-02 15:10:34 -050026 select HAVE_OPROFILE
Michael Hennericha4f0b32c2008-11-18 17:48:22 +080027 select ARCH_WANT_OPTIONAL_GPIOLIB
Bryan Wu1394f032007-05-06 14:50:22 -070028
Mike Frysinger70f12562009-06-07 17:18:25 -040029config GENERIC_BUG
30 def_bool y
31 depends on BUG
32
Aubrey Lie3defff2007-05-21 18:09:11 +080033config ZONE_DMA
Mike Frysingerbac7d892009-06-07 03:46:06 -040034 def_bool y
Aubrey Lie3defff2007-05-21 18:09:11 +080035
Bryan Wu1394f032007-05-06 14:50:22 -070036config GENERIC_FIND_NEXT_BIT
Mike Frysingerbac7d892009-06-07 03:46:06 -040037 def_bool y
Bryan Wu1394f032007-05-06 14:50:22 -070038
39config GENERIC_HWEIGHT
Mike Frysingerbac7d892009-06-07 03:46:06 -040040 def_bool y
Bryan Wu1394f032007-05-06 14:50:22 -070041
42config GENERIC_HARDIRQS
Mike Frysingerbac7d892009-06-07 03:46:06 -040043 def_bool y
Bryan Wu1394f032007-05-06 14:50:22 -070044
45config GENERIC_IRQ_PROBE
Mike Frysingerbac7d892009-06-07 03:46:06 -040046 def_bool y
Bryan Wu1394f032007-05-06 14:50:22 -070047
Michael Hennerichb2d15832007-07-24 15:46:36 +080048config GENERIC_GPIO
Mike Frysingerbac7d892009-06-07 03:46:06 -040049 def_bool y
Bryan Wu1394f032007-05-06 14:50:22 -070050
51config FORCE_MAX_ZONEORDER
52 int
53 default "14"
54
55config GENERIC_CALIBRATE_DELAY
Mike Frysingerbac7d892009-06-07 03:46:06 -040056 def_bool y
Bryan Wu1394f032007-05-06 14:50:22 -070057
Bryan Wu1394f032007-05-06 14:50:22 -070058source "init/Kconfig"
Matt Helsleydc52ddc2008-10-18 20:27:21 -070059
Bryan Wu1394f032007-05-06 14:50:22 -070060source "kernel/Kconfig.preempt"
61
Matt Helsleydc52ddc2008-10-18 20:27:21 -070062source "kernel/Kconfig.freezer"
63
Bryan Wu1394f032007-05-06 14:50:22 -070064menu "Blackfin Processor Options"
65
66comment "Processor and Board Settings"
67
68choice
69 prompt "CPU"
70 default BF533
71
Bryan Wu2f6f4bc2008-11-18 17:48:21 +080072config BF512
73 bool "BF512"
74 help
75 BF512 Processor Support.
76
77config BF514
78 bool "BF514"
79 help
80 BF514 Processor Support.
81
82config BF516
83 bool "BF516"
84 help
85 BF516 Processor Support.
86
87config BF518
88 bool "BF518"
89 help
90 BF518 Processor Support.
91
Michael Hennerich59003142007-10-21 16:54:27 +080092config BF522
93 bool "BF522"
94 help
95 BF522 Processor Support.
96
Mike Frysinger1545a112007-12-24 16:54:48 +080097config BF523
98 bool "BF523"
99 help
100 BF523 Processor Support.
101
102config BF524
103 bool "BF524"
104 help
105 BF524 Processor Support.
106
Michael Hennerich59003142007-10-21 16:54:27 +0800107config BF525
108 bool "BF525"
109 help
110 BF525 Processor Support.
111
Mike Frysinger1545a112007-12-24 16:54:48 +0800112config BF526
113 bool "BF526"
114 help
115 BF526 Processor Support.
116
Michael Hennerich59003142007-10-21 16:54:27 +0800117config BF527
118 bool "BF527"
119 help
120 BF527 Processor Support.
121
Bryan Wu1394f032007-05-06 14:50:22 -0700122config BF531
123 bool "BF531"
124 help
125 BF531 Processor Support.
126
127config BF532
128 bool "BF532"
129 help
130 BF532 Processor Support.
131
132config BF533
133 bool "BF533"
134 help
135 BF533 Processor Support.
136
137config BF534
138 bool "BF534"
139 help
140 BF534 Processor Support.
141
142config BF536
143 bool "BF536"
144 help
145 BF536 Processor Support.
146
147config BF537
148 bool "BF537"
149 help
150 BF537 Processor Support.
151
Michael Hennerichdc26aec2008-11-18 17:48:22 +0800152config BF538
153 bool "BF538"
154 help
155 BF538 Processor Support.
156
157config BF539
158 bool "BF539"
159 help
160 BF539 Processor Support.
161
Roy Huang24a07a12007-07-12 22:41:45 +0800162config BF542
163 bool "BF542"
164 help
165 BF542 Processor Support.
166
Mike Frysinger2f89c062009-02-04 16:49:45 +0800167config BF542M
168 bool "BF542m"
169 help
170 BF542 Processor Support.
171
Roy Huang24a07a12007-07-12 22:41:45 +0800172config BF544
173 bool "BF544"
174 help
175 BF544 Processor Support.
176
Mike Frysinger2f89c062009-02-04 16:49:45 +0800177config BF544M
178 bool "BF544m"
179 help
180 BF544 Processor Support.
181
Mike Frysinger7c7fd172007-11-15 21:10:21 +0800182config BF547
183 bool "BF547"
184 help
185 BF547 Processor Support.
186
Mike Frysinger2f89c062009-02-04 16:49:45 +0800187config BF547M
188 bool "BF547m"
189 help
190 BF547 Processor Support.
191
Roy Huang24a07a12007-07-12 22:41:45 +0800192config BF548
193 bool "BF548"
194 help
195 BF548 Processor Support.
196
Mike Frysinger2f89c062009-02-04 16:49:45 +0800197config BF548M
198 bool "BF548m"
199 help
200 BF548 Processor Support.
201
Roy Huang24a07a12007-07-12 22:41:45 +0800202config BF549
203 bool "BF549"
204 help
205 BF549 Processor Support.
206
Mike Frysinger2f89c062009-02-04 16:49:45 +0800207config BF549M
208 bool "BF549m"
209 help
210 BF549 Processor Support.
211
Bryan Wu1394f032007-05-06 14:50:22 -0700212config BF561
213 bool "BF561"
214 help
Mike Frysingercd88b4d2008-10-09 12:03:22 +0800215 BF561 Processor Support.
Bryan Wu1394f032007-05-06 14:50:22 -0700216
217endchoice
218
Graf Yang46fa5ee2009-01-07 23:14:39 +0800219config SMP
220 depends on BF561
Graf Yang9b9bfde2009-05-27 09:58:35 +0000221 select GENERIC_TIME
Graf Yang46fa5ee2009-01-07 23:14:39 +0800222 bool "Symmetric multi-processing support"
223 ---help---
224 This enables support for systems with more than one CPU,
225 like the dual core BF561. If you have a system with only one
226 CPU, say N. If you have a system with more than one CPU, say Y.
227
228 If you don't know what to do here, say N.
229
230config NR_CPUS
231 int
232 depends on SMP
233 default 2 if BF561
234
235config IRQ_PER_CPU
236 bool
237 depends on SMP
238 default y
239
Mike Frysinger0c0497c2008-10-09 17:32:28 +0800240config BF_REV_MIN
241 int
Mike Frysinger2f89c062009-02-04 16:49:45 +0800242 default 0 if (BF51x || BF52x || (BF54x && !BF54xM))
Mike Frysinger0c0497c2008-10-09 17:32:28 +0800243 default 2 if (BF537 || BF536 || BF534)
Mike Frysinger2f89c062009-02-04 16:49:45 +0800244 default 3 if (BF561 || BF533 || BF532 || BF531 || BF54xM)
Bryan Wu2f6f4bc2008-11-18 17:48:21 +0800245 default 4 if (BF538 || BF539)
Mike Frysinger0c0497c2008-10-09 17:32:28 +0800246
247config BF_REV_MAX
248 int
Mike Frysinger2f89c062009-02-04 16:49:45 +0800249 default 2 if (BF51x || BF52x || (BF54x && !BF54xM))
250 default 3 if (BF537 || BF536 || BF534 || BF54xM)
Bryan Wu2f6f4bc2008-11-18 17:48:21 +0800251 default 5 if (BF561 || BF538 || BF539)
Mike Frysinger0c0497c2008-10-09 17:32:28 +0800252 default 6 if (BF533 || BF532 || BF531)
253
Bryan Wu1394f032007-05-06 14:50:22 -0700254choice
255 prompt "Silicon Rev"
Mike Frysingerf8b55652009-04-13 21:58:34 +0000256 default BF_REV_0_0 if (BF51x || BF52x)
257 default BF_REV_0_2 if (BF534 || BF536 || BF537 || (BF54x && !BF54xM))
Mike Frysinger2f89c062009-02-04 16:49:45 +0800258 default BF_REV_0_3 if (BF531 || BF532 || BF533 || BF54xM || BF561)
Roy Huang24a07a12007-07-12 22:41:45 +0800259
260config BF_REV_0_0
261 bool "0.0"
Mike Frysinger2f89c062009-02-04 16:49:45 +0800262 depends on (BF51x || BF52x || (BF54x && !BF54xM))
Michael Hennerich59003142007-10-21 16:54:27 +0800263
264config BF_REV_0_1
Mike Frysingerd07f4382007-11-15 15:49:17 +0800265 bool "0.1"
Mike Frysinger2f89c062009-02-04 16:49:45 +0800266 depends on (BF52x || (BF54x && !BF54xM))
Bryan Wu1394f032007-05-06 14:50:22 -0700267
268config BF_REV_0_2
269 bool "0.2"
Mike Frysinger2f89c062009-02-04 16:49:45 +0800270 depends on (BF52x || BF537 || BF536 || BF534 || (BF54x && !BF54xM))
Bryan Wu1394f032007-05-06 14:50:22 -0700271
272config BF_REV_0_3
273 bool "0.3"
Mike Frysinger2f89c062009-02-04 16:49:45 +0800274 depends on (BF54xM || BF561 || BF537 || BF536 || BF534 || BF533 || BF532 || BF531)
Bryan Wu1394f032007-05-06 14:50:22 -0700275
276config BF_REV_0_4
277 bool "0.4"
Michael Hennerichdc26aec2008-11-18 17:48:22 +0800278 depends on (BF561 || BF533 || BF532 || BF531 || BF538 || BF539)
Bryan Wu1394f032007-05-06 14:50:22 -0700279
280config BF_REV_0_5
281 bool "0.5"
Michael Hennerichdc26aec2008-11-18 17:48:22 +0800282 depends on (BF561 || BF533 || BF532 || BF531 || BF538 || BF539)
Bryan Wu1394f032007-05-06 14:50:22 -0700283
Mike Frysinger49f72532008-10-09 12:06:27 +0800284config BF_REV_0_6
285 bool "0.6"
286 depends on (BF533 || BF532 || BF531)
287
Jie Zhangde3025f2007-06-25 18:04:12 +0800288config BF_REV_ANY
289 bool "any"
290
291config BF_REV_NONE
292 bool "none"
293
Bryan Wu1394f032007-05-06 14:50:22 -0700294endchoice
295
Bryan Wu2f6f4bc2008-11-18 17:48:21 +0800296config BF51x
297 bool
298 depends on (BF512 || BF514 || BF516 || BF518)
299 default y
300
Michael Hennerich59003142007-10-21 16:54:27 +0800301config BF52x
302 bool
Mike Frysinger1545a112007-12-24 16:54:48 +0800303 depends on (BF522 || BF523 || BF524 || BF525 || BF526 || BF527)
Michael Hennerich59003142007-10-21 16:54:27 +0800304 default y
305
Roy Huang24a07a12007-07-12 22:41:45 +0800306config BF53x
307 bool
308 depends on (BF531 || BF532 || BF533 || BF534 || BF536 || BF537)
309 default y
310
Mike Frysinger2f89c062009-02-04 16:49:45 +0800311config BF54xM
312 bool
313 depends on (BF542M || BF544M || BF547M || BF548M || BF549M)
314 default y
315
Roy Huang24a07a12007-07-12 22:41:45 +0800316config BF54x
317 bool
Mike Frysinger2f89c062009-02-04 16:49:45 +0800318 depends on (BF542 || BF544 || BF547 || BF548 || BF549 || BF54xM)
Roy Huang24a07a12007-07-12 22:41:45 +0800319 default y
320
Bryan Wu1394f032007-05-06 14:50:22 -0700321config MEM_GENERIC_BOARD
322 bool
323 depends on GENERIC_BOARD
324 default y
325
326config MEM_MT48LC64M4A2FB_7E
327 bool
328 depends on (BFIN533_STAMP)
329 default y
330
331config MEM_MT48LC16M16A2TG_75
332 bool
333 depends on (BFIN533_EZKIT || BFIN561_EZKIT \
Javier Herreroab472a02007-10-29 16:14:44 +0800334 || BFIN533_BLUETECHNIX_CM || BFIN537_BLUETECHNIX_CM \
Michael Hennerich9db144f2008-07-19 17:16:07 +0800335 || H8606_HVSISTEMAS || BFIN527_BLUETECHNIX_CM)
Bryan Wu1394f032007-05-06 14:50:22 -0700336 default y
337
338config MEM_MT48LC32M8A2_75
339 bool
Michael Hennerichdc26aec2008-11-18 17:48:22 +0800340 depends on (BFIN537_STAMP || PNAV10 || BFIN538_EZKIT)
Bryan Wu1394f032007-05-06 14:50:22 -0700341 default y
342
343config MEM_MT48LC8M32B2B5_7
344 bool
345 depends on (BFIN561_BLUETECHNIX_CM)
346 default y
347
Michael Hennerich59003142007-10-21 16:54:27 +0800348config MEM_MT48LC32M16A2TG_75
349 bool
Michael Hennerich8cc71172008-10-13 14:45:06 +0800350 depends on (BFIN527_EZKIT || BFIN532_IP0X || BLACKSTAMP || BFIN526_EZBRD)
Michael Hennerich59003142007-10-21 16:54:27 +0800351 default y
352
Sonic Zhang49345402009-01-07 23:14:38 +0800353config MEM_MT48LC32M8A2_75
354 bool
355 depends on (BFIN518F_EZBRD)
356 default y
357
Bryan Wu2f6f4bc2008-11-18 17:48:21 +0800358source "arch/blackfin/mach-bf518/Kconfig"
Michael Hennerich59003142007-10-21 16:54:27 +0800359source "arch/blackfin/mach-bf527/Kconfig"
Bryan Wu1394f032007-05-06 14:50:22 -0700360source "arch/blackfin/mach-bf533/Kconfig"
361source "arch/blackfin/mach-bf561/Kconfig"
362source "arch/blackfin/mach-bf537/Kconfig"
Michael Hennerichdc26aec2008-11-18 17:48:22 +0800363source "arch/blackfin/mach-bf538/Kconfig"
Roy Huang24a07a12007-07-12 22:41:45 +0800364source "arch/blackfin/mach-bf548/Kconfig"
Bryan Wu1394f032007-05-06 14:50:22 -0700365
366menu "Board customizations"
367
368config CMDLINE_BOOL
369 bool "Default bootloader kernel arguments"
370
371config CMDLINE
372 string "Initial kernel command string"
373 depends on CMDLINE_BOOL
374 default "console=ttyBF0,57600"
375 help
376 If you don't have a boot loader capable of passing a command line string
377 to the kernel, you may specify one here. As a minimum, you should specify
378 the memory size and the root device (e.g., mem=8M, root=/dev/nfs).
379
Mike Frysinger5f004c22008-04-25 02:11:24 +0800380config BOOT_LOAD
381 hex "Kernel load address for booting"
382 default "0x1000"
383 range 0x1000 0x20000000
384 help
385 This option allows you to set the load address of the kernel.
386 This can be useful if you are on a board which has a small amount
387 of memory or you wish to reserve some memory at the beginning of
388 the address space.
389
390 Note that you need to keep this value above 4k (0x1000) as this
391 memory region is used to capture NULL pointer references as well
392 as some core kernel functions.
393
Michael Hennerich8cc71172008-10-13 14:45:06 +0800394config ROM_BASE
395 hex "Kernel ROM Base"
Mike Frysinger86249912008-11-18 17:48:22 +0800396 depends on ROMKERNEL
Michael Hennerich8cc71172008-10-13 14:45:06 +0800397 default "0x20040000"
398 range 0x20000000 0x20400000 if !(BF54x || BF561)
399 range 0x20000000 0x30000000 if (BF54x || BF561)
400 help
401
Robin Getzf16295e2007-08-03 18:07:17 +0800402comment "Clock/PLL Setup"
Bryan Wu1394f032007-05-06 14:50:22 -0700403
404config CLKIN_HZ
Sonic Zhang2fb6cb42008-04-25 04:39:28 +0800405 int "Frequency of the crystal on the board in Hz"
Bryan Wu1394f032007-05-06 14:50:22 -0700406 default "11059200" if BFIN533_STAMP
407 default "27000000" if BFIN533_EZKIT
Bryan Wu2f6f4bc2008-11-18 17:48:21 +0800408 default "25000000" if (BFIN537_STAMP || BFIN527_EZKIT || H8606_HVSISTEMAS || BLACKSTAMP || BFIN526_EZBRD || BFIN538_EZKIT || BFIN518F-EZBRD)
Bryan Wu1394f032007-05-06 14:50:22 -0700409 default "30000000" if BFIN561_EZKIT
410 default "24576000" if PNAV10
Mike Frysinger5d1617b2008-04-24 05:03:26 +0800411 default "10000000" if BFIN532_IP0X
Bryan Wu1394f032007-05-06 14:50:22 -0700412 help
413 The frequency of CLKIN crystal oscillator on the board in Hz.
Sonic Zhang2fb6cb42008-04-25 04:39:28 +0800414 Warning: This value should match the crystal on the board. Otherwise,
415 peripherals won't work properly.
Bryan Wu1394f032007-05-06 14:50:22 -0700416
Robin Getzf16295e2007-08-03 18:07:17 +0800417config BFIN_KERNEL_CLOCK
418 bool "Re-program Clocks while Kernel boots?"
419 default n
420 help
421 This option decides if kernel clocks are re-programed from the
422 bootloader settings. If the clocks are not set, the SDRAM settings
423 are also not changed, and the Bootloader does 100% of the hardware
424 configuration.
425
426config PLL_BYPASS
Mike Frysingere4e9a7a2007-11-15 20:39:34 +0800427 bool "Bypass PLL"
428 depends on BFIN_KERNEL_CLOCK
429 default n
Robin Getzf16295e2007-08-03 18:07:17 +0800430
431config CLKIN_HALF
432 bool "Half Clock In"
433 depends on BFIN_KERNEL_CLOCK && (! PLL_BYPASS)
434 default n
435 help
436 If this is set the clock will be divided by 2, before it goes to the PLL.
437
438config VCO_MULT
439 int "VCO Multiplier"
440 depends on BFIN_KERNEL_CLOCK && (! PLL_BYPASS)
441 range 1 64
442 default "22" if BFIN533_EZKIT
443 default "45" if BFIN533_STAMP
Michael Hennerichdc26aec2008-11-18 17:48:22 +0800444 default "20" if (BFIN537_STAMP || BFIN527_EZKIT || BFIN548_EZKIT || BFIN548_BLUETECHNIX_CM || BFIN538_EZKIT)
Robin Getzf16295e2007-08-03 18:07:17 +0800445 default "22" if BFIN533_BLUETECHNIX_CM
Michael Hennerich9db144f2008-07-19 17:16:07 +0800446 default "20" if (BFIN537_BLUETECHNIX_CM || BFIN527_BLUETECHNIX_CM || BFIN561_BLUETECHNIX_CM)
Robin Getzf16295e2007-08-03 18:07:17 +0800447 default "20" if BFIN561_EZKIT
Bryan Wu2f6f4bc2008-11-18 17:48:21 +0800448 default "16" if (H8606_HVSISTEMAS || BLACKSTAMP || BFIN526_EZBRD || BFIN518F_EZBRD)
Robin Getzf16295e2007-08-03 18:07:17 +0800449 help
450 This controls the frequency of the on-chip PLL. This can be between 1 and 64.
451 PLL Frequency = (Crystal Frequency) * (this setting)
452
453choice
454 prompt "Core Clock Divider"
455 depends on BFIN_KERNEL_CLOCK
456 default CCLK_DIV_1
457 help
458 This sets the frequency of the core. It can be 1, 2, 4 or 8
459 Core Frequency = (PLL frequency) / (this setting)
460
461config CCLK_DIV_1
462 bool "1"
463
464config CCLK_DIV_2
465 bool "2"
466
467config CCLK_DIV_4
468 bool "4"
469
470config CCLK_DIV_8
471 bool "8"
472endchoice
473
474config SCLK_DIV
475 int "System Clock Divider"
476 depends on BFIN_KERNEL_CLOCK
477 range 1 15
Mike Frysinger5f004c22008-04-25 02:11:24 +0800478 default 5
Robin Getzf16295e2007-08-03 18:07:17 +0800479 help
480 This sets the frequency of the system clock (including SDRAM or DDR).
481 This can be between 1 and 15
482 System Clock = (PLL frequency) / (this setting)
483
Mike Frysinger5f004c22008-04-25 02:11:24 +0800484choice
485 prompt "DDR SDRAM Chip Type"
486 depends on BFIN_KERNEL_CLOCK
487 depends on BF54x
488 default MEM_MT46V32M16_5B
489
490config MEM_MT46V32M16_6T
491 bool "MT46V32M16_6T"
492
493config MEM_MT46V32M16_5B
494 bool "MT46V32M16_5B"
495endchoice
496
Michael Hennerich73feb5c2009-01-07 23:14:39 +0800497choice
498 prompt "DDR/SDRAM Timing"
499 depends on BFIN_KERNEL_CLOCK
500 default BFIN_KERNEL_CLOCK_MEMINIT_CALC
501 help
502 This option allows you to specify Blackfin SDRAM/DDR Timing parameters
503 The calculated SDRAM timing parameters may not be 100%
504 accurate - This option is therefore marked experimental.
505
506config BFIN_KERNEL_CLOCK_MEMINIT_CALC
507 bool "Calculate Timings (EXPERIMENTAL)"
508 depends on EXPERIMENTAL
509
510config BFIN_KERNEL_CLOCK_MEMINIT_SPEC
511 bool "Provide accurate Timings based on target SCLK"
512 help
513 Please consult the Blackfin Hardware Reference Manuals as well
514 as the memory device datasheet.
515 http://docs.blackfin.uclinux.org/doku.php?id=bfin:sdram
516endchoice
517
518menu "Memory Init Control"
519 depends on BFIN_KERNEL_CLOCK_MEMINIT_SPEC
520
521config MEM_DDRCTL0
522 depends on BF54x
523 hex "DDRCTL0"
524 default 0x0
525
526config MEM_DDRCTL1
527 depends on BF54x
528 hex "DDRCTL1"
529 default 0x0
530
531config MEM_DDRCTL2
532 depends on BF54x
533 hex "DDRCTL2"
534 default 0x0
535
536config MEM_EBIU_DDRQUE
537 depends on BF54x
538 hex "DDRQUE"
539 default 0x0
540
541config MEM_SDRRC
542 depends on !BF54x
543 hex "SDRRC"
544 default 0x0
545
546config MEM_SDGCTL
547 depends on !BF54x
548 hex "SDGCTL"
549 default 0x0
550endmenu
551
Robin Getzf16295e2007-08-03 18:07:17 +0800552#
553# Max & Min Speeds for various Chips
554#
555config MAX_VCO_HZ
556 int
Bryan Wu2f6f4bc2008-11-18 17:48:21 +0800557 default 400000000 if BF512
558 default 400000000 if BF514
559 default 400000000 if BF516
560 default 400000000 if BF518
Robin Getzf16295e2007-08-03 18:07:17 +0800561 default 600000000 if BF522
Mike Frysinger1545a112007-12-24 16:54:48 +0800562 default 400000000 if BF523
563 default 400000000 if BF524
Robin Getzf16295e2007-08-03 18:07:17 +0800564 default 600000000 if BF525
Mike Frysinger1545a112007-12-24 16:54:48 +0800565 default 400000000 if BF526
Robin Getzf16295e2007-08-03 18:07:17 +0800566 default 600000000 if BF527
567 default 400000000 if BF531
568 default 400000000 if BF532
569 default 750000000 if BF533
570 default 500000000 if BF534
571 default 400000000 if BF536
572 default 600000000 if BF537
Robin Getzf72eecb2007-11-21 16:29:20 +0800573 default 533333333 if BF538
574 default 533333333 if BF539
Robin Getzf16295e2007-08-03 18:07:17 +0800575 default 600000000 if BF542
Robin Getzf72eecb2007-11-21 16:29:20 +0800576 default 533333333 if BF544
Mike Frysinger1545a112007-12-24 16:54:48 +0800577 default 600000000 if BF547
578 default 600000000 if BF548
Robin Getzf72eecb2007-11-21 16:29:20 +0800579 default 533333333 if BF549
Robin Getzf16295e2007-08-03 18:07:17 +0800580 default 600000000 if BF561
581
582config MIN_VCO_HZ
583 int
584 default 50000000
585
586config MAX_SCLK_HZ
587 int
Robin Getzf72eecb2007-11-21 16:29:20 +0800588 default 133333333
Robin Getzf16295e2007-08-03 18:07:17 +0800589
590config MIN_SCLK_HZ
591 int
592 default 27000000
593
594comment "Kernel Timer/Scheduler"
595
596source kernel/Kconfig.hz
597
Vitja Makarov8b5f79f2008-02-29 12:24:23 +0800598config GENERIC_TIME
599 bool "Generic time"
600 default y
601
602config GENERIC_CLOCKEVENTS
603 bool "Generic clock events"
604 depends on GENERIC_TIME
605 default y
606
Graf Yang1fa9be72009-05-15 11:01:59 +0000607choice
608 prompt "Kernel Tick Source"
609 depends on GENERIC_CLOCKEVENTS
610 default TICKSOURCE_CORETMR
611
612config TICKSOURCE_GPTMR0
613 bool "Gptimer0 (SCLK domain)"
614 select BFIN_GPTIMERS
615 depends on !IPIPE
616
617config TICKSOURCE_CORETMR
618 bool "Core timer (CCLK domain)"
619
620endchoice
621
Vitja Makarov8b5f79f2008-02-29 12:24:23 +0800622config CYCLES_CLOCKSOURCE
Graf Yang1fa9be72009-05-15 11:01:59 +0000623 bool "Use 'CYCLES' as a clocksource"
Vitja Makarov8b5f79f2008-02-29 12:24:23 +0800624 depends on GENERIC_CLOCKEVENTS
625 depends on !BFIN_SCRATCH_REG_CYCLES
Graf Yang1fa9be72009-05-15 11:01:59 +0000626 depends on !SMP
Vitja Makarov8b5f79f2008-02-29 12:24:23 +0800627 help
628 If you say Y here, you will enable support for using the 'cycles'
629 registers as a clock source. Doing so means you will be unable to
630 safely write to the 'cycles' register during runtime. You will
631 still be able to read it (such as for performance monitoring), but
632 writing the registers will most likely crash the kernel.
633
Graf Yang1fa9be72009-05-15 11:01:59 +0000634config GPTMR0_CLOCKSOURCE
635 bool "Use GPTimer0 as a clocksource (higher rating)"
636 depends on GENERIC_CLOCKEVENTS
637 depends on !TICKSOURCE_GPTMR0
638
Vitja Makarov8b5f79f2008-02-29 12:24:23 +0800639source kernel/time/Kconfig
640
Mike Frysinger5f004c22008-04-25 02:11:24 +0800641comment "Misc"
Sonic Zhang971d5bc2008-01-27 16:32:31 +0800642
Mike Frysingerf0b5d122007-08-05 17:03:59 +0800643choice
644 prompt "Blackfin Exception Scratch Register"
645 default BFIN_SCRATCH_REG_RETN
646 help
647 Select the resource to reserve for the Exception handler:
648 - RETN: Non-Maskable Interrupt (NMI)
649 - RETE: Exception Return (JTAG/ICE)
650 - CYCLES: Performance counter
651
652 If you are unsure, please select "RETN".
653
654config BFIN_SCRATCH_REG_RETN
655 bool "RETN"
656 help
657 Use the RETN register in the Blackfin exception handler
658 as a stack scratch register. This means you cannot
659 safely use NMI on the Blackfin while running Linux, but
660 you can debug the system with a JTAG ICE and use the
661 CYCLES performance registers.
662
663 If you are unsure, please select "RETN".
664
665config BFIN_SCRATCH_REG_RETE
666 bool "RETE"
667 help
668 Use the RETE register in the Blackfin exception handler
669 as a stack scratch register. This means you cannot
670 safely use a JTAG ICE while debugging a Blackfin board,
671 but you can safely use the CYCLES performance registers
672 and the NMI.
673
674 If you are unsure, please select "RETN".
675
676config BFIN_SCRATCH_REG_CYCLES
677 bool "CYCLES"
678 help
679 Use the CYCLES register in the Blackfin exception handler
680 as a stack scratch register. This means you cannot
681 safely use the CYCLES performance registers on a Blackfin
682 board at anytime, but you can debug the system with a JTAG
683 ICE and use the NMI.
684
685 If you are unsure, please select "RETN".
686
687endchoice
688
Bryan Wu1394f032007-05-06 14:50:22 -0700689endmenu
690
691
692menu "Blackfin Kernel Optimizations"
Graf Yang46fa5ee2009-01-07 23:14:39 +0800693 depends on !SMP
Bryan Wu1394f032007-05-06 14:50:22 -0700694
Bryan Wu1394f032007-05-06 14:50:22 -0700695comment "Memory Optimizations"
696
697config I_ENTRY_L1
698 bool "Locate interrupt entry code in L1 Memory"
699 default y
700 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200701 If enabled, interrupt entry code (STORE/RESTORE CONTEXT) is linked
702 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700703
704config EXCPT_IRQ_SYSC_L1
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200705 bool "Locate entire ASM lowlevel exception / interrupt - Syscall and CPLB handler code in L1 Memory"
Bryan Wu1394f032007-05-06 14:50:22 -0700706 default y
707 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200708 If enabled, the entire ASM lowlevel exception and interrupt entry code
Michael Hennerichcfefe3c2008-02-09 04:12:37 +0800709 (STORE/RESTORE CONTEXT) is linked into L1 instruction memory.
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200710 (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700711
712config DO_IRQ_L1
713 bool "Locate frequently called do_irq dispatcher function in L1 Memory"
714 default y
715 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200716 If enabled, the frequently called do_irq dispatcher function is linked
717 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700718
719config CORE_TIMER_IRQ_L1
720 bool "Locate frequently called timer_interrupt() function in L1 Memory"
721 default y
722 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200723 If enabled, the frequently called timer_interrupt() function is linked
724 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700725
726config IDLE_L1
727 bool "Locate frequently idle function in L1 Memory"
728 default y
729 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200730 If enabled, the frequently called idle function is linked
731 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700732
733config SCHEDULE_L1
734 bool "Locate kernel schedule function in L1 Memory"
735 default y
736 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200737 If enabled, the frequently called kernel schedule is linked
738 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700739
740config ARITHMETIC_OPS_L1
741 bool "Locate kernel owned arithmetic functions in L1 Memory"
742 default y
743 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200744 If enabled, arithmetic functions are linked
745 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700746
747config ACCESS_OK_L1
748 bool "Locate access_ok function in L1 Memory"
749 default y
750 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200751 If enabled, the access_ok function is linked
752 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700753
754config MEMSET_L1
755 bool "Locate memset function in L1 Memory"
756 default y
757 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200758 If enabled, the memset function is linked
759 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700760
761config MEMCPY_L1
762 bool "Locate memcpy function in L1 Memory"
763 default y
764 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200765 If enabled, the memcpy function is linked
766 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700767
768config SYS_BFIN_SPINLOCK_L1
769 bool "Locate sys_bfin_spinlock function in L1 Memory"
770 default y
771 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200772 If enabled, sys_bfin_spinlock function is linked
773 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700774
775config IP_CHECKSUM_L1
776 bool "Locate IP Checksum function in L1 Memory"
777 default n
778 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200779 If enabled, the IP Checksum function is linked
780 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700781
782config CACHELINE_ALIGNED_L1
783 bool "Locate cacheline_aligned data to L1 Data Memory"
Michael Hennerich157cc5a2007-07-12 16:20:21 +0800784 default y if !BF54x
785 default n if BF54x
Bryan Wu1394f032007-05-06 14:50:22 -0700786 depends on !BF531
787 help
Matt LaPlante692105b2009-01-26 11:12:25 +0100788 If enabled, cacheline_aligned data is linked
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200789 into L1 data memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700790
791config SYSCALL_TAB_L1
792 bool "Locate Syscall Table L1 Data Memory"
793 default n
794 depends on !BF531
795 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200796 If enabled, the Syscall LUT is linked
797 into L1 data memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700798
799config CPLB_SWITCH_TAB_L1
800 bool "Locate CPLB Switch Tables L1 Data Memory"
801 default n
802 depends on !BF531
803 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200804 If enabled, the CPLB Switch Tables are linked
805 into L1 data memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700806
Graf Yangca87b7a2008-10-08 17:30:01 +0800807config APP_STACK_L1
808 bool "Support locating application stack in L1 Scratch Memory"
809 default y
810 help
811 If enabled the application stack can be located in L1
812 scratch memory (less latency).
813
814 Currently only works with FLAT binaries.
815
Mike Frysinger6ad2b842008-10-28 11:03:09 +0800816config EXCEPTION_L1_SCRATCH
817 bool "Locate exception stack in L1 Scratch Memory"
818 default n
Graf Yangf82e0a02009-04-08 08:30:22 +0000819 depends on !APP_STACK_L1
Mike Frysinger6ad2b842008-10-28 11:03:09 +0800820 help
821 Whenever an exception occurs, use the L1 Scratch memory for
822 stack storage. You cannot place the stacks of FLAT binaries
823 in L1 when using this option.
824
825 If you don't use L1 Scratch, then you should say Y here.
826
Robin Getz251383c2008-08-14 15:12:55 +0800827comment "Speed Optimizations"
828config BFIN_INS_LOWOVERHEAD
829 bool "ins[bwl] low overhead, higher interrupt latency"
830 default y
831 help
832 Reads on the Blackfin are speculative. In Blackfin terms, this means
833 they can be interrupted at any time (even after they have been issued
834 on to the external bus), and re-issued after the interrupt occurs.
835 For memory - this is not a big deal, since memory does not change if
836 it sees a read.
837
838 If a FIFO is sitting on the end of the read, it will see two reads,
839 when the core only sees one since the FIFO receives both the read
840 which is cancelled (and not delivered to the core) and the one which
841 is re-issued (which is delivered to the core).
842
843 To solve this, interrupts are turned off before reads occur to
844 I/O space. This option controls which the overhead/latency of
845 controlling interrupts during this time
846 "n" turns interrupts off every read
847 (higher overhead, but lower interrupt latency)
848 "y" turns interrupts off every loop
849 (low overhead, but longer interrupt latency)
850
851 default behavior is to leave this set to on (type "Y"). If you are experiencing
852 interrupt latency issues, it is safe and OK to turn this off.
853
Bryan Wu1394f032007-05-06 14:50:22 -0700854endmenu
855
Bryan Wu1394f032007-05-06 14:50:22 -0700856choice
857 prompt "Kernel executes from"
858 help
859 Choose the memory type that the kernel will be running in.
860
861config RAMKERNEL
862 bool "RAM"
863 help
864 The kernel will be resident in RAM when running.
865
866config ROMKERNEL
867 bool "ROM"
868 help
869 The kernel will be resident in FLASH/ROM when running.
870
871endchoice
872
873source "mm/Kconfig"
874
Mike Frysinger780431e2007-10-21 23:37:54 +0800875config BFIN_GPTIMERS
876 tristate "Enable Blackfin General Purpose Timers API"
877 default n
878 help
879 Enable support for the General Purpose Timers API. If you
880 are unsure, say N.
881
882 To compile this driver as a module, choose M here: the module
883 will be called gptimers.ko.
884
Bryan Wu1394f032007-05-06 14:50:22 -0700885choice
Mike Frysingerd292b002008-10-28 11:15:36 +0800886 prompt "Uncached DMA region"
Bryan Wu1394f032007-05-06 14:50:22 -0700887 default DMA_UNCACHED_1M
Cliff Cai86ad7932008-05-17 16:36:52 +0800888config DMA_UNCACHED_4M
889 bool "Enable 4M DMA region"
Bryan Wu1394f032007-05-06 14:50:22 -0700890config DMA_UNCACHED_2M
891 bool "Enable 2M DMA region"
892config DMA_UNCACHED_1M
893 bool "Enable 1M DMA region"
894config DMA_UNCACHED_NONE
895 bool "Disable DMA region"
896endchoice
897
898
899comment "Cache Support"
Robin Getz3bebca22007-10-10 23:55:26 +0800900config BFIN_ICACHE
Bryan Wu1394f032007-05-06 14:50:22 -0700901 bool "Enable ICACHE"
Robin Getz3bebca22007-10-10 23:55:26 +0800902config BFIN_DCACHE
Bryan Wu1394f032007-05-06 14:50:22 -0700903 bool "Enable DCACHE"
Robin Getz3bebca22007-10-10 23:55:26 +0800904config BFIN_DCACHE_BANKA
Bryan Wu1394f032007-05-06 14:50:22 -0700905 bool "Enable only 16k BankA DCACHE - BankB is SRAM"
Robin Getz3bebca22007-10-10 23:55:26 +0800906 depends on BFIN_DCACHE && !BF531
Bryan Wu1394f032007-05-06 14:50:22 -0700907 default n
Robin Getz3bebca22007-10-10 23:55:26 +0800908config BFIN_ICACHE_LOCK
909 bool "Enable Instruction Cache Locking"
Bryan Wu1394f032007-05-06 14:50:22 -0700910
911choice
Graf Yang5ba76672009-05-07 04:09:15 +0000912 prompt "External memory cache policy"
Robin Getz3bebca22007-10-10 23:55:26 +0800913 depends on BFIN_DCACHE
Graf Yang46fa5ee2009-01-07 23:14:39 +0800914 default BFIN_WB if !SMP
915 default BFIN_WT if SMP
Robin Getz3bebca22007-10-10 23:55:26 +0800916config BFIN_WB
Bryan Wu1394f032007-05-06 14:50:22 -0700917 bool "Write back"
Graf Yang46fa5ee2009-01-07 23:14:39 +0800918 depends on !SMP
Bryan Wu1394f032007-05-06 14:50:22 -0700919 help
920 Write Back Policy:
921 Cached data will be written back to SDRAM only when needed.
922 This can give a nice increase in performance, but beware of
923 broken drivers that do not properly invalidate/flush their
924 cache.
925
926 Write Through Policy:
927 Cached data will always be written back to SDRAM when the
928 cache is updated. This is a completely safe setting, but
929 performance is worse than Write Back.
930
931 If you are unsure of the options and you want to be safe,
932 then go with Write Through.
933
Robin Getz3bebca22007-10-10 23:55:26 +0800934config BFIN_WT
Bryan Wu1394f032007-05-06 14:50:22 -0700935 bool "Write through"
936 help
937 Write Back Policy:
938 Cached data will be written back to SDRAM only when needed.
939 This can give a nice increase in performance, but beware of
940 broken drivers that do not properly invalidate/flush their
941 cache.
942
943 Write Through Policy:
944 Cached data will always be written back to SDRAM when the
945 cache is updated. This is a completely safe setting, but
946 performance is worse than Write Back.
947
948 If you are unsure of the options and you want to be safe,
949 then go with Write Through.
950
951endchoice
952
Graf Yang5ba76672009-05-07 04:09:15 +0000953choice
954 prompt "L2 SRAM cache policy"
955 depends on (BF54x || BF561)
956 default BFIN_L2_WT
957config BFIN_L2_WB
958 bool "Write back"
959 depends on !SMP
960
961config BFIN_L2_WT
962 bool "Write through"
963 depends on !SMP
964
965config BFIN_L2_NOT_CACHED
966 bool "Not cached"
967
968endchoice
Sonic Zhangf099f392008-10-09 14:11:57 +0800969
Bernd Schmidtb97b8a92008-01-27 18:39:16 +0800970config MPU
971 bool "Enable the memory protection unit (EXPERIMENTAL)"
972 default n
973 help
974 Use the processor's MPU to protect applications from accessing
975 memory they do not own. This comes at a performance penalty
976 and is recommended only for debugging.
977
Matt LaPlante692105b2009-01-26 11:12:25 +0100978comment "Asynchronous Memory Configuration"
Bryan Wu1394f032007-05-06 14:50:22 -0700979
Mike Frysingerddf416b2007-10-10 18:06:47 +0800980menu "EBIU_AMGCTL Global Control"
Bryan Wu1394f032007-05-06 14:50:22 -0700981config C_AMCKEN
982 bool "Enable CLKOUT"
983 default y
984
985config C_CDPRIO
986 bool "DMA has priority over core for ext. accesses"
987 default n
988
989config C_B0PEN
990 depends on BF561
991 bool "Bank 0 16 bit packing enable"
992 default y
993
994config C_B1PEN
995 depends on BF561
996 bool "Bank 1 16 bit packing enable"
997 default y
998
999config C_B2PEN
1000 depends on BF561
1001 bool "Bank 2 16 bit packing enable"
1002 default y
1003
1004config C_B3PEN
1005 depends on BF561
1006 bool "Bank 3 16 bit packing enable"
1007 default n
1008
1009choice
Matt LaPlante692105b2009-01-26 11:12:25 +01001010 prompt "Enable Asynchronous Memory Banks"
Bryan Wu1394f032007-05-06 14:50:22 -07001011 default C_AMBEN_ALL
1012
1013config C_AMBEN
1014 bool "Disable All Banks"
1015
1016config C_AMBEN_B0
1017 bool "Enable Bank 0"
1018
1019config C_AMBEN_B0_B1
1020 bool "Enable Bank 0 & 1"
1021
1022config C_AMBEN_B0_B1_B2
1023 bool "Enable Bank 0 & 1 & 2"
1024
1025config C_AMBEN_ALL
1026 bool "Enable All Banks"
1027endchoice
1028endmenu
1029
1030menu "EBIU_AMBCTL Control"
1031config BANK_0
Mike Frysingerc8342f82009-03-31 00:18:35 +00001032 hex "Bank 0 (AMBCTL0.L)"
Bryan Wu1394f032007-05-06 14:50:22 -07001033 default 0x7BB0
Mike Frysingerc8342f82009-03-31 00:18:35 +00001034 help
1035 These are the low 16 bits of the EBIU_AMBCTL0 MMR which are
1036 used to control the Asynchronous Memory Bank 0 settings.
Bryan Wu1394f032007-05-06 14:50:22 -07001037
1038config BANK_1
Mike Frysingerc8342f82009-03-31 00:18:35 +00001039 hex "Bank 1 (AMBCTL0.H)"
Bryan Wu1394f032007-05-06 14:50:22 -07001040 default 0x7BB0
Michael Hennerich197fba52008-05-07 17:03:27 +08001041 default 0x5558 if BF54x
Mike Frysingerc8342f82009-03-31 00:18:35 +00001042 help
1043 These are the high 16 bits of the EBIU_AMBCTL0 MMR which are
1044 used to control the Asynchronous Memory Bank 1 settings.
Bryan Wu1394f032007-05-06 14:50:22 -07001045
1046config BANK_2
Mike Frysingerc8342f82009-03-31 00:18:35 +00001047 hex "Bank 2 (AMBCTL1.L)"
Bryan Wu1394f032007-05-06 14:50:22 -07001048 default 0x7BB0
Mike Frysingerc8342f82009-03-31 00:18:35 +00001049 help
1050 These are the low 16 bits of the EBIU_AMBCTL1 MMR which are
1051 used to control the Asynchronous Memory Bank 2 settings.
Bryan Wu1394f032007-05-06 14:50:22 -07001052
1053config BANK_3
Mike Frysingerc8342f82009-03-31 00:18:35 +00001054 hex "Bank 3 (AMBCTL1.H)"
Bryan Wu1394f032007-05-06 14:50:22 -07001055 default 0x99B3
Mike Frysingerc8342f82009-03-31 00:18:35 +00001056 help
1057 These are the high 16 bits of the EBIU_AMBCTL1 MMR which are
1058 used to control the Asynchronous Memory Bank 3 settings.
1059
Bryan Wu1394f032007-05-06 14:50:22 -07001060endmenu
1061
Sonic Zhange40540b2007-11-21 23:49:52 +08001062config EBIU_MBSCTLVAL
1063 hex "EBIU Bank Select Control Register"
1064 depends on BF54x
1065 default 0
1066
1067config EBIU_MODEVAL
1068 hex "Flash Memory Mode Control Register"
1069 depends on BF54x
1070 default 1
1071
1072config EBIU_FCTLVAL
1073 hex "Flash Memory Bank Control Register"
1074 depends on BF54x
1075 default 6
Bryan Wu1394f032007-05-06 14:50:22 -07001076endmenu
1077
1078#############################################################################
1079menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
1080
1081config PCI
1082 bool "PCI support"
Adrian Bunka95ca3b2008-08-27 10:55:05 +08001083 depends on BROKEN
Bryan Wu1394f032007-05-06 14:50:22 -07001084 help
1085 Support for PCI bus.
1086
1087source "drivers/pci/Kconfig"
1088
1089config HOTPLUG
1090 bool "Support for hot-pluggable device"
1091 help
1092 Say Y here if you want to plug devices into your computer while
1093 the system is running, and be able to use them quickly. In many
1094 cases, the devices can likewise be unplugged at any time too.
1095
1096 One well known example of this is PCMCIA- or PC-cards, credit-card
1097 size devices such as network cards, modems or hard drives which are
1098 plugged into slots found on all modern laptop computers. Another
1099 example, used on modern desktops as well as laptops, is USB.
1100
Johannes Berga81792f2008-07-08 19:00:25 +02001101 Enable HOTPLUG and build a modular kernel. Get agent software
1102 (from <http://linux-hotplug.sourceforge.net/>) and install it.
Bryan Wu1394f032007-05-06 14:50:22 -07001103 Then your kernel will automatically call out to a user mode "policy
1104 agent" (/sbin/hotplug) to load modules and set up software needed
1105 to use devices as you hotplug them.
1106
1107source "drivers/pcmcia/Kconfig"
1108
1109source "drivers/pci/hotplug/Kconfig"
1110
1111endmenu
1112
1113menu "Executable file formats"
1114
1115source "fs/Kconfig.binfmt"
1116
1117endmenu
1118
1119menu "Power management options"
1120source "kernel/power/Kconfig"
1121
Johannes Bergf4cb5702007-12-08 02:14:00 +01001122config ARCH_SUSPEND_POSSIBLE
1123 def_bool y
1124 depends on !SMP
1125
Bryan Wu1394f032007-05-06 14:50:22 -07001126choice
Michael Hennerich1efc80b2008-07-19 16:57:32 +08001127 prompt "Standby Power Saving Mode"
Bryan Wu1394f032007-05-06 14:50:22 -07001128 depends on PM
Michael Hennerichcfefe3c2008-02-09 04:12:37 +08001129 default PM_BFIN_SLEEP_DEEPER
1130config PM_BFIN_SLEEP_DEEPER
1131 bool "Sleep Deeper"
Bryan Wu1394f032007-05-06 14:50:22 -07001132 help
Michael Hennerichcfefe3c2008-02-09 04:12:37 +08001133 Sleep "Deeper" Mode (High Power Savings) - This mode reduces dynamic
1134 power dissipation by disabling the clock to the processor core (CCLK).
1135 Furthermore, Standby sets the internal power supply voltage (VDDINT)
1136 to 0.85 V to provide the greatest power savings, while preserving the
1137 processor state.
1138 The PLL and system clock (SCLK) continue to operate at a very low
1139 frequency of about 3.3 MHz. To preserve data integrity in the SDRAM,
1140 the SDRAM is put into Self Refresh Mode. Typically an external event
1141 such as GPIO interrupt or RTC activity wakes up the processor.
1142 Various Peripherals such as UART, SPORT, PPI may not function as
1143 normal during Sleep Deeper, due to the reduced SCLK frequency.
1144 When in the sleep mode, system DMA access to L1 memory is not supported.
Bryan Wu1394f032007-05-06 14:50:22 -07001145
Michael Hennerich1efc80b2008-07-19 16:57:32 +08001146 If unsure, select "Sleep Deeper".
1147
Michael Hennerichcfefe3c2008-02-09 04:12:37 +08001148config PM_BFIN_SLEEP
1149 bool "Sleep"
1150 help
1151 Sleep Mode (High Power Savings) - The sleep mode reduces power
1152 dissipation by disabling the clock to the processor core (CCLK).
1153 The PLL and system clock (SCLK), however, continue to operate in
1154 this mode. Typically an external event or RTC activity will wake
Michael Hennerich1efc80b2008-07-19 16:57:32 +08001155 up the processor. When in the sleep mode, system DMA access to L1
1156 memory is not supported.
1157
1158 If unsure, select "Sleep Deeper".
Bryan Wu1394f032007-05-06 14:50:22 -07001159endchoice
1160
Michael Hennerichcfefe3c2008-02-09 04:12:37 +08001161config PM_WAKEUP_BY_GPIO
Michael Hennerich1efc80b2008-07-19 16:57:32 +08001162 bool "Allow Wakeup from Standby by GPIO"
Michael Hennerichff19fed2009-03-04 17:35:51 +08001163 depends on PM && !BF54x
Bryan Wu1394f032007-05-06 14:50:22 -07001164
1165config PM_WAKEUP_GPIO_NUMBER
Michael Hennerich1efc80b2008-07-19 16:57:32 +08001166 int "GPIO number"
Bryan Wu1394f032007-05-06 14:50:22 -07001167 range 0 47
1168 depends on PM_WAKEUP_BY_GPIO
Mike Frysingerd1a33362008-11-18 17:48:22 +08001169 default 2
Bryan Wu1394f032007-05-06 14:50:22 -07001170
1171choice
1172 prompt "GPIO Polarity"
1173 depends on PM_WAKEUP_BY_GPIO
1174 default PM_WAKEUP_GPIO_POLAR_H
1175config PM_WAKEUP_GPIO_POLAR_H
1176 bool "Active High"
1177config PM_WAKEUP_GPIO_POLAR_L
1178 bool "Active Low"
1179config PM_WAKEUP_GPIO_POLAR_EDGE_F
1180 bool "Falling EDGE"
1181config PM_WAKEUP_GPIO_POLAR_EDGE_R
1182 bool "Rising EDGE"
1183config PM_WAKEUP_GPIO_POLAR_EDGE_B
1184 bool "Both EDGE"
1185endchoice
1186
Michael Hennerich1efc80b2008-07-19 16:57:32 +08001187comment "Possible Suspend Mem / Hibernate Wake-Up Sources"
1188 depends on PM
1189
Michael Hennerich1efc80b2008-07-19 16:57:32 +08001190config PM_BFIN_WAKE_PH6
1191 bool "Allow Wake-Up from on-chip PHY or PH6 GP"
Bryan Wu2f6f4bc2008-11-18 17:48:21 +08001192 depends on PM && (BF51x || BF52x || BF534 || BF536 || BF537)
Michael Hennerich1efc80b2008-07-19 16:57:32 +08001193 default n
1194 help
1195 Enable PHY and PH6 GP Wake-Up (Voltage Regulator Power-Up)
1196
Michael Hennerich1efc80b2008-07-19 16:57:32 +08001197config PM_BFIN_WAKE_GP
1198 bool "Allow Wake-Up from GPIOs"
1199 depends on PM && BF54x
1200 default n
1201 help
1202 Enable General-Purpose Wake-Up (Voltage Regulator Power-Up)
Michael Hennerich19986282009-03-05 16:45:55 +08001203 (all processors, except ADSP-BF549). This option sets
1204 the general-purpose wake-up enable (GPWE) control bit to enable
1205 wake-up upon detection of an active low signal on the /GPW (PH7) pin.
1206 On ADSP-BF549 this option enables the the same functionality on the
1207 /MRXON pin also PH7.
1208
Bryan Wu1394f032007-05-06 14:50:22 -07001209endmenu
1210
Bryan Wu1394f032007-05-06 14:50:22 -07001211menu "CPU Frequency scaling"
1212
1213source "drivers/cpufreq/Kconfig"
1214
Michael Hennerich5ad2ca52008-11-18 17:48:22 +08001215config BFIN_CPU_FREQ
1216 bool
1217 depends on CPU_FREQ
1218 select CPU_FREQ_TABLE
1219 default y
1220
Michael Hennerich14b03202008-05-07 11:41:26 +08001221config CPU_VOLTAGE
1222 bool "CPU Voltage scaling"
Michael Hennerich73feb5c2009-01-07 23:14:39 +08001223 depends on EXPERIMENTAL
Michael Hennerich14b03202008-05-07 11:41:26 +08001224 depends on CPU_FREQ
1225 default n
1226 help
1227 Say Y here if you want CPU voltage scaling according to the CPU frequency.
1228 This option violates the PLL BYPASS recommendation in the Blackfin Processor
Michael Hennerich73feb5c2009-01-07 23:14:39 +08001229 manuals. There is a theoretical risk that during VDDINT transitions
Michael Hennerich14b03202008-05-07 11:41:26 +08001230 the PLL may unlock.
1231
Bryan Wu1394f032007-05-06 14:50:22 -07001232endmenu
1233
Bryan Wu1394f032007-05-06 14:50:22 -07001234source "net/Kconfig"
1235
1236source "drivers/Kconfig"
1237
1238source "fs/Kconfig"
1239
Mike Frysinger74ce8322007-11-21 23:50:49 +08001240source "arch/blackfin/Kconfig.debug"
Bryan Wu1394f032007-05-06 14:50:22 -07001241
1242source "security/Kconfig"
1243
1244source "crypto/Kconfig"
1245
1246source "lib/Kconfig"