1config AVR32
2	def_bool y
3	# With EXPERT=n, we get lots of stuff automatically selected
4	# that we usually don't need on AVR32.
5	select EXPERT
6	select HAVE_CLK
7	select HAVE_OPROFILE
8	select HAVE_KPROBES
9	select HAVE_GENERIC_HARDIRQS
10	select GENERIC_IRQ_PROBE
11	select HARDIRQS_SW_RESEND
12	select GENERIC_IRQ_SHOW
13	help
14	  AVR32 is a high-performance 32-bit RISC microprocessor core,
15	  designed for cost-sensitive embedded applications, with particular
16	  emphasis on low power consumption and high code density.
17
18	  There is an AVR32 Linux project with a web page at
19	  http://avr32linux.org/.
20
21config GENERIC_GPIO
22	def_bool y
23
24config STACKTRACE_SUPPORT
25	def_bool y
26
27config LOCKDEP_SUPPORT
28	def_bool y
29
30config TRACE_IRQFLAGS_SUPPORT
31	def_bool y
32
33config RWSEM_GENERIC_SPINLOCK
34	def_bool y
35
36config GENERIC_CLOCKEVENTS
37	def_bool y
38
39config RWSEM_XCHGADD_ALGORITHM
40	def_bool n
41
42config ARCH_HAS_ILOG2_U32
43	def_bool n
44
45config ARCH_HAS_ILOG2_U64
46	def_bool n
47
48config GENERIC_HWEIGHT
49	def_bool y
50
51config GENERIC_CALIBRATE_DELAY
52	def_bool y
53
54config GENERIC_BUG
55	def_bool y
56	depends on BUG
57
58source "init/Kconfig"
59
60source "kernel/Kconfig.freezer"
61
62menu "System Type and features"
63
64source "kernel/time/Kconfig"
65
66config SUBARCH_AVR32B
67	bool
68config MMU
69	bool
70config PERFORMANCE_COUNTERS
71	bool
72
73config PLATFORM_AT32AP
74	bool
75	select SUBARCH_AVR32B
76	select MMU
77	select PERFORMANCE_COUNTERS
78	select ARCH_REQUIRE_GPIOLIB
79	select GENERIC_ALLOCATOR
80	select HAVE_FB_ATMEL
81	select HAVE_NET_MACB
82
83#
84# CPU types
85#
86
87# AP7000 derivatives
88config CPU_AT32AP700X
89	bool
90	select PLATFORM_AT32AP
91config CPU_AT32AP7000
92	bool
93	select CPU_AT32AP700X
94config CPU_AT32AP7001
95	bool
96	select CPU_AT32AP700X
97config CPU_AT32AP7002
98	bool
99	select CPU_AT32AP700X
100
101# AP700X boards
102config BOARD_ATNGW100_COMMON
103	bool
104	select CPU_AT32AP7000
105
106choice
107	prompt "AVR32 board type"
108	default BOARD_ATSTK1000
109
110config BOARD_ATSTK1000
111	bool "ATSTK1000 evaluation board"
112
113config BOARD_ATNGW100_MKI
114	bool "ATNGW100 Network Gateway"
115	select BOARD_ATNGW100_COMMON
116
117config BOARD_ATNGW100_MKII
118	bool "ATNGW100 mkII Network Gateway"
119	select BOARD_ATNGW100_COMMON
120
121config BOARD_HAMMERHEAD
122	bool "Hammerhead board"
123	select CPU_AT32AP7000
124	select USB_ARCH_HAS_HCD
125	help
126	  The Hammerhead platform is built around an AVR32 32-bit microcontroller from Atmel.
127	  It offers versatile peripherals, such as ethernet, usb device, usb host etc.
128
129	  The board also incorporates a power supply and is a Power over Ethernet (PoE) Powered
130	  Device (PD).
131
132	  Additionally, a Cyclone III FPGA from Altera is integrated on the board. The FPGA is
133	  mapped into the 32-bit AVR memory bus. The FPGA offers two DDR2 SDRAM interfaces, which
134	  will cover even the most exceptional need of memory bandwidth. Together with the onboard
135	  video decoder the board is ready for video processing.
136
137	  For more information see: http://www.miromico.ch/index.php/hammerhead.html
138
139config BOARD_FAVR_32
140	bool "Favr-32 LCD-board"
141	select CPU_AT32AP7000
142
143config BOARD_MERISC
144	bool "Merisc board"
145	select CPU_AT32AP7000
146	help
147	  Merisc is the family name for a range of AVR32-based boards.
148
149	  The boards are designed to be used in a man-machine
150	  interfacing environment, utilizing a touch-based graphical
151	  user interface. They host a vast range of I/O peripherals as
152	  well as a large SDRAM & Flash memory bank.
153
154	  For more information see: http://www.martinsson.se/merisc
155
156config BOARD_MIMC200
157	bool "MIMC200 CPU board"
158	select CPU_AT32AP7000
159endchoice
160
161source "arch/avr32/boards/atstk1000/Kconfig"
162source "arch/avr32/boards/atngw100/Kconfig"
163source "arch/avr32/boards/hammerhead/Kconfig"
164source "arch/avr32/boards/favr-32/Kconfig"
165source "arch/avr32/boards/merisc/Kconfig"
166
167choice
168	prompt "Boot loader type"
169	default LOADER_U_BOOT
170
171config	LOADER_U_BOOT
172	bool "U-Boot (or similar) bootloader"
173endchoice
174
175source "arch/avr32/mach-at32ap/Kconfig"
176
177config LOAD_ADDRESS
178	hex
179	default 0x10000000 if LOADER_U_BOOT=y && CPU_AT32AP700X=y
180
181config ENTRY_ADDRESS
182	hex
183	default 0x90000000 if LOADER_U_BOOT=y && CPU_AT32AP700X=y
184
185config PHYS_OFFSET
186	hex
187	default 0x10000000 if CPU_AT32AP700X=y
188
189source "kernel/Kconfig.preempt"
190
191config QUICKLIST
192	def_bool y
193
194config HAVE_ARCH_BOOTMEM
195	def_bool n
196
197config ARCH_HAVE_MEMORY_PRESENT
198	def_bool n
199
200config NEED_NODE_MEMMAP_SIZE
201	def_bool n
202
203config ARCH_FLATMEM_ENABLE
204	def_bool y
205
206config ARCH_DISCONTIGMEM_ENABLE
207	def_bool n
208
209config ARCH_SPARSEMEM_ENABLE
210	def_bool n
211
212source "mm/Kconfig"
213
214config OWNERSHIP_TRACE
215	bool "Ownership trace support"
216	default y
217	help
218	  Say Y to generate an Ownership Trace message on every context switch,
219	  enabling Nexus-compliant debuggers to keep track of the PID of the
220	  currently executing task.
221
222config NMI_DEBUGGING
223	bool "NMI Debugging"
224	default n
225	help
226	  Say Y here and pass the nmi_debug command-line parameter to
227	  the kernel to turn on NMI debugging. Depending on the value
228	  of the nmi_debug option, various pieces of information will
229	  be dumped to the console when a Non-Maskable Interrupt
230	  happens.
231
232# FPU emulation goes here
233
234source "kernel/Kconfig.hz"
235
236config CMDLINE
237	string "Default kernel command line"
238	default ""
239	help
240	  If you don't have a boot loader capable of passing a command line string
241	  to the kernel, you may specify one here. As a minimum, you should specify
242	  the memory size and the root device (e.g., mem=8M, root=/dev/nfs).
243
244endmenu
245
246menu "Power management options"
247
248source "kernel/power/Kconfig"
249
250config ARCH_SUSPEND_POSSIBLE
251	def_bool y
252
253menu "CPU Frequency scaling"
254
255source "drivers/cpufreq/Kconfig"
256
257config CPU_FREQ_AT32AP
258	bool "CPU frequency driver for AT32AP"
259	depends on CPU_FREQ && PLATFORM_AT32AP
260	default n
261	help
262	  This enables the CPU frequency driver for AT32AP processors.
263
264	  For details, take a look in <file:Documentation/cpu-freq>.
265
266	  If in doubt, say N.
267
268endmenu
269
270endmenu
271
272menu "Bus options"
273
274config PCI
275	bool
276
277source "drivers/pci/Kconfig"
278
279source "drivers/pcmcia/Kconfig"
280
281endmenu
282
283menu "Executable file formats"
284source "fs/Kconfig.binfmt"
285endmenu
286
287source "net/Kconfig"
288
289source "drivers/Kconfig"
290
291source "fs/Kconfig"
292
293source "arch/avr32/Kconfig.debug"
294
295source "security/Kconfig"
296
297source "crypto/Kconfig"
298
299source "lib/Kconfig"
300