blob: 3640cdc38aace3db670bbd703eb31959bd76cf05 [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
9 bool
10 default n
11
12config FPU
13 bool
14 default n
15
16config RWSEM_GENERIC_SPINLOCK
17 bool
18 default y
19
20config RWSEM_XCHGADD_ALGORITHM
21 bool
22 default n
23
24config BLACKFIN
25 bool
26 default y
Sam Ravnborgec7748b2008-02-09 10:46:40 +010027 select HAVE_IDE
Mathieu Desnoyers42d4b832008-02-02 15:10:34 -050028 select HAVE_OPROFILE
Michael Hennericha4f0b32c2008-11-18 17:48:22 +080029 select ARCH_WANT_OPTIONAL_GPIOLIB
Bryan Wu1394f032007-05-06 14:50:22 -070030
Aubrey Lie3defff2007-05-21 18:09:11 +080031config ZONE_DMA
32 bool
33 default y
34
Bryan Wu1394f032007-05-06 14:50:22 -070035config GENERIC_FIND_NEXT_BIT
36 bool
37 default y
38
39config GENERIC_HWEIGHT
40 bool
41 default y
42
43config GENERIC_HARDIRQS
44 bool
45 default y
46
47config GENERIC_IRQ_PROBE
Mike Frysingere4e9a7a2007-11-15 20:39:34 +080048 bool
Bryan Wu1394f032007-05-06 14:50:22 -070049 default y
50
Michael Hennerichb2d15832007-07-24 15:46:36 +080051config GENERIC_GPIO
Bryan Wu1394f032007-05-06 14:50:22 -070052 bool
53 default y
54
55config FORCE_MAX_ZONEORDER
56 int
57 default "14"
58
59config GENERIC_CALIBRATE_DELAY
60 bool
61 default y
62
Bryan Wu1394f032007-05-06 14:50:22 -070063source "init/Kconfig"
Matt Helsleydc52ddc2008-10-18 20:27:21 -070064
Bryan Wu1394f032007-05-06 14:50:22 -070065source "kernel/Kconfig.preempt"
66
Matt Helsleydc52ddc2008-10-18 20:27:21 -070067source "kernel/Kconfig.freezer"
68
Bryan Wu1394f032007-05-06 14:50:22 -070069menu "Blackfin Processor Options"
70
71comment "Processor and Board Settings"
72
73choice
74 prompt "CPU"
75 default BF533
76
Bryan Wu2f6f4bc2008-11-18 17:48:21 +080077config BF512
78 bool "BF512"
79 help
80 BF512 Processor Support.
81
82config BF514
83 bool "BF514"
84 help
85 BF514 Processor Support.
86
87config BF516
88 bool "BF516"
89 help
90 BF516 Processor Support.
91
92config BF518
93 bool "BF518"
94 help
95 BF518 Processor Support.
96
Michael Hennerich59003142007-10-21 16:54:27 +080097config BF522
98 bool "BF522"
99 help
100 BF522 Processor Support.
101
Mike Frysinger1545a112007-12-24 16:54:48 +0800102config BF523
103 bool "BF523"
104 help
105 BF523 Processor Support.
106
107config BF524
108 bool "BF524"
109 help
110 BF524 Processor Support.
111
Michael Hennerich59003142007-10-21 16:54:27 +0800112config BF525
113 bool "BF525"
114 help
115 BF525 Processor Support.
116
Mike Frysinger1545a112007-12-24 16:54:48 +0800117config BF526
118 bool "BF526"
119 help
120 BF526 Processor Support.
121
Michael Hennerich59003142007-10-21 16:54:27 +0800122config BF527
123 bool "BF527"
124 help
125 BF527 Processor Support.
126
Bryan Wu1394f032007-05-06 14:50:22 -0700127config BF531
128 bool "BF531"
129 help
130 BF531 Processor Support.
131
132config BF532
133 bool "BF532"
134 help
135 BF532 Processor Support.
136
137config BF533
138 bool "BF533"
139 help
140 BF533 Processor Support.
141
142config BF534
143 bool "BF534"
144 help
145 BF534 Processor Support.
146
147config BF536
148 bool "BF536"
149 help
150 BF536 Processor Support.
151
152config BF537
153 bool "BF537"
154 help
155 BF537 Processor Support.
156
Michael Hennerichdc26aec2008-11-18 17:48:22 +0800157config BF538
158 bool "BF538"
159 help
160 BF538 Processor Support.
161
162config BF539
163 bool "BF539"
164 help
165 BF539 Processor Support.
166
Roy Huang24a07a12007-07-12 22:41:45 +0800167config BF542
168 bool "BF542"
169 help
170 BF542 Processor Support.
171
Mike Frysinger2f89c062009-02-04 16:49:45 +0800172config BF542M
173 bool "BF542m"
174 help
175 BF542 Processor Support.
176
Roy Huang24a07a12007-07-12 22:41:45 +0800177config BF544
178 bool "BF544"
179 help
180 BF544 Processor Support.
181
Mike Frysinger2f89c062009-02-04 16:49:45 +0800182config BF544M
183 bool "BF544m"
184 help
185 BF544 Processor Support.
186
Mike Frysinger7c7fd172007-11-15 21:10:21 +0800187config BF547
188 bool "BF547"
189 help
190 BF547 Processor Support.
191
Mike Frysinger2f89c062009-02-04 16:49:45 +0800192config BF547M
193 bool "BF547m"
194 help
195 BF547 Processor Support.
196
Roy Huang24a07a12007-07-12 22:41:45 +0800197config BF548
198 bool "BF548"
199 help
200 BF548 Processor Support.
201
Mike Frysinger2f89c062009-02-04 16:49:45 +0800202config BF548M
203 bool "BF548m"
204 help
205 BF548 Processor Support.
206
Roy Huang24a07a12007-07-12 22:41:45 +0800207config BF549
208 bool "BF549"
209 help
210 BF549 Processor Support.
211
Mike Frysinger2f89c062009-02-04 16:49:45 +0800212config BF549M
213 bool "BF549m"
214 help
215 BF549 Processor Support.
216
Bryan Wu1394f032007-05-06 14:50:22 -0700217config BF561
218 bool "BF561"
219 help
Mike Frysingercd88b4d2008-10-09 12:03:22 +0800220 BF561 Processor Support.
Bryan Wu1394f032007-05-06 14:50:22 -0700221
222endchoice
223
Graf Yang46fa5ee2009-01-07 23:14:39 +0800224config SMP
225 depends on BF561
226 bool "Symmetric multi-processing support"
227 ---help---
228 This enables support for systems with more than one CPU,
229 like the dual core BF561. If you have a system with only one
230 CPU, say N. If you have a system with more than one CPU, say Y.
231
232 If you don't know what to do here, say N.
233
234config NR_CPUS
235 int
236 depends on SMP
237 default 2 if BF561
238
239config IRQ_PER_CPU
240 bool
241 depends on SMP
242 default y
243
244config TICK_SOURCE_SYSTMR0
245 bool
246 select BFIN_GPTIMERS
247 depends on SMP
248 default y
249
Mike Frysinger0c0497c2008-10-09 17:32:28 +0800250config BF_REV_MIN
251 int
Mike Frysinger2f89c062009-02-04 16:49:45 +0800252 default 0 if (BF51x || BF52x || (BF54x && !BF54xM))
Mike Frysinger0c0497c2008-10-09 17:32:28 +0800253 default 2 if (BF537 || BF536 || BF534)
Mike Frysinger2f89c062009-02-04 16:49:45 +0800254 default 3 if (BF561 || BF533 || BF532 || BF531 || BF54xM)
Bryan Wu2f6f4bc2008-11-18 17:48:21 +0800255 default 4 if (BF538 || BF539)
Mike Frysinger0c0497c2008-10-09 17:32:28 +0800256
257config BF_REV_MAX
258 int
Mike Frysinger2f89c062009-02-04 16:49:45 +0800259 default 2 if (BF51x || BF52x || (BF54x && !BF54xM))
260 default 3 if (BF537 || BF536 || BF534 || BF54xM)
Bryan Wu2f6f4bc2008-11-18 17:48:21 +0800261 default 5 if (BF561 || BF538 || BF539)
Mike Frysinger0c0497c2008-10-09 17:32:28 +0800262 default 6 if (BF533 || BF532 || BF531)
263
Bryan Wu1394f032007-05-06 14:50:22 -0700264choice
265 prompt "Silicon Rev"
Mike Frysinger2f89c062009-02-04 16:49:45 +0800266 default BF_REV_0_1 if (BF51x || BF52x || (BF54x && !BF54xM))
Mike Frysinger46ce0d92008-10-09 12:05:31 +0800267 default BF_REV_0_2 if (BF534 || BF536 || BF537)
Mike Frysinger2f89c062009-02-04 16:49:45 +0800268 default BF_REV_0_3 if (BF531 || BF532 || BF533 || BF54xM || BF561)
Roy Huang24a07a12007-07-12 22:41:45 +0800269
270config BF_REV_0_0
271 bool "0.0"
Mike Frysinger2f89c062009-02-04 16:49:45 +0800272 depends on (BF51x || BF52x || (BF54x && !BF54xM))
Michael Hennerich59003142007-10-21 16:54:27 +0800273
274config BF_REV_0_1
Mike Frysingerd07f4382007-11-15 15:49:17 +0800275 bool "0.1"
Mike Frysinger2f89c062009-02-04 16:49:45 +0800276 depends on (BF52x || (BF54x && !BF54xM))
Bryan Wu1394f032007-05-06 14:50:22 -0700277
278config BF_REV_0_2
279 bool "0.2"
Mike Frysinger2f89c062009-02-04 16:49:45 +0800280 depends on (BF52x || BF537 || BF536 || BF534 || (BF54x && !BF54xM))
Bryan Wu1394f032007-05-06 14:50:22 -0700281
282config BF_REV_0_3
283 bool "0.3"
Mike Frysinger2f89c062009-02-04 16:49:45 +0800284 depends on (BF54xM || BF561 || BF537 || BF536 || BF534 || BF533 || BF532 || BF531)
Bryan Wu1394f032007-05-06 14:50:22 -0700285
286config BF_REV_0_4
287 bool "0.4"
Michael Hennerichdc26aec2008-11-18 17:48:22 +0800288 depends on (BF561 || BF533 || BF532 || BF531 || BF538 || BF539)
Bryan Wu1394f032007-05-06 14:50:22 -0700289
290config BF_REV_0_5
291 bool "0.5"
Michael Hennerichdc26aec2008-11-18 17:48:22 +0800292 depends on (BF561 || BF533 || BF532 || BF531 || BF538 || BF539)
Bryan Wu1394f032007-05-06 14:50:22 -0700293
Mike Frysinger49f72532008-10-09 12:06:27 +0800294config BF_REV_0_6
295 bool "0.6"
296 depends on (BF533 || BF532 || BF531)
297
Jie Zhangde3025f2007-06-25 18:04:12 +0800298config BF_REV_ANY
299 bool "any"
300
301config BF_REV_NONE
302 bool "none"
303
Bryan Wu1394f032007-05-06 14:50:22 -0700304endchoice
305
Bryan Wu2f6f4bc2008-11-18 17:48:21 +0800306config BF51x
307 bool
308 depends on (BF512 || BF514 || BF516 || BF518)
309 default y
310
Michael Hennerich59003142007-10-21 16:54:27 +0800311config BF52x
312 bool
Mike Frysinger1545a112007-12-24 16:54:48 +0800313 depends on (BF522 || BF523 || BF524 || BF525 || BF526 || BF527)
Michael Hennerich59003142007-10-21 16:54:27 +0800314 default y
315
Roy Huang24a07a12007-07-12 22:41:45 +0800316config BF53x
317 bool
318 depends on (BF531 || BF532 || BF533 || BF534 || BF536 || BF537)
319 default y
320
Mike Frysinger2f89c062009-02-04 16:49:45 +0800321config BF54xM
322 bool
323 depends on (BF542M || BF544M || BF547M || BF548M || BF549M)
324 default y
325
Roy Huang24a07a12007-07-12 22:41:45 +0800326config BF54x
327 bool
Mike Frysinger2f89c062009-02-04 16:49:45 +0800328 depends on (BF542 || BF544 || BF547 || BF548 || BF549 || BF54xM)
Roy Huang24a07a12007-07-12 22:41:45 +0800329 default y
330
Bryan Wu1394f032007-05-06 14:50:22 -0700331config MEM_GENERIC_BOARD
332 bool
333 depends on GENERIC_BOARD
334 default y
335
336config MEM_MT48LC64M4A2FB_7E
337 bool
338 depends on (BFIN533_STAMP)
339 default y
340
341config MEM_MT48LC16M16A2TG_75
342 bool
343 depends on (BFIN533_EZKIT || BFIN561_EZKIT \
Javier Herreroab472a02007-10-29 16:14:44 +0800344 || BFIN533_BLUETECHNIX_CM || BFIN537_BLUETECHNIX_CM \
Michael Hennerich9db144f2008-07-19 17:16:07 +0800345 || H8606_HVSISTEMAS || BFIN527_BLUETECHNIX_CM)
Bryan Wu1394f032007-05-06 14:50:22 -0700346 default y
347
348config MEM_MT48LC32M8A2_75
349 bool
Michael Hennerichdc26aec2008-11-18 17:48:22 +0800350 depends on (BFIN537_STAMP || PNAV10 || BFIN538_EZKIT)
Bryan Wu1394f032007-05-06 14:50:22 -0700351 default y
352
353config MEM_MT48LC8M32B2B5_7
354 bool
355 depends on (BFIN561_BLUETECHNIX_CM)
356 default y
357
Michael Hennerich59003142007-10-21 16:54:27 +0800358config MEM_MT48LC32M16A2TG_75
359 bool
Michael Hennerich8cc71172008-10-13 14:45:06 +0800360 depends on (BFIN527_EZKIT || BFIN532_IP0X || BLACKSTAMP || BFIN526_EZBRD)
Michael Hennerich59003142007-10-21 16:54:27 +0800361 default y
362
Sonic Zhang49345402009-01-07 23:14:38 +0800363config MEM_MT48LC32M8A2_75
364 bool
365 depends on (BFIN518F_EZBRD)
366 default y
367
Bryan Wu2f6f4bc2008-11-18 17:48:21 +0800368source "arch/blackfin/mach-bf518/Kconfig"
Michael Hennerich59003142007-10-21 16:54:27 +0800369source "arch/blackfin/mach-bf527/Kconfig"
Bryan Wu1394f032007-05-06 14:50:22 -0700370source "arch/blackfin/mach-bf533/Kconfig"
371source "arch/blackfin/mach-bf561/Kconfig"
372source "arch/blackfin/mach-bf537/Kconfig"
Michael Hennerichdc26aec2008-11-18 17:48:22 +0800373source "arch/blackfin/mach-bf538/Kconfig"
Roy Huang24a07a12007-07-12 22:41:45 +0800374source "arch/blackfin/mach-bf548/Kconfig"
Bryan Wu1394f032007-05-06 14:50:22 -0700375
376menu "Board customizations"
377
378config CMDLINE_BOOL
379 bool "Default bootloader kernel arguments"
380
381config CMDLINE
382 string "Initial kernel command string"
383 depends on CMDLINE_BOOL
384 default "console=ttyBF0,57600"
385 help
386 If you don't have a boot loader capable of passing a command line string
387 to the kernel, you may specify one here. As a minimum, you should specify
388 the memory size and the root device (e.g., mem=8M, root=/dev/nfs).
389
Mike Frysinger5f004c22008-04-25 02:11:24 +0800390config BOOT_LOAD
391 hex "Kernel load address for booting"
392 default "0x1000"
393 range 0x1000 0x20000000
394 help
395 This option allows you to set the load address of the kernel.
396 This can be useful if you are on a board which has a small amount
397 of memory or you wish to reserve some memory at the beginning of
398 the address space.
399
400 Note that you need to keep this value above 4k (0x1000) as this
401 memory region is used to capture NULL pointer references as well
402 as some core kernel functions.
403
Michael Hennerich8cc71172008-10-13 14:45:06 +0800404config ROM_BASE
405 hex "Kernel ROM Base"
Mike Frysinger86249912008-11-18 17:48:22 +0800406 depends on ROMKERNEL
Michael Hennerich8cc71172008-10-13 14:45:06 +0800407 default "0x20040000"
408 range 0x20000000 0x20400000 if !(BF54x || BF561)
409 range 0x20000000 0x30000000 if (BF54x || BF561)
410 help
411
Robin Getzf16295e2007-08-03 18:07:17 +0800412comment "Clock/PLL Setup"
Bryan Wu1394f032007-05-06 14:50:22 -0700413
414config CLKIN_HZ
Sonic Zhang2fb6cb42008-04-25 04:39:28 +0800415 int "Frequency of the crystal on the board in Hz"
Bryan Wu1394f032007-05-06 14:50:22 -0700416 default "11059200" if BFIN533_STAMP
417 default "27000000" if BFIN533_EZKIT
Bryan Wu2f6f4bc2008-11-18 17:48:21 +0800418 default "25000000" if (BFIN537_STAMP || BFIN527_EZKIT || H8606_HVSISTEMAS || BLACKSTAMP || BFIN526_EZBRD || BFIN538_EZKIT || BFIN518F-EZBRD)
Bryan Wu1394f032007-05-06 14:50:22 -0700419 default "30000000" if BFIN561_EZKIT
420 default "24576000" if PNAV10
Mike Frysinger5d1617b2008-04-24 05:03:26 +0800421 default "10000000" if BFIN532_IP0X
Bryan Wu1394f032007-05-06 14:50:22 -0700422 help
423 The frequency of CLKIN crystal oscillator on the board in Hz.
Sonic Zhang2fb6cb42008-04-25 04:39:28 +0800424 Warning: This value should match the crystal on the board. Otherwise,
425 peripherals won't work properly.
Bryan Wu1394f032007-05-06 14:50:22 -0700426
Robin Getzf16295e2007-08-03 18:07:17 +0800427config BFIN_KERNEL_CLOCK
428 bool "Re-program Clocks while Kernel boots?"
429 default n
430 help
431 This option decides if kernel clocks are re-programed from the
432 bootloader settings. If the clocks are not set, the SDRAM settings
433 are also not changed, and the Bootloader does 100% of the hardware
434 configuration.
435
436config PLL_BYPASS
Mike Frysingere4e9a7a2007-11-15 20:39:34 +0800437 bool "Bypass PLL"
438 depends on BFIN_KERNEL_CLOCK
439 default n
Robin Getzf16295e2007-08-03 18:07:17 +0800440
441config CLKIN_HALF
442 bool "Half Clock In"
443 depends on BFIN_KERNEL_CLOCK && (! PLL_BYPASS)
444 default n
445 help
446 If this is set the clock will be divided by 2, before it goes to the PLL.
447
448config VCO_MULT
449 int "VCO Multiplier"
450 depends on BFIN_KERNEL_CLOCK && (! PLL_BYPASS)
451 range 1 64
452 default "22" if BFIN533_EZKIT
453 default "45" if BFIN533_STAMP
Michael Hennerichdc26aec2008-11-18 17:48:22 +0800454 default "20" if (BFIN537_STAMP || BFIN527_EZKIT || BFIN548_EZKIT || BFIN548_BLUETECHNIX_CM || BFIN538_EZKIT)
Robin Getzf16295e2007-08-03 18:07:17 +0800455 default "22" if BFIN533_BLUETECHNIX_CM
Michael Hennerich9db144f2008-07-19 17:16:07 +0800456 default "20" if (BFIN537_BLUETECHNIX_CM || BFIN527_BLUETECHNIX_CM || BFIN561_BLUETECHNIX_CM)
Robin Getzf16295e2007-08-03 18:07:17 +0800457 default "20" if BFIN561_EZKIT
Bryan Wu2f6f4bc2008-11-18 17:48:21 +0800458 default "16" if (H8606_HVSISTEMAS || BLACKSTAMP || BFIN526_EZBRD || BFIN518F_EZBRD)
Robin Getzf16295e2007-08-03 18:07:17 +0800459 help
460 This controls the frequency of the on-chip PLL. This can be between 1 and 64.
461 PLL Frequency = (Crystal Frequency) * (this setting)
462
463choice
464 prompt "Core Clock Divider"
465 depends on BFIN_KERNEL_CLOCK
466 default CCLK_DIV_1
467 help
468 This sets the frequency of the core. It can be 1, 2, 4 or 8
469 Core Frequency = (PLL frequency) / (this setting)
470
471config CCLK_DIV_1
472 bool "1"
473
474config CCLK_DIV_2
475 bool "2"
476
477config CCLK_DIV_4
478 bool "4"
479
480config CCLK_DIV_8
481 bool "8"
482endchoice
483
484config SCLK_DIV
485 int "System Clock Divider"
486 depends on BFIN_KERNEL_CLOCK
487 range 1 15
Mike Frysinger5f004c22008-04-25 02:11:24 +0800488 default 5
Robin Getzf16295e2007-08-03 18:07:17 +0800489 help
490 This sets the frequency of the system clock (including SDRAM or DDR).
491 This can be between 1 and 15
492 System Clock = (PLL frequency) / (this setting)
493
Mike Frysinger5f004c22008-04-25 02:11:24 +0800494choice
495 prompt "DDR SDRAM Chip Type"
496 depends on BFIN_KERNEL_CLOCK
497 depends on BF54x
498 default MEM_MT46V32M16_5B
499
500config MEM_MT46V32M16_6T
501 bool "MT46V32M16_6T"
502
503config MEM_MT46V32M16_5B
504 bool "MT46V32M16_5B"
505endchoice
506
Michael Hennerich73feb5c2009-01-07 23:14:39 +0800507choice
508 prompt "DDR/SDRAM Timing"
509 depends on BFIN_KERNEL_CLOCK
510 default BFIN_KERNEL_CLOCK_MEMINIT_CALC
511 help
512 This option allows you to specify Blackfin SDRAM/DDR Timing parameters
513 The calculated SDRAM timing parameters may not be 100%
514 accurate - This option is therefore marked experimental.
515
516config BFIN_KERNEL_CLOCK_MEMINIT_CALC
517 bool "Calculate Timings (EXPERIMENTAL)"
518 depends on EXPERIMENTAL
519
520config BFIN_KERNEL_CLOCK_MEMINIT_SPEC
521 bool "Provide accurate Timings based on target SCLK"
522 help
523 Please consult the Blackfin Hardware Reference Manuals as well
524 as the memory device datasheet.
525 http://docs.blackfin.uclinux.org/doku.php?id=bfin:sdram
526endchoice
527
528menu "Memory Init Control"
529 depends on BFIN_KERNEL_CLOCK_MEMINIT_SPEC
530
531config MEM_DDRCTL0
532 depends on BF54x
533 hex "DDRCTL0"
534 default 0x0
535
536config MEM_DDRCTL1
537 depends on BF54x
538 hex "DDRCTL1"
539 default 0x0
540
541config MEM_DDRCTL2
542 depends on BF54x
543 hex "DDRCTL2"
544 default 0x0
545
546config MEM_EBIU_DDRQUE
547 depends on BF54x
548 hex "DDRQUE"
549 default 0x0
550
551config MEM_SDRRC
552 depends on !BF54x
553 hex "SDRRC"
554 default 0x0
555
556config MEM_SDGCTL
557 depends on !BF54x
558 hex "SDGCTL"
559 default 0x0
560endmenu
561
Robin Getzf16295e2007-08-03 18:07:17 +0800562#
563# Max & Min Speeds for various Chips
564#
565config MAX_VCO_HZ
566 int
Bryan Wu2f6f4bc2008-11-18 17:48:21 +0800567 default 400000000 if BF512
568 default 400000000 if BF514
569 default 400000000 if BF516
570 default 400000000 if BF518
Robin Getzf16295e2007-08-03 18:07:17 +0800571 default 600000000 if BF522
Mike Frysinger1545a112007-12-24 16:54:48 +0800572 default 400000000 if BF523
573 default 400000000 if BF524
Robin Getzf16295e2007-08-03 18:07:17 +0800574 default 600000000 if BF525
Mike Frysinger1545a112007-12-24 16:54:48 +0800575 default 400000000 if BF526
Robin Getzf16295e2007-08-03 18:07:17 +0800576 default 600000000 if BF527
577 default 400000000 if BF531
578 default 400000000 if BF532
579 default 750000000 if BF533
580 default 500000000 if BF534
581 default 400000000 if BF536
582 default 600000000 if BF537
Robin Getzf72eecb2007-11-21 16:29:20 +0800583 default 533333333 if BF538
584 default 533333333 if BF539
Robin Getzf16295e2007-08-03 18:07:17 +0800585 default 600000000 if BF542
Robin Getzf72eecb2007-11-21 16:29:20 +0800586 default 533333333 if BF544
Mike Frysinger1545a112007-12-24 16:54:48 +0800587 default 600000000 if BF547
588 default 600000000 if BF548
Robin Getzf72eecb2007-11-21 16:29:20 +0800589 default 533333333 if BF549
Robin Getzf16295e2007-08-03 18:07:17 +0800590 default 600000000 if BF561
591
592config MIN_VCO_HZ
593 int
594 default 50000000
595
596config MAX_SCLK_HZ
597 int
Robin Getzf72eecb2007-11-21 16:29:20 +0800598 default 133333333
Robin Getzf16295e2007-08-03 18:07:17 +0800599
600config MIN_SCLK_HZ
601 int
602 default 27000000
603
604comment "Kernel Timer/Scheduler"
605
606source kernel/Kconfig.hz
607
Vitja Makarov8b5f79f2008-02-29 12:24:23 +0800608config GENERIC_TIME
609 bool "Generic time"
Graf Yang46fa5ee2009-01-07 23:14:39 +0800610 depends on !SMP
Vitja Makarov8b5f79f2008-02-29 12:24:23 +0800611 default y
612
613config GENERIC_CLOCKEVENTS
614 bool "Generic clock events"
615 depends on GENERIC_TIME
616 default y
617
618config CYCLES_CLOCKSOURCE
619 bool "Use 'CYCLES' as a clocksource (EXPERIMENTAL)"
620 depends on EXPERIMENTAL
621 depends on GENERIC_CLOCKEVENTS
622 depends on !BFIN_SCRATCH_REG_CYCLES
623 default n
624 help
625 If you say Y here, you will enable support for using the 'cycles'
626 registers as a clock source. Doing so means you will be unable to
627 safely write to the 'cycles' register during runtime. You will
628 still be able to read it (such as for performance monitoring), but
629 writing the registers will most likely crash the kernel.
630
631source kernel/time/Kconfig
632
Mike Frysinger5f004c22008-04-25 02:11:24 +0800633comment "Misc"
Sonic Zhang971d5bc2008-01-27 16:32:31 +0800634
Mike Frysingerf0b5d122007-08-05 17:03:59 +0800635choice
636 prompt "Blackfin Exception Scratch Register"
637 default BFIN_SCRATCH_REG_RETN
638 help
639 Select the resource to reserve for the Exception handler:
640 - RETN: Non-Maskable Interrupt (NMI)
641 - RETE: Exception Return (JTAG/ICE)
642 - CYCLES: Performance counter
643
644 If you are unsure, please select "RETN".
645
646config BFIN_SCRATCH_REG_RETN
647 bool "RETN"
648 help
649 Use the RETN register in the Blackfin exception handler
650 as a stack scratch register. This means you cannot
651 safely use NMI on the Blackfin while running Linux, but
652 you can debug the system with a JTAG ICE and use the
653 CYCLES performance registers.
654
655 If you are unsure, please select "RETN".
656
657config BFIN_SCRATCH_REG_RETE
658 bool "RETE"
659 help
660 Use the RETE register in the Blackfin exception handler
661 as a stack scratch register. This means you cannot
662 safely use a JTAG ICE while debugging a Blackfin board,
663 but you can safely use the CYCLES performance registers
664 and the NMI.
665
666 If you are unsure, please select "RETN".
667
668config BFIN_SCRATCH_REG_CYCLES
669 bool "CYCLES"
670 help
671 Use the CYCLES register in the Blackfin exception handler
672 as a stack scratch register. This means you cannot
673 safely use the CYCLES performance registers on a Blackfin
674 board at anytime, but you can debug the system with a JTAG
675 ICE and use the NMI.
676
677 If you are unsure, please select "RETN".
678
679endchoice
680
Bryan Wu1394f032007-05-06 14:50:22 -0700681endmenu
682
683
684menu "Blackfin Kernel Optimizations"
Graf Yang46fa5ee2009-01-07 23:14:39 +0800685 depends on !SMP
Bryan Wu1394f032007-05-06 14:50:22 -0700686
Bryan Wu1394f032007-05-06 14:50:22 -0700687comment "Memory Optimizations"
688
689config I_ENTRY_L1
690 bool "Locate interrupt entry code in L1 Memory"
691 default y
692 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200693 If enabled, interrupt entry code (STORE/RESTORE CONTEXT) is linked
694 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700695
696config EXCPT_IRQ_SYSC_L1
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200697 bool "Locate entire ASM lowlevel exception / interrupt - Syscall and CPLB handler code in L1 Memory"
Bryan Wu1394f032007-05-06 14:50:22 -0700698 default y
699 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200700 If enabled, the entire ASM lowlevel exception and interrupt entry code
Michael Hennerichcfefe3c2008-02-09 04:12:37 +0800701 (STORE/RESTORE CONTEXT) is linked into L1 instruction memory.
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200702 (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700703
704config DO_IRQ_L1
705 bool "Locate frequently called do_irq dispatcher function in L1 Memory"
706 default y
707 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200708 If enabled, the frequently called do_irq dispatcher function is linked
709 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700710
711config CORE_TIMER_IRQ_L1
712 bool "Locate frequently called timer_interrupt() function in L1 Memory"
713 default y
714 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200715 If enabled, the frequently called timer_interrupt() function is linked
716 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700717
718config IDLE_L1
719 bool "Locate frequently idle function in L1 Memory"
720 default y
721 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200722 If enabled, the frequently called idle function is linked
723 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700724
725config SCHEDULE_L1
726 bool "Locate kernel schedule function in L1 Memory"
727 default y
728 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200729 If enabled, the frequently called kernel schedule is linked
730 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700731
732config ARITHMETIC_OPS_L1
733 bool "Locate kernel owned arithmetic functions in L1 Memory"
734 default y
735 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200736 If enabled, arithmetic functions are linked
737 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700738
739config ACCESS_OK_L1
740 bool "Locate access_ok function in L1 Memory"
741 default y
742 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200743 If enabled, the access_ok function is linked
744 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700745
746config MEMSET_L1
747 bool "Locate memset function in L1 Memory"
748 default y
749 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200750 If enabled, the memset function is linked
751 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700752
753config MEMCPY_L1
754 bool "Locate memcpy function in L1 Memory"
755 default y
756 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200757 If enabled, the memcpy function is linked
758 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700759
760config SYS_BFIN_SPINLOCK_L1
761 bool "Locate sys_bfin_spinlock function in L1 Memory"
762 default y
763 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200764 If enabled, sys_bfin_spinlock function is linked
765 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700766
767config IP_CHECKSUM_L1
768 bool "Locate IP Checksum function in L1 Memory"
769 default n
770 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200771 If enabled, the IP Checksum function is linked
772 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700773
774config CACHELINE_ALIGNED_L1
775 bool "Locate cacheline_aligned data to L1 Data Memory"
Michael Hennerich157cc5a2007-07-12 16:20:21 +0800776 default y if !BF54x
777 default n if BF54x
Bryan Wu1394f032007-05-06 14:50:22 -0700778 depends on !BF531
779 help
Matt LaPlante692105b2009-01-26 11:12:25 +0100780 If enabled, cacheline_aligned data is linked
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200781 into L1 data memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700782
783config SYSCALL_TAB_L1
784 bool "Locate Syscall Table L1 Data Memory"
785 default n
786 depends on !BF531
787 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200788 If enabled, the Syscall LUT is linked
789 into L1 data memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700790
791config CPLB_SWITCH_TAB_L1
792 bool "Locate CPLB Switch Tables L1 Data Memory"
793 default n
794 depends on !BF531
795 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200796 If enabled, the CPLB Switch Tables are linked
797 into L1 data memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700798
Graf Yangca87b7a2008-10-08 17:30:01 +0800799config APP_STACK_L1
800 bool "Support locating application stack in L1 Scratch Memory"
801 default y
802 help
803 If enabled the application stack can be located in L1
804 scratch memory (less latency).
805
806 Currently only works with FLAT binaries.
807
Mike Frysinger6ad2b842008-10-28 11:03:09 +0800808config EXCEPTION_L1_SCRATCH
809 bool "Locate exception stack in L1 Scratch Memory"
810 default n
811 depends on !APP_STACK_L1 && !SYSCALL_TAB_L1
812 help
813 Whenever an exception occurs, use the L1 Scratch memory for
814 stack storage. You cannot place the stacks of FLAT binaries
815 in L1 when using this option.
816
817 If you don't use L1 Scratch, then you should say Y here.
818
Robin Getz251383c2008-08-14 15:12:55 +0800819comment "Speed Optimizations"
820config BFIN_INS_LOWOVERHEAD
821 bool "ins[bwl] low overhead, higher interrupt latency"
822 default y
823 help
824 Reads on the Blackfin are speculative. In Blackfin terms, this means
825 they can be interrupted at any time (even after they have been issued
826 on to the external bus), and re-issued after the interrupt occurs.
827 For memory - this is not a big deal, since memory does not change if
828 it sees a read.
829
830 If a FIFO is sitting on the end of the read, it will see two reads,
831 when the core only sees one since the FIFO receives both the read
832 which is cancelled (and not delivered to the core) and the one which
833 is re-issued (which is delivered to the core).
834
835 To solve this, interrupts are turned off before reads occur to
836 I/O space. This option controls which the overhead/latency of
837 controlling interrupts during this time
838 "n" turns interrupts off every read
839 (higher overhead, but lower interrupt latency)
840 "y" turns interrupts off every loop
841 (low overhead, but longer interrupt latency)
842
843 default behavior is to leave this set to on (type "Y"). If you are experiencing
844 interrupt latency issues, it is safe and OK to turn this off.
845
Bryan Wu1394f032007-05-06 14:50:22 -0700846endmenu
847
Bryan Wu1394f032007-05-06 14:50:22 -0700848choice
849 prompt "Kernel executes from"
850 help
851 Choose the memory type that the kernel will be running in.
852
853config RAMKERNEL
854 bool "RAM"
855 help
856 The kernel will be resident in RAM when running.
857
858config ROMKERNEL
859 bool "ROM"
860 help
861 The kernel will be resident in FLASH/ROM when running.
862
863endchoice
864
865source "mm/Kconfig"
866
Mike Frysinger780431e2007-10-21 23:37:54 +0800867config BFIN_GPTIMERS
868 tristate "Enable Blackfin General Purpose Timers API"
869 default n
870 help
871 Enable support for the General Purpose Timers API. If you
872 are unsure, say N.
873
874 To compile this driver as a module, choose M here: the module
875 will be called gptimers.ko.
876
Bryan Wu1394f032007-05-06 14:50:22 -0700877choice
Mike Frysingerd292b002008-10-28 11:15:36 +0800878 prompt "Uncached DMA region"
Bryan Wu1394f032007-05-06 14:50:22 -0700879 default DMA_UNCACHED_1M
Cliff Cai86ad7932008-05-17 16:36:52 +0800880config DMA_UNCACHED_4M
881 bool "Enable 4M DMA region"
Bryan Wu1394f032007-05-06 14:50:22 -0700882config DMA_UNCACHED_2M
883 bool "Enable 2M DMA region"
884config DMA_UNCACHED_1M
885 bool "Enable 1M DMA region"
886config DMA_UNCACHED_NONE
887 bool "Disable DMA region"
888endchoice
889
890
891comment "Cache Support"
Robin Getz3bebca22007-10-10 23:55:26 +0800892config BFIN_ICACHE
Bryan Wu1394f032007-05-06 14:50:22 -0700893 bool "Enable ICACHE"
Robin Getz3bebca22007-10-10 23:55:26 +0800894config BFIN_DCACHE
Bryan Wu1394f032007-05-06 14:50:22 -0700895 bool "Enable DCACHE"
Robin Getz3bebca22007-10-10 23:55:26 +0800896config BFIN_DCACHE_BANKA
Bryan Wu1394f032007-05-06 14:50:22 -0700897 bool "Enable only 16k BankA DCACHE - BankB is SRAM"
Robin Getz3bebca22007-10-10 23:55:26 +0800898 depends on BFIN_DCACHE && !BF531
Bryan Wu1394f032007-05-06 14:50:22 -0700899 default n
Robin Getz3bebca22007-10-10 23:55:26 +0800900config BFIN_ICACHE_LOCK
901 bool "Enable Instruction Cache Locking"
Bryan Wu1394f032007-05-06 14:50:22 -0700902
903choice
904 prompt "Policy"
Robin Getz3bebca22007-10-10 23:55:26 +0800905 depends on BFIN_DCACHE
Graf Yang46fa5ee2009-01-07 23:14:39 +0800906 default BFIN_WB if !SMP
907 default BFIN_WT if SMP
Robin Getz3bebca22007-10-10 23:55:26 +0800908config BFIN_WB
Bryan Wu1394f032007-05-06 14:50:22 -0700909 bool "Write back"
Graf Yang46fa5ee2009-01-07 23:14:39 +0800910 depends on !SMP
Bryan Wu1394f032007-05-06 14:50:22 -0700911 help
912 Write Back Policy:
913 Cached data will be written back to SDRAM only when needed.
914 This can give a nice increase in performance, but beware of
915 broken drivers that do not properly invalidate/flush their
916 cache.
917
918 Write Through Policy:
919 Cached data will always be written back to SDRAM when the
920 cache is updated. This is a completely safe setting, but
921 performance is worse than Write Back.
922
923 If you are unsure of the options and you want to be safe,
924 then go with Write Through.
925
Robin Getz3bebca22007-10-10 23:55:26 +0800926config BFIN_WT
Bryan Wu1394f032007-05-06 14:50:22 -0700927 bool "Write through"
928 help
929 Write Back Policy:
930 Cached data will be written back to SDRAM only when needed.
931 This can give a nice increase in performance, but beware of
932 broken drivers that do not properly invalidate/flush their
933 cache.
934
935 Write Through Policy:
936 Cached data will always be written back to SDRAM when the
937 cache is updated. This is a completely safe setting, but
938 performance is worse than Write Back.
939
940 If you are unsure of the options and you want to be safe,
941 then go with Write Through.
942
943endchoice
944
Sonic Zhangf099f392008-10-09 14:11:57 +0800945config BFIN_L2_CACHEABLE
946 bool "Cache L2 SRAM"
Mike Frysinger94106e02009-01-07 23:14:38 +0800947 depends on (BFIN_DCACHE || BFIN_ICACHE) && (BF54x || (BF561 && !SMP))
Sonic Zhangf099f392008-10-09 14:11:57 +0800948 default n
949 help
950 Select to make L2 SRAM cacheable in L1 data and instruction cache.
951
Bernd Schmidtb97b8a92008-01-27 18:39:16 +0800952config MPU
953 bool "Enable the memory protection unit (EXPERIMENTAL)"
954 default n
955 help
956 Use the processor's MPU to protect applications from accessing
957 memory they do not own. This comes at a performance penalty
958 and is recommended only for debugging.
959
Matt LaPlante692105b2009-01-26 11:12:25 +0100960comment "Asynchronous Memory Configuration"
Bryan Wu1394f032007-05-06 14:50:22 -0700961
Mike Frysingerddf416b2007-10-10 18:06:47 +0800962menu "EBIU_AMGCTL Global Control"
Bryan Wu1394f032007-05-06 14:50:22 -0700963config C_AMCKEN
964 bool "Enable CLKOUT"
965 default y
966
967config C_CDPRIO
968 bool "DMA has priority over core for ext. accesses"
969 default n
970
971config C_B0PEN
972 depends on BF561
973 bool "Bank 0 16 bit packing enable"
974 default y
975
976config C_B1PEN
977 depends on BF561
978 bool "Bank 1 16 bit packing enable"
979 default y
980
981config C_B2PEN
982 depends on BF561
983 bool "Bank 2 16 bit packing enable"
984 default y
985
986config C_B3PEN
987 depends on BF561
988 bool "Bank 3 16 bit packing enable"
989 default n
990
991choice
Matt LaPlante692105b2009-01-26 11:12:25 +0100992 prompt "Enable Asynchronous Memory Banks"
Bryan Wu1394f032007-05-06 14:50:22 -0700993 default C_AMBEN_ALL
994
995config C_AMBEN
996 bool "Disable All Banks"
997
998config C_AMBEN_B0
999 bool "Enable Bank 0"
1000
1001config C_AMBEN_B0_B1
1002 bool "Enable Bank 0 & 1"
1003
1004config C_AMBEN_B0_B1_B2
1005 bool "Enable Bank 0 & 1 & 2"
1006
1007config C_AMBEN_ALL
1008 bool "Enable All Banks"
1009endchoice
1010endmenu
1011
1012menu "EBIU_AMBCTL Control"
1013config BANK_0
1014 hex "Bank 0"
1015 default 0x7BB0
1016
1017config BANK_1
1018 hex "Bank 1"
1019 default 0x7BB0
Michael Hennerich197fba52008-05-07 17:03:27 +08001020 default 0x5558 if BF54x
Bryan Wu1394f032007-05-06 14:50:22 -07001021
1022config BANK_2
1023 hex "Bank 2"
1024 default 0x7BB0
1025
1026config BANK_3
1027 hex "Bank 3"
1028 default 0x99B3
1029endmenu
1030
Sonic Zhange40540b2007-11-21 23:49:52 +08001031config EBIU_MBSCTLVAL
1032 hex "EBIU Bank Select Control Register"
1033 depends on BF54x
1034 default 0
1035
1036config EBIU_MODEVAL
1037 hex "Flash Memory Mode Control Register"
1038 depends on BF54x
1039 default 1
1040
1041config EBIU_FCTLVAL
1042 hex "Flash Memory Bank Control Register"
1043 depends on BF54x
1044 default 6
Bryan Wu1394f032007-05-06 14:50:22 -07001045endmenu
1046
1047#############################################################################
1048menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
1049
1050config PCI
1051 bool "PCI support"
Adrian Bunka95ca3b2008-08-27 10:55:05 +08001052 depends on BROKEN
Bryan Wu1394f032007-05-06 14:50:22 -07001053 help
1054 Support for PCI bus.
1055
1056source "drivers/pci/Kconfig"
1057
1058config HOTPLUG
1059 bool "Support for hot-pluggable device"
1060 help
1061 Say Y here if you want to plug devices into your computer while
1062 the system is running, and be able to use them quickly. In many
1063 cases, the devices can likewise be unplugged at any time too.
1064
1065 One well known example of this is PCMCIA- or PC-cards, credit-card
1066 size devices such as network cards, modems or hard drives which are
1067 plugged into slots found on all modern laptop computers. Another
1068 example, used on modern desktops as well as laptops, is USB.
1069
Johannes Berga81792f2008-07-08 19:00:25 +02001070 Enable HOTPLUG and build a modular kernel. Get agent software
1071 (from <http://linux-hotplug.sourceforge.net/>) and install it.
Bryan Wu1394f032007-05-06 14:50:22 -07001072 Then your kernel will automatically call out to a user mode "policy
1073 agent" (/sbin/hotplug) to load modules and set up software needed
1074 to use devices as you hotplug them.
1075
1076source "drivers/pcmcia/Kconfig"
1077
1078source "drivers/pci/hotplug/Kconfig"
1079
1080endmenu
1081
1082menu "Executable file formats"
1083
1084source "fs/Kconfig.binfmt"
1085
1086endmenu
1087
1088menu "Power management options"
1089source "kernel/power/Kconfig"
1090
Johannes Bergf4cb5702007-12-08 02:14:00 +01001091config ARCH_SUSPEND_POSSIBLE
1092 def_bool y
1093 depends on !SMP
1094
Bryan Wu1394f032007-05-06 14:50:22 -07001095choice
Michael Hennerich1efc80b2008-07-19 16:57:32 +08001096 prompt "Standby Power Saving Mode"
Bryan Wu1394f032007-05-06 14:50:22 -07001097 depends on PM
Michael Hennerichcfefe3c2008-02-09 04:12:37 +08001098 default PM_BFIN_SLEEP_DEEPER
1099config PM_BFIN_SLEEP_DEEPER
1100 bool "Sleep Deeper"
Bryan Wu1394f032007-05-06 14:50:22 -07001101 help
Michael Hennerichcfefe3c2008-02-09 04:12:37 +08001102 Sleep "Deeper" Mode (High Power Savings) - This mode reduces dynamic
1103 power dissipation by disabling the clock to the processor core (CCLK).
1104 Furthermore, Standby sets the internal power supply voltage (VDDINT)
1105 to 0.85 V to provide the greatest power savings, while preserving the
1106 processor state.
1107 The PLL and system clock (SCLK) continue to operate at a very low
1108 frequency of about 3.3 MHz. To preserve data integrity in the SDRAM,
1109 the SDRAM is put into Self Refresh Mode. Typically an external event
1110 such as GPIO interrupt or RTC activity wakes up the processor.
1111 Various Peripherals such as UART, SPORT, PPI may not function as
1112 normal during Sleep Deeper, due to the reduced SCLK frequency.
1113 When in the sleep mode, system DMA access to L1 memory is not supported.
Bryan Wu1394f032007-05-06 14:50:22 -07001114
Michael Hennerich1efc80b2008-07-19 16:57:32 +08001115 If unsure, select "Sleep Deeper".
1116
Michael Hennerichcfefe3c2008-02-09 04:12:37 +08001117config PM_BFIN_SLEEP
1118 bool "Sleep"
1119 help
1120 Sleep Mode (High Power Savings) - The sleep mode reduces power
1121 dissipation by disabling the clock to the processor core (CCLK).
1122 The PLL and system clock (SCLK), however, continue to operate in
1123 this mode. Typically an external event or RTC activity will wake
Michael Hennerich1efc80b2008-07-19 16:57:32 +08001124 up the processor. When in the sleep mode, system DMA access to L1
1125 memory is not supported.
1126
1127 If unsure, select "Sleep Deeper".
Bryan Wu1394f032007-05-06 14:50:22 -07001128endchoice
1129
Michael Hennerichcfefe3c2008-02-09 04:12:37 +08001130config PM_WAKEUP_BY_GPIO
Michael Hennerich1efc80b2008-07-19 16:57:32 +08001131 bool "Allow Wakeup from Standby by GPIO"
Michael Hennerichff19fed2009-03-04 17:35:51 +08001132 depends on PM && !BF54x
Bryan Wu1394f032007-05-06 14:50:22 -07001133
1134config PM_WAKEUP_GPIO_NUMBER
Michael Hennerich1efc80b2008-07-19 16:57:32 +08001135 int "GPIO number"
Bryan Wu1394f032007-05-06 14:50:22 -07001136 range 0 47
1137 depends on PM_WAKEUP_BY_GPIO
Mike Frysingerd1a33362008-11-18 17:48:22 +08001138 default 2
Bryan Wu1394f032007-05-06 14:50:22 -07001139
1140choice
1141 prompt "GPIO Polarity"
1142 depends on PM_WAKEUP_BY_GPIO
1143 default PM_WAKEUP_GPIO_POLAR_H
1144config PM_WAKEUP_GPIO_POLAR_H
1145 bool "Active High"
1146config PM_WAKEUP_GPIO_POLAR_L
1147 bool "Active Low"
1148config PM_WAKEUP_GPIO_POLAR_EDGE_F
1149 bool "Falling EDGE"
1150config PM_WAKEUP_GPIO_POLAR_EDGE_R
1151 bool "Rising EDGE"
1152config PM_WAKEUP_GPIO_POLAR_EDGE_B
1153 bool "Both EDGE"
1154endchoice
1155
Michael Hennerich1efc80b2008-07-19 16:57:32 +08001156comment "Possible Suspend Mem / Hibernate Wake-Up Sources"
1157 depends on PM
1158
Michael Hennerich1efc80b2008-07-19 16:57:32 +08001159config PM_BFIN_WAKE_PH6
1160 bool "Allow Wake-Up from on-chip PHY or PH6 GP"
Bryan Wu2f6f4bc2008-11-18 17:48:21 +08001161 depends on PM && (BF51x || BF52x || BF534 || BF536 || BF537)
Michael Hennerich1efc80b2008-07-19 16:57:32 +08001162 default n
1163 help
1164 Enable PHY and PH6 GP Wake-Up (Voltage Regulator Power-Up)
1165
Michael Hennerich1efc80b2008-07-19 16:57:32 +08001166config PM_BFIN_WAKE_GP
1167 bool "Allow Wake-Up from GPIOs"
1168 depends on PM && BF54x
1169 default n
1170 help
1171 Enable General-Purpose Wake-Up (Voltage Regulator Power-Up)
Michael Hennerich19986282009-03-05 16:45:55 +08001172 (all processors, except ADSP-BF549). This option sets
1173 the general-purpose wake-up enable (GPWE) control bit to enable
1174 wake-up upon detection of an active low signal on the /GPW (PH7) pin.
1175 On ADSP-BF549 this option enables the the same functionality on the
1176 /MRXON pin also PH7.
1177
Bryan Wu1394f032007-05-06 14:50:22 -07001178endmenu
1179
Bryan Wu1394f032007-05-06 14:50:22 -07001180menu "CPU Frequency scaling"
1181
1182source "drivers/cpufreq/Kconfig"
1183
Michael Hennerich5ad2ca52008-11-18 17:48:22 +08001184config BFIN_CPU_FREQ
1185 bool
1186 depends on CPU_FREQ
1187 select CPU_FREQ_TABLE
1188 default y
1189
Michael Hennerich14b03202008-05-07 11:41:26 +08001190config CPU_VOLTAGE
1191 bool "CPU Voltage scaling"
Michael Hennerich73feb5c2009-01-07 23:14:39 +08001192 depends on EXPERIMENTAL
Michael Hennerich14b03202008-05-07 11:41:26 +08001193 depends on CPU_FREQ
1194 default n
1195 help
1196 Say Y here if you want CPU voltage scaling according to the CPU frequency.
1197 This option violates the PLL BYPASS recommendation in the Blackfin Processor
Michael Hennerich73feb5c2009-01-07 23:14:39 +08001198 manuals. There is a theoretical risk that during VDDINT transitions
Michael Hennerich14b03202008-05-07 11:41:26 +08001199 the PLL may unlock.
1200
Bryan Wu1394f032007-05-06 14:50:22 -07001201endmenu
1202
Bryan Wu1394f032007-05-06 14:50:22 -07001203source "net/Kconfig"
1204
1205source "drivers/Kconfig"
1206
1207source "fs/Kconfig"
1208
Mike Frysinger74ce8322007-11-21 23:50:49 +08001209source "arch/blackfin/Kconfig.debug"
Bryan Wu1394f032007-05-06 14:50:22 -07001210
1211source "security/Kconfig"
1212
1213source "crypto/Kconfig"
1214
1215source "lib/Kconfig"