blob: c1a868d398bd284f6c7552d31279e24215792f51 [file] [log] [blame]
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -07001config AVR32
Haavard Skinnemoen58bd2bf2007-11-23 19:25:00 +01002 def_bool y
David Rientjes6a108a12011-01-20 14:44:16 -08003 # With EXPERT=n, we get lots of stuff automatically selected
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -07004 # that we usually don't need on AVR32.
David Rientjes6a108a12011-01-20 14:44:16 -08005 select EXPERT
David Brownell9483a572008-07-23 21:26:48 -07006 select HAVE_CLK
Mathieu Desnoyers42d4b832008-02-02 15:10:34 -05007 select HAVE_OPROFILE
Mathieu Desnoyers3f550092008-02-02 15:10:35 -05008 select HAVE_KPROBES
Thomas Gleixner25015332011-02-06 17:29:04 +01009 select HAVE_GENERIC_HARDIRQS
Stephen Rothwell4febd952013-03-07 15:48:16 +110010 select VIRT_TO_BUS
Thomas Gleixner25015332011-02-06 17:29:04 +010011 select GENERIC_IRQ_PROBE
Fabio Baltieri31e00172012-02-03 15:37:14 -080012 select GENERIC_ATOMIC64
Thomas Gleixner25015332011-02-06 17:29:04 +010013 select HARDIRQS_SW_RESEND
Thomas Gleixnerdb828172011-03-24 19:08:11 +010014 select GENERIC_IRQ_SHOW
Mark Brown7563bbf2012-04-15 10:52:54 +010015 select ARCH_HAVE_CUSTOM_GPIO_H
Will Deaconc1d7e012012-07-30 14:42:46 -070016 select ARCH_WANT_IPC_PARSE_VERSION
Huang Yingdf013ff2011-07-13 13:14:22 +080017 select ARCH_HAVE_NMI_SAFE_CMPXCHG
Anna-Maria Gleixner8d6af992012-05-18 16:45:45 +000018 select GENERIC_CLOCKEVENTS
David Howells786d35d2012-09-28 14:31:03 +093019 select HAVE_MOD_ARCH_SPECIFIC
20 select MODULES_USE_ELF_RELA
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -070021 help
22 AVR32 is a high-performance 32-bit RISC microprocessor core,
23 designed for cost-sensitive embedded applications, with particular
24 emphasis on low power consumption and high code density.
25
26 There is an AVR32 Linux project with a web page at
27 http://avr32linux.org/.
28
David Brownell0a938b92007-03-05 00:30:18 -080029config GENERIC_GPIO
Haavard Skinnemoen58bd2bf2007-11-23 19:25:00 +010030 def_bool y
David Brownell0a938b92007-03-05 00:30:18 -080031
Haavard Skinnemoen2f026032007-11-23 20:01:59 +010032config STACKTRACE_SUPPORT
33 def_bool y
34
Haavard Skinnemoen320516b2007-11-26 14:34:57 +010035config LOCKDEP_SUPPORT
36 def_bool y
37
38config TRACE_IRQFLAGS_SUPPORT
39 def_bool y
40
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -070041config RWSEM_GENERIC_SPINLOCK
Haavard Skinnemoen58bd2bf2007-11-23 19:25:00 +010042 def_bool y
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -070043
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -070044config RWSEM_XCHGADD_ALGORITHM
Haavard Skinnemoen58bd2bf2007-11-23 19:25:00 +010045 def_bool n
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -070046
David Howellsf0d1b0b2006-12-08 02:37:49 -080047config ARCH_HAS_ILOG2_U32
Haavard Skinnemoen58bd2bf2007-11-23 19:25:00 +010048 def_bool n
David Howellsf0d1b0b2006-12-08 02:37:49 -080049
50config ARCH_HAS_ILOG2_U64
Haavard Skinnemoen58bd2bf2007-11-23 19:25:00 +010051 def_bool n
David Howellsf0d1b0b2006-12-08 02:37:49 -080052
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -070053config GENERIC_HWEIGHT
Haavard Skinnemoen58bd2bf2007-11-23 19:25:00 +010054 def_bool y
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -070055
56config GENERIC_CALIBRATE_DELAY
Haavard Skinnemoen58bd2bf2007-11-23 19:25:00 +010057 def_bool y
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -070058
Haavard Skinnemoen623b0352007-03-13 17:59:11 +010059config GENERIC_BUG
Haavard Skinnemoen58bd2bf2007-11-23 19:25:00 +010060 def_bool y
Haavard Skinnemoen623b0352007-03-13 17:59:11 +010061 depends on BUG
62
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -070063source "init/Kconfig"
64
Matt Helsleydc52ddc2008-10-18 20:27:21 -070065source "kernel/Kconfig.freezer"
66
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -070067menu "System Type and features"
68
69config SUBARCH_AVR32B
70 bool
71config MMU
72 bool
73config PERFORMANCE_COUNTERS
74 bool
75
76config PLATFORM_AT32AP
77 bool
78 select SUBARCH_AVR32B
79 select MMU
80 select PERFORMANCE_COUNTERS
Michael Buesch7444a722008-07-25 01:46:11 -070081 select ARCH_REQUIRE_GPIOLIB
Haavard Skinnemoenb83d6ee12008-03-05 10:00:28 +010082 select GENERIC_ALLOCATOR
Nicolas Ferre0912e532009-06-23 16:30:56 +020083 select HAVE_FB_ATMEL
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -070084
Haavard Skinnemoene8897bf2007-11-29 11:15:15 +010085#
86# CPU types
87#
88
89# AP7000 derivatives
Haavard Skinnemoen438ff3f2007-10-29 15:28:07 +010090config CPU_AT32AP700X
91 bool
92 select PLATFORM_AT32AP
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -070093config CPU_AT32AP7000
Haavard Skinnemoene8897bf2007-11-29 11:15:15 +010094 bool
Haavard Skinnemoen438ff3f2007-10-29 15:28:07 +010095 select CPU_AT32AP700X
Haavard Skinnemoen438ff3f2007-10-29 15:28:07 +010096config CPU_AT32AP7001
Haavard Skinnemoene8897bf2007-11-29 11:15:15 +010097 bool
Haavard Skinnemoen438ff3f2007-10-29 15:28:07 +010098 select CPU_AT32AP700X
Haavard Skinnemoen438ff3f2007-10-29 15:28:07 +010099config CPU_AT32AP7002
Haavard Skinnemoene8897bf2007-11-29 11:15:15 +0100100 bool
Haavard Skinnemoen438ff3f2007-10-29 15:28:07 +0100101 select CPU_AT32AP700X
102
Hans-Christian Egtvedt3550b932009-12-03 14:58:20 +0100103# AP700X boards
104config BOARD_ATNGW100_COMMON
105 bool
106 select CPU_AT32AP7000
107
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -0700108choice
109 prompt "AVR32 board type"
110 default BOARD_ATSTK1000
111
112config BOARD_ATSTK1000
113 bool "ATSTK1000 evaluation board"
Haavard Skinnemoen9ca20a82007-04-12 17:26:57 +0200114
Hans-Christian Egtvedt3550b932009-12-03 14:58:20 +0100115config BOARD_ATNGW100_MKI
Haavard Skinnemoen9ca20a82007-04-12 17:26:57 +0200116 bool "ATNGW100 Network Gateway"
Hans-Christian Egtvedt3550b932009-12-03 14:58:20 +0100117 select BOARD_ATNGW100_COMMON
118
119config BOARD_ATNGW100_MKII
120 bool "ATNGW100 mkII Network Gateway"
121 select BOARD_ATNGW100_COMMON
Hans-Christian Egtvedt45c349b2008-07-29 09:25:37 +0000122
Alex Raimondidd5e1332008-12-09 16:17:13 +0100123config BOARD_HAMMERHEAD
124 bool "Hammerhead board"
125 select CPU_AT32AP7000
126 select USB_ARCH_HAS_HCD
127 help
Matt LaPlante692105b2009-01-26 11:12:25 +0100128 The Hammerhead platform is built around an AVR32 32-bit microcontroller from Atmel.
Alex Raimondidd5e1332008-12-09 16:17:13 +0100129 It offers versatile peripherals, such as ethernet, usb device, usb host etc.
130
Matt LaPlante692105b2009-01-26 11:12:25 +0100131 The board also incorporates a power supply and is a Power over Ethernet (PoE) Powered
Alex Raimondidd5e1332008-12-09 16:17:13 +0100132 Device (PD).
133
Matt LaPlante692105b2009-01-26 11:12:25 +0100134 Additionally, a Cyclone III FPGA from Altera is integrated on the board. The FPGA is
Alex Raimondidd5e1332008-12-09 16:17:13 +0100135 mapped into the 32-bit AVR memory bus. The FPGA offers two DDR2 SDRAM interfaces, which
136 will cover even the most exceptional need of memory bandwidth. Together with the onboard
137 video decoder the board is ready for video processing.
138
Justin P. Mattock50a23e62010-10-16 10:36:23 -0700139 For more information see: http://www.miromico.ch/index.php/hammerhead.html
Alex Raimondidd5e1332008-12-09 16:17:13 +0100140
Hans-Christian Egtvedt45c349b2008-07-29 09:25:37 +0000141config BOARD_FAVR_32
142 bool "Favr-32 LCD-board"
143 select CPU_AT32AP7000
Mark Jackson5b50c162008-10-13 13:14:50 +0000144
Jonas Larssona16fffdd2009-03-27 10:18:14 +0100145config BOARD_MERISC
146 bool "Merisc board"
147 select CPU_AT32AP7000
148 help
149 Merisc is the family name for a range of AVR32-based boards.
150
151 The boards are designed to be used in a man-machine
152 interfacing environment, utilizing a touch-based graphical
153 user interface. They host a vast range of I/O peripherals as
154 well as a large SDRAM & Flash memory bank.
155
156 For more information see: http://www.martinsson.se/merisc
157
Mark Jackson5b50c162008-10-13 13:14:50 +0000158config BOARD_MIMC200
159 bool "MIMC200 CPU board"
160 select CPU_AT32AP7000
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -0700161endchoice
162
David Brownella8e93ed2007-06-12 14:34:47 +0200163source "arch/avr32/boards/atstk1000/Kconfig"
Hans-Christian Egtvedta3bee422008-07-01 08:29:27 +0000164source "arch/avr32/boards/atngw100/Kconfig"
Alex Raimondidd5e1332008-12-09 16:17:13 +0100165source "arch/avr32/boards/hammerhead/Kconfig"
Hans-Christian Egtvedt45c349b2008-07-29 09:25:37 +0000166source "arch/avr32/boards/favr-32/Kconfig"
Jonas Larssona16fffdd2009-03-27 10:18:14 +0100167source "arch/avr32/boards/merisc/Kconfig"
David Brownella8e93ed2007-06-12 14:34:47 +0200168
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -0700169choice
170 prompt "Boot loader type"
171 default LOADER_U_BOOT
172
173config LOADER_U_BOOT
174 bool "U-Boot (or similar) bootloader"
175endchoice
176
Haavard Skinnemoen228e8452007-03-07 15:24:34 +0100177source "arch/avr32/mach-at32ap/Kconfig"
178
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -0700179config LOAD_ADDRESS
180 hex
Haavard Skinnemoen438ff3f2007-10-29 15:28:07 +0100181 default 0x10000000 if LOADER_U_BOOT=y && CPU_AT32AP700X=y
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -0700182
183config ENTRY_ADDRESS
184 hex
Haavard Skinnemoen438ff3f2007-10-29 15:28:07 +0100185 default 0x90000000 if LOADER_U_BOOT=y && CPU_AT32AP700X=y
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -0700186
187config PHYS_OFFSET
188 hex
Haavard Skinnemoen438ff3f2007-10-29 15:28:07 +0100189 default 0x10000000 if CPU_AT32AP700X=y
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -0700190
191source "kernel/Kconfig.preempt"
192
Haavard Skinnemoen5a4d5292008-01-14 23:33:44 +0100193config QUICKLIST
194 def_bool y
195
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -0700196config ARCH_HAVE_MEMORY_PRESENT
Haavard Skinnemoen58bd2bf2007-11-23 19:25:00 +0100197 def_bool n
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -0700198
199config NEED_NODE_MEMMAP_SIZE
Haavard Skinnemoen58bd2bf2007-11-23 19:25:00 +0100200 def_bool n
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -0700201
202config ARCH_FLATMEM_ENABLE
Haavard Skinnemoen58bd2bf2007-11-23 19:25:00 +0100203 def_bool y
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -0700204
205config ARCH_DISCONTIGMEM_ENABLE
Haavard Skinnemoen58bd2bf2007-11-23 19:25:00 +0100206 def_bool n
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -0700207
208config ARCH_SPARSEMEM_ENABLE
Haavard Skinnemoen58bd2bf2007-11-23 19:25:00 +0100209 def_bool n
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -0700210
211source "mm/Kconfig"
212
213config OWNERSHIP_TRACE
214 bool "Ownership trace support"
215 default y
216 help
217 Say Y to generate an Ownership Trace message on every context switch,
218 enabling Nexus-compliant debuggers to keep track of the PID of the
219 currently executing task.
220
Haavard Skinnemoene7ba1762007-10-10 14:58:29 +0200221config NMI_DEBUGGING
222 bool "NMI Debugging"
223 default n
224 help
225 Say Y here and pass the nmi_debug command-line parameter to
226 the kernel to turn on NMI debugging. Depending on the value
227 of the nmi_debug option, various pieces of information will
228 be dumped to the console when a Non-Maskable Interrupt
229 happens.
230
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -0700231# FPU emulation goes here
232
233source "kernel/Kconfig.hz"
234
235config CMDLINE
236 string "Default kernel command line"
237 default ""
238 help
239 If you don't have a boot loader capable of passing a command line string
240 to the kernel, you may specify one here. As a minimum, you should specify
241 the memory size and the root device (e.g., mem=8M, root=/dev/nfs).
242
243endmenu
244
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200245menu "Power management options"
Hans-Christian Egtvedt9e58e182007-06-04 16:10:57 +0200246
Haavard Skinnemoen02a00cf2008-02-24 13:51:38 +0100247source "kernel/power/Kconfig"
248
249config ARCH_SUSPEND_POSSIBLE
250 def_bool y
251
Hans-Christian Egtvedt9e58e182007-06-04 16:10:57 +0200252menu "CPU Frequency scaling"
253
254source "drivers/cpufreq/Kconfig"
255
256config CPU_FREQ_AT32AP
257 bool "CPU frequency driver for AT32AP"
258 depends on CPU_FREQ && PLATFORM_AT32AP
259 default n
260 help
261 This enables the CPU frequency driver for AT32AP processors.
262
263 For details, take a look in <file:Documentation/cpu-freq>.
264
265 If in doubt, say N.
266
267endmenu
268
269endmenu
270
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -0700271menu "Bus options"
272
273config PCI
274 bool
275
276source "drivers/pci/Kconfig"
277
278source "drivers/pcmcia/Kconfig"
279
280endmenu
281
282menu "Executable file formats"
283source "fs/Kconfig.binfmt"
284endmenu
285
286source "net/Kconfig"
287
288source "drivers/Kconfig"
289
290source "fs/Kconfig"
291
Haavard Skinnemoen5f97f7f2006-09-25 23:32:13 -0700292source "arch/avr32/Kconfig.debug"
293
294source "security/Kconfig"
295
296source "crypto/Kconfig"
297
298source "lib/Kconfig"