aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@g5.osdl.org>2006-01-12 15:23:49 -0500
committerLinus Torvalds <torvalds@g5.osdl.org>2006-01-12 15:23:49 -0500
commitbf785ee0aeea7a3e717cb1e11df4135b6cbde7da (patch)
tree32ae52ad51c2a3952f2e1a2af9217717954fa593 /arch
parent8b87e1baff24e586c3fe6c168843d213119bf4dd (diff)
parent00431707be0cc1236ee08459367872b57da5be29 (diff)
Merge master.kernel.org:/home/rmk/linux-2.6-arm
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/boot/compressed/head.S46
-rw-r--r--arch/arm/common/rtctime.c15
-rw-r--r--arch/arm/configs/at91rm9200dk_defconfig1009
-rw-r--r--arch/arm/configs/at91rm9200ek_defconfig998
-rw-r--r--arch/arm/configs/csb337_defconfig1136
-rw-r--r--arch/arm/configs/csb637_defconfig1116
-rw-r--r--arch/arm/kernel/ecard.c7
-rw-r--r--arch/arm/kernel/fiq.c4
-rw-r--r--arch/arm/kernel/setup.c15
-rw-r--r--arch/arm/lib/csumpartialcopy.S6
-rw-r--r--arch/arm/lib/csumpartialcopygeneric.S6
-rw-r--r--arch/arm/lib/csumpartialcopyuser.S8
-rw-r--r--arch/arm/mach-aaec2000/clock.c15
-rw-r--r--arch/arm/mach-at91rm9200/Makefile8
-rw-r--r--arch/arm/mach-at91rm9200/board-csb337.c143
-rw-r--r--arch/arm/mach-at91rm9200/board-csb637.c116
-rw-r--r--arch/arm/mach-at91rm9200/board-dk.c138
-rw-r--r--arch/arm/mach-at91rm9200/board-ek.c131
-rw-r--r--arch/arm/mach-integrator/clock.c15
-rw-r--r--arch/arm/mach-pxa/ssp.c17
-rw-r--r--arch/arm/mach-realview/clock.c15
-rw-r--r--arch/arm/mach-s3c2410/clock.c11
-rw-r--r--arch/arm/mach-versatile/clock.c15
-rw-r--r--arch/arm/mm/consistent.c53
-rw-r--r--arch/arm/plat-omap/clock.c15
25 files changed, 4946 insertions, 112 deletions
diff --git a/arch/arm/boot/compressed/head.S b/arch/arm/boot/compressed/head.S
index 6abafb6f1844..aaa47400eb9c 100644
--- a/arch/arm/boot/compressed/head.S
+++ b/arch/arm/boot/compressed/head.S
@@ -84,7 +84,7 @@
84 kputc #'\n' 84 kputc #'\n'
85 kphex r5, 8 /* decompressed kernel start */ 85 kphex r5, 8 /* decompressed kernel start */
86 kputc #'-' 86 kputc #'-'
87 kphex r8, 8 /* decompressed kernel end */ 87 kphex r9, 8 /* decompressed kernel end */
88 kputc #'>' 88 kputc #'>'
89 kphex r4, 8 /* kernel execution address */ 89 kphex r4, 8 /* kernel execution address */
90 kputc #'\n' 90 kputc #'\n'
@@ -116,7 +116,7 @@ start:
116 .word start @ absolute load/run zImage address 116 .word start @ absolute load/run zImage address
117 .word _edata @ zImage end address 117 .word _edata @ zImage end address
1181: mov r7, r1 @ save architecture ID 1181: mov r7, r1 @ save architecture ID
119 mov r8, #0 @ save r0 119 mov r8, r2 @ save atags pointer
120 120
121#ifndef __ARM_ARCH_2__ 121#ifndef __ARM_ARCH_2__
122 /* 122 /*
@@ -144,7 +144,7 @@ not_angel:
144 144
145 /* 145 /*
146 * some architecture specific code can be inserted 146 * some architecture specific code can be inserted
147 * by the linker here, but it should preserve r7 and r8. 147 * by the linker here, but it should preserve r7, r8, and r9.
148 */ 148 */
149 149
150 .text 150 .text
@@ -249,16 +249,17 @@ not_relocated: mov r0, #0
249 * r5 = decompressed kernel start 249 * r5 = decompressed kernel start
250 * r6 = processor ID 250 * r6 = processor ID
251 * r7 = architecture ID 251 * r7 = architecture ID
252 * r8-r14 = unused 252 * r8 = atags pointer
253 * r9-r14 = corrupted
253 */ 254 */
254 add r1, r5, r0 @ end of decompressed kernel 255 add r1, r5, r0 @ end of decompressed kernel
255 adr r2, reloc_start 256 adr r2, reloc_start
256 ldr r3, LC1 257 ldr r3, LC1
257 add r3, r2, r3 258 add r3, r2, r3
2581: ldmia r2!, {r8 - r13} @ copy relocation code 2591: ldmia r2!, {r9 - r14} @ copy relocation code
259 stmia r1!, {r8 - r13} 260 stmia r1!, {r9 - r14}
260 ldmia r2!, {r8 - r13} 261 ldmia r2!, {r9 - r14}
261 stmia r1!, {r8 - r13} 262 stmia r1!, {r9 - r14}
262 cmp r2, r3 263 cmp r2, r3
263 blo 1b 264 blo 1b
264 265
@@ -308,11 +309,12 @@ params: ldr r0, =params_phys
308 * r4 = kernel execution address 309 * r4 = kernel execution address
309 * r6 = processor ID 310 * r6 = processor ID
310 * r7 = architecture number 311 * r7 = architecture number
311 * r8 = run-time address of "start" 312 * r8 = atags pointer
313 * r9 = run-time address of "start" (???)
312 * On exit, 314 * On exit,
313 * r1, r2, r3, r8, r9, r12 corrupted 315 * r1, r2, r3, r9, r10, r12 corrupted
314 * This routine must preserve: 316 * This routine must preserve:
315 * r4, r5, r6, r7 317 * r4, r5, r6, r7, r8
316 */ 318 */
317 .align 5 319 .align 5
318cache_on: mov r3, #8 @ cache_on function 320cache_on: mov r3, #8 @ cache_on function
@@ -326,15 +328,15 @@ __setup_mmu: sub r3, r4, #16384 @ Page directory size
326 * bits for the RAM area only. 328 * bits for the RAM area only.
327 */ 329 */
328 mov r0, r3 330 mov r0, r3
329 mov r8, r0, lsr #18 331 mov r9, r0, lsr #18
330 mov r8, r8, lsl #18 @ start of RAM 332 mov r9, r9, lsl #18 @ start of RAM
331 add r9, r8, #0x10000000 @ a reasonable RAM size 333 add r10, r9, #0x10000000 @ a reasonable RAM size
332 mov r1, #0x12 334 mov r1, #0x12
333 orr r1, r1, #3 << 10 335 orr r1, r1, #3 << 10
334 add r2, r3, #16384 336 add r2, r3, #16384
3351: cmp r1, r8 @ if virt > start of RAM 3371: cmp r1, r8 @ if virt > start of RAM
336 orrhs r1, r1, #0x0c @ set cacheable, bufferable 338 orrhs r1, r1, #0x0c @ set cacheable, bufferable
337 cmp r1, r9 @ if virt > end of RAM 339 cmp r1, r10 @ if virt > end of RAM
338 bichs r1, r1, #0x0c @ clear cacheable, bufferable 340 bichs r1, r1, #0x0c @ clear cacheable, bufferable
339 str r1, [r0], #4 @ 1:1 mapping 341 str r1, [r0], #4 @ 1:1 mapping
340 add r1, r1, #1048576 342 add r1, r1, #1048576
@@ -403,26 +405,28 @@ __common_cache_on:
403 * r5 = decompressed kernel start 405 * r5 = decompressed kernel start
404 * r6 = processor ID 406 * r6 = processor ID
405 * r7 = architecture ID 407 * r7 = architecture ID
406 * r8-r14 = unused 408 * r8 = atags pointer
409 * r9-r14 = corrupted
407 */ 410 */
408 .align 5 411 .align 5
409reloc_start: add r8, r5, r0 412reloc_start: add r9, r5, r0
410 debug_reloc_start 413 debug_reloc_start
411 mov r1, r4 414 mov r1, r4
4121: 4151:
413 .rept 4 416 .rept 4
414 ldmia r5!, {r0, r2, r3, r9 - r13} @ relocate kernel 417 ldmia r5!, {r0, r2, r3, r10 - r14} @ relocate kernel
415 stmia r1!, {r0, r2, r3, r9 - r13} 418 stmia r1!, {r0, r2, r3, r10 - r14}
416 .endr 419 .endr
417 420
418 cmp r5, r8 421 cmp r5, r9
419 blo 1b 422 blo 1b
420 debug_reloc_end 423 debug_reloc_end
421 424
422call_kernel: bl cache_clean_flush 425call_kernel: bl cache_clean_flush
423 bl cache_off 426 bl cache_off
424 mov r0, #0 427 mov r0, #0 @ must be zero
425 mov r1, r7 @ restore architecture number 428 mov r1, r7 @ restore architecture number
429 mov r2, r8 @ restore atags pointer
426 mov pc, r4 @ call kernel 430 mov pc, r4 @ call kernel
427 431
428/* 432/*
diff --git a/arch/arm/common/rtctime.c b/arch/arm/common/rtctime.c
index ffb82d5bedef..48b1e19b131f 100644
--- a/arch/arm/common/rtctime.c
+++ b/arch/arm/common/rtctime.c
@@ -19,6 +19,7 @@
19#include <linux/spinlock.h> 19#include <linux/spinlock.h>
20#include <linux/capability.h> 20#include <linux/capability.h>
21#include <linux/device.h> 21#include <linux/device.h>
22#include <linux/mutex.h>
22 23
23#include <asm/rtc.h> 24#include <asm/rtc.h>
24#include <asm/semaphore.h> 25#include <asm/semaphore.h>
@@ -35,7 +36,7 @@ static unsigned long rtc_irq_data;
35/* 36/*
36 * rtc_sem protects rtc_inuse and rtc_ops 37 * rtc_sem protects rtc_inuse and rtc_ops
37 */ 38 */
38static DECLARE_MUTEX(rtc_sem); 39static DEFINE_MUTEX(rtc_mutex);
39static unsigned long rtc_inuse; 40static unsigned long rtc_inuse;
40static struct rtc_ops *rtc_ops; 41static struct rtc_ops *rtc_ops;
41 42
@@ -356,7 +357,7 @@ static int rtc_open(struct inode *inode, struct file *file)
356{ 357{
357 int ret; 358 int ret;
358 359
359 down(&rtc_sem); 360 mutex_lock(&rtc_mutex);
360 361
361 if (rtc_inuse) { 362 if (rtc_inuse) {
362 ret = -EBUSY; 363 ret = -EBUSY;
@@ -374,7 +375,7 @@ static int rtc_open(struct inode *inode, struct file *file)
374 rtc_inuse = 1; 375 rtc_inuse = 1;
375 } 376 }
376 } 377 }
377 up(&rtc_sem); 378 mutex_unlock(&rtc_mutex);
378 379
379 return ret; 380 return ret;
380} 381}
@@ -480,7 +481,7 @@ int register_rtc(struct rtc_ops *ops)
480{ 481{
481 int ret = -EBUSY; 482 int ret = -EBUSY;
482 483
483 down(&rtc_sem); 484 mutex_lock(&rtc_mutex);
484 if (rtc_ops == NULL) { 485 if (rtc_ops == NULL) {
485 rtc_ops = ops; 486 rtc_ops = ops;
486 487
@@ -489,7 +490,7 @@ int register_rtc(struct rtc_ops *ops)
489 create_proc_read_entry("driver/rtc", 0, NULL, 490 create_proc_read_entry("driver/rtc", 0, NULL,
490 rtc_read_proc, ops); 491 rtc_read_proc, ops);
491 } 492 }
492 up(&rtc_sem); 493 mutex_unlock(&rtc_mutex);
493 494
494 return ret; 495 return ret;
495} 496}
@@ -497,12 +498,12 @@ EXPORT_SYMBOL(register_rtc);
497 498
498void unregister_rtc(struct rtc_ops *rtc) 499void unregister_rtc(struct rtc_ops *rtc)
499{ 500{
500 down(&rtc_sem); 501 mutex_lock(&rtc_mutex);
501 if (rtc == rtc_ops) { 502 if (rtc == rtc_ops) {
502 remove_proc_entry("driver/rtc", NULL); 503 remove_proc_entry("driver/rtc", NULL);
503 misc_deregister(&rtc_miscdev); 504 misc_deregister(&rtc_miscdev);
504 rtc_ops = NULL; 505 rtc_ops = NULL;
505 } 506 }
506 up(&rtc_sem); 507 mutex_unlock(&rtc_mutex);
507} 508}
508EXPORT_SYMBOL(unregister_rtc); 509EXPORT_SYMBOL(unregister_rtc);
diff --git a/arch/arm/configs/at91rm9200dk_defconfig b/arch/arm/configs/at91rm9200dk_defconfig
new file mode 100644
index 000000000000..5cdd13acf8ff
--- /dev/null
+++ b/arch/arm/configs/at91rm9200dk_defconfig
@@ -0,0 +1,1009 @@
1#
2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.15
4# Mon Jan 9 20:54:30 2006
5#
6CONFIG_ARM=y
7CONFIG_MMU=y
8CONFIG_UID16=y
9CONFIG_RWSEM_GENERIC_SPINLOCK=y
10CONFIG_GENERIC_CALIBRATE_DELAY=y
11
12#
13# Code maturity level options
14#
15CONFIG_EXPERIMENTAL=y
16CONFIG_CLEAN_COMPILE=y
17CONFIG_BROKEN_ON_SMP=y
18CONFIG_INIT_ENV_ARG_LIMIT=32
19
20#
21# General setup
22#
23CONFIG_LOCALVERSION=""
24CONFIG_LOCALVERSION_AUTO=y
25# CONFIG_SWAP is not set
26CONFIG_SYSVIPC=y
27# CONFIG_POSIX_MQUEUE is not set
28# CONFIG_BSD_PROCESS_ACCT is not set
29CONFIG_SYSCTL=y
30# CONFIG_AUDIT is not set
31CONFIG_HOTPLUG=y
32CONFIG_KOBJECT_UEVENT=y
33# CONFIG_IKCONFIG is not set
34CONFIG_INITRAMFS_SOURCE=""
35CONFIG_CC_OPTIMIZE_FOR_SIZE=y
36# CONFIG_EMBEDDED is not set
37CONFIG_KALLSYMS=y
38# CONFIG_KALLSYMS_ALL is not set
39# CONFIG_KALLSYMS_EXTRA_PASS is not set
40CONFIG_PRINTK=y
41CONFIG_BUG=y
42CONFIG_BASE_FULL=y
43CONFIG_FUTEX=y
44CONFIG_EPOLL=y
45CONFIG_SHMEM=y
46CONFIG_CC_ALIGN_FUNCTIONS=0
47CONFIG_CC_ALIGN_LABELS=0
48CONFIG_CC_ALIGN_LOOPS=0
49CONFIG_CC_ALIGN_JUMPS=0
50# CONFIG_TINY_SHMEM is not set
51CONFIG_BASE_SMALL=0
52
53#
54# Loadable module support
55#
56CONFIG_MODULES=y
57CONFIG_MODULE_UNLOAD=y
58# CONFIG_MODULE_FORCE_UNLOAD is not set
59CONFIG_OBSOLETE_MODPARM=y
60# CONFIG_MODVERSIONS is not set
61# CONFIG_MODULE_SRCVERSION_ALL is not set
62CONFIG_KMOD=y
63
64#
65# Block layer
66#
67
68#
69# IO Schedulers
70#
71CONFIG_IOSCHED_NOOP=y
72CONFIG_IOSCHED_AS=y
73# CONFIG_IOSCHED_DEADLINE is not set
74# CONFIG_IOSCHED_CFQ is not set
75CONFIG_DEFAULT_AS=y
76# CONFIG_DEFAULT_DEADLINE is not set
77# CONFIG_DEFAULT_CFQ is not set
78# CONFIG_DEFAULT_NOOP is not set
79CONFIG_DEFAULT_IOSCHED="anticipatory"
80
81#
82# System Type
83#
84# CONFIG_ARCH_CLPS7500 is not set
85# CONFIG_ARCH_CLPS711X is not set
86# CONFIG_ARCH_CO285 is not set
87# CONFIG_ARCH_EBSA110 is not set
88# CONFIG_ARCH_CAMELOT is not set
89# CONFIG_ARCH_FOOTBRIDGE is not set
90# CONFIG_ARCH_INTEGRATOR is not set
91# CONFIG_ARCH_IOP3XX is not set
92# CONFIG_ARCH_IXP4XX is not set
93# CONFIG_ARCH_IXP2000 is not set
94# CONFIG_ARCH_L7200 is not set
95# CONFIG_ARCH_PXA is not set
96# CONFIG_ARCH_RPC is not set
97# CONFIG_ARCH_SA1100 is not set
98# CONFIG_ARCH_S3C2410 is not set
99# CONFIG_ARCH_SHARK is not set
100# CONFIG_ARCH_LH7A40X is not set
101# CONFIG_ARCH_OMAP is not set
102# CONFIG_ARCH_VERSATILE is not set
103# CONFIG_ARCH_REALVIEW is not set
104# CONFIG_ARCH_IMX is not set
105# CONFIG_ARCH_H720X is not set
106# CONFIG_ARCH_AAEC2000 is not set
107CONFIG_ARCH_AT91RM9200=y
108
109#
110# AT91RM9200 Implementations
111#
112
113#
114# AT91RM9200 Board Type
115#
116CONFIG_ARCH_AT91RM9200DK=y
117# CONFIG_MACH_AT91RM9200EK is not set
118# CONFIG_MACH_CSB337 is not set
119# CONFIG_MACH_CSB637 is not set
120# CONFIG_MACH_CARMEVA is not set
121# CONFIG_MACH_KB9200 is not set
122# CONFIG_MACH_ATEB9200 is not set
123
124#
125# AT91RM9200 Feature Selections
126#
127CONFIG_AT91_PROGRAMMABLE_CLOCKS=y
128
129#
130# Processor Type
131#
132CONFIG_CPU_32=y
133CONFIG_CPU_ARM920T=y
134CONFIG_CPU_32v4=y
135CONFIG_CPU_ABRT_EV4T=y
136CONFIG_CPU_CACHE_V4WT=y
137CONFIG_CPU_CACHE_VIVT=y
138CONFIG_CPU_COPY_V4WB=y
139CONFIG_CPU_TLB_V4WBI=y
140
141#
142# Processor Features
143#
144# CONFIG_ARM_THUMB is not set
145# CONFIG_CPU_ICACHE_DISABLE is not set
146# CONFIG_CPU_DCACHE_DISABLE is not set
147# CONFIG_CPU_DCACHE_WRITETHROUGH is not set
148
149#
150# Bus support
151#
152CONFIG_ISA_DMA_API=y
153
154#
155# PCCARD (PCMCIA/CardBus) support
156#
157CONFIG_PCCARD=y
158# CONFIG_PCMCIA_DEBUG is not set
159CONFIG_PCMCIA=y
160CONFIG_PCMCIA_LOAD_CIS=y
161CONFIG_PCMCIA_IOCTL=y
162
163#
164# PC-card bridges
165#
166CONFIG_AT91_CF=y
167
168#
169# Kernel Features
170#
171# CONFIG_PREEMPT is not set
172# CONFIG_NO_IDLE_HZ is not set
173# CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set
174CONFIG_SELECT_MEMORY_MODEL=y
175CONFIG_FLATMEM_MANUAL=y
176# CONFIG_DISCONTIGMEM_MANUAL is not set
177# CONFIG_SPARSEMEM_MANUAL is not set
178CONFIG_FLATMEM=y
179CONFIG_FLAT_NODE_MEM_MAP=y
180# CONFIG_SPARSEMEM_STATIC is not set
181CONFIG_SPLIT_PTLOCK_CPUS=4096
182CONFIG_LEDS=y
183CONFIG_LEDS_TIMER=y
184# CONFIG_LEDS_CPU is not set
185CONFIG_ALIGNMENT_TRAP=y
186
187#
188# Boot options
189#
190CONFIG_ZBOOT_ROM_TEXT=0x0
191CONFIG_ZBOOT_ROM_BSS=0x0
192CONFIG_CMDLINE="mem=32M console=ttyS0,115200 initrd=0x20410000,3145728 root=/dev/ram0 rw"
193# CONFIG_XIP_KERNEL is not set
194
195#
196# Floating point emulation
197#
198
199#
200# At least one emulation must be selected
201#
202CONFIG_FPE_NWFPE=y
203# CONFIG_FPE_NWFPE_XP is not set
204# CONFIG_FPE_FASTFPE is not set
205
206#
207# Userspace binary formats
208#
209CONFIG_BINFMT_ELF=y
210# CONFIG_BINFMT_AOUT is not set
211# CONFIG_BINFMT_MISC is not set
212# CONFIG_ARTHUR is not set
213
214#
215# Power management options
216#
217# CONFIG_PM is not set
218
219#
220# Networking
221#
222CONFIG_NET=y
223
224#
225# Networking options
226#
227CONFIG_PACKET=y
228# CONFIG_PACKET_MMAP is not set
229CONFIG_UNIX=y
230# CONFIG_NET_KEY is not set
231CONFIG_INET=y
232# CONFIG_IP_MULTICAST is not set
233# CONFIG_IP_ADVANCED_ROUTER is not set
234CONFIG_IP_FIB_HASH=y
235CONFIG_IP_PNP=y
236# CONFIG_IP_PNP_DHCP is not set
237CONFIG_IP_PNP_BOOTP=y
238# CONFIG_IP_PNP_RARP is not set
239# CONFIG_NET_IPIP is not set
240# CONFIG_NET_IPGRE is not set
241# CONFIG_ARPD is not set
242# CONFIG_SYN_COOKIES is not set
243# CONFIG_INET_AH is not set
244# CONFIG_INET_ESP is not set
245# CONFIG_INET_IPCOMP is not set
246# CONFIG_INET_TUNNEL is not set
247CONFIG_INET_DIAG=y
248CONFIG_INET_TCP_DIAG=y
249# CONFIG_TCP_CONG_ADVANCED is not set
250CONFIG_TCP_CONG_BIC=y
251# CONFIG_IPV6 is not set
252# CONFIG_NETFILTER is not set
253
254#
255# DCCP Configuration (EXPERIMENTAL)
256#
257# CONFIG_IP_DCCP is not set
258
259#
260# SCTP Configuration (EXPERIMENTAL)
261#
262# CONFIG_IP_SCTP is not set
263# CONFIG_ATM is not set
264# CONFIG_BRIDGE is not set
265# CONFIG_VLAN_8021Q is not set
266# CONFIG_DECNET is not set
267# CONFIG_LLC2 is not set
268# CONFIG_IPX is not set
269# CONFIG_ATALK is not set
270# CONFIG_X25 is not set
271# CONFIG_LAPB is not set
272# CONFIG_NET_DIVERT is not set
273# CONFIG_ECONET is not set
274# CONFIG_WAN_ROUTER is not set
275
276#
277# QoS and/or fair queueing
278#
279# CONFIG_NET_SCHED is not set
280
281#
282# Network testing
283#
284# CONFIG_NET_PKTGEN is not set
285# CONFIG_HAMRADIO is not set
286# CONFIG_IRDA is not set
287# CONFIG_BT is not set
288# CONFIG_IEEE80211 is not set
289
290#
291# Device Drivers
292#
293
294#
295# Generic Driver Options
296#
297CONFIG_STANDALONE=y
298CONFIG_PREVENT_FIRMWARE_BUILD=y
299CONFIG_FW_LOADER=y
300# CONFIG_DEBUG_DRIVER is not set
301
302#
303# Connector - unified userspace <-> kernelspace linker
304#
305# CONFIG_CONNECTOR is not set
306
307#
308# Memory Technology Devices (MTD)
309#
310CONFIG_MTD=y
311# CONFIG_MTD_DEBUG is not set
312# CONFIG_MTD_CONCAT is not set
313CONFIG_MTD_PARTITIONS=y
314# CONFIG_MTD_REDBOOT_PARTS is not set
315CONFIG_MTD_CMDLINE_PARTS=y
316# CONFIG_MTD_AFS_PARTS is not set
317
318#
319# User Modules And Translation Layers
320#
321CONFIG_MTD_CHAR=y
322CONFIG_MTD_BLOCK=y
323# CONFIG_FTL is not set
324# CONFIG_NFTL is not set
325# CONFIG_INFTL is not set
326# CONFIG_RFD_FTL is not set
327
328#
329# RAM/ROM/Flash chip drivers
330#
331CONFIG_MTD_CFI=y
332CONFIG_MTD_JEDECPROBE=y
333CONFIG_MTD_GEN_PROBE=y
334# CONFIG_MTD_CFI_ADV_OPTIONS is not set
335CONFIG_MTD_MAP_BANK_WIDTH_1=y
336CONFIG_MTD_MAP_BANK_WIDTH_2=y
337CONFIG_MTD_MAP_BANK_WIDTH_4=y
338# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
339# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
340# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
341CONFIG_MTD_CFI_I1=y
342CONFIG_MTD_CFI_I2=y
343# CONFIG_MTD_CFI_I4 is not set
344# CONFIG_MTD_CFI_I8 is not set
345# CONFIG_MTD_CFI_INTELEXT is not set
346CONFIG_MTD_CFI_AMDSTD=y
347CONFIG_MTD_CFI_AMDSTD_RETRY=0
348# CONFIG_MTD_CFI_STAA is not set
349CONFIG_MTD_CFI_UTIL=y
350# CONFIG_MTD_RAM is not set
351# CONFIG_MTD_ROM is not set
352# CONFIG_MTD_ABSENT is not set
353# CONFIG_MTD_XIP is not set
354
355#
356# Mapping drivers for chip access
357#
358# CONFIG_MTD_COMPLEX_MAPPINGS is not set
359CONFIG_MTD_PHYSMAP=y
360CONFIG_MTD_PHYSMAP_START=0x10000000
361CONFIG_MTD_PHYSMAP_LEN=0x200000
362CONFIG_MTD_PHYSMAP_BANKWIDTH=2
363# CONFIG_MTD_ARM_INTEGRATOR is not set
364# CONFIG_MTD_IMPA7 is not set
365# CONFIG_MTD_PLATRAM is not set
366
367#
368# Self-contained MTD device drivers
369#
370# CONFIG_MTD_SLRAM is not set
371# CONFIG_MTD_PHRAM is not set
372# CONFIG_MTD_MTDRAM is not set
373# CONFIG_MTD_BLKMTD is not set
374# CONFIG_MTD_BLOCK2MTD is not set
375
376#
377# Disk-On-Chip Device Drivers
378#
379# CONFIG_MTD_DOC2000 is not set
380# CONFIG_MTD_DOC2001 is not set
381# CONFIG_MTD_DOC2001PLUS is not set
382CONFIG_MTD_AT91_DATAFLASH=y
383CONFIG_MTD_AT91_DATAFLASH_CARD=y
384
385#
386# NAND Flash Device Drivers
387#
388# CONFIG_MTD_NAND is not set
389
390#
391# OneNAND Flash Device Drivers
392#
393# CONFIG_MTD_ONENAND is not set
394
395#
396# Parallel port support
397#
398# CONFIG_PARPORT is not set
399
400#
401# Plug and Play support
402#
403
404#
405# Block devices
406#
407# CONFIG_BLK_DEV_COW_COMMON is not set
408# CONFIG_BLK_DEV_LOOP is not set
409# CONFIG_BLK_DEV_NBD is not set
410# CONFIG_BLK_DEV_UB is not set
411CONFIG_BLK_DEV_RAM=y
412CONFIG_BLK_DEV_RAM_COUNT=16
413CONFIG_BLK_DEV_RAM_SIZE=8192
414CONFIG_BLK_DEV_INITRD=y
415# CONFIG_CDROM_PKTCDVD is not set
416# CONFIG_ATA_OVER_ETH is not set
417
418#
419# ATA/ATAPI/MFM/RLL support
420#
421# CONFIG_IDE is not set
422
423#
424# SCSI device support
425#
426# CONFIG_RAID_ATTRS is not set
427# CONFIG_SCSI is not set
428
429#
430# Multi-device support (RAID and LVM)
431#
432# CONFIG_MD is not set
433
434#
435# Fusion MPT device support
436#
437# CONFIG_FUSION is not set
438
439#
440# IEEE 1394 (FireWire) support
441#
442
443#
444# I2O device support
445#
446
447#
448# Network device support
449#
450CONFIG_NETDEVICES=y
451# CONFIG_DUMMY is not set
452# CONFIG_BONDING is not set
453# CONFIG_EQUALIZER is not set
454# CONFIG_TUN is not set
455
456#
457# PHY device support
458#
459# CONFIG_PHYLIB is not set
460
461#
462# Ethernet (10 or 100Mbit)
463#
464CONFIG_NET_ETHERNET=y
465CONFIG_MII=y
466CONFIG_ARM_AT91_ETHER=y
467# CONFIG_SMC91X is not set
468# CONFIG_DM9000 is not set
469
470#
471# Ethernet (1000 Mbit)
472#
473
474#
475# Ethernet (10000 Mbit)
476#
477
478#
479# Token Ring devices
480#
481
482#
483# Wireless LAN (non-hamradio)
484#
485# CONFIG_NET_RADIO is not set
486
487#
488# PCMCIA network device support
489#
490# CONFIG_NET_PCMCIA is not set
491
492#
493# Wan interfaces
494#
495# CONFIG_WAN is not set
496# CONFIG_PPP is not set
497# CONFIG_SLIP is not set
498# CONFIG_SHAPER is not set
499# CONFIG_NETCONSOLE is not set
500# CONFIG_NETPOLL is not set
501# CONFIG_NET_POLL_CONTROLLER is not set
502
503#
504# ISDN subsystem
505#
506# CONFIG_ISDN is not set
507
508#
509# Input device support
510#
511CONFIG_INPUT=y
512
513#
514# Userland interfaces
515#
516CONFIG_INPUT_MOUSEDEV=y
517# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
518CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
519CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
520# CONFIG_INPUT_JOYDEV is not set
521# CONFIG_INPUT_TSDEV is not set
522# CONFIG_INPUT_EVDEV is not set
523# CONFIG_INPUT_EVBUG is not set
524
525#
526# Input Device Drivers
527#
528# CONFIG_INPUT_KEYBOARD is not set
529# CONFIG_INPUT_MOUSE is not set
530# CONFIG_INPUT_JOYSTICK is not set
531# CONFIG_INPUT_TOUCHSCREEN is not set
532# CONFIG_INPUT_MISC is not set
533
534#
535# Hardware I/O ports
536#
537# CONFIG_SERIO is not set
538# CONFIG_GAMEPORT is not set
539
540#
541# Character devices
542#
543CONFIG_VT=y
544CONFIG_VT_CONSOLE=y
545CONFIG_HW_CONSOLE=y
546# CONFIG_SERIAL_NONSTANDARD is not set
547
548#
549# Serial drivers
550#
551# CONFIG_SERIAL_8250 is not set
552
553#
554# Non-8250 serial port support
555#
556CONFIG_SERIAL_AT91=y
557CONFIG_SERIAL_AT91_CONSOLE=y
558# CONFIG_SERIAL_AT91_TTYAT is not set
559CONFIG_SERIAL_CORE=y
560CONFIG_SERIAL_CORE_CONSOLE=y
561CONFIG_UNIX98_PTYS=y
562CONFIG_LEGACY_PTYS=y
563CONFIG_LEGACY_PTY_COUNT=256
564
565#
566# IPMI
567#
568# CONFIG_IPMI_HANDLER is not set
569
570#
571# Watchdog Cards
572#
573CONFIG_WATCHDOG=y
574CONFIG_WATCHDOG_NOWAYOUT=y
575
576#
577# Watchdog Device Drivers
578#
579# CONFIG_SOFT_WATCHDOG is not set
580CONFIG_AT91_WATCHDOG=y
581
582#
583# USB-based Watchdog Cards
584#
585# CONFIG_USBPCWATCHDOG is not set
586# CONFIG_NVRAM is not set
587# CONFIG_RTC is not set
588CONFIG_AT91_RTC=y
589# CONFIG_DTLK is not set
590# CONFIG_R3964 is not set
591
592#
593# Ftape, the floppy tape device driver
594#
595
596#
597# PCMCIA character devices
598#
599# CONFIG_SYNCLINK_CS is not set
600# CONFIG_CARDMAN_4000 is not set
601# CONFIG_CARDMAN_4040 is not set
602# CONFIG_RAW_DRIVER is not set
603
604#
605# TPM devices
606#
607# CONFIG_TCG_TPM is not set
608# CONFIG_TELCLOCK is not set
609CONFIG_AT91_SPI=y
610CONFIG_AT91_SPIDEV=y
611
612#
613# I2C support
614#
615CONFIG_I2C=y
616CONFIG_I2C_CHARDEV=y
617
618#
619# I2C Algorithms
620#
621# CONFIG_I2C_ALGOBIT is not set
622# CONFIG_I2C_ALGOPCF is not set
623# CONFIG_I2C_ALGOPCA is not set
624
625#
626# I2C Hardware Bus support
627#
628CONFIG_I2C_AT91=y
629# CONFIG_I2C_PARPORT_LIGHT is not set
630# CONFIG_I2C_STUB is not set
631# CONFIG_I2C_PCA_ISA is not set
632
633#
634# Miscellaneous I2C Chip support
635#
636# CONFIG_SENSORS_DS1337 is not set
637# CONFIG_SENSORS_DS1374 is not set
638# CONFIG_SENSORS_EEPROM is not set
639# CONFIG_SENSORS_PCF8574 is not set
640# CONFIG_SENSORS_PCA9539 is not set
641# CONFIG_SENSORS_PCF8591 is not set
642# CONFIG_SENSORS_RTC8564 is not set
643# CONFIG_SENSORS_MAX6875 is not set
644# CONFIG_RTC_X1205_I2C is not set
645# CONFIG_I2C_DEBUG_CORE is not set
646# CONFIG_I2C_DEBUG_ALGO is not set
647# CONFIG_I2C_DEBUG_BUS is not set
648# CONFIG_I2C_DEBUG_CHIP is not set
649
650#
651# Hardware Monitoring support
652#
653CONFIG_HWMON=y
654# CONFIG_HWMON_VID is not set
655# CONFIG_SENSORS_ADM1021 is not set
656# CONFIG_SENSORS_ADM1025 is not set
657# CONFIG_SENSORS_ADM1026 is not set
658# CONFIG_SENSORS_ADM1031 is not set
659# CONFIG_SENSORS_ADM9240 is not set
660# CONFIG_SENSORS_ASB100 is not set
661# CONFIG_SENSORS_ATXP1 is not set
662# CONFIG_SENSORS_DS1621 is not set
663# CONFIG_SENSORS_FSCHER is not set
664# CONFIG_SENSORS_FSCPOS is not set
665# CONFIG_SENSORS_GL518SM is not set
666# CONFIG_SENSORS_GL520SM is not set
667# CONFIG_SENSORS_IT87 is not set
668# CONFIG_SENSORS_LM63 is not set
669# CONFIG_SENSORS_LM75 is not set
670# CONFIG_SENSORS_LM77 is not set
671# CONFIG_SENSORS_LM78 is not set
672# CONFIG_SENSORS_LM80 is not set
673# CONFIG_SENSORS_LM83 is not set
674# CONFIG_SENSORS_LM85 is not set
675# CONFIG_SENSORS_LM87 is not set
676# CONFIG_SENSORS_LM90 is not set
677# CONFIG_SENSORS_LM92 is not set
678# CONFIG_SENSORS_MAX1619 is not set
679# CONFIG_SENSORS_PC87360 is not set
680# CONFIG_SENSORS_SMSC47M1 is not set
681# CONFIG_SENSORS_SMSC47B397 is not set
682# CONFIG_SENSORS_W83781D is not set
683# CONFIG_SENSORS_W83792D is not set
684# CONFIG_SENSORS_W83L785TS is not set
685# CONFIG_SENSORS_W83627HF is not set
686# CONFIG_SENSORS_W83627EHF is not set
687# CONFIG_HWMON_DEBUG_CHIP is not set
688
689#
690# Misc devices
691#
692
693#
694# Multimedia Capabilities Port drivers
695#
696
697#
698# Multimedia devices
699#
700# CONFIG_VIDEO_DEV is not set
701
702#
703# Digital Video Broadcasting Devices
704#
705# CONFIG_DVB is not set
706
707#
708# Graphics support
709#
710# CONFIG_FB is not set
711
712#
713# Console display driver support
714#
715# CONFIG_VGA_CONSOLE is not set
716CONFIG_DUMMY_CONSOLE=y
717
718#
719# Sound
720#
721# CONFIG_SOUND is not set
722
723#
724# USB support
725#
726CONFIG_USB_ARCH_HAS_HCD=y
727CONFIG_USB_ARCH_HAS_OHCI=y
728CONFIG_USB=y
729CONFIG_USB_DEBUG=y
730
731#
732# Miscellaneous USB options
733#
734CONFIG_USB_DEVICEFS=y
735# CONFIG_USB_BANDWIDTH is not set
736# CONFIG_USB_DYNAMIC_MINORS is not set
737# CONFIG_USB_OTG is not set
738
739#
740# USB Host Controller Drivers
741#
742# CONFIG_USB_ISP116X_HCD is not set
743CONFIG_USB_OHCI_HCD=y
744# CONFIG_USB_OHCI_BIG_ENDIAN is not set
745CONFIG_USB_OHCI_LITTLE_ENDIAN=y
746# CONFIG_USB_SL811_HCD is not set
747
748#
749# USB Device Class drivers
750#
751# CONFIG_USB_ACM is not set
752# CONFIG_USB_PRINTER is not set
753
754#
755# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
756#
757
758#
759# may also be needed; see USB_STORAGE Help for more information
760#
761# CONFIG_USB_STORAGE is not set
762
763#
764# USB Input Devices
765#
766# CONFIG_USB_HID is not set
767
768#
769# USB HID Boot Protocol drivers
770#
771# CONFIG_USB_KBD is not set
772# CONFIG_USB_MOUSE is not set
773# CONFIG_USB_AIPTEK is not set
774# CONFIG_USB_WACOM is not set
775# CONFIG_USB_ACECAD is not set
776# CONFIG_USB_KBTAB is not set
777# CONFIG_USB_POWERMATE is not set
778# CONFIG_USB_MTOUCH is not set
779# CONFIG_USB_ITMTOUCH is not set
780# CONFIG_USB_EGALAX is not set
781# CONFIG_USB_YEALINK is not set
782# CONFIG_USB_XPAD is not set
783# CONFIG_USB_ATI_REMOTE is not set
784# CONFIG_USB_KEYSPAN_REMOTE is not set
785# CONFIG_USB_APPLETOUCH is not set
786
787#
788# USB Imaging devices
789#
790# CONFIG_USB_MDC800 is not set
791
792#
793# USB Multimedia devices
794#
795# CONFIG_USB_DABUSB is not set
796
797#
798# Video4Linux support is needed for USB Multimedia device support
799#
800
801#
802# USB Network Adapters
803#
804# CONFIG_USB_CATC is not set
805# CONFIG_USB_KAWETH is not set
806# CONFIG_USB_PEGASUS is not set
807# CONFIG_USB_RTL8150 is not set
808# CONFIG_USB_USBNET is not set
809CONFIG_USB_MON=y
810
811#
812# USB port drivers
813#
814
815#
816# USB Serial Converter support
817#
818# CONFIG_USB_SERIAL is not set
819
820#
821# USB Miscellaneous drivers
822#
823# CONFIG_USB_EMI62 is not set
824# CONFIG_USB_EMI26 is not set
825# CONFIG_USB_AUERSWALD is not set
826# CONFIG_USB_RIO500 is not set
827# CONFIG_USB_LEGOTOWER is not set
828# CONFIG_USB_LCD is not set
829# CONFIG_USB_LED is not set
830# CONFIG_USB_CYTHERM is not set
831# CONFIG_USB_PHIDGETKIT is not set
832# CONFIG_USB_PHIDGETSERVO is not set
833# CONFIG_USB_IDMOUSE is not set
834# CONFIG_USB_LD is not set
835# CONFIG_USB_TEST is not set
836
837#
838# USB DSL modem support
839#
840
841#
842# USB Gadget Support
843#
844CONFIG_USB_GADGET=y
845# CONFIG_USB_GADGET_DEBUG_FILES is not set
846CONFIG_USB_GADGET_SELECTED=y
847# CONFIG_USB_GADGET_NET2280 is not set
848# CONFIG_USB_GADGET_PXA2XX is not set
849# CONFIG_USB_GADGET_GOKU is not set
850# CONFIG_USB_GADGET_LH7A40X is not set
851# CONFIG_USB_GADGET_OMAP is not set
852CONFIG_USB_GADGET_AT91=y
853CONFIG_USB_AT91=y
854# CONFIG_USB_GADGET_DUMMY_HCD is not set
855# CONFIG_USB_GADGET_DUALSPEED is not set
856# CONFIG_USB_ZERO is not set
857# CONFIG_USB_ETH is not set
858# CONFIG_USB_GADGETFS is not set
859# CONFIG_USB_FILE_STORAGE is not set
860# CONFIG_USB_G_SERIAL is not set
861
862#
863# MMC/SD Card support
864#
865CONFIG_MMC=y
866# CONFIG_MMC_DEBUG is not set
867CONFIG_MMC_BLOCK=y
868# CONFIG_MMC_WBSD is not set
869CONFIG_MMC_AT91RM9200=y
870
871#
872# File systems
873#
874CONFIG_EXT2_FS=y
875# CONFIG_EXT2_FS_XATTR is not set
876# CONFIG_EXT2_FS_XIP is not set
877# CONFIG_EXT3_FS is not set
878# CONFIG_JBD is not set
879# CONFIG_REISERFS_FS is not set
880# CONFIG_JFS_FS is not set
881# CONFIG_FS_POSIX_ACL is not set
882# CONFIG_XFS_FS is not set
883# CONFIG_MINIX_FS is not set
884# CONFIG_ROMFS_FS is not set
885CONFIG_INOTIFY=y
886# CONFIG_QUOTA is not set
887CONFIG_DNOTIFY=y
888# CONFIG_AUTOFS_FS is not set
889# CONFIG_AUTOFS4_FS is not set
890# CONFIG_FUSE_FS is not set
891
892#
893# CD-ROM/DVD Filesystems
894#
895# CONFIG_ISO9660_FS is not set
896# CONFIG_UDF_FS is not set
897
898#
899# DOS/FAT/NT Filesystems
900#
901# CONFIG_MSDOS_FS is not set
902# CONFIG_VFAT_FS is not set
903# CONFIG_NTFS_FS is not set
904
905#
906# Pseudo filesystems
907#
908CONFIG_PROC_FS=y
909CONFIG_SYSFS=y
910CONFIG_TMPFS=y
911# CONFIG_HUGETLB_PAGE is not set
912CONFIG_RAMFS=y
913# CONFIG_RELAYFS_FS is not set
914
915#
916# Miscellaneous filesystems
917#
918# CONFIG_ADFS_FS is not set
919# CONFIG_AFFS_FS is not set
920# CONFIG_HFS_FS is not set
921# CONFIG_HFSPLUS_FS is not set
922# CONFIG_BEFS_FS is not set
923# CONFIG_BFS_FS is not set
924# CONFIG_EFS_FS is not set
925# CONFIG_JFFS_FS is not set
926# CONFIG_JFFS2_FS is not set
927CONFIG_CRAMFS=y
928# CONFIG_VXFS_FS is not set
929# CONFIG_HPFS_FS is not set
930# CONFIG_QNX4FS_FS is not set
931# CONFIG_SYSV_FS is not set
932# CONFIG_UFS_FS is not set
933
934#
935# Network File Systems
936#
937# CONFIG_NFS_FS is not set
938# CONFIG_NFSD is not set
939# CONFIG_SMB_FS is not set
940# CONFIG_CIFS is not set
941# CONFIG_NCP_FS is not set
942# CONFIG_CODA_FS is not set
943# CONFIG_AFS_FS is not set
944# CONFIG_9P_FS is not set
945
946#
947# Partition Types
948#
949# CONFIG_PARTITION_ADVANCED is not set
950CONFIG_MSDOS_PARTITION=y
951
952#
953# Native Language Support
954#
955# CONFIG_NLS is not set
956
957#
958# Profiling support
959#
960# CONFIG_PROFILING is not set
961
962#
963# Kernel hacking
964#
965# CONFIG_PRINTK_TIME is not set
966CONFIG_DEBUG_KERNEL=y
967# CONFIG_MAGIC_SYSRQ is not set
968CONFIG_LOG_BUF_SHIFT=14
969CONFIG_DETECT_SOFTLOCKUP=y
970# CONFIG_SCHEDSTATS is not set
971# CONFIG_DEBUG_SLAB is not set
972# CONFIG_DEBUG_SPINLOCK is not set
973# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
974# CONFIG_DEBUG_KOBJECT is not set
975CONFIG_DEBUG_BUGVERBOSE=y
976# CONFIG_DEBUG_INFO is not set
977# CONFIG_DEBUG_FS is not set
978# CONFIG_DEBUG_VM is not set
979CONFIG_FRAME_POINTER=y
980# CONFIG_RCU_TORTURE_TEST is not set
981CONFIG_DEBUG_USER=y
982# CONFIG_DEBUG_WAITQ is not set
983# CONFIG_DEBUG_ERRORS is not set
984CONFIG_DEBUG_LL=y
985# CONFIG_DEBUG_ICEDCC is not set
986
987#
988# Security options
989#
990# CONFIG_KEYS is not set
991# CONFIG_SECURITY is not set
992
993#
994# Cryptographic options
995#
996# CONFIG_CRYPTO is not set
997
998#
999# Hardware crypto devices
1000#
1001
1002#
1003# Library routines
1004#
1005# CONFIG_CRC_CCITT is not set
1006# CONFIG_CRC16 is not set
1007CONFIG_CRC32=y
1008# CONFIG_LIBCRC32C is not set
1009CONFIG_ZLIB_INFLATE=y
diff --git a/arch/arm/configs/at91rm9200ek_defconfig b/arch/arm/configs/at91rm9200ek_defconfig
new file mode 100644
index 000000000000..20838ccf1da7
--- /dev/null
+++ b/arch/arm/configs/at91rm9200ek_defconfig
@@ -0,0 +1,998 @@
1#
2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.15
4# Mon Jan 9 20:57:31 2006
5#
6CONFIG_ARM=y
7CONFIG_MMU=y
8CONFIG_UID16=y
9CONFIG_RWSEM_GENERIC_SPINLOCK=y
10CONFIG_GENERIC_CALIBRATE_DELAY=y
11
12#
13# Code maturity level options
14#
15CONFIG_EXPERIMENTAL=y
16CONFIG_CLEAN_COMPILE=y
17CONFIG_BROKEN_ON_SMP=y
18CONFIG_INIT_ENV_ARG_LIMIT=32
19
20#
21# General setup
22#
23CONFIG_LOCALVERSION=""
24# CONFIG_LOCALVERSION_AUTO is not set
25# CONFIG_SWAP is not set
26CONFIG_SYSVIPC=y
27# CONFIG_POSIX_MQUEUE is not set
28# CONFIG_BSD_PROCESS_ACCT is not set
29CONFIG_SYSCTL=y
30# CONFIG_AUDIT is not set
31CONFIG_HOTPLUG=y
32CONFIG_KOBJECT_UEVENT=y
33# CONFIG_IKCONFIG is not set
34CONFIG_INITRAMFS_SOURCE=""
35CONFIG_CC_OPTIMIZE_FOR_SIZE=y
36# CONFIG_EMBEDDED is not set
37CONFIG_KALLSYMS=y
38# CONFIG_KALLSYMS_ALL is not set
39# CONFIG_KALLSYMS_EXTRA_PASS is not set
40CONFIG_PRINTK=y
41CONFIG_BUG=y
42CONFIG_BASE_FULL=y
43CONFIG_FUTEX=y
44CONFIG_EPOLL=y
45CONFIG_SHMEM=y
46CONFIG_CC_ALIGN_FUNCTIONS=0
47CONFIG_CC_ALIGN_LABELS=0
48CONFIG_CC_ALIGN_LOOPS=0
49CONFIG_CC_ALIGN_JUMPS=0
50# CONFIG_TINY_SHMEM is not set
51CONFIG_BASE_SMALL=0
52
53#
54# Loadable module support
55#
56CONFIG_MODULES=y
57CONFIG_MODULE_UNLOAD=y
58# CONFIG_MODULE_FORCE_UNLOAD is not set
59CONFIG_OBSOLETE_MODPARM=y
60# CONFIG_MODVERSIONS is not set
61# CONFIG_MODULE_SRCVERSION_ALL is not set
62CONFIG_KMOD=y
63
64#
65# Block layer
66#
67
68#
69# IO Schedulers
70#
71CONFIG_IOSCHED_NOOP=y
72CONFIG_IOSCHED_AS=y
73# CONFIG_IOSCHED_DEADLINE is not set
74# CONFIG_IOSCHED_CFQ is not set
75CONFIG_DEFAULT_AS=y
76# CONFIG_DEFAULT_DEADLINE is not set
77# CONFIG_DEFAULT_CFQ is not set
78# CONFIG_DEFAULT_NOOP is not set
79CONFIG_DEFAULT_IOSCHED="anticipatory"
80
81#
82# System Type
83#
84# CONFIG_ARCH_CLPS7500 is not set
85# CONFIG_ARCH_CLPS711X is not set
86# CONFIG_ARCH_CO285 is not set
87# CONFIG_ARCH_EBSA110 is not set
88# CONFIG_ARCH_CAMELOT is not set
89# CONFIG_ARCH_FOOTBRIDGE is not set
90# CONFIG_ARCH_INTEGRATOR is not set
91# CONFIG_ARCH_IOP3XX is not set
92# CONFIG_ARCH_IXP4XX is not set
93# CONFIG_ARCH_IXP2000 is not set
94# CONFIG_ARCH_L7200 is not set
95# CONFIG_ARCH_PXA is not set
96# CONFIG_ARCH_RPC is not set
97# CONFIG_ARCH_SA1100 is not set
98# CONFIG_ARCH_S3C2410 is not set
99# CONFIG_ARCH_SHARK is not set
100# CONFIG_ARCH_LH7A40X is not set
101# CONFIG_ARCH_OMAP is not set
102# CONFIG_ARCH_VERSATILE is not set
103# CONFIG_ARCH_REALVIEW is not set
104# CONFIG_ARCH_IMX is not set
105# CONFIG_ARCH_H720X is not set
106# CONFIG_ARCH_AAEC2000 is not set
107CONFIG_ARCH_AT91RM9200=y
108
109#
110# AT91RM9200 Implementations
111#
112
113#
114# AT91RM9200 Board Type
115#
116# CONFIG_ARCH_AT91RM9200DK is not set
117CONFIG_MACH_AT91RM9200EK=y
118# CONFIG_MACH_CSB337 is not set
119# CONFIG_MACH_CSB637 is not set
120# CONFIG_MACH_CARMEVA is not set
121# CONFIG_MACH_KB9200 is not set
122# CONFIG_MACH_ATEB9200 is not set
123
124#
125# AT91RM9200 Feature Selections
126#
127CONFIG_AT91_PROGRAMMABLE_CLOCKS=y
128
129#
130# Processor Type
131#
132CONFIG_CPU_32=y
133CONFIG_CPU_ARM920T=y
134CONFIG_CPU_32v4=y
135CONFIG_CPU_ABRT_EV4T=y
136CONFIG_CPU_CACHE_V4WT=y
137CONFIG_CPU_CACHE_VIVT=y
138CONFIG_CPU_COPY_V4WB=y
139CONFIG_CPU_TLB_V4WBI=y
140
141#
142# Processor Features
143#
144# CONFIG_ARM_THUMB is not set
145# CONFIG_CPU_ICACHE_DISABLE is not set
146# CONFIG_CPU_DCACHE_DISABLE is not set
147# CONFIG_CPU_DCACHE_WRITETHROUGH is not set
148
149#
150# Bus support
151#
152CONFIG_ISA_DMA_API=y
153
154#
155# PCCARD (PCMCIA/CardBus) support
156#
157# CONFIG_PCCARD is not set
158
159#
160# Kernel Features
161#
162# CONFIG_PREEMPT is not set
163# CONFIG_NO_IDLE_HZ is not set
164# CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set
165CONFIG_SELECT_MEMORY_MODEL=y
166CONFIG_FLATMEM_MANUAL=y
167# CONFIG_DISCONTIGMEM_MANUAL is not set
168# CONFIG_SPARSEMEM_MANUAL is not set
169CONFIG_FLATMEM=y
170CONFIG_FLAT_NODE_MEM_MAP=y
171# CONFIG_SPARSEMEM_STATIC is not set
172CONFIG_SPLIT_PTLOCK_CPUS=4096
173CONFIG_LEDS=y
174CONFIG_LEDS_TIMER=y
175CONFIG_LEDS_CPU=y
176CONFIG_ALIGNMENT_TRAP=y
177
178#
179# Boot options
180#
181CONFIG_ZBOOT_ROM_TEXT=0x0
182CONFIG_ZBOOT_ROM_BSS=0x0
183CONFIG_CMDLINE="mem=32M console=ttyS0,115200 initrd=0x20410000,3145728 root=/dev/ram0 rw"
184# CONFIG_XIP_KERNEL is not set
185
186#
187# Floating point emulation
188#
189
190#
191# At least one emulation must be selected
192#
193CONFIG_FPE_NWFPE=y
194# CONFIG_FPE_NWFPE_XP is not set
195# CONFIG_FPE_FASTFPE is not set
196
197#
198# Userspace binary formats
199#
200CONFIG_BINFMT_ELF=y
201# CONFIG_BINFMT_AOUT is not set
202# CONFIG_BINFMT_MISC is not set
203# CONFIG_ARTHUR is not set
204
205#
206# Power management options
207#
208# CONFIG_PM is not set
209
210#
211# Networking
212#
213CONFIG_NET=y
214
215#
216# Networking options
217#
218CONFIG_PACKET=y
219# CONFIG_PACKET_MMAP is not set
220CONFIG_UNIX=y
221# CONFIG_NET_KEY is not set
222CONFIG_INET=y
223# CONFIG_IP_MULTICAST is not set
224# CONFIG_IP_ADVANCED_ROUTER is not set
225CONFIG_IP_FIB_HASH=y
226CONFIG_IP_PNP=y
227# CONFIG_IP_PNP_DHCP is not set
228CONFIG_IP_PNP_BOOTP=y
229# CONFIG_IP_PNP_RARP is not set
230# CONFIG_NET_IPIP is not set
231# CONFIG_NET_IPGRE is not set
232# CONFIG_ARPD is not set
233# CONFIG_SYN_COOKIES is not set
234# CONFIG_INET_AH is not set
235# CONFIG_INET_ESP is not set
236# CONFIG_INET_IPCOMP is not set
237# CONFIG_INET_TUNNEL is not set
238CONFIG_INET_DIAG=y
239CONFIG_INET_TCP_DIAG=y
240# CONFIG_TCP_CONG_ADVANCED is not set
241CONFIG_TCP_CONG_BIC=y
242# CONFIG_IPV6 is not set
243# CONFIG_NETFILTER is not set
244
245#
246# DCCP Configuration (EXPERIMENTAL)
247#
248# CONFIG_IP_DCCP is not set
249
250#
251# SCTP Configuration (EXPERIMENTAL)
252#
253# CONFIG_IP_SCTP is not set
254# CONFIG_ATM is not set
255# CONFIG_BRIDGE is not set
256# CONFIG_VLAN_8021Q is not set
257# CONFIG_DECNET is not set
258# CONFIG_LLC2 is not set
259# CONFIG_IPX is not set
260# CONFIG_ATALK is not set
261# CONFIG_X25 is not set
262# CONFIG_LAPB is not set
263# CONFIG_NET_DIVERT is not set
264# CONFIG_ECONET is not set
265# CONFIG_WAN_ROUTER is not set
266
267#
268# QoS and/or fair queueing
269#
270# CONFIG_NET_SCHED is not set
271
272#
273# Network testing
274#
275# CONFIG_NET_PKTGEN is not set
276# CONFIG_HAMRADIO is not set
277# CONFIG_IRDA is not set
278# CONFIG_BT is not set
279# CONFIG_IEEE80211 is not set
280
281#
282# Device Drivers
283#
284
285#
286# Generic Driver Options
287#
288CONFIG_STANDALONE=y
289CONFIG_PREVENT_FIRMWARE_BUILD=y
290# CONFIG_FW_LOADER is not set
291# CONFIG_DEBUG_DRIVER is not set
292
293#
294# Connector - unified userspace <-> kernelspace linker
295#
296# CONFIG_CONNECTOR is not set
297
298#
299# Memory Technology Devices (MTD)
300#
301CONFIG_MTD=y
302# CONFIG_MTD_DEBUG is not set
303# CONFIG_MTD_CONCAT is not set
304CONFIG_MTD_PARTITIONS=y
305# CONFIG_MTD_REDBOOT_PARTS is not set
306CONFIG_MTD_CMDLINE_PARTS=y
307# CONFIG_MTD_AFS_PARTS is not set
308
309#
310# User Modules And Translation Layers
311#
312CONFIG_MTD_CHAR=y
313CONFIG_MTD_BLOCK=y
314# CONFIG_FTL is not set
315# CONFIG_NFTL is not set
316# CONFIG_INFTL is not set
317# CONFIG_RFD_FTL is not set
318
319#
320# RAM/ROM/Flash chip drivers
321#
322CONFIG_MTD_CFI=y
323CONFIG_MTD_JEDECPROBE=y
324CONFIG_MTD_GEN_PROBE=y
325# CONFIG_MTD_CFI_ADV_OPTIONS is not set
326CONFIG_MTD_MAP_BANK_WIDTH_1=y
327CONFIG_MTD_MAP_BANK_WIDTH_2=y
328CONFIG_MTD_MAP_BANK_WIDTH_4=y
329# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
330# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
331# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
332CONFIG_MTD_CFI_I1=y
333CONFIG_MTD_CFI_I2=y
334# CONFIG_MTD_CFI_I4 is not set
335# CONFIG_MTD_CFI_I8 is not set
336# CONFIG_MTD_CFI_INTELEXT is not set
337CONFIG_MTD_CFI_AMDSTD=y
338CONFIG_MTD_CFI_AMDSTD_RETRY=0
339# CONFIG_MTD_CFI_STAA is not set
340CONFIG_MTD_CFI_UTIL=y
341# CONFIG_MTD_RAM is not set
342# CONFIG_MTD_ROM is not set
343# CONFIG_MTD_ABSENT is not set
344# CONFIG_MTD_XIP is not set
345
346#
347# Mapping drivers for chip access
348#
349# CONFIG_MTD_COMPLEX_MAPPINGS is not set
350CONFIG_MTD_PHYSMAP=y
351CONFIG_MTD_PHYSMAP_START=0x10000000
352CONFIG_MTD_PHYSMAP_LEN=0x800000
353CONFIG_MTD_PHYSMAP_BANKWIDTH=2
354# CONFIG_MTD_ARM_INTEGRATOR is not set
355# CONFIG_MTD_IMPA7 is not set
356# CONFIG_MTD_PLATRAM is not set
357
358#
359# Self-contained MTD device drivers
360#
361# CONFIG_MTD_SLRAM is not set
362# CONFIG_MTD_PHRAM is not set
363# CONFIG_MTD_MTDRAM is not set
364# CONFIG_MTD_BLKMTD is not set
365# CONFIG_MTD_BLOCK2MTD is not set
366
367#
368# Disk-On-Chip Device Drivers
369#
370# CONFIG_MTD_DOC2000 is not set
371# CONFIG_MTD_DOC2001 is not set
372# CONFIG_MTD_DOC2001PLUS is not set
373CONFIG_MTD_AT91_DATAFLASH=y
374CONFIG_MTD_AT91_DATAFLASH_CARD=y
375
376#
377# NAND Flash Device Drivers
378#
379# CONFIG_MTD_NAND is not set
380
381#
382# OneNAND Flash Device Drivers
383#
384# CONFIG_MTD_ONENAND is not set
385
386#
387# Parallel port support
388#
389# CONFIG_PARPORT is not set
390
391#
392# Plug and Play support
393#
394
395#
396# Block devices
397#
398# CONFIG_BLK_DEV_COW_COMMON is not set
399# CONFIG_BLK_DEV_LOOP is not set
400# CONFIG_BLK_DEV_NBD is not set
401# CONFIG_BLK_DEV_UB is not set
402CONFIG_BLK_DEV_RAM=y
403CONFIG_BLK_DEV_RAM_COUNT=16
404CONFIG_BLK_DEV_RAM_SIZE=8192
405CONFIG_BLK_DEV_INITRD=y
406# CONFIG_CDROM_PKTCDVD is not set
407# CONFIG_ATA_OVER_ETH is not set
408
409#
410# SCSI device support
411#
412# CONFIG_RAID_ATTRS is not set
413# CONFIG_SCSI is not set
414
415#
416# Multi-device support (RAID and LVM)
417#
418# CONFIG_MD is not set
419
420#
421# Fusion MPT device support
422#
423# CONFIG_FUSION is not set
424
425#
426# IEEE 1394 (FireWire) support
427#
428
429#
430# I2O device support
431#
432
433#
434# Network device support
435#
436CONFIG_NETDEVICES=y
437# CONFIG_DUMMY is not set
438# CONFIG_BONDING is not set
439# CONFIG_EQUALIZER is not set
440# CONFIG_TUN is not set
441
442#
443# PHY device support
444#
445# CONFIG_PHYLIB is not set
446
447#
448# Ethernet (10 or 100Mbit)
449#
450CONFIG_NET_ETHERNET=y
451CONFIG_MII=y
452CONFIG_ARM_AT91_ETHER=y
453# CONFIG_SMC91X is not set
454# CONFIG_DM9000 is not set
455
456#
457# Ethernet (1000 Mbit)
458#
459
460#
461# Ethernet (10000 Mbit)
462#
463
464#
465# Token Ring devices
466#
467
468#
469# Wireless LAN (non-hamradio)
470#
471# CONFIG_NET_RADIO is not set
472
473#
474# Wan interfaces
475#
476# CONFIG_WAN is not set
477# CONFIG_PPP is not set
478# CONFIG_SLIP is not set
479# CONFIG_SHAPER is not set
480# CONFIG_NETCONSOLE is not set
481# CONFIG_NETPOLL is not set
482# CONFIG_NET_POLL_CONTROLLER is not set
483
484#
485# ISDN subsystem
486#
487# CONFIG_ISDN is not set
488
489#
490# Input device support
491#
492CONFIG_INPUT=y
493
494#
495# Userland interfaces
496#
497CONFIG_INPUT_MOUSEDEV=y
498# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
499CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
500CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
501# CONFIG_INPUT_JOYDEV is not set
502# CONFIG_INPUT_TSDEV is not set
503# CONFIG_INPUT_EVDEV is not set
504# CONFIG_INPUT_EVBUG is not set
505
506#
507# Input Device Drivers
508#
509# CONFIG_INPUT_KEYBOARD is not set
510# CONFIG_INPUT_MOUSE is not set
511# CONFIG_INPUT_JOYSTICK is not set
512# CONFIG_INPUT_TOUCHSCREEN is not set
513# CONFIG_INPUT_MISC is not set
514
515#
516# Hardware I/O ports
517#
518# CONFIG_SERIO is not set
519# CONFIG_GAMEPORT is not set
520
521#
522# Character devices
523#
524CONFIG_VT=y
525CONFIG_VT_CONSOLE=y
526CONFIG_HW_CONSOLE=y
527# CONFIG_SERIAL_NONSTANDARD is not set
528
529#
530# Serial drivers
531#
532# CONFIG_SERIAL_8250 is not set
533
534#
535# Non-8250 serial port support
536#
537CONFIG_SERIAL_AT91=y
538CONFIG_SERIAL_AT91_CONSOLE=y
539# CONFIG_SERIAL_AT91_TTYAT is not set
540CONFIG_SERIAL_CORE=y
541CONFIG_SERIAL_CORE_CONSOLE=y
542CONFIG_UNIX98_PTYS=y
543CONFIG_LEGACY_PTYS=y
544CONFIG_LEGACY_PTY_COUNT=256
545
546#
547# IPMI
548#
549# CONFIG_IPMI_HANDLER is not set
550
551#
552# Watchdog Cards
553#
554CONFIG_WATCHDOG=y
555CONFIG_WATCHDOG_NOWAYOUT=y
556
557#
558# Watchdog Device Drivers
559#
560# CONFIG_SOFT_WATCHDOG is not set
561CONFIG_AT91_WATCHDOG=y
562
563#
564# USB-based Watchdog Cards
565#
566# CONFIG_USBPCWATCHDOG is not set
567# CONFIG_NVRAM is not set
568# CONFIG_RTC is not set
569CONFIG_AT91_RTC=y
570# CONFIG_DTLK is not set
571# CONFIG_R3964 is not set
572
573#
574# Ftape, the floppy tape device driver
575#
576# CONFIG_RAW_DRIVER is not set
577
578#
579# TPM devices
580#
581# CONFIG_TCG_TPM is not set
582# CONFIG_TELCLOCK is not set
583CONFIG_AT91_SPI=y
584CONFIG_AT91_SPIDEV=y
585
586#
587# I2C support
588#
589CONFIG_I2C=y
590CONFIG_I2C_CHARDEV=y
591
592#
593# I2C Algorithms
594#
595# CONFIG_I2C_ALGOBIT is not set
596# CONFIG_I2C_ALGOPCF is not set
597# CONFIG_I2C_ALGOPCA is not set
598
599#
600# I2C Hardware Bus support
601#
602CONFIG_I2C_AT91=y
603# CONFIG_I2C_PARPORT_LIGHT is not set
604# CONFIG_I2C_STUB is not set
605# CONFIG_I2C_PCA_ISA is not set
606
607#
608# Miscellaneous I2C Chip support
609#
610# CONFIG_SENSORS_DS1337 is not set
611# CONFIG_SENSORS_DS1374 is not set
612# CONFIG_SENSORS_EEPROM is not set
613# CONFIG_SENSORS_PCF8574 is not set
614# CONFIG_SENSORS_PCA9539 is not set
615# CONFIG_SENSORS_PCF8591 is not set
616# CONFIG_SENSORS_RTC8564 is not set
617# CONFIG_SENSORS_MAX6875 is not set
618# CONFIG_RTC_X1205_I2C is not set
619# CONFIG_I2C_DEBUG_CORE is not set
620# CONFIG_I2C_DEBUG_ALGO is not set
621# CONFIG_I2C_DEBUG_BUS is not set
622# CONFIG_I2C_DEBUG_CHIP is not set
623
624#
625# Hardware Monitoring support
626#
627CONFIG_HWMON=y
628# CONFIG_HWMON_VID is not set
629# CONFIG_SENSORS_ADM1021 is not set
630# CONFIG_SENSORS_ADM1025 is not set
631# CONFIG_SENSORS_ADM1026 is not set
632# CONFIG_SENSORS_ADM1031 is not set
633# CONFIG_SENSORS_ADM9240 is not set
634# CONFIG_SENSORS_ASB100 is not set
635# CONFIG_SENSORS_ATXP1 is not set
636# CONFIG_SENSORS_DS1621 is not set
637# CONFIG_SENSORS_FSCHER is not set
638# CONFIG_SENSORS_FSCPOS is not set
639# CONFIG_SENSORS_GL518SM is not set
640# CONFIG_SENSORS_GL520SM is not set
641# CONFIG_SENSORS_IT87 is not set
642# CONFIG_SENSORS_LM63 is not set
643# CONFIG_SENSORS_LM75 is not set
644# CONFIG_SENSORS_LM77 is not set
645# CONFIG_SENSORS_LM78 is not set
646# CONFIG_SENSORS_LM80 is not set
647# CONFIG_SENSORS_LM83 is not set
648# CONFIG_SENSORS_LM85 is not set
649# CONFIG_SENSORS_LM87 is not set
650# CONFIG_SENSORS_LM90 is not set
651# CONFIG_SENSORS_LM92 is not set
652# CONFIG_SENSORS_MAX1619 is not set
653# CONFIG_SENSORS_PC87360 is not set
654# CONFIG_SENSORS_SMSC47M1 is not set
655# CONFIG_SENSORS_SMSC47B397 is not set
656# CONFIG_SENSORS_W83781D is not set
657# CONFIG_SENSORS_W83792D is not set
658# CONFIG_SENSORS_W83L785TS is not set
659# CONFIG_SENSORS_W83627HF is not set
660# CONFIG_SENSORS_W83627EHF is not set
661# CONFIG_HWMON_DEBUG_CHIP is not set
662
663#
664# Misc devices
665#
666
667#
668# Multimedia Capabilities Port drivers
669#
670
671#
672# Multimedia devices
673#
674# CONFIG_VIDEO_DEV is not set
675
676#
677# Digital Video Broadcasting Devices
678#
679# CONFIG_DVB is not set
680
681#
682# Graphics support
683#
684CONFIG_FB=y
685CONFIG_FB_CFB_FILLRECT=y
686CONFIG_FB_CFB_COPYAREA=y
687CONFIG_FB_CFB_IMAGEBLIT=y
688# CONFIG_FB_MACMODES is not set
689# CONFIG_FB_MODE_HELPERS is not set
690# CONFIG_FB_TILEBLITTING is not set
691CONFIG_FB_S1D13XXX=y
692# CONFIG_FB_VIRTUAL is not set
693
694#
695# Console display driver support
696#
697# CONFIG_VGA_CONSOLE is not set
698CONFIG_DUMMY_CONSOLE=y
699# CONFIG_FRAMEBUFFER_CONSOLE is not set
700
701#
702# Logo configuration
703#
704# CONFIG_LOGO is not set
705# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
706
707#
708# Sound
709#
710# CONFIG_SOUND is not set
711
712#
713# USB support
714#
715CONFIG_USB_ARCH_HAS_HCD=y
716CONFIG_USB_ARCH_HAS_OHCI=y
717CONFIG_USB=y
718CONFIG_USB_DEBUG=y
719
720#
721# Miscellaneous USB options
722#
723CONFIG_USB_DEVICEFS=y
724# CONFIG_USB_BANDWIDTH is not set
725# CONFIG_USB_DYNAMIC_MINORS is not set
726# CONFIG_USB_OTG is not set
727
728#
729# USB Host Controller Drivers
730#
731# CONFIG_USB_ISP116X_HCD is not set
732CONFIG_USB_OHCI_HCD=y
733# CONFIG_USB_OHCI_BIG_ENDIAN is not set
734CONFIG_USB_OHCI_LITTLE_ENDIAN=y
735# CONFIG_USB_SL811_HCD is not set
736
737#
738# USB Device Class drivers
739#
740# CONFIG_USB_ACM is not set
741# CONFIG_USB_PRINTER is not set
742
743#
744# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
745#
746
747#
748# may also be needed; see USB_STORAGE Help for more information
749#
750# CONFIG_USB_STORAGE is not set
751
752#
753# USB Input Devices
754#
755# CONFIG_USB_HID is not set
756
757#
758# USB HID Boot Protocol drivers
759#
760# CONFIG_USB_KBD is not set
761# CONFIG_USB_MOUSE is not set
762# CONFIG_USB_AIPTEK is not set
763# CONFIG_USB_WACOM is not set
764# CONFIG_USB_ACECAD is not set
765# CONFIG_USB_KBTAB is not set
766# CONFIG_USB_POWERMATE is not set
767# CONFIG_USB_MTOUCH is not set
768# CONFIG_USB_ITMTOUCH is not set
769# CONFIG_USB_EGALAX is not set
770# CONFIG_USB_YEALINK is not set
771# CONFIG_USB_XPAD is not set
772# CONFIG_USB_ATI_REMOTE is not set
773# CONFIG_USB_KEYSPAN_REMOTE is not set
774# CONFIG_USB_APPLETOUCH is not set
775
776#
777# USB Imaging devices
778#
779# CONFIG_USB_MDC800 is not set
780
781#
782# USB Multimedia devices
783#
784# CONFIG_USB_DABUSB is not set
785
786#
787# Video4Linux support is needed for USB Multimedia device support
788#
789
790#
791# USB Network Adapters
792#
793# CONFIG_USB_CATC is not set
794# CONFIG_USB_KAWETH is not set
795# CONFIG_USB_PEGASUS is not set
796# CONFIG_USB_RTL8150 is not set
797# CONFIG_USB_USBNET is not set
798CONFIG_USB_MON=y
799
800#
801# USB port drivers
802#
803
804#
805# USB Serial Converter support
806#
807# CONFIG_USB_SERIAL is not set
808
809#
810# USB Miscellaneous drivers
811#
812# CONFIG_USB_EMI62 is not set
813# CONFIG_USB_EMI26 is not set
814# CONFIG_USB_AUERSWALD is not set
815# CONFIG_USB_RIO500 is not set
816# CONFIG_USB_LEGOTOWER is not set
817# CONFIG_USB_LCD is not set
818# CONFIG_USB_LED is not set
819# CONFIG_USB_CYTHERM is not set
820# CONFIG_USB_PHIDGETKIT is not set
821# CONFIG_USB_PHIDGETSERVO is not set
822# CONFIG_USB_IDMOUSE is not set
823# CONFIG_USB_LD is not set
824# CONFIG_USB_TEST is not set
825
826#
827# USB DSL modem support
828#
829
830#
831# USB Gadget Support
832#
833CONFIG_USB_GADGET=y
834# CONFIG_USB_GADGET_DEBUG_FILES is not set
835CONFIG_USB_GADGET_SELECTED=y
836# CONFIG_USB_GADGET_NET2280 is not set
837# CONFIG_USB_GADGET_PXA2XX is not set
838# CONFIG_USB_GADGET_GOKU is not set
839# CONFIG_USB_GADGET_LH7A40X is not set
840# CONFIG_USB_GADGET_OMAP is not set
841CONFIG_USB_GADGET_AT91=y
842CONFIG_USB_AT91=y
843# CONFIG_USB_GADGET_DUMMY_HCD is not set
844# CONFIG_USB_GADGET_DUALSPEED is not set
845# CONFIG_USB_ZERO is not set
846# CONFIG_USB_ETH is not set
847# CONFIG_USB_GADGETFS is not set
848# CONFIG_USB_FILE_STORAGE is not set
849# CONFIG_USB_G_SERIAL is not set
850
851#
852# MMC/SD Card support
853#
854CONFIG_MMC=y
855# CONFIG_MMC_DEBUG is not set
856CONFIG_MMC_BLOCK=y
857# CONFIG_MMC_WBSD is not set
858CONFIG_MMC_AT91RM9200=y
859
860#
861# File systems
862#
863CONFIG_EXT2_FS=y
864# CONFIG_EXT2_FS_XATTR is not set
865# CONFIG_EXT2_FS_XIP is not set
866# CONFIG_EXT3_FS is not set
867# CONFIG_JBD is not set
868# CONFIG_REISERFS_FS is not set
869# CONFIG_JFS_FS is not set
870# CONFIG_FS_POSIX_ACL is not set
871# CONFIG_XFS_FS is not set
872# CONFIG_MINIX_FS is not set
873# CONFIG_ROMFS_FS is not set
874CONFIG_INOTIFY=y
875# CONFIG_QUOTA is not set
876CONFIG_DNOTIFY=y
877# CONFIG_AUTOFS_FS is not set
878# CONFIG_AUTOFS4_FS is not set
879# CONFIG_FUSE_FS is not set
880
881#
882# CD-ROM/DVD Filesystems
883#
884# CONFIG_ISO9660_FS is not set
885# CONFIG_UDF_FS is not set
886
887#
888# DOS/FAT/NT Filesystems
889#
890# CONFIG_MSDOS_FS is not set
891# CONFIG_VFAT_FS is not set
892# CONFIG_NTFS_FS is not set
893
894#
895# Pseudo filesystems
896#
897CONFIG_PROC_FS=y
898CONFIG_SYSFS=y
899CONFIG_TMPFS=y
900# CONFIG_HUGETLB_PAGE is not set
901CONFIG_RAMFS=y
902# CONFIG_RELAYFS_FS is not set
903
904#
905# Miscellaneous filesystems
906#
907# CONFIG_ADFS_FS is not set
908# CONFIG_AFFS_FS is not set
909# CONFIG_HFS_FS is not set
910# CONFIG_HFSPLUS_FS is not set
911# CONFIG_BEFS_FS is not set
912# CONFIG_BFS_FS is not set
913# CONFIG_EFS_FS is not set
914# CONFIG_JFFS_FS is not set
915# CONFIG_JFFS2_FS is not set
916CONFIG_CRAMFS=y
917# CONFIG_VXFS_FS is not set
918# CONFIG_HPFS_FS is not set
919# CONFIG_QNX4FS_FS is not set
920# CONFIG_SYSV_FS is not set
921# CONFIG_UFS_FS is not set
922
923#
924# Network File Systems
925#
926# CONFIG_NFS_FS is not set
927# CONFIG_NFSD is not set
928# CONFIG_SMB_FS is not set
929# CONFIG_CIFS is not set
930# CONFIG_NCP_FS is not set
931# CONFIG_CODA_FS is not set
932# CONFIG_AFS_FS is not set
933# CONFIG_9P_FS is not set
934
935#
936# Partition Types
937#
938# CONFIG_PARTITION_ADVANCED is not set
939CONFIG_MSDOS_PARTITION=y
940
941#
942# Native Language Support
943#
944# CONFIG_NLS is not set
945
946#
947# Profiling support
948#
949# CONFIG_PROFILING is not set
950
951#
952# Kernel hacking
953#
954# CONFIG_PRINTK_TIME is not set
955CONFIG_DEBUG_KERNEL=y
956# CONFIG_MAGIC_SYSRQ is not set
957CONFIG_LOG_BUF_SHIFT=14
958CONFIG_DETECT_SOFTLOCKUP=y
959# CONFIG_SCHEDSTATS is not set
960# CONFIG_DEBUG_SLAB is not set
961# CONFIG_DEBUG_SPINLOCK is not set
962# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
963# CONFIG_DEBUG_KOBJECT is not set
964CONFIG_DEBUG_BUGVERBOSE=y
965# CONFIG_DEBUG_INFO is not set
966# CONFIG_DEBUG_FS is not set
967# CONFIG_DEBUG_VM is not set
968CONFIG_FRAME_POINTER=y
969# CONFIG_RCU_TORTURE_TEST is not set
970CONFIG_DEBUG_USER=y
971# CONFIG_DEBUG_WAITQ is not set
972# CONFIG_DEBUG_ERRORS is not set
973CONFIG_DEBUG_LL=y
974# CONFIG_DEBUG_ICEDCC is not set
975
976#
977# Security options
978#
979# CONFIG_KEYS is not set
980# CONFIG_SECURITY is not set
981
982#
983# Cryptographic options
984#
985# CONFIG_CRYPTO is not set
986
987#
988# Hardware crypto devices
989#
990
991#
992# Library routines
993#
994# CONFIG_CRC_CCITT is not set
995# CONFIG_CRC16 is not set
996CONFIG_CRC32=y
997# CONFIG_LIBCRC32C is not set
998CONFIG_ZLIB_INFLATE=y
diff --git a/arch/arm/configs/csb337_defconfig b/arch/arm/configs/csb337_defconfig
new file mode 100644
index 000000000000..885a3184830a
--- /dev/null
+++ b/arch/arm/configs/csb337_defconfig
@@ -0,0 +1,1136 @@
1#
2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.15
4# Mon Jan 9 21:51:31 2006
5#
6CONFIG_ARM=y
7CONFIG_MMU=y
8CONFIG_UID16=y
9CONFIG_RWSEM_GENERIC_SPINLOCK=y
10CONFIG_GENERIC_CALIBRATE_DELAY=y
11
12#
13# Code maturity level options
14#
15CONFIG_EXPERIMENTAL=y
16CONFIG_CLEAN_COMPILE=y
17CONFIG_BROKEN_ON_SMP=y
18CONFIG_INIT_ENV_ARG_LIMIT=32
19
20#
21# General setup
22#
23CONFIG_LOCALVERSION=""
24CONFIG_LOCALVERSION_AUTO=y
25# CONFIG_SWAP is not set
26CONFIG_SYSVIPC=y
27# CONFIG_POSIX_MQUEUE is not set
28# CONFIG_BSD_PROCESS_ACCT is not set
29CONFIG_SYSCTL=y
30# CONFIG_AUDIT is not set
31CONFIG_HOTPLUG=y
32CONFIG_KOBJECT_UEVENT=y
33# CONFIG_IKCONFIG is not set
34CONFIG_INITRAMFS_SOURCE=""
35CONFIG_CC_OPTIMIZE_FOR_SIZE=y
36# CONFIG_EMBEDDED is not set
37CONFIG_KALLSYMS=y
38# CONFIG_KALLSYMS_ALL is not set
39# CONFIG_KALLSYMS_EXTRA_PASS is not set
40CONFIG_PRINTK=y
41CONFIG_BUG=y
42CONFIG_BASE_FULL=y
43CONFIG_FUTEX=y
44CONFIG_EPOLL=y
45CONFIG_SHMEM=y
46CONFIG_CC_ALIGN_FUNCTIONS=0
47CONFIG_CC_ALIGN_LABELS=0
48CONFIG_CC_ALIGN_LOOPS=0
49CONFIG_CC_ALIGN_JUMPS=0
50# CONFIG_TINY_SHMEM is not set
51CONFIG_BASE_SMALL=0
52
53#
54# Loadable module support
55#
56CONFIG_MODULES=y
57CONFIG_MODULE_UNLOAD=y
58# CONFIG_MODULE_FORCE_UNLOAD is not set
59CONFIG_OBSOLETE_MODPARM=y
60# CONFIG_MODVERSIONS is not set
61# CONFIG_MODULE_SRCVERSION_ALL is not set
62CONFIG_KMOD=y
63
64#
65# Block layer
66#
67
68#
69# IO Schedulers
70#
71CONFIG_IOSCHED_NOOP=y
72CONFIG_IOSCHED_AS=y
73CONFIG_IOSCHED_DEADLINE=y
74CONFIG_IOSCHED_CFQ=y
75CONFIG_DEFAULT_AS=y
76# CONFIG_DEFAULT_DEADLINE is not set
77# CONFIG_DEFAULT_CFQ is not set
78# CONFIG_DEFAULT_NOOP is not set
79CONFIG_DEFAULT_IOSCHED="anticipatory"
80
81#
82# System Type
83#
84# CONFIG_ARCH_CLPS7500 is not set
85# CONFIG_ARCH_CLPS711X is not set
86# CONFIG_ARCH_CO285 is not set
87# CONFIG_ARCH_EBSA110 is not set
88# CONFIG_ARCH_CAMELOT is not set
89# CONFIG_ARCH_FOOTBRIDGE is not set
90# CONFIG_ARCH_INTEGRATOR is not set
91# CONFIG_ARCH_IOP3XX is not set
92# CONFIG_ARCH_IXP4XX is not set
93# CONFIG_ARCH_IXP2000 is not set
94# CONFIG_ARCH_L7200 is not set
95# CONFIG_ARCH_PXA is not set
96# CONFIG_ARCH_RPC is not set
97# CONFIG_ARCH_SA1100 is not set
98# CONFIG_ARCH_S3C2410 is not set
99# CONFIG_ARCH_SHARK is not set
100# CONFIG_ARCH_LH7A40X is not set
101# CONFIG_ARCH_OMAP is not set
102# CONFIG_ARCH_VERSATILE is not set
103# CONFIG_ARCH_REALVIEW is not set
104# CONFIG_ARCH_IMX is not set
105# CONFIG_ARCH_H720X is not set
106# CONFIG_ARCH_AAEC2000 is not set
107CONFIG_ARCH_AT91RM9200=y
108
109#
110# AT91RM9200 Implementations
111#
112
113#
114# AT91RM9200 Board Type
115#
116# CONFIG_ARCH_AT91RM9200DK is not set
117# CONFIG_MACH_AT91RM9200EK is not set
118CONFIG_MACH_CSB337=y
119# CONFIG_MACH_CSB637 is not set
120# CONFIG_MACH_CARMEVA is not set
121# CONFIG_MACH_KB9200 is not set
122# CONFIG_MACH_ATEB9200 is not set
123
124#
125# AT91RM9200 Feature Selections
126#
127CONFIG_AT91_PROGRAMMABLE_CLOCKS=y
128
129#
130# Processor Type
131#
132CONFIG_CPU_32=y
133CONFIG_CPU_ARM920T=y
134CONFIG_CPU_32v4=y
135CONFIG_CPU_ABRT_EV4T=y
136CONFIG_CPU_CACHE_V4WT=y
137CONFIG_CPU_CACHE_VIVT=y
138CONFIG_CPU_COPY_V4WB=y
139CONFIG_CPU_TLB_V4WBI=y
140
141#
142# Processor Features
143#
144# CONFIG_ARM_THUMB is not set
145# CONFIG_CPU_ICACHE_DISABLE is not set
146# CONFIG_CPU_DCACHE_DISABLE is not set
147# CONFIG_CPU_DCACHE_WRITETHROUGH is not set
148
149#
150# Bus support
151#
152CONFIG_ISA_DMA_API=y
153
154#
155# PCCARD (PCMCIA/CardBus) support
156#
157CONFIG_PCCARD=y
158# CONFIG_PCMCIA_DEBUG is not set
159CONFIG_PCMCIA=y
160CONFIG_PCMCIA_LOAD_CIS=y
161CONFIG_PCMCIA_IOCTL=y
162
163#
164# PC-card bridges
165#
166CONFIG_AT91_CF=y
167
168#
169# Kernel Features
170#
171# CONFIG_PREEMPT is not set
172# CONFIG_NO_IDLE_HZ is not set
173# CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set
174CONFIG_SELECT_MEMORY_MODEL=y
175CONFIG_FLATMEM_MANUAL=y
176# CONFIG_DISCONTIGMEM_MANUAL is not set
177# CONFIG_SPARSEMEM_MANUAL is not set
178CONFIG_FLATMEM=y
179CONFIG_FLAT_NODE_MEM_MAP=y
180# CONFIG_SPARSEMEM_STATIC is not set
181CONFIG_SPLIT_PTLOCK_CPUS=4096
182CONFIG_LEDS=y
183CONFIG_LEDS_TIMER=y
184CONFIG_LEDS_CPU=y
185CONFIG_ALIGNMENT_TRAP=y
186
187#
188# Boot options
189#
190CONFIG_ZBOOT_ROM_TEXT=0x0
191CONFIG_ZBOOT_ROM_BSS=0x0
192CONFIG_CMDLINE="mem=32M console=ttyS0,38400 initrd=0x20410000,3145728 root=/dev/ram0 rw"
193# CONFIG_XIP_KERNEL is not set
194
195#
196# Floating point emulation
197#
198
199#
200# At least one emulation must be selected
201#
202CONFIG_FPE_NWFPE=y
203# CONFIG_FPE_NWFPE_XP is not set
204# CONFIG_FPE_FASTFPE is not set
205
206#
207# Userspace binary formats
208#
209CONFIG_BINFMT_ELF=y
210# CONFIG_BINFMT_AOUT is not set
211# CONFIG_BINFMT_MISC is not set
212# CONFIG_ARTHUR is not set
213
214#
215# Power management options
216#
217# CONFIG_PM is not set
218
219#
220# Networking
221#
222CONFIG_NET=y
223
224#
225# Networking options
226#
227CONFIG_PACKET=y
228# CONFIG_PACKET_MMAP is not set
229CONFIG_UNIX=y
230# CONFIG_NET_KEY is not set
231CONFIG_INET=y
232# CONFIG_IP_MULTICAST is not set
233# CONFIG_IP_ADVANCED_ROUTER is not set
234CONFIG_IP_FIB_HASH=y
235CONFIG_IP_PNP=y
236CONFIG_IP_PNP_DHCP=y
237CONFIG_IP_PNP_BOOTP=y
238# CONFIG_IP_PNP_RARP is not set
239# CONFIG_NET_IPIP is not set
240# CONFIG_NET_IPGRE is not set
241# CONFIG_ARPD is not set
242# CONFIG_SYN_COOKIES is not set
243# CONFIG_INET_AH is not set
244# CONFIG_INET_ESP is not set
245# CONFIG_INET_IPCOMP is not set
246# CONFIG_INET_TUNNEL is not set
247CONFIG_INET_DIAG=y
248CONFIG_INET_TCP_DIAG=y
249# CONFIG_TCP_CONG_ADVANCED is not set
250CONFIG_TCP_CONG_BIC=y
251# CONFIG_IPV6 is not set
252# CONFIG_NETFILTER is not set
253
254#
255# DCCP Configuration (EXPERIMENTAL)
256#
257# CONFIG_IP_DCCP is not set
258
259#
260# SCTP Configuration (EXPERIMENTAL)
261#
262# CONFIG_IP_SCTP is not set
263# CONFIG_ATM is not set
264# CONFIG_BRIDGE is not set
265# CONFIG_VLAN_8021Q is not set
266# CONFIG_DECNET is not set
267# CONFIG_LLC2 is not set
268# CONFIG_IPX is not set
269# CONFIG_ATALK is not set
270# CONFIG_X25 is not set
271# CONFIG_LAPB is not set
272# CONFIG_NET_DIVERT is not set
273# CONFIG_ECONET is not set
274# CONFIG_WAN_ROUTER is not set
275
276#
277# QoS and/or fair queueing
278#
279# CONFIG_NET_SCHED is not set
280
281#
282# Network testing
283#
284# CONFIG_NET_PKTGEN is not set
285# CONFIG_HAMRADIO is not set
286# CONFIG_IRDA is not set
287# CONFIG_BT is not set
288# CONFIG_IEEE80211 is not set
289
290#
291# Device Drivers
292#
293
294#
295# Generic Driver Options
296#
297CONFIG_STANDALONE=y
298CONFIG_PREVENT_FIRMWARE_BUILD=y
299CONFIG_FW_LOADER=y
300# CONFIG_DEBUG_DRIVER is not set
301
302#
303# Connector - unified userspace <-> kernelspace linker
304#
305# CONFIG_CONNECTOR is not set
306
307#
308# Memory Technology Devices (MTD)
309#
310CONFIG_MTD=y
311# CONFIG_MTD_DEBUG is not set
312# CONFIG_MTD_CONCAT is not set
313CONFIG_MTD_PARTITIONS=y
314# CONFIG_MTD_REDBOOT_PARTS is not set
315CONFIG_MTD_CMDLINE_PARTS=y
316# CONFIG_MTD_AFS_PARTS is not set
317
318#
319# User Modules And Translation Layers
320#
321CONFIG_MTD_CHAR=y
322CONFIG_MTD_BLOCK=y
323# CONFIG_FTL is not set
324# CONFIG_NFTL is not set
325# CONFIG_INFTL is not set
326# CONFIG_RFD_FTL is not set
327
328#
329# RAM/ROM/Flash chip drivers
330#
331CONFIG_MTD_CFI=y
332# CONFIG_MTD_JEDECPROBE is not set
333CONFIG_MTD_GEN_PROBE=y
334# CONFIG_MTD_CFI_ADV_OPTIONS is not set
335CONFIG_MTD_MAP_BANK_WIDTH_1=y
336CONFIG_MTD_MAP_BANK_WIDTH_2=y
337CONFIG_MTD_MAP_BANK_WIDTH_4=y
338# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
339# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
340# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
341CONFIG_MTD_CFI_I1=y
342CONFIG_MTD_CFI_I2=y
343# CONFIG_MTD_CFI_I4 is not set
344# CONFIG_MTD_CFI_I8 is not set
345CONFIG_MTD_CFI_INTELEXT=y
346# CONFIG_MTD_CFI_AMDSTD is not set
347# CONFIG_MTD_CFI_STAA is not set
348CONFIG_MTD_CFI_UTIL=y
349# CONFIG_MTD_RAM is not set
350# CONFIG_MTD_ROM is not set
351# CONFIG_MTD_ABSENT is not set
352# CONFIG_MTD_XIP is not set
353
354#
355# Mapping drivers for chip access
356#
357# CONFIG_MTD_COMPLEX_MAPPINGS is not set
358# CONFIG_MTD_PHYSMAP is not set
359# CONFIG_MTD_ARM_INTEGRATOR is not set
360# CONFIG_MTD_PLATRAM is not set
361CONFIG_MTD_CSB337=y
362
363#
364# Self-contained MTD device drivers
365#
366# CONFIG_MTD_SLRAM is not set
367# CONFIG_MTD_PHRAM is not set
368# CONFIG_MTD_MTDRAM is not set
369# CONFIG_MTD_BLKMTD is not set
370# CONFIG_MTD_BLOCK2MTD is not set
371
372#
373# Disk-On-Chip Device Drivers
374#
375# CONFIG_MTD_DOC2000 is not set
376# CONFIG_MTD_DOC2001 is not set
377# CONFIG_MTD_DOC2001PLUS is not set
378# CONFIG_MTD_AT91_DATAFLASH is not set
379
380#
381# NAND Flash Device Drivers
382#
383# CONFIG_MTD_NAND is not set
384
385#
386# OneNAND Flash Device Drivers
387#
388# CONFIG_MTD_ONENAND is not set
389
390#
391# Parallel port support
392#
393# CONFIG_PARPORT is not set
394
395#
396# Plug and Play support
397#
398
399#
400# Block devices
401#
402# CONFIG_BLK_DEV_COW_COMMON is not set
403CONFIG_BLK_DEV_LOOP=y
404# CONFIG_BLK_DEV_CRYPTOLOOP is not set
405# CONFIG_BLK_DEV_NBD is not set
406# CONFIG_BLK_DEV_UB is not set
407CONFIG_BLK_DEV_RAM=y
408CONFIG_BLK_DEV_RAM_COUNT=16
409CONFIG_BLK_DEV_RAM_SIZE=8192
410CONFIG_BLK_DEV_INITRD=y
411# CONFIG_CDROM_PKTCDVD is not set
412# CONFIG_ATA_OVER_ETH is not set
413
414#
415# ATA/ATAPI/MFM/RLL support
416#
417# CONFIG_IDE is not set
418
419#
420# SCSI device support
421#
422# CONFIG_RAID_ATTRS is not set
423CONFIG_SCSI=y
424CONFIG_SCSI_PROC_FS=y
425
426#
427# SCSI support type (disk, tape, CD-ROM)
428#
429# CONFIG_BLK_DEV_SD is not set
430# CONFIG_CHR_DEV_ST is not set
431# CONFIG_CHR_DEV_OSST is not set
432# CONFIG_BLK_DEV_SR is not set
433# CONFIG_CHR_DEV_SG is not set
434# CONFIG_CHR_DEV_SCH is not set
435
436#
437# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
438#
439# CONFIG_SCSI_MULTI_LUN is not set
440# CONFIG_SCSI_CONSTANTS is not set
441# CONFIG_SCSI_LOGGING is not set
442
443#
444# SCSI Transport Attributes
445#
446# CONFIG_SCSI_SPI_ATTRS is not set
447# CONFIG_SCSI_FC_ATTRS is not set
448# CONFIG_SCSI_ISCSI_ATTRS is not set
449# CONFIG_SCSI_SAS_ATTRS is not set
450
451#
452# SCSI low-level drivers
453#
454# CONFIG_ISCSI_TCP is not set
455# CONFIG_SCSI_SATA is not set
456# CONFIG_SCSI_DEBUG is not set
457
458#
459# PCMCIA SCSI adapter support
460#
461# CONFIG_PCMCIA_AHA152X is not set
462# CONFIG_PCMCIA_FDOMAIN is not set
463# CONFIG_PCMCIA_NINJA_SCSI is not set
464# CONFIG_PCMCIA_QLOGIC is not set
465# CONFIG_PCMCIA_SYM53C500 is not set
466
467#
468# Multi-device support (RAID and LVM)
469#
470# CONFIG_MD is not set
471
472#
473# Fusion MPT device support
474#
475# CONFIG_FUSION is not set
476
477#
478# IEEE 1394 (FireWire) support
479#
480
481#
482# I2O device support
483#
484
485#
486# Network device support
487#
488CONFIG_NETDEVICES=y
489# CONFIG_DUMMY is not set
490# CONFIG_BONDING is not set
491# CONFIG_EQUALIZER is not set
492# CONFIG_TUN is not set
493
494#
495# PHY device support
496#
497# CONFIG_PHYLIB is not set
498
499#
500# Ethernet (10 or 100Mbit)
501#
502CONFIG_NET_ETHERNET=y
503CONFIG_MII=y
504CONFIG_ARM_AT91_ETHER=y
505# CONFIG_SMC91X is not set
506# CONFIG_DM9000 is not set
507
508#
509# Ethernet (1000 Mbit)
510#
511
512#
513# Ethernet (10000 Mbit)
514#
515
516#
517# Token Ring devices
518#
519
520#
521# Wireless LAN (non-hamradio)
522#
523# CONFIG_NET_RADIO is not set
524
525#
526# PCMCIA network device support
527#
528# CONFIG_NET_PCMCIA is not set
529
530#
531# Wan interfaces
532#
533# CONFIG_WAN is not set
534# CONFIG_PPP is not set
535# CONFIG_SLIP is not set
536# CONFIG_SHAPER is not set
537# CONFIG_NETCONSOLE is not set
538# CONFIG_NETPOLL is not set
539# CONFIG_NET_POLL_CONTROLLER is not set
540
541#
542# ISDN subsystem
543#
544# CONFIG_ISDN is not set
545
546#
547# Input device support
548#
549CONFIG_INPUT=y
550
551#
552# Userland interfaces
553#
554CONFIG_INPUT_MOUSEDEV=y
555CONFIG_INPUT_MOUSEDEV_PSAUX=y
556CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
557CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
558# CONFIG_INPUT_JOYDEV is not set
559# CONFIG_INPUT_TSDEV is not set
560# CONFIG_INPUT_EVDEV is not set
561# CONFIG_INPUT_EVBUG is not set
562
563#
564# Input Device Drivers
565#
566# CONFIG_INPUT_KEYBOARD is not set
567# CONFIG_INPUT_MOUSE is not set
568# CONFIG_INPUT_JOYSTICK is not set
569# CONFIG_INPUT_TOUCHSCREEN is not set
570# CONFIG_INPUT_MISC is not set
571
572#
573# Hardware I/O ports
574#
575# CONFIG_SERIO is not set
576# CONFIG_GAMEPORT is not set
577
578#
579# Character devices
580#
581CONFIG_VT=y
582CONFIG_VT_CONSOLE=y
583CONFIG_HW_CONSOLE=y
584# CONFIG_SERIAL_NONSTANDARD is not set
585
586#
587# Serial drivers
588#
589# CONFIG_SERIAL_8250 is not set
590
591#
592# Non-8250 serial port support
593#
594CONFIG_SERIAL_AT91=y
595CONFIG_SERIAL_AT91_CONSOLE=y
596# CONFIG_SERIAL_AT91_TTYAT is not set
597CONFIG_SERIAL_CORE=y
598CONFIG_SERIAL_CORE_CONSOLE=y
599CONFIG_UNIX98_PTYS=y
600CONFIG_LEGACY_PTYS=y
601CONFIG_LEGACY_PTY_COUNT=256
602
603#
604# IPMI
605#
606# CONFIG_IPMI_HANDLER is not set
607
608#
609# Watchdog Cards
610#
611CONFIG_WATCHDOG=y
612CONFIG_WATCHDOG_NOWAYOUT=y
613
614#
615# Watchdog Device Drivers
616#
617# CONFIG_SOFT_WATCHDOG is not set
618CONFIG_AT91_WATCHDOG=y
619
620#
621# USB-based Watchdog Cards
622#
623# CONFIG_USBPCWATCHDOG is not set
624# CONFIG_NVRAM is not set
625CONFIG_RTC=y
626# CONFIG_AT91_RTC is not set
627# CONFIG_DTLK is not set
628# CONFIG_R3964 is not set
629
630#
631# Ftape, the floppy tape device driver
632#
633
634#
635# PCMCIA character devices
636#
637# CONFIG_SYNCLINK_CS is not set
638# CONFIG_CARDMAN_4000 is not set
639# CONFIG_CARDMAN_4040 is not set
640# CONFIG_RAW_DRIVER is not set
641
642#
643# TPM devices
644#
645# CONFIG_TCG_TPM is not set
646# CONFIG_TELCLOCK is not set
647CONFIG_AT91_SPI=y
648CONFIG_AT91_SPIDEV=y
649
650#
651# I2C support
652#
653CONFIG_I2C=y
654CONFIG_I2C_CHARDEV=y
655
656#
657# I2C Algorithms
658#
659# CONFIG_I2C_ALGOBIT is not set
660# CONFIG_I2C_ALGOPCF is not set
661# CONFIG_I2C_ALGOPCA is not set
662
663#
664# I2C Hardware Bus support
665#
666CONFIG_I2C_AT91=y
667# CONFIG_I2C_PARPORT_LIGHT is not set
668# CONFIG_I2C_STUB is not set
669# CONFIG_I2C_PCA_ISA is not set
670
671#
672# Miscellaneous I2C Chip support
673#
674# CONFIG_SENSORS_DS1337 is not set
675# CONFIG_SENSORS_DS1374 is not set
676# CONFIG_SENSORS_EEPROM is not set
677# CONFIG_SENSORS_PCF8574 is not set
678# CONFIG_SENSORS_PCA9539 is not set
679# CONFIG_SENSORS_PCF8591 is not set
680# CONFIG_SENSORS_RTC8564 is not set
681# CONFIG_SENSORS_MAX6875 is not set
682# CONFIG_RTC_X1205_I2C is not set
683# CONFIG_I2C_DEBUG_CORE is not set
684# CONFIG_I2C_DEBUG_ALGO is not set
685# CONFIG_I2C_DEBUG_BUS is not set
686# CONFIG_I2C_DEBUG_CHIP is not set
687
688#
689# Hardware Monitoring support
690#
691CONFIG_HWMON=y
692# CONFIG_HWMON_VID is not set
693# CONFIG_SENSORS_ADM1021 is not set
694# CONFIG_SENSORS_ADM1025 is not set
695# CONFIG_SENSORS_ADM1026 is not set
696# CONFIG_SENSORS_ADM1031 is not set
697# CONFIG_SENSORS_ADM9240 is not set
698# CONFIG_SENSORS_ASB100 is not set
699# CONFIG_SENSORS_ATXP1 is not set
700# CONFIG_SENSORS_DS1621 is not set
701# CONFIG_SENSORS_FSCHER is not set
702# CONFIG_SENSORS_FSCPOS is not set
703# CONFIG_SENSORS_GL518SM is not set
704# CONFIG_SENSORS_GL520SM is not set
705# CONFIG_SENSORS_IT87 is not set
706# CONFIG_SENSORS_LM63 is not set
707# CONFIG_SENSORS_LM75 is not set
708# CONFIG_SENSORS_LM77 is not set
709# CONFIG_SENSORS_LM78 is not set
710# CONFIG_SENSORS_LM80 is not set
711# CONFIG_SENSORS_LM83 is not set
712# CONFIG_SENSORS_LM85 is not set
713# CONFIG_SENSORS_LM87 is not set
714# CONFIG_SENSORS_LM90 is not set
715# CONFIG_SENSORS_LM92 is not set
716# CONFIG_SENSORS_MAX1619 is not set
717# CONFIG_SENSORS_PC87360 is not set
718# CONFIG_SENSORS_SMSC47M1 is not set
719# CONFIG_SENSORS_SMSC47B397 is not set
720# CONFIG_SENSORS_W83781D is not set
721# CONFIG_SENSORS_W83792D is not set
722# CONFIG_SENSORS_W83L785TS is not set
723# CONFIG_SENSORS_W83627HF is not set
724# CONFIG_SENSORS_W83627EHF is not set
725# CONFIG_HWMON_DEBUG_CHIP is not set
726
727#
728# Misc devices
729#
730
731#
732# Multimedia Capabilities Port drivers
733#
734
735#
736# Multimedia devices
737#
738# CONFIG_VIDEO_DEV is not set
739
740#
741# Digital Video Broadcasting Devices
742#
743# CONFIG_DVB is not set
744
745#
746# Graphics support
747#
748# CONFIG_FB is not set
749
750#
751# Console display driver support
752#
753# CONFIG_VGA_CONSOLE is not set
754CONFIG_DUMMY_CONSOLE=y
755
756#
757# Sound
758#
759# CONFIG_SOUND is not set
760
761#
762# USB support
763#
764CONFIG_USB_ARCH_HAS_HCD=y
765CONFIG_USB_ARCH_HAS_OHCI=y
766CONFIG_USB=y
767CONFIG_USB_DEBUG=y
768
769#
770# Miscellaneous USB options
771#
772CONFIG_USB_DEVICEFS=y
773# CONFIG_USB_BANDWIDTH is not set
774# CONFIG_USB_DYNAMIC_MINORS is not set
775# CONFIG_USB_OTG is not set
776
777#
778# USB Host Controller Drivers
779#
780# CONFIG_USB_ISP116X_HCD is not set
781CONFIG_USB_OHCI_HCD=y
782# CONFIG_USB_OHCI_BIG_ENDIAN is not set
783CONFIG_USB_OHCI_LITTLE_ENDIAN=y
784# CONFIG_USB_SL811_HCD is not set
785
786#
787# USB Device Class drivers
788#
789# CONFIG_USB_ACM is not set
790# CONFIG_USB_PRINTER is not set
791
792#
793# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
794#
795
796#
797# may also be needed; see USB_STORAGE Help for more information
798#
799CONFIG_USB_STORAGE=y
800# CONFIG_USB_STORAGE_DEBUG is not set
801# CONFIG_USB_STORAGE_DATAFAB is not set
802# CONFIG_USB_STORAGE_FREECOM is not set
803# CONFIG_USB_STORAGE_DPCM is not set
804# CONFIG_USB_STORAGE_USBAT is not set
805# CONFIG_USB_STORAGE_SDDR09 is not set
806# CONFIG_USB_STORAGE_SDDR55 is not set
807# CONFIG_USB_STORAGE_JUMPSHOT is not set
808
809#
810# USB Input Devices
811#
812# CONFIG_USB_HID is not set
813
814#
815# USB HID Boot Protocol drivers
816#
817# CONFIG_USB_KBD is not set
818# CONFIG_USB_MOUSE is not set
819# CONFIG_USB_AIPTEK is not set
820# CONFIG_USB_WACOM is not set
821# CONFIG_USB_ACECAD is not set
822# CONFIG_USB_KBTAB is not set
823# CONFIG_USB_POWERMATE is not set
824# CONFIG_USB_MTOUCH is not set
825# CONFIG_USB_ITMTOUCH is not set
826# CONFIG_USB_EGALAX is not set
827# CONFIG_USB_YEALINK is not set
828# CONFIG_USB_XPAD is not set
829# CONFIG_USB_ATI_REMOTE is not set
830# CONFIG_USB_KEYSPAN_REMOTE is not set
831# CONFIG_USB_APPLETOUCH is not set
832
833#
834# USB Imaging devices
835#
836# CONFIG_USB_MDC800 is not set
837# CONFIG_USB_MICROTEK is not set
838
839#
840# USB Multimedia devices
841#
842# CONFIG_USB_DABUSB is not set
843
844#
845# Video4Linux support is needed for USB Multimedia device support
846#
847
848#
849# USB Network Adapters
850#
851# CONFIG_USB_CATC is not set
852# CONFIG_USB_KAWETH is not set
853# CONFIG_USB_PEGASUS is not set
854# CONFIG_USB_RTL8150 is not set
855# CONFIG_USB_USBNET is not set
856CONFIG_USB_MON=y
857
858#
859# USB port drivers
860#
861
862#
863# USB Serial Converter support
864#
865CONFIG_USB_SERIAL=y
866CONFIG_USB_SERIAL_CONSOLE=y
867CONFIG_USB_SERIAL_GENERIC=y
868# CONFIG_USB_SERIAL_AIRPRIME is not set
869# CONFIG_USB_SERIAL_ANYDATA is not set
870# CONFIG_USB_SERIAL_BELKIN is not set
871# CONFIG_USB_SERIAL_WHITEHEAT is not set
872# CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set
873# CONFIG_USB_SERIAL_CP2101 is not set
874# CONFIG_USB_SERIAL_CYPRESS_M8 is not set
875# CONFIG_USB_SERIAL_EMPEG is not set
876CONFIG_USB_SERIAL_FTDI_SIO=y
877# CONFIG_USB_SERIAL_VISOR is not set
878# CONFIG_USB_SERIAL_IPAQ is not set
879# CONFIG_USB_SERIAL_IR is not set
880# CONFIG_USB_SERIAL_EDGEPORT is not set
881# CONFIG_USB_SERIAL_EDGEPORT_TI is not set
882# CONFIG_USB_SERIAL_GARMIN is not set
883# CONFIG_USB_SERIAL_IPW is not set
884# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set
885CONFIG_USB_SERIAL_KEYSPAN=y
886CONFIG_USB_SERIAL_KEYSPAN_MPR=y
887CONFIG_USB_SERIAL_KEYSPAN_USA28=y
888CONFIG_USB_SERIAL_KEYSPAN_USA28X=y
889CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y
890CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y
891CONFIG_USB_SERIAL_KEYSPAN_USA19=y
892CONFIG_USB_SERIAL_KEYSPAN_USA18X=y
893CONFIG_USB_SERIAL_KEYSPAN_USA19W=y
894CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y
895CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y
896CONFIG_USB_SERIAL_KEYSPAN_USA49W=y
897CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y
898# CONFIG_USB_SERIAL_KLSI is not set
899# CONFIG_USB_SERIAL_KOBIL_SCT is not set
900CONFIG_USB_SERIAL_MCT_U232=y
901# CONFIG_USB_SERIAL_PL2303 is not set
902# CONFIG_USB_SERIAL_HP4X is not set
903# CONFIG_USB_SERIAL_SAFE is not set
904# CONFIG_USB_SERIAL_TI is not set
905# CONFIG_USB_SERIAL_CYBERJACK is not set
906# CONFIG_USB_SERIAL_XIRCOM is not set
907# CONFIG_USB_SERIAL_OPTION is not set
908# CONFIG_USB_SERIAL_OMNINET is not set
909CONFIG_USB_EZUSB=y
910
911#
912# USB Miscellaneous drivers
913#
914# CONFIG_USB_EMI62 is not set
915# CONFIG_USB_EMI26 is not set
916# CONFIG_USB_AUERSWALD is not set
917# CONFIG_USB_RIO500 is not set
918# CONFIG_USB_LEGOTOWER is not set
919# CONFIG_USB_LCD is not set
920# CONFIG_USB_LED is not set
921# CONFIG_USB_CYTHERM is not set
922# CONFIG_USB_PHIDGETKIT is not set
923# CONFIG_USB_PHIDGETSERVO is not set
924# CONFIG_USB_IDMOUSE is not set
925# CONFIG_USB_LD is not set
926# CONFIG_USB_TEST is not set
927
928#
929# USB DSL modem support
930#
931
932#
933# USB Gadget Support
934#
935CONFIG_USB_GADGET=y
936# CONFIG_USB_GADGET_DEBUG_FILES is not set
937CONFIG_USB_GADGET_SELECTED=y
938# CONFIG_USB_GADGET_NET2280 is not set
939# CONFIG_USB_GADGET_PXA2XX is not set
940# CONFIG_USB_GADGET_GOKU is not set
941# CONFIG_USB_GADGET_LH7A40X is not set
942# CONFIG_USB_GADGET_OMAP is not set
943CONFIG_USB_GADGET_AT91=y
944CONFIG_USB_AT91=y
945# CONFIG_USB_GADGET_DUMMY_HCD is not set
946# CONFIG_USB_GADGET_DUALSPEED is not set
947# CONFIG_USB_ZERO is not set
948# CONFIG_USB_ETH is not set
949# CONFIG_USB_GADGETFS is not set
950# CONFIG_USB_FILE_STORAGE is not set
951# CONFIG_USB_G_SERIAL is not set
952
953#
954# MMC/SD Card support
955#
956CONFIG_MMC=y
957# CONFIG_MMC_DEBUG is not set
958CONFIG_MMC_BLOCK=y
959# CONFIG_MMC_WBSD is not set
960CONFIG_MMC_AT91RM9200=y
961
962#
963# File systems
964#
965CONFIG_EXT2_FS=y
966# CONFIG_EXT2_FS_XATTR is not set
967# CONFIG_EXT2_FS_XIP is not set
968# CONFIG_EXT3_FS is not set
969# CONFIG_JBD is not set
970# CONFIG_REISERFS_FS is not set
971# CONFIG_JFS_FS is not set
972# CONFIG_FS_POSIX_ACL is not set
973# CONFIG_XFS_FS is not set
974# CONFIG_MINIX_FS is not set
975# CONFIG_ROMFS_FS is not set
976CONFIG_INOTIFY=y
977# CONFIG_QUOTA is not set
978CONFIG_DNOTIFY=y
979# CONFIG_AUTOFS_FS is not set
980# CONFIG_AUTOFS4_FS is not set
981# CONFIG_FUSE_FS is not set
982
983#
984# CD-ROM/DVD Filesystems
985#
986# CONFIG_ISO9660_FS is not set
987# CONFIG_UDF_FS is not set
988
989#
990# DOS/FAT/NT Filesystems
991#
992# CONFIG_MSDOS_FS is not set
993# CONFIG_VFAT_FS is not set
994# CONFIG_NTFS_FS is not set
995
996#
997# Pseudo filesystems
998#
999CONFIG_PROC_FS=y
1000CONFIG_SYSFS=y
1001CONFIG_TMPFS=y
1002# CONFIG_HUGETLB_PAGE is not set
1003CONFIG_RAMFS=y
1004# CONFIG_RELAYFS_FS is not set
1005
1006#
1007# Miscellaneous filesystems
1008#
1009# CONFIG_ADFS_FS is not set
1010# CONFIG_AFFS_FS is not set
1011# CONFIG_HFS_FS is not set
1012# CONFIG_HFSPLUS_FS is not set
1013# CONFIG_BEFS_FS is not set
1014# CONFIG_BFS_FS is not set
1015# CONFIG_EFS_FS is not set
1016# CONFIG_JFFS_FS is not set
1017# CONFIG_JFFS2_FS is not set
1018CONFIG_CRAMFS=y
1019# CONFIG_VXFS_FS is not set
1020# CONFIG_HPFS_FS is not set
1021# CONFIG_QNX4FS_FS is not set
1022# CONFIG_SYSV_FS is not set
1023# CONFIG_UFS_FS is not set
1024
1025#
1026# Network File Systems
1027#
1028CONFIG_NFS_FS=y
1029CONFIG_NFS_V3=y
1030# CONFIG_NFS_V3_ACL is not set
1031CONFIG_NFS_V4=y
1032# CONFIG_NFS_DIRECTIO is not set
1033# CONFIG_NFSD is not set
1034CONFIG_ROOT_NFS=y
1035CONFIG_LOCKD=y
1036CONFIG_LOCKD_V4=y
1037CONFIG_NFS_COMMON=y
1038CONFIG_SUNRPC=y
1039CONFIG_SUNRPC_GSS=y
1040CONFIG_RPCSEC_GSS_KRB5=y
1041# CONFIG_RPCSEC_GSS_SPKM3 is not set
1042# CONFIG_SMB_FS is not set
1043# CONFIG_CIFS is not set
1044# CONFIG_NCP_FS is not set
1045# CONFIG_CODA_FS is not set
1046# CONFIG_AFS_FS is not set
1047# CONFIG_9P_FS is not set
1048
1049#
1050# Partition Types
1051#
1052# CONFIG_PARTITION_ADVANCED is not set
1053CONFIG_MSDOS_PARTITION=y
1054
1055#
1056# Native Language Support
1057#
1058# CONFIG_NLS is not set
1059
1060#
1061# Profiling support
1062#
1063# CONFIG_PROFILING is not set
1064
1065#
1066# Kernel hacking
1067#
1068# CONFIG_PRINTK_TIME is not set
1069CONFIG_DEBUG_KERNEL=y
1070# CONFIG_MAGIC_SYSRQ is not set
1071CONFIG_LOG_BUF_SHIFT=14
1072CONFIG_DETECT_SOFTLOCKUP=y
1073# CONFIG_SCHEDSTATS is not set
1074# CONFIG_DEBUG_SLAB is not set
1075# CONFIG_DEBUG_SPINLOCK is not set
1076# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
1077# CONFIG_DEBUG_KOBJECT is not set
1078CONFIG_DEBUG_BUGVERBOSE=y
1079# CONFIG_DEBUG_INFO is not set
1080# CONFIG_DEBUG_FS is not set
1081# CONFIG_DEBUG_VM is not set
1082CONFIG_FRAME_POINTER=y
1083# CONFIG_RCU_TORTURE_TEST is not set
1084CONFIG_DEBUG_USER=y
1085# CONFIG_DEBUG_WAITQ is not set
1086# CONFIG_DEBUG_ERRORS is not set
1087CONFIG_DEBUG_LL=y
1088# CONFIG_DEBUG_ICEDCC is not set
1089
1090#
1091# Security options
1092#
1093# CONFIG_KEYS is not set
1094# CONFIG_SECURITY is not set
1095
1096#
1097# Cryptographic options
1098#
1099CONFIG_CRYPTO=y
1100# CONFIG_CRYPTO_HMAC is not set
1101# CONFIG_CRYPTO_NULL is not set
1102# CONFIG_CRYPTO_MD4 is not set
1103CONFIG_CRYPTO_MD5=y
1104# CONFIG_CRYPTO_SHA1 is not set
1105# CONFIG_CRYPTO_SHA256 is not set
1106# CONFIG_CRYPTO_SHA512 is not set
1107# CONFIG_CRYPTO_WP512 is not set
1108# CONFIG_CRYPTO_TGR192 is not set
1109CONFIG_CRYPTO_DES=y
1110# CONFIG_CRYPTO_BLOWFISH is not set
1111# CONFIG_CRYPTO_TWOFISH is not set
1112# CONFIG_CRYPTO_SERPENT is not set
1113# CONFIG_CRYPTO_AES is not set
1114# CONFIG_CRYPTO_CAST5 is not set
1115# CONFIG_CRYPTO_CAST6 is not set
1116# CONFIG_CRYPTO_TEA is not set
1117# CONFIG_CRYPTO_ARC4 is not set
1118# CONFIG_CRYPTO_KHAZAD is not set
1119# CONFIG_CRYPTO_ANUBIS is not set
1120# CONFIG_CRYPTO_DEFLATE is not set
1121# CONFIG_CRYPTO_MICHAEL_MIC is not set
1122# CONFIG_CRYPTO_CRC32C is not set
1123# CONFIG_CRYPTO_TEST is not set
1124
1125#
1126# Hardware crypto devices
1127#
1128
1129#
1130# Library routines
1131#
1132# CONFIG_CRC_CCITT is not set
1133# CONFIG_CRC16 is not set
1134CONFIG_CRC32=y
1135# CONFIG_LIBCRC32C is not set
1136CONFIG_ZLIB_INFLATE=y
diff --git a/arch/arm/configs/csb637_defconfig b/arch/arm/configs/csb637_defconfig
new file mode 100644
index 000000000000..95a96a5462a0
--- /dev/null
+++ b/arch/arm/configs/csb637_defconfig
@@ -0,0 +1,1116 @@
1#
2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.15
4# Mon Jan 9 21:52:00 2006
5#
6CONFIG_ARM=y
7CONFIG_MMU=y
8CONFIG_UID16=y
9CONFIG_RWSEM_GENERIC_SPINLOCK=y
10CONFIG_GENERIC_CALIBRATE_DELAY=y
11
12#
13# Code maturity level options
14#
15CONFIG_EXPERIMENTAL=y
16CONFIG_CLEAN_COMPILE=y
17CONFIG_BROKEN_ON_SMP=y
18CONFIG_INIT_ENV_ARG_LIMIT=32
19
20#
21# General setup
22#
23CONFIG_LOCALVERSION=""
24CONFIG_LOCALVERSION_AUTO=y
25# CONFIG_SWAP is not set
26CONFIG_SYSVIPC=y
27# CONFIG_POSIX_MQUEUE is not set
28# CONFIG_BSD_PROCESS_ACCT is not set
29CONFIG_SYSCTL=y
30# CONFIG_AUDIT is not set
31CONFIG_HOTPLUG=y
32CONFIG_KOBJECT_UEVENT=y
33# CONFIG_IKCONFIG is not set
34CONFIG_INITRAMFS_SOURCE=""
35CONFIG_CC_OPTIMIZE_FOR_SIZE=y
36# CONFIG_EMBEDDED is not set
37CONFIG_KALLSYMS=y
38# CONFIG_KALLSYMS_ALL is not set
39# CONFIG_KALLSYMS_EXTRA_PASS is not set
40CONFIG_PRINTK=y
41CONFIG_BUG=y
42CONFIG_BASE_FULL=y
43CONFIG_FUTEX=y
44CONFIG_EPOLL=y
45CONFIG_SHMEM=y
46CONFIG_CC_ALIGN_FUNCTIONS=0
47CONFIG_CC_ALIGN_LABELS=0
48CONFIG_CC_ALIGN_LOOPS=0
49CONFIG_CC_ALIGN_JUMPS=0
50# CONFIG_TINY_SHMEM is not set
51CONFIG_BASE_SMALL=0
52
53#
54# Loadable module support
55#
56CONFIG_MODULES=y
57CONFIG_MODULE_UNLOAD=y
58# CONFIG_MODULE_FORCE_UNLOAD is not set
59CONFIG_OBSOLETE_MODPARM=y
60# CONFIG_MODVERSIONS is not set
61# CONFIG_MODULE_SRCVERSION_ALL is not set
62CONFIG_KMOD=y
63
64#
65# Block layer
66#
67
68#
69# IO Schedulers
70#
71CONFIG_IOSCHED_NOOP=y
72CONFIG_IOSCHED_AS=y
73CONFIG_IOSCHED_DEADLINE=y
74CONFIG_IOSCHED_CFQ=y
75CONFIG_DEFAULT_AS=y
76# CONFIG_DEFAULT_DEADLINE is not set
77# CONFIG_DEFAULT_CFQ is not set
78# CONFIG_DEFAULT_NOOP is not set
79CONFIG_DEFAULT_IOSCHED="anticipatory"
80
81#
82# System Type
83#
84# CONFIG_ARCH_CLPS7500 is not set
85# CONFIG_ARCH_CLPS711X is not set
86# CONFIG_ARCH_CO285 is not set
87# CONFIG_ARCH_EBSA110 is not set
88# CONFIG_ARCH_CAMELOT is not set
89# CONFIG_ARCH_FOOTBRIDGE is not set
90# CONFIG_ARCH_INTEGRATOR is not set
91# CONFIG_ARCH_IOP3XX is not set
92# CONFIG_ARCH_IXP4XX is not set
93# CONFIG_ARCH_IXP2000 is not set
94# CONFIG_ARCH_L7200 is not set
95# CONFIG_ARCH_PXA is not set
96# CONFIG_ARCH_RPC is not set
97# CONFIG_ARCH_SA1100 is not set
98# CONFIG_ARCH_S3C2410 is not set
99# CONFIG_ARCH_SHARK is not set
100# CONFIG_ARCH_LH7A40X is not set
101# CONFIG_ARCH_OMAP is not set
102# CONFIG_ARCH_VERSATILE is not set
103# CONFIG_ARCH_REALVIEW is not set
104# CONFIG_ARCH_IMX is not set
105# CONFIG_ARCH_H720X is not set
106# CONFIG_ARCH_AAEC2000 is not set
107CONFIG_ARCH_AT91RM9200=y
108
109#
110# AT91RM9200 Implementations
111#
112
113#
114# AT91RM9200 Board Type
115#
116# CONFIG_ARCH_AT91RM9200DK is not set
117# CONFIG_MACH_AT91RM9200EK is not set
118# CONFIG_MACH_CSB337 is not set
119CONFIG_MACH_CSB637=y
120# CONFIG_MACH_CARMEVA is not set
121# CONFIG_MACH_KB9200 is not set
122# CONFIG_MACH_ATEB9200 is not set
123
124#
125# AT91RM9200 Feature Selections
126#
127CONFIG_AT91_PROGRAMMABLE_CLOCKS=y
128
129#
130# Processor Type
131#
132CONFIG_CPU_32=y
133CONFIG_CPU_ARM920T=y
134CONFIG_CPU_32v4=y
135CONFIG_CPU_ABRT_EV4T=y
136CONFIG_CPU_CACHE_V4WT=y
137CONFIG_CPU_CACHE_VIVT=y
138CONFIG_CPU_COPY_V4WB=y
139CONFIG_CPU_TLB_V4WBI=y
140
141#
142# Processor Features
143#
144# CONFIG_ARM_THUMB is not set
145# CONFIG_CPU_ICACHE_DISABLE is not set
146# CONFIG_CPU_DCACHE_DISABLE is not set
147# CONFIG_CPU_DCACHE_WRITETHROUGH is not set
148
149#
150# Bus support
151#
152CONFIG_ISA_DMA_API=y
153
154#
155# PCCARD (PCMCIA/CardBus) support
156#
157CONFIG_PCCARD=y
158# CONFIG_PCMCIA_DEBUG is not set
159CONFIG_PCMCIA=y
160CONFIG_PCMCIA_LOAD_CIS=y
161CONFIG_PCMCIA_IOCTL=y
162
163#
164# PC-card bridges
165#
166CONFIG_AT91_CF=y
167
168#
169# Kernel Features
170#
171# CONFIG_PREEMPT is not set
172# CONFIG_NO_IDLE_HZ is not set
173# CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set
174CONFIG_SELECT_MEMORY_MODEL=y
175CONFIG_FLATMEM_MANUAL=y
176# CONFIG_DISCONTIGMEM_MANUAL is not set
177# CONFIG_SPARSEMEM_MANUAL is not set
178CONFIG_FLATMEM=y
179CONFIG_FLAT_NODE_MEM_MAP=y
180# CONFIG_SPARSEMEM_STATIC is not set
181CONFIG_SPLIT_PTLOCK_CPUS=4096
182CONFIG_LEDS=y
183CONFIG_LEDS_TIMER=y
184CONFIG_LEDS_CPU=y
185CONFIG_ALIGNMENT_TRAP=y
186
187#
188# Boot options
189#
190CONFIG_ZBOOT_ROM_TEXT=0x0
191CONFIG_ZBOOT_ROM_BSS=0x0
192CONFIG_CMDLINE="mem=32M console=ttyS0,38400 initrd=0x20410000,3145728 root=/dev/ram0 rw"
193# CONFIG_XIP_KERNEL is not set
194
195#
196# Floating point emulation
197#
198
199#
200# At least one emulation must be selected
201#
202CONFIG_FPE_NWFPE=y
203# CONFIG_FPE_NWFPE_XP is not set
204# CONFIG_FPE_FASTFPE is not set
205
206#
207# Userspace binary formats
208#
209CONFIG_BINFMT_ELF=y
210# CONFIG_BINFMT_AOUT is not set
211# CONFIG_BINFMT_MISC is not set
212# CONFIG_ARTHUR is not set
213
214#
215# Power management options
216#
217# CONFIG_PM is not set
218
219#
220# Networking
221#
222CONFIG_NET=y
223
224#
225# Networking options
226#
227CONFIG_PACKET=y
228# CONFIG_PACKET_MMAP is not set
229CONFIG_UNIX=y
230# CONFIG_NET_KEY is not set
231CONFIG_INET=y
232# CONFIG_IP_MULTICAST is not set
233# CONFIG_IP_ADVANCED_ROUTER is not set
234CONFIG_IP_FIB_HASH=y
235CONFIG_IP_PNP=y
236CONFIG_IP_PNP_DHCP=y
237CONFIG_IP_PNP_BOOTP=y
238# CONFIG_IP_PNP_RARP is not set
239# CONFIG_NET_IPIP is not set
240# CONFIG_NET_IPGRE is not set
241# CONFIG_ARPD is not set
242# CONFIG_SYN_COOKIES is not set
243# CONFIG_INET_AH is not set
244# CONFIG_INET_ESP is not set
245# CONFIG_INET_IPCOMP is not set
246# CONFIG_INET_TUNNEL is not set
247CONFIG_INET_DIAG=y
248CONFIG_INET_TCP_DIAG=y
249# CONFIG_TCP_CONG_ADVANCED is not set
250CONFIG_TCP_CONG_BIC=y
251# CONFIG_IPV6 is not set
252# CONFIG_NETFILTER is not set
253
254#
255# DCCP Configuration (EXPERIMENTAL)
256#
257# CONFIG_IP_DCCP is not set
258
259#
260# SCTP Configuration (EXPERIMENTAL)
261#
262# CONFIG_IP_SCTP is not set
263# CONFIG_ATM is not set
264# CONFIG_BRIDGE is not set
265# CONFIG_VLAN_8021Q is not set
266# CONFIG_DECNET is not set
267# CONFIG_LLC2 is not set
268# CONFIG_IPX is not set
269# CONFIG_ATALK is not set
270# CONFIG_X25 is not set
271# CONFIG_LAPB is not set
272# CONFIG_NET_DIVERT is not set
273# CONFIG_ECONET is not set
274# CONFIG_WAN_ROUTER is not set
275
276#
277# QoS and/or fair queueing
278#
279# CONFIG_NET_SCHED is not set
280
281#
282# Network testing
283#
284# CONFIG_NET_PKTGEN is not set
285# CONFIG_HAMRADIO is not set
286# CONFIG_IRDA is not set
287# CONFIG_BT is not set
288# CONFIG_IEEE80211 is not set
289
290#
291# Device Drivers
292#
293
294#
295# Generic Driver Options
296#
297CONFIG_STANDALONE=y
298CONFIG_PREVENT_FIRMWARE_BUILD=y
299CONFIG_FW_LOADER=y
300# CONFIG_DEBUG_DRIVER is not set
301
302#
303# Connector - unified userspace <-> kernelspace linker
304#
305# CONFIG_CONNECTOR is not set
306
307#
308# Memory Technology Devices (MTD)
309#
310CONFIG_MTD=y
311# CONFIG_MTD_DEBUG is not set
312# CONFIG_MTD_CONCAT is not set
313CONFIG_MTD_PARTITIONS=y
314# CONFIG_MTD_REDBOOT_PARTS is not set
315CONFIG_MTD_CMDLINE_PARTS=y
316# CONFIG_MTD_AFS_PARTS is not set
317
318#
319# User Modules And Translation Layers
320#
321CONFIG_MTD_CHAR=y
322CONFIG_MTD_BLOCK=y
323# CONFIG_FTL is not set
324# CONFIG_NFTL is not set
325# CONFIG_INFTL is not set
326# CONFIG_RFD_FTL is not set
327
328#
329# RAM/ROM/Flash chip drivers
330#
331CONFIG_MTD_CFI=y
332# CONFIG_MTD_JEDECPROBE is not set
333CONFIG_MTD_GEN_PROBE=y
334# CONFIG_MTD_CFI_ADV_OPTIONS is not set
335CONFIG_MTD_MAP_BANK_WIDTH_1=y
336CONFIG_MTD_MAP_BANK_WIDTH_2=y
337CONFIG_MTD_MAP_BANK_WIDTH_4=y
338# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
339# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
340# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
341CONFIG_MTD_CFI_I1=y
342CONFIG_MTD_CFI_I2=y
343# CONFIG_MTD_CFI_I4 is not set
344# CONFIG_MTD_CFI_I8 is not set
345CONFIG_MTD_CFI_INTELEXT=y
346# CONFIG_MTD_CFI_AMDSTD is not set
347# CONFIG_MTD_CFI_STAA is not set
348CONFIG_MTD_CFI_UTIL=y
349# CONFIG_MTD_RAM is not set
350# CONFIG_MTD_ROM is not set
351# CONFIG_MTD_ABSENT is not set
352# CONFIG_MTD_XIP is not set
353
354#
355# Mapping drivers for chip access
356#
357# CONFIG_MTD_COMPLEX_MAPPINGS is not set
358# CONFIG_MTD_PHYSMAP is not set
359# CONFIG_MTD_ARM_INTEGRATOR is not set
360# CONFIG_MTD_PLATRAM is not set
361CONFIG_MTD_CSB637=y
362
363#
364# Self-contained MTD device drivers
365#
366# CONFIG_MTD_SLRAM is not set
367# CONFIG_MTD_PHRAM is not set
368# CONFIG_MTD_MTDRAM is not set
369# CONFIG_MTD_BLKMTD is not set
370# CONFIG_MTD_BLOCK2MTD is not set
371
372#
373# Disk-On-Chip Device Drivers
374#
375# CONFIG_MTD_DOC2000 is not set
376# CONFIG_MTD_DOC2001 is not set
377# CONFIG_MTD_DOC2001PLUS is not set
378# CONFIG_MTD_AT91_DATAFLASH is not set
379
380#
381# NAND Flash Device Drivers
382#
383# CONFIG_MTD_NAND is not set
384
385#
386# OneNAND Flash Device Drivers
387#
388# CONFIG_MTD_ONENAND is not set
389
390#
391# Parallel port support
392#
393# CONFIG_PARPORT is not set
394
395#
396# Plug and Play support
397#
398
399#
400# Block devices
401#
402# CONFIG_BLK_DEV_COW_COMMON is not set
403CONFIG_BLK_DEV_LOOP=y
404# CONFIG_BLK_DEV_CRYPTOLOOP is not set
405# CONFIG_BLK_DEV_NBD is not set
406# CONFIG_BLK_DEV_UB is not set
407CONFIG_BLK_DEV_RAM=y
408CONFIG_BLK_DEV_RAM_COUNT=16
409CONFIG_BLK_DEV_RAM_SIZE=8192
410CONFIG_BLK_DEV_INITRD=y
411# CONFIG_CDROM_PKTCDVD is not set
412# CONFIG_ATA_OVER_ETH is not set
413
414#
415# ATA/ATAPI/MFM/RLL support
416#
417# CONFIG_IDE is not set
418
419#
420# SCSI device support
421#
422# CONFIG_RAID_ATTRS is not set
423CONFIG_SCSI=y
424CONFIG_SCSI_PROC_FS=y
425
426#
427# SCSI support type (disk, tape, CD-ROM)
428#
429# CONFIG_BLK_DEV_SD is not set
430# CONFIG_CHR_DEV_ST is not set
431# CONFIG_CHR_DEV_OSST is not set
432# CONFIG_BLK_DEV_SR is not set
433# CONFIG_CHR_DEV_SG is not set
434# CONFIG_CHR_DEV_SCH is not set
435
436#
437# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
438#
439# CONFIG_SCSI_MULTI_LUN is not set
440# CONFIG_SCSI_CONSTANTS is not set
441# CONFIG_SCSI_LOGGING is not set
442
443#
444# SCSI Transport Attributes
445#
446# CONFIG_SCSI_SPI_ATTRS is not set
447# CONFIG_SCSI_FC_ATTRS is not set
448# CONFIG_SCSI_ISCSI_ATTRS is not set
449# CONFIG_SCSI_SAS_ATTRS is not set
450
451#
452# SCSI low-level drivers
453#
454# CONFIG_ISCSI_TCP is not set
455# CONFIG_SCSI_SATA is not set
456# CONFIG_SCSI_DEBUG is not set
457
458#
459# PCMCIA SCSI adapter support
460#
461# CONFIG_PCMCIA_AHA152X is not set
462# CONFIG_PCMCIA_FDOMAIN is not set
463# CONFIG_PCMCIA_NINJA_SCSI is not set
464# CONFIG_PCMCIA_QLOGIC is not set
465# CONFIG_PCMCIA_SYM53C500 is not set
466
467#
468# Multi-device support (RAID and LVM)
469#
470# CONFIG_MD is not set
471
472#
473# Fusion MPT device support
474#
475# CONFIG_FUSION is not set
476
477#
478# IEEE 1394 (FireWire) support
479#
480
481#
482# I2O device support
483#
484
485#
486# Network device support
487#
488CONFIG_NETDEVICES=y
489# CONFIG_DUMMY is not set
490# CONFIG_BONDING is not set
491# CONFIG_EQUALIZER is not set
492# CONFIG_TUN is not set
493
494#
495# PHY device support
496#
497# CONFIG_PHYLIB is not set
498
499#
500# Ethernet (10 or 100Mbit)
501#
502CONFIG_NET_ETHERNET=y
503CONFIG_MII=y
504CONFIG_ARM_AT91_ETHER=y
505# CONFIG_SMC91X is not set
506# CONFIG_DM9000 is not set
507
508#
509# Ethernet (1000 Mbit)
510#
511
512#
513# Ethernet (10000 Mbit)
514#
515
516#
517# Token Ring devices
518#
519
520#
521# Wireless LAN (non-hamradio)
522#
523# CONFIG_NET_RADIO is not set
524
525#
526# PCMCIA network device support
527#
528# CONFIG_NET_PCMCIA is not set
529
530#
531# Wan interfaces
532#
533# CONFIG_WAN is not set
534# CONFIG_PPP is not set
535# CONFIG_SLIP is not set
536# CONFIG_SHAPER is not set
537# CONFIG_NETCONSOLE is not set
538# CONFIG_NETPOLL is not set
539# CONFIG_NET_POLL_CONTROLLER is not set
540
541#
542# ISDN subsystem
543#
544# CONFIG_ISDN is not set
545
546#
547# Input device support
548#
549CONFIG_INPUT=y
550
551#
552# Userland interfaces
553#
554CONFIG_INPUT_MOUSEDEV=y
555CONFIG_INPUT_MOUSEDEV_PSAUX=y
556CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
557CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
558# CONFIG_INPUT_JOYDEV is not set
559# CONFIG_INPUT_TSDEV is not set
560# CONFIG_INPUT_EVDEV is not set
561# CONFIG_INPUT_EVBUG is not set
562
563#
564# Input Device Drivers
565#
566# CONFIG_INPUT_KEYBOARD is not set
567# CONFIG_INPUT_MOUSE is not set
568# CONFIG_INPUT_JOYSTICK is not set
569# CONFIG_INPUT_TOUCHSCREEN is not set
570# CONFIG_INPUT_MISC is not set
571
572#
573# Hardware I/O ports
574#
575# CONFIG_SERIO is not set
576# CONFIG_GAMEPORT is not set
577
578#
579# Character devices
580#
581CONFIG_VT=y
582CONFIG_VT_CONSOLE=y
583CONFIG_HW_CONSOLE=y
584# CONFIG_SERIAL_NONSTANDARD is not set
585
586#
587# Serial drivers
588#
589# CONFIG_SERIAL_8250 is not set
590
591#
592# Non-8250 serial port support
593#
594CONFIG_SERIAL_AT91=y
595CONFIG_SERIAL_AT91_CONSOLE=y
596# CONFIG_SERIAL_AT91_TTYAT is not set
597CONFIG_SERIAL_CORE=y
598CONFIG_SERIAL_CORE_CONSOLE=y
599CONFIG_UNIX98_PTYS=y
600CONFIG_LEGACY_PTYS=y
601CONFIG_LEGACY_PTY_COUNT=256
602
603#
604# IPMI
605#
606# CONFIG_IPMI_HANDLER is not set
607
608#
609# Watchdog Cards
610#
611CONFIG_WATCHDOG=y
612CONFIG_WATCHDOG_NOWAYOUT=y
613
614#
615# Watchdog Device Drivers
616#
617# CONFIG_SOFT_WATCHDOG is not set
618CONFIG_AT91_WATCHDOG=y
619
620#
621# USB-based Watchdog Cards
622#
623# CONFIG_USBPCWATCHDOG is not set
624# CONFIG_NVRAM is not set
625CONFIG_RTC=y
626# CONFIG_AT91_RTC is not set
627# CONFIG_DTLK is not set
628# CONFIG_R3964 is not set
629
630#
631# Ftape, the floppy tape device driver
632#
633
634#
635# PCMCIA character devices
636#
637# CONFIG_SYNCLINK_CS is not set
638# CONFIG_CARDMAN_4000 is not set
639# CONFIG_CARDMAN_4040 is not set
640# CONFIG_RAW_DRIVER is not set
641
642#
643# TPM devices
644#
645# CONFIG_TCG_TPM is not set
646# CONFIG_TELCLOCK is not set
647CONFIG_AT91_SPI=y
648CONFIG_AT91_SPIDEV=y
649
650#
651# I2C support
652#
653CONFIG_I2C=y
654CONFIG_I2C_CHARDEV=y
655
656#
657# I2C Algorithms
658#
659# CONFIG_I2C_ALGOBIT is not set
660# CONFIG_I2C_ALGOPCF is not set
661# CONFIG_I2C_ALGOPCA is not set
662
663#
664# I2C Hardware Bus support
665#
666CONFIG_I2C_AT91=y
667# CONFIG_I2C_PARPORT_LIGHT is not set
668# CONFIG_I2C_STUB is not set
669# CONFIG_I2C_PCA_ISA is not set
670
671#
672# Miscellaneous I2C Chip support
673#
674# CONFIG_SENSORS_DS1337 is not set
675# CONFIG_SENSORS_DS1374 is not set
676# CONFIG_SENSORS_EEPROM is not set
677# CONFIG_SENSORS_PCF8574 is not set
678# CONFIG_SENSORS_PCA9539 is not set
679# CONFIG_SENSORS_PCF8591 is not set
680# CONFIG_SENSORS_RTC8564 is not set
681# CONFIG_SENSORS_MAX6875 is not set
682# CONFIG_RTC_X1205_I2C is not set
683# CONFIG_I2C_DEBUG_CORE is not set
684# CONFIG_I2C_DEBUG_ALGO is not set
685# CONFIG_I2C_DEBUG_BUS is not set
686# CONFIG_I2C_DEBUG_CHIP is not set
687
688#
689# Hardware Monitoring support
690#
691CONFIG_HWMON=y
692# CONFIG_HWMON_VID is not set
693# CONFIG_SENSORS_ADM1021 is not set
694# CONFIG_SENSORS_ADM1025 is not set
695# CONFIG_SENSORS_ADM1026 is not set
696# CONFIG_SENSORS_ADM1031 is not set
697# CONFIG_SENSORS_ADM9240 is not set
698# CONFIG_SENSORS_ASB100 is not set
699# CONFIG_SENSORS_ATXP1 is not set
700# CONFIG_SENSORS_DS1621 is not set
701# CONFIG_SENSORS_FSCHER is not set
702# CONFIG_SENSORS_FSCPOS is not set
703# CONFIG_SENSORS_GL518SM is not set
704# CONFIG_SENSORS_GL520SM is not set
705# CONFIG_SENSORS_IT87 is not set
706# CONFIG_SENSORS_LM63 is not set
707# CONFIG_SENSORS_LM75 is not set
708# CONFIG_SENSORS_LM77 is not set
709# CONFIG_SENSORS_LM78 is not set
710# CONFIG_SENSORS_LM80 is not set
711# CONFIG_SENSORS_LM83 is not set
712# CONFIG_SENSORS_LM85 is not set
713# CONFIG_SENSORS_LM87 is not set
714# CONFIG_SENSORS_LM90 is not set
715# CONFIG_SENSORS_LM92 is not set
716# CONFIG_SENSORS_MAX1619 is not set
717# CONFIG_SENSORS_PC87360 is not set
718# CONFIG_SENSORS_SMSC47M1 is not set
719# CONFIG_SENSORS_SMSC47B397 is not set
720# CONFIG_SENSORS_W83781D is not set
721# CONFIG_SENSORS_W83792D is not set
722# CONFIG_SENSORS_W83L785TS is not set
723# CONFIG_SENSORS_W83627HF is not set
724# CONFIG_SENSORS_W83627EHF is not set
725# CONFIG_HWMON_DEBUG_CHIP is not set
726
727#
728# Misc devices
729#
730
731#
732# Multimedia Capabilities Port drivers
733#
734
735#
736# Multimedia devices
737#
738# CONFIG_VIDEO_DEV is not set
739
740#
741# Digital Video Broadcasting Devices
742#
743# CONFIG_DVB is not set
744
745#
746# Graphics support
747#
748# CONFIG_FB is not set
749
750#
751# Console display driver support
752#
753# CONFIG_VGA_CONSOLE is not set
754CONFIG_DUMMY_CONSOLE=y
755
756#
757# Sound
758#
759# CONFIG_SOUND is not set
760
761#
762# USB support
763#
764CONFIG_USB_ARCH_HAS_HCD=y
765CONFIG_USB_ARCH_HAS_OHCI=y
766CONFIG_USB=y
767CONFIG_USB_DEBUG=y
768
769#
770# Miscellaneous USB options
771#
772CONFIG_USB_DEVICEFS=y
773# CONFIG_USB_BANDWIDTH is not set
774# CONFIG_USB_DYNAMIC_MINORS is not set
775# CONFIG_USB_OTG is not set
776
777#
778# USB Host Controller Drivers
779#
780# CONFIG_USB_ISP116X_HCD is not set
781CONFIG_USB_OHCI_HCD=y
782# CONFIG_USB_OHCI_BIG_ENDIAN is not set
783CONFIG_USB_OHCI_LITTLE_ENDIAN=y
784# CONFIG_USB_SL811_HCD is not set
785
786#
787# USB Device Class drivers
788#
789# CONFIG_USB_ACM is not set
790# CONFIG_USB_PRINTER is not set
791
792#
793# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
794#
795
796#
797# may also be needed; see USB_STORAGE Help for more information
798#
799CONFIG_USB_STORAGE=y
800# CONFIG_USB_STORAGE_DEBUG is not set
801# CONFIG_USB_STORAGE_DATAFAB is not set
802# CONFIG_USB_STORAGE_FREECOM is not set
803# CONFIG_USB_STORAGE_DPCM is not set
804# CONFIG_USB_STORAGE_USBAT is not set
805# CONFIG_USB_STORAGE_SDDR09 is not set
806# CONFIG_USB_STORAGE_SDDR55 is not set
807# CONFIG_USB_STORAGE_JUMPSHOT is not set
808
809#
810# USB Input Devices
811#
812# CONFIG_USB_HID is not set
813
814#
815# USB HID Boot Protocol drivers
816#
817# CONFIG_USB_KBD is not set
818# CONFIG_USB_MOUSE is not set
819# CONFIG_USB_AIPTEK is not set
820# CONFIG_USB_WACOM is not set
821# CONFIG_USB_ACECAD is not set
822# CONFIG_USB_KBTAB is not set
823# CONFIG_USB_POWERMATE is not set
824# CONFIG_USB_MTOUCH is not set
825# CONFIG_USB_ITMTOUCH is not set
826# CONFIG_USB_EGALAX is not set
827# CONFIG_USB_YEALINK is not set
828# CONFIG_USB_XPAD is not set
829# CONFIG_USB_ATI_REMOTE is not set
830# CONFIG_USB_KEYSPAN_REMOTE is not set
831# CONFIG_USB_APPLETOUCH is not set
832
833#
834# USB Imaging devices
835#
836# CONFIG_USB_MDC800 is not set
837# CONFIG_USB_MICROTEK is not set
838
839#
840# USB Multimedia devices
841#
842# CONFIG_USB_DABUSB is not set
843
844#
845# Video4Linux support is needed for USB Multimedia device support
846#
847
848#
849# USB Network Adapters
850#
851# CONFIG_USB_CATC is not set
852# CONFIG_USB_KAWETH is not set
853# CONFIG_USB_PEGASUS is not set
854# CONFIG_USB_RTL8150 is not set
855# CONFIG_USB_USBNET is not set
856CONFIG_USB_MON=y
857
858#
859# USB port drivers
860#
861
862#
863# USB Serial Converter support
864#
865CONFIG_USB_SERIAL=y
866CONFIG_USB_SERIAL_CONSOLE=y
867CONFIG_USB_SERIAL_GENERIC=y
868# CONFIG_USB_SERIAL_AIRPRIME is not set
869# CONFIG_USB_SERIAL_ANYDATA is not set
870# CONFIG_USB_SERIAL_BELKIN is not set
871# CONFIG_USB_SERIAL_WHITEHEAT is not set
872# CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set
873# CONFIG_USB_SERIAL_CP2101 is not set
874# CONFIG_USB_SERIAL_CYPRESS_M8 is not set
875# CONFIG_USB_SERIAL_EMPEG is not set
876CONFIG_USB_SERIAL_FTDI_SIO=y
877# CONFIG_USB_SERIAL_VISOR is not set
878# CONFIG_USB_SERIAL_IPAQ is not set
879# CONFIG_USB_SERIAL_IR is not set
880# CONFIG_USB_SERIAL_EDGEPORT is not set
881# CONFIG_USB_SERIAL_EDGEPORT_TI is not set
882# CONFIG_USB_SERIAL_GARMIN is not set
883# CONFIG_USB_SERIAL_IPW is not set
884# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set
885CONFIG_USB_SERIAL_KEYSPAN=y
886CONFIG_USB_SERIAL_KEYSPAN_MPR=y
887CONFIG_USB_SERIAL_KEYSPAN_USA28=y
888CONFIG_USB_SERIAL_KEYSPAN_USA28X=y
889CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y
890CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y
891CONFIG_USB_SERIAL_KEYSPAN_USA19=y
892CONFIG_USB_SERIAL_KEYSPAN_USA18X=y
893CONFIG_USB_SERIAL_KEYSPAN_USA19W=y
894CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y
895CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y
896CONFIG_USB_SERIAL_KEYSPAN_USA49W=y
897CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y
898# CONFIG_USB_SERIAL_KLSI is not set
899# CONFIG_USB_SERIAL_KOBIL_SCT is not set
900CONFIG_USB_SERIAL_MCT_U232=y
901# CONFIG_USB_SERIAL_PL2303 is not set
902# CONFIG_USB_SERIAL_HP4X is not set
903# CONFIG_USB_SERIAL_SAFE is not set
904# CONFIG_USB_SERIAL_TI is not set
905# CONFIG_USB_SERIAL_CYBERJACK is not set
906# CONFIG_USB_SERIAL_XIRCOM is not set
907# CONFIG_USB_SERIAL_OPTION is not set
908# CONFIG_USB_SERIAL_OMNINET is not set
909CONFIG_USB_EZUSB=y
910
911#
912# USB Miscellaneous drivers
913#
914# CONFIG_USB_EMI62 is not set
915# CONFIG_USB_EMI26 is not set
916# CONFIG_USB_AUERSWALD is not set
917# CONFIG_USB_RIO500 is not set
918# CONFIG_USB_LEGOTOWER is not set
919# CONFIG_USB_LCD is not set
920# CONFIG_USB_LED is not set
921# CONFIG_USB_CYTHERM is not set
922# CONFIG_USB_PHIDGETKIT is not set
923# CONFIG_USB_PHIDGETSERVO is not set
924# CONFIG_USB_IDMOUSE is not set
925# CONFIG_USB_LD is not set
926# CONFIG_USB_TEST is not set
927
928#
929# USB DSL modem support
930#
931
932#
933# USB Gadget Support
934#
935# CONFIG_USB_GADGET is not set
936
937#
938# MMC/SD Card support
939#
940# CONFIG_MMC is not set
941
942#
943# File systems
944#
945CONFIG_EXT2_FS=y
946# CONFIG_EXT2_FS_XATTR is not set
947# CONFIG_EXT2_FS_XIP is not set
948# CONFIG_EXT3_FS is not set
949# CONFIG_JBD is not set
950# CONFIG_REISERFS_FS is not set
951# CONFIG_JFS_FS is not set
952# CONFIG_FS_POSIX_ACL is not set
953# CONFIG_XFS_FS is not set
954# CONFIG_MINIX_FS is not set
955# CONFIG_ROMFS_FS is not set
956CONFIG_INOTIFY=y
957# CONFIG_QUOTA is not set
958CONFIG_DNOTIFY=y
959# CONFIG_AUTOFS_FS is not set
960# CONFIG_AUTOFS4_FS is not set
961# CONFIG_FUSE_FS is not set
962
963#
964# CD-ROM/DVD Filesystems
965#
966# CONFIG_ISO9660_FS is not set
967# CONFIG_UDF_FS is not set
968
969#
970# DOS/FAT/NT Filesystems
971#
972# CONFIG_MSDOS_FS is not set
973# CONFIG_VFAT_FS is not set
974# CONFIG_NTFS_FS is not set
975
976#
977# Pseudo filesystems
978#
979CONFIG_PROC_FS=y
980CONFIG_SYSFS=y
981CONFIG_TMPFS=y
982# CONFIG_HUGETLB_PAGE is not set
983CONFIG_RAMFS=y
984# CONFIG_RELAYFS_FS is not set
985
986#
987# Miscellaneous filesystems
988#
989# CONFIG_ADFS_FS is not set
990# CONFIG_AFFS_FS is not set
991# CONFIG_HFS_FS is not set
992# CONFIG_HFSPLUS_FS is not set
993# CONFIG_BEFS_FS is not set
994# CONFIG_BFS_FS is not set
995# CONFIG_EFS_FS is not set
996# CONFIG_JFFS_FS is not set
997# CONFIG_JFFS2_FS is not set
998CONFIG_CRAMFS=y
999# CONFIG_VXFS_FS is not set
1000# CONFIG_HPFS_FS is not set
1001# CONFIG_QNX4FS_FS is not set
1002# CONFIG_SYSV_FS is not set
1003# CONFIG_UFS_FS is not set
1004
1005#
1006# Network File Systems
1007#
1008CONFIG_NFS_FS=y
1009CONFIG_NFS_V3=y
1010# CONFIG_NFS_V3_ACL is not set
1011CONFIG_NFS_V4=y
1012# CONFIG_NFS_DIRECTIO is not set
1013# CONFIG_NFSD is not set
1014CONFIG_ROOT_NFS=y
1015CONFIG_LOCKD=y
1016CONFIG_LOCKD_V4=y
1017CONFIG_NFS_COMMON=y
1018CONFIG_SUNRPC=y
1019CONFIG_SUNRPC_GSS=y
1020CONFIG_RPCSEC_GSS_KRB5=y
1021# CONFIG_RPCSEC_GSS_SPKM3 is not set
1022# CONFIG_SMB_FS is not set
1023# CONFIG_CIFS is not set
1024# CONFIG_NCP_FS is not set
1025# CONFIG_CODA_FS is not set
1026# CONFIG_AFS_FS is not set
1027# CONFIG_9P_FS is not set
1028
1029#
1030# Partition Types
1031#
1032# CONFIG_PARTITION_ADVANCED is not set
1033CONFIG_MSDOS_PARTITION=y
1034
1035#
1036# Native Language Support
1037#
1038# CONFIG_NLS is not set
1039
1040#
1041# Profiling support
1042#
1043# CONFIG_PROFILING is not set
1044
1045#
1046# Kernel hacking
1047#
1048# CONFIG_PRINTK_TIME is not set
1049CONFIG_DEBUG_KERNEL=y
1050# CONFIG_MAGIC_SYSRQ is not set
1051CONFIG_LOG_BUF_SHIFT=14
1052CONFIG_DETECT_SOFTLOCKUP=y
1053# CONFIG_SCHEDSTATS is not set
1054# CONFIG_DEBUG_SLAB is not set
1055# CONFIG_DEBUG_SPINLOCK is not set
1056# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
1057# CONFIG_DEBUG_KOBJECT is not set
1058CONFIG_DEBUG_BUGVERBOSE=y
1059# CONFIG_DEBUG_INFO is not set
1060# CONFIG_DEBUG_FS is not set
1061# CONFIG_DEBUG_VM is not set
1062CONFIG_FRAME_POINTER=y
1063# CONFIG_RCU_TORTURE_TEST is not set
1064CONFIG_DEBUG_USER=y
1065# CONFIG_DEBUG_WAITQ is not set
1066# CONFIG_DEBUG_ERRORS is not set
1067CONFIG_DEBUG_LL=y
1068# CONFIG_DEBUG_ICEDCC is not set
1069
1070#
1071# Security options
1072#
1073# CONFIG_KEYS is not set
1074# CONFIG_SECURITY is not set
1075
1076#
1077# Cryptographic options
1078#
1079CONFIG_CRYPTO=y
1080# CONFIG_CRYPTO_HMAC is not set
1081# CONFIG_CRYPTO_NULL is not set
1082# CONFIG_CRYPTO_MD4 is not set
1083CONFIG_CRYPTO_MD5=y
1084# CONFIG_CRYPTO_SHA1 is not set
1085# CONFIG_CRYPTO_SHA256 is not set
1086# CONFIG_CRYPTO_SHA512 is not set
1087# CONFIG_CRYPTO_WP512 is not set
1088# CONFIG_CRYPTO_TGR192 is not set
1089CONFIG_CRYPTO_DES=y
1090# CONFIG_CRYPTO_BLOWFISH is not set
1091# CONFIG_CRYPTO_TWOFISH is not set
1092# CONFIG_CRYPTO_SERPENT is not set
1093# CONFIG_CRYPTO_AES is not set
1094# CONFIG_CRYPTO_CAST5 is not set
1095# CONFIG_CRYPTO_CAST6 is not set
1096# CONFIG_CRYPTO_TEA is not set
1097# CONFIG_CRYPTO_ARC4 is not set
1098# CONFIG_CRYPTO_KHAZAD is not set
1099# CONFIG_CRYPTO_ANUBIS is not set
1100# CONFIG_CRYPTO_DEFLATE is not set
1101# CONFIG_CRYPTO_MICHAEL_MIC is not set
1102# CONFIG_CRYPTO_CRC32C is not set
1103# CONFIG_CRYPTO_TEST is not set
1104
1105#
1106# Hardware crypto devices
1107#
1108
1109#
1110# Library routines
1111#
1112# CONFIG_CRC_CCITT is not set
1113# CONFIG_CRC16 is not set
1114CONFIG_CRC32=y
1115# CONFIG_LIBCRC32C is not set
1116CONFIG_ZLIB_INFLATE=y
diff --git a/arch/arm/kernel/ecard.c b/arch/arm/kernel/ecard.c
index dceb826bd216..96fd91926c9b 100644
--- a/arch/arm/kernel/ecard.c
+++ b/arch/arm/kernel/ecard.c
@@ -40,6 +40,7 @@
40#include <linux/proc_fs.h> 40#include <linux/proc_fs.h>
41#include <linux/device.h> 41#include <linux/device.h>
42#include <linux/init.h> 42#include <linux/init.h>
43#include <linux/mutex.h>
43 44
44#include <asm/dma.h> 45#include <asm/dma.h>
45#include <asm/ecard.h> 46#include <asm/ecard.h>
@@ -206,7 +207,7 @@ static void ecard_task_readbytes(struct ecard_request *req)
206 207
207static DECLARE_WAIT_QUEUE_HEAD(ecard_wait); 208static DECLARE_WAIT_QUEUE_HEAD(ecard_wait);
208static struct ecard_request *ecard_req; 209static struct ecard_request *ecard_req;
209static DECLARE_MUTEX(ecard_sem); 210static DEFINE_MUTEX(ecard_mutex);
210 211
211/* 212/*
212 * Set up the expansion card daemon's page tables. 213 * Set up the expansion card daemon's page tables.
@@ -299,7 +300,7 @@ static void ecard_call(struct ecard_request *req)
299 300
300 req->complete = &completion; 301 req->complete = &completion;
301 302
302 down(&ecard_sem); 303 mutex_lock(&ecard_mutex);
303 ecard_req = req; 304 ecard_req = req;
304 wake_up(&ecard_wait); 305 wake_up(&ecard_wait);
305 306
@@ -307,7 +308,7 @@ static void ecard_call(struct ecard_request *req)
307 * Now wait for kecardd to run. 308 * Now wait for kecardd to run.
308 */ 309 */
309 wait_for_completion(&completion); 310 wait_for_completion(&completion);
310 up(&ecard_sem); 311 mutex_unlock(&ecard_mutex);
311} 312}
312 313
313/* ======================= Mid-level card control ===================== */ 314/* ======================= Mid-level card control ===================== */
diff --git a/arch/arm/kernel/fiq.c b/arch/arm/kernel/fiq.c
index 9299dfc25698..1ec3f7faa259 100644
--- a/arch/arm/kernel/fiq.c
+++ b/arch/arm/kernel/fiq.c
@@ -101,7 +101,7 @@ void __attribute__((naked)) set_fiq_regs(struct pt_regs *regs)
101 ldmia %1, {r8 - r14}\n\ 101 ldmia %1, {r8 - r14}\n\
102 msr cpsr_c, %0 @ return to SVC mode\n\ 102 msr cpsr_c, %0 @ return to SVC mode\n\
103 mov r0, r0\n\ 103 mov r0, r0\n\
104 ldmea fp, {fp, sp, pc}" 104 ldmfd sp, {fp, sp, pc}"
105 : "=&r" (tmp) 105 : "=&r" (tmp)
106 : "r" (&regs->ARM_r8), "I" (PSR_I_BIT | PSR_F_BIT | FIQ_MODE)); 106 : "r" (&regs->ARM_r8), "I" (PSR_I_BIT | PSR_F_BIT | FIQ_MODE));
107} 107}
@@ -119,7 +119,7 @@ void __attribute__((naked)) get_fiq_regs(struct pt_regs *regs)
119 stmia %1, {r8 - r14}\n\ 119 stmia %1, {r8 - r14}\n\
120 msr cpsr_c, %0 @ return to SVC mode\n\ 120 msr cpsr_c, %0 @ return to SVC mode\n\
121 mov r0, r0\n\ 121 mov r0, r0\n\
122 ldmea fp, {fp, sp, pc}" 122 ldmfd sp, {fp, sp, pc}"
123 : "=&r" (tmp) 123 : "=&r" (tmp)
124 : "r" (&regs->ARM_r8), "I" (PSR_I_BIT | PSR_F_BIT | FIQ_MODE)); 124 : "r" (&regs->ARM_r8), "I" (PSR_I_BIT | PSR_F_BIT | FIQ_MODE));
125} 125}
diff --git a/arch/arm/kernel/setup.c b/arch/arm/kernel/setup.c
index 2cab741ad0f8..c45d10d07bde 100644
--- a/arch/arm/kernel/setup.c
+++ b/arch/arm/kernel/setup.c
@@ -205,7 +205,7 @@ static const char *proc_arch[] = {
205 "5TE", 205 "5TE",
206 "5TEJ", 206 "5TEJ",
207 "6TEJ", 207 "6TEJ",
208 "?(10)", 208 "7",
209 "?(11)", 209 "?(11)",
210 "?(12)", 210 "?(12)",
211 "?(13)", 211 "?(13)",
@@ -258,14 +258,17 @@ int cpu_architecture(void)
258{ 258{
259 int cpu_arch; 259 int cpu_arch;
260 260
261 if ((processor_id & 0x0000f000) == 0) { 261 if ((processor_id & 0x0008f000) == 0) {
262 cpu_arch = CPU_ARCH_UNKNOWN; 262 cpu_arch = CPU_ARCH_UNKNOWN;
263 } else if ((processor_id & 0x0000f000) == 0x00007000) { 263 } else if ((processor_id & 0x0008f000) == 0x00007000) {
264 cpu_arch = (processor_id & (1 << 23)) ? CPU_ARCH_ARMv4T : CPU_ARCH_ARMv3; 264 cpu_arch = (processor_id & (1 << 23)) ? CPU_ARCH_ARMv4T : CPU_ARCH_ARMv3;
265 } else { 265 } else if ((processor_id & 0x00080000) == 0x00000000) {
266 cpu_arch = (processor_id >> 16) & 7; 266 cpu_arch = (processor_id >> 16) & 7;
267 if (cpu_arch) 267 if (cpu_arch)
268 cpu_arch += CPU_ARCH_ARMv3; 268 cpu_arch += CPU_ARCH_ARMv3;
269 } else {
270 /* the revised CPUID */
271 cpu_arch = ((processor_id >> 12) & 0xf) - 0xb + CPU_ARCH_ARMv6;
269 } 272 }
270 273
271 return cpu_arch; 274 return cpu_arch;
@@ -863,11 +866,11 @@ static int c_show(struct seq_file *m, void *v)
863 seq_printf(m, "\nCPU implementer\t: 0x%02x\n", processor_id >> 24); 866 seq_printf(m, "\nCPU implementer\t: 0x%02x\n", processor_id >> 24);
864 seq_printf(m, "CPU architecture: %s\n", proc_arch[cpu_architecture()]); 867 seq_printf(m, "CPU architecture: %s\n", proc_arch[cpu_architecture()]);
865 868
866 if ((processor_id & 0x0000f000) == 0x00000000) { 869 if ((processor_id & 0x0008f000) == 0x00000000) {
867 /* pre-ARM7 */ 870 /* pre-ARM7 */
868 seq_printf(m, "CPU part\t\t: %07x\n", processor_id >> 4); 871 seq_printf(m, "CPU part\t\t: %07x\n", processor_id >> 4);
869 } else { 872 } else {
870 if ((processor_id & 0x0000f000) == 0x00007000) { 873 if ((processor_id & 0x0008f000) == 0x00007000) {
871 /* ARM7 */ 874 /* ARM7 */
872 seq_printf(m, "CPU variant\t: 0x%02x\n", 875 seq_printf(m, "CPU variant\t: 0x%02x\n",
873 (processor_id >> 16) & 127); 876 (processor_id >> 16) & 127);
diff --git a/arch/arm/lib/csumpartialcopy.S b/arch/arm/lib/csumpartialcopy.S
index 990ee63b2465..21effe0dbf97 100644
--- a/arch/arm/lib/csumpartialcopy.S
+++ b/arch/arm/lib/csumpartialcopy.S
@@ -18,11 +18,13 @@
18 */ 18 */
19 19
20 .macro save_regs 20 .macro save_regs
21 mov ip, sp
21 stmfd sp!, {r1, r4 - r8, fp, ip, lr, pc} 22 stmfd sp!, {r1, r4 - r8, fp, ip, lr, pc}
23 sub fp, ip, #4
22 .endm 24 .endm
23 25
24 .macro load_regs,flags 26 .macro load_regs
25 LOADREGS(\flags,fp,{r1, r4 - r8, fp, sp, pc}) 27 ldmfd sp, {r1, r4 - r8, fp, sp, pc}
26 .endm 28 .endm
27 29
28 .macro load1b, reg1 30 .macro load1b, reg1
diff --git a/arch/arm/lib/csumpartialcopygeneric.S b/arch/arm/lib/csumpartialcopygeneric.S
index 4a4609c19095..c50e8f5285d1 100644
--- a/arch/arm/lib/csumpartialcopygeneric.S
+++ b/arch/arm/lib/csumpartialcopygeneric.S
@@ -23,7 +23,7 @@ len .req r2
23sum .req r3 23sum .req r3
24 24
25.Lzero: mov r0, sum 25.Lzero: mov r0, sum
26 load_regs ea 26 load_regs
27 27
28 /* 28 /*
29 * Align an unaligned destination pointer. We know that 29 * Align an unaligned destination pointer. We know that
@@ -87,9 +87,7 @@ sum .req r3
87 b .Ldone 87 b .Ldone
88 88
89FN_ENTRY 89FN_ENTRY
90 mov ip, sp
91 save_regs 90 save_regs
92 sub fp, ip, #4
93 91
94 cmp len, #8 @ Ensure that we have at least 92 cmp len, #8 @ Ensure that we have at least
95 blo .Lless8 @ 8 bytes to copy. 93 blo .Lless8 @ 8 bytes to copy.
@@ -163,7 +161,7 @@ FN_ENTRY
163 ldr sum, [sp, #0] @ dst 161 ldr sum, [sp, #0] @ dst
164 tst sum, #1 162 tst sum, #1
165 movne r0, r0, ror #8 163 movne r0, r0, ror #8
166 load_regs ea 164 load_regs
167 165
168.Lsrc_not_aligned: 166.Lsrc_not_aligned:
169 adc sum, sum, #0 @ include C from dst alignment 167 adc sum, sum, #0 @ include C from dst alignment
diff --git a/arch/arm/lib/csumpartialcopyuser.S b/arch/arm/lib/csumpartialcopyuser.S
index 333bca292de9..c3b93e22ea25 100644
--- a/arch/arm/lib/csumpartialcopyuser.S
+++ b/arch/arm/lib/csumpartialcopyuser.S
@@ -18,11 +18,13 @@
18 .text 18 .text
19 19
20 .macro save_regs 20 .macro save_regs
21 mov ip, sp
21 stmfd sp!, {r1 - r2, r4 - r8, fp, ip, lr, pc} 22 stmfd sp!, {r1 - r2, r4 - r8, fp, ip, lr, pc}
23 sub fp, ip, #4
22 .endm 24 .endm
23 25
24 .macro load_regs,flags 26 .macro load_regs
25 ldm\flags fp, {r1, r2, r4-r8, fp, sp, pc} 27 ldmfd sp, {r1, r2, r4-r8, fp, sp, pc}
26 .endm 28 .endm
27 29
28 .macro load1b, reg1 30 .macro load1b, reg1
@@ -100,5 +102,5 @@
1006002: teq r2, r1 1026002: teq r2, r1
101 strneb r0, [r1], #1 103 strneb r0, [r1], #1
102 bne 6002b 104 bne 6002b
103 load_regs ea 105 load_regs
104 .previous 106 .previous
diff --git a/arch/arm/mach-aaec2000/clock.c b/arch/arm/mach-aaec2000/clock.c
index 1c84c60941e1..74aa7a39bb68 100644
--- a/arch/arm/mach-aaec2000/clock.c
+++ b/arch/arm/mach-aaec2000/clock.c
@@ -16,26 +16,27 @@
16#include <linux/err.h> 16#include <linux/err.h>
17#include <linux/string.h> 17#include <linux/string.h>
18#include <linux/clk.h> 18#include <linux/clk.h>
19#include <linux/mutex.h>
19 20
20#include <asm/semaphore.h> 21#include <asm/semaphore.h>
21 22
22#include "clock.h" 23#include "clock.h"
23 24
24static LIST_HEAD(clocks); 25static LIST_HEAD(clocks);
25static DECLARE_MUTEX(clocks_sem); 26static DEFINE_MUTEX(clocks_mutex);
26 27
27struct clk *clk_get(struct device *dev, const char *id) 28struct clk *clk_get(struct device *dev, const char *id)
28{ 29{
29 struct clk *p, *clk = ERR_PTR(-ENOENT); 30 struct clk *p, *clk = ERR_PTR(-ENOENT);
30 31
31 down(&clocks_sem); 32 mutex_lock(&clocks_mutex);
32 list_for_each_entry(p, &clocks, node) { 33 list_for_each_entry(p, &clocks, node) {
33 if (strcmp(id, p->name) == 0 && try_module_get(p->owner)) { 34 if (strcmp(id, p->name) == 0 && try_module_get(p->owner)) {
34 clk = p; 35 clk = p;
35 break; 36 break;
36 } 37 }
37 } 38 }
38 up(&clocks_sem); 39 mutex_unlock(&clocks_mutex);
39 40
40 return clk; 41 return clk;
41} 42}
@@ -78,18 +79,18 @@ EXPORT_SYMBOL(clk_set_rate);
78 79
79int clk_register(struct clk *clk) 80int clk_register(struct clk *clk)
80{ 81{
81 down(&clocks_sem); 82 mutex_lock(&clocks_mutex);
82 list_add(&clk->node, &clocks); 83 list_add(&clk->node, &clocks);
83 up(&clocks_sem); 84 mutex_unlock(&clocks_mutex);
84 return 0; 85 return 0;
85} 86}
86EXPORT_SYMBOL(clk_register); 87EXPORT_SYMBOL(clk_register);
87 88
88void clk_unregister(struct clk *clk) 89void clk_unregister(struct clk *clk)
89{ 90{
90 down(&clocks_sem); 91 mutex_lock(&clocks_mutex);
91 list_del(&clk->node); 92 list_del(&clk->node);
92 up(&clocks_sem); 93 mutex_unlock(&clocks_mutex);
93} 94}
94EXPORT_SYMBOL(clk_unregister); 95EXPORT_SYMBOL(clk_unregister);
95 96
diff --git a/arch/arm/mach-at91rm9200/Makefile b/arch/arm/mach-at91rm9200/Makefile
index 1f2805ca6e21..75e6ee318ded 100644
--- a/arch/arm/mach-at91rm9200/Makefile
+++ b/arch/arm/mach-at91rm9200/Makefile
@@ -8,10 +8,10 @@ obj-n :=
8obj- := 8obj- :=
9 9
10# Board-specific support 10# Board-specific support
11#obj-$(CONFIG_ARCH_AT91RM9200DK) += board-dk.o 11obj-$(CONFIG_ARCH_AT91RM9200DK) += board-dk.o
12#obj-$(CONFIG_MACH_AT91RM9200EK) += board-ek.o 12obj-$(CONFIG_MACH_AT91RM9200EK) += board-ek.o
13#obj-$(CONFIG_MACH_CSB337) += board-csb337.o 13obj-$(CONFIG_MACH_CSB337) += board-csb337.o
14#obj-$(CONFIG_MACH_CSB637) += board-csb637.o 14obj-$(CONFIG_MACH_CSB637) += board-csb637.o
15#obj-$(CONFIG_MACH_CARMEVA) += board-carmeva.o 15#obj-$(CONFIG_MACH_CARMEVA) += board-carmeva.o
16#obj-$(CONFIG_MACH_KB9200) += board-kb9202.o 16#obj-$(CONFIG_MACH_KB9200) += board-kb9202.o
17 17
diff --git a/arch/arm/mach-at91rm9200/board-csb337.c b/arch/arm/mach-at91rm9200/board-csb337.c
new file mode 100644
index 000000000000..4aec834ee47f
--- /dev/null
+++ b/arch/arm/mach-at91rm9200/board-csb337.c
@@ -0,0 +1,143 @@
1/*
2 * linux/arch/arm/mach-at91rm9200/board-csb337.c
3 *
4 * Copyright (C) 2005 SAN People
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 */
20
21#include <linux/config.h>
22#include <linux/types.h>
23#include <linux/init.h>
24#include <linux/mm.h>
25#include <linux/module.h>
26#include <linux/platform_device.h>
27
28#include <asm/hardware.h>
29#include <asm/setup.h>
30#include <asm/mach-types.h>
31#include <asm/irq.h>
32
33#include <asm/mach/arch.h>
34#include <asm/mach/map.h>
35#include <asm/mach/irq.h>
36
37#include <asm/arch/hardware.h>
38#include <asm/mach/serial_at91rm9200.h>
39#include <asm/arch/board.h>
40
41#include "generic.h"
42
43static void __init csb337_init_irq(void)
44{
45 /* Initialize AIC controller */
46 at91rm9200_init_irq(NULL);
47
48 /* Set up the GPIO interrupts */
49 at91_gpio_irq_setup(BGA_GPIO_BANKS);
50}
51
52/*
53 * Serial port configuration.
54 * 0 .. 3 = USART0 .. USART3
55 * 4 = DBGU
56 */
57#define CSB337_UART_MAP { 4, 1, -1, -1, -1 } /* ttyS0, ..., ttyS4 */
58#define CSB337_SERIAL_CONSOLE 0 /* ttyS0 */
59
60static void __init csb337_map_io(void)
61{
62 int serial[AT91_NR_UART] = CSB337_UART_MAP;
63 int i;
64
65 at91rm9200_map_io();
66
67 /* Initialize clocks: 3.6864 MHz crystal */
68 at91_clock_init(3686400);
69
70#ifdef CONFIG_SERIAL_AT91
71 at91_console_port = CSB337_SERIAL_CONSOLE;
72 memcpy(at91_serial_map, serial, sizeof(serial));
73
74 /* Register UARTs */
75 for (i = 0; i < AT91_NR_UART; i++) {
76 if (serial[i] >= 0)
77 at91_register_uart(i, serial[i]);
78 }
79#endif
80}
81
82static struct at91_eth_data __initdata csb337_eth_data = {
83 .phy_irq_pin = AT91_PIN_PC2,
84 .is_rmii = 0,
85};
86
87static struct at91_usbh_data __initdata csb337_usbh_data = {
88 .ports = 2,
89};
90
91static struct at91_udc_data __initdata csb337_udc_data = {
92 // this has no VBUS sensing pin
93 .pullup_pin = AT91_PIN_PA24,
94};
95
96static struct at91_cf_data __initdata csb337_cf_data = {
97 /*
98 * connector P4 on the CSB 337 mates to
99 * connector P8 on the CSB 300CF
100 */
101
102 /* CSB337 specific */
103 .det_pin = AT91_PIN_PC3,
104
105 /* CSB300CF specific */
106 .irq_pin = AT91_PIN_PA19,
107 .vcc_pin = AT91_PIN_PD0,
108 .rst_pin = AT91_PIN_PD2,
109};
110
111static struct at91_mmc_data __initdata csb337_mmc_data = {
112 .det_pin = AT91_PIN_PD5,
113 .is_b = 0,
114 .wire4 = 1,
115 .wp_pin = AT91_PIN_PD6,
116};
117
118static void __init csb337_board_init(void)
119{
120 /* Ethernet */
121 at91_add_device_eth(&csb337_eth_data);
122 /* USB Host */
123 at91_add_device_usbh(&csb337_usbh_data);
124 /* USB Device */
125 at91_add_device_udc(&csb337_udc_data);
126 /* Compact Flash */
127 at91_set_gpio_input(AT91_PIN_PB22, 1); /* IOIS16 */
128 at91_add_device_cf(&csb337_cf_data);
129 /* MMC */
130 at91_add_device_mmc(&csb337_mmc_data);
131}
132
133MACHINE_START(CSB337, "Cogent CSB337")
134 /* Maintainer: Bill Gatliff */
135 .phys_ram = AT91_SDRAM_BASE,
136 .phys_io = AT91_BASE_SYS,
137 .io_pg_offst = (AT91_VA_BASE_SYS >> 18) & 0xfffc,
138 .boot_params = AT91_SDRAM_BASE + 0x100,
139 .timer = &at91rm9200_timer,
140 .map_io = csb337_map_io,
141 .init_irq = csb337_init_irq,
142 .init_machine = csb337_board_init,
143MACHINE_END
diff --git a/arch/arm/mach-at91rm9200/board-csb637.c b/arch/arm/mach-at91rm9200/board-csb637.c
new file mode 100644
index 000000000000..23e4cc21481a
--- /dev/null
+++ b/arch/arm/mach-at91rm9200/board-csb637.c
@@ -0,0 +1,116 @@
1/*
2 * linux/arch/arm/mach-at91rm9200/board-csb637.c
3 *
4 * Copyright (C) 2005 SAN People
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 */
20
21#include <linux/config.h>
22#include <linux/types.h>
23#include <linux/init.h>
24#include <linux/mm.h>
25#include <linux/module.h>
26#include <linux/platform_device.h>
27
28#include <asm/hardware.h>
29#include <asm/setup.h>
30#include <asm/mach-types.h>
31#include <asm/irq.h>
32
33#include <asm/mach/arch.h>
34#include <asm/mach/map.h>
35#include <asm/mach/irq.h>
36
37#include <asm/arch/hardware.h>
38#include <asm/mach/serial_at91rm9200.h>
39#include <asm/arch/board.h>
40
41#include "generic.h"
42
43static void __init csb637_init_irq(void)
44{
45 /* Initialize AIC controller */
46 at91rm9200_init_irq(NULL);
47
48 /* Set up the GPIO interrupts */
49 at91_gpio_irq_setup(BGA_GPIO_BANKS);
50}
51
52/*
53 * Serial port configuration.
54 * 0 .. 3 = USART0 .. USART3
55 * 4 = DBGU
56 */
57#define CSB637_UART_MAP { 4, 1, -1, -1, -1 } /* ttyS0, ..., ttyS4 */
58#define CSB637_SERIAL_CONSOLE 0 /* ttyS0 */
59
60static void __init csb637_map_io(void)
61{
62 int serial[AT91_NR_UART] = CSB637_UART_MAP;
63 int i;
64
65 at91rm9200_map_io();
66
67 /* Initialize clocks: 3.6864 MHz crystal */
68 at91_clock_init(3686400);
69
70#ifdef CONFIG_SERIAL_AT91
71 at91_console_port = CSB637_SERIAL_CONSOLE;
72 memcpy(at91_serial_map, serial, sizeof(serial));
73
74 /* Register UARTs */
75 for (i = 0; i < AT91_NR_UART; i++) {
76 if (serial[i] >= 0)
77 at91_register_uart(i, serial[i]);
78 }
79#endif
80}
81
82static struct at91_eth_data __initdata csb637_eth_data = {
83 .phy_irq_pin = AT91_PIN_PC0,
84 .is_rmii = 0,
85};
86
87static struct at91_usbh_data __initdata csb637_usbh_data = {
88 .ports = 2,
89};
90
91static struct at91_udc_data __initdata csb637_udc_data = {
92 .vbus_pin = AT91_PIN_PB28,
93 .pullup_pin = AT91_PIN_PB1,
94};
95
96static void __init csb637_board_init(void)
97{
98 /* Ethernet */
99 at91_add_device_eth(&csb637_eth_data);
100 /* USB Host */
101 at91_add_device_usbh(&csb637_usbh_data);
102 /* USB Device */
103 at91_add_device_udc(&csb637_udc_data);
104}
105
106MACHINE_START(CSB637, "Cogent CSB637")
107 /* Maintainer: Bill Gatliff */
108 .phys_ram = AT91_SDRAM_BASE,
109 .phys_io = AT91_BASE_SYS,
110 .io_pg_offst = (AT91_VA_BASE_SYS >> 18) & 0xfffc,
111 .boot_params = AT91_SDRAM_BASE + 0x100,
112 .timer = &at91rm9200_timer,
113 .map_io = csb637_map_io,
114 .init_irq = csb637_init_irq,
115 .init_machine = csb637_board_init,
116MACHINE_END
diff --git a/arch/arm/mach-at91rm9200/board-dk.c b/arch/arm/mach-at91rm9200/board-dk.c
new file mode 100644
index 000000000000..8c747a31b95a
--- /dev/null
+++ b/arch/arm/mach-at91rm9200/board-dk.c
@@ -0,0 +1,138 @@
1/*
2 * linux/arch/arm/mach-at91rm9200/board-dk.c
3 *
4 * Copyright (C) 2005 SAN People
5 *
6 * Epson S1D framebuffer glue code is:
7 * Copyright (C) 2005 Thibaut VARENE <varenet@parisc-linux.org>
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License, or
12 * (at your option) any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with this program; if not, write to the Free Software
21 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
22 */
23
24#include <linux/config.h>
25#include <linux/types.h>
26#include <linux/init.h>
27#include <linux/mm.h>
28#include <linux/module.h>
29#include <linux/platform_device.h>
30
31#include <asm/hardware.h>
32#include <asm/setup.h>
33#include <asm/mach-types.h>
34#include <asm/irq.h>
35
36#include <asm/mach/arch.h>
37#include <asm/mach/map.h>
38#include <asm/mach/irq.h>
39
40#include <asm/arch/hardware.h>
41#include <asm/mach/serial_at91rm9200.h>
42#include <asm/arch/board.h>
43
44#include "generic.h"
45
46static void __init dk_init_irq(void)
47{
48 /* Initialize AIC controller */
49 at91rm9200_init_irq(NULL);
50
51 /* Set up the GPIO interrupts */
52 at91_gpio_irq_setup(BGA_GPIO_BANKS);
53}
54
55/*
56 * Serial port configuration.
57 * 0 .. 3 = USART0 .. USART3
58 * 4 = DBGU
59 */
60#define DK_UART_MAP { 4, 1, -1, -1, -1 } /* ttyS0, ..., ttyS4 */
61#define DK_SERIAL_CONSOLE 0 /* ttyS0 */
62
63static void __init dk_map_io(void)
64{
65 int serial[AT91_NR_UART] = DK_UART_MAP;
66 int i;
67
68 at91rm9200_map_io();
69
70 /* Initialize clocks: 18.432 MHz crystal */
71 at91_clock_init(18432000);
72
73#ifdef CONFIG_SERIAL_AT91
74 at91_console_port = DK_SERIAL_CONSOLE;
75 memcpy(at91_serial_map, serial, sizeof(serial));
76
77 /* Register UARTs */
78 for (i = 0; i < AT91_NR_UART; i++) {
79 if (at91_serial_map[i] >= 0)
80 at91_register_uart(i, at91_serial_map[i]);
81 }
82#endif
83}
84
85static struct at91_eth_data __initdata dk_eth_data = {
86 .phy_irq_pin = AT91_PIN_PC4,
87 .is_rmii = 1,
88};
89
90static struct at91_usbh_data __initdata dk_usbh_data = {
91 .ports = 2,
92};
93
94static struct at91_udc_data __initdata dk_udc_data = {
95 .vbus_pin = AT91_PIN_PD4,
96 .pullup_pin = AT91_PIN_PD5,
97};
98
99static struct at91_cf_data __initdata dk_cf_data = {
100 .det_pin = AT91_PIN_PB0,
101 .rst_pin = AT91_PIN_PC5,
102 // .irq_pin = ... not connected
103 // .vcc_pin = ... always powered
104};
105
106static struct at91_mmc_data __initdata dk_mmc_data = {
107 .is_b = 0,
108 .wire4 = 1,
109};
110
111static void __init dk_board_init(void)
112{
113 /* Ethernet */
114 at91_add_device_eth(&dk_eth_data);
115 /* USB Host */
116 at91_add_device_usbh(&dk_usbh_data);
117 /* USB Device */
118 at91_add_device_udc(&dk_udc_data);
119 /* Compact Flash */
120 at91_add_device_cf(&dk_cf_data);
121 /* MMC */
122 at91_set_gpio_output(AT91_PIN_PB7, 1); /* this MMC card slot can optionally use SPI signaling (CS3). default: MMC */
123 at91_add_device_mmc(&dk_mmc_data);
124 /* VGA */
125// dk_add_device_video();
126}
127
128MACHINE_START(AT91RM9200DK, "Atmel AT91RM9200-DK")
129 /* Maintainer: SAN People/Atmel */
130 .phys_ram = AT91_SDRAM_BASE,
131 .phys_io = AT91_BASE_SYS,
132 .io_pg_offst = (AT91_VA_BASE_SYS >> 18) & 0xfffc,
133 .boot_params = AT91_SDRAM_BASE + 0x100,
134 .timer = &at91rm9200_timer,
135 .map_io = dk_map_io,
136 .init_irq = dk_init_irq,
137 .init_machine = dk_board_init,
138MACHINE_END
diff --git a/arch/arm/mach-at91rm9200/board-ek.c b/arch/arm/mach-at91rm9200/board-ek.c
new file mode 100644
index 000000000000..d140645711be
--- /dev/null
+++ b/arch/arm/mach-at91rm9200/board-ek.c
@@ -0,0 +1,131 @@
1/*
2 * linux/arch/arm/mach-at91rm9200/board-ek.c
3 *
4 * Copyright (C) 2005 SAN People
5 *
6 * Epson S1D framebuffer glue code is:
7 * Copyright (C) 2005 Thibaut VARENE <varenet@parisc-linux.org>
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License, or
12 * (at your option) any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with this program; if not, write to the Free Software
21 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
22 */
23
24#include <linux/config.h>
25#include <linux/types.h>
26#include <linux/init.h>
27#include <linux/mm.h>
28#include <linux/module.h>
29#include <linux/platform_device.h>
30
31#include <asm/hardware.h>
32#include <asm/setup.h>
33#include <asm/mach-types.h>
34#include <asm/irq.h>
35
36#include <asm/mach/arch.h>
37#include <asm/mach/map.h>
38#include <asm/mach/irq.h>
39
40#include <asm/arch/hardware.h>
41#include <asm/mach/serial_at91rm9200.h>
42#include <asm/arch/board.h>
43
44#include "generic.h"
45
46static void __init ek_init_irq(void)
47{
48 /* Initialize AIC controller */
49 at91rm9200_init_irq(NULL);
50
51 /* Set up the GPIO interrupts */
52 at91_gpio_irq_setup(BGA_GPIO_BANKS);
53}
54
55/*
56 * Serial port configuration.
57 * 0 .. 3 = USART0 .. USART3
58 * 4 = DBGU
59 */
60#define EK_UART_MAP { 4, 1, -1, -1, -1 } /* ttyS0, ..., ttyS4 */
61#define EK_SERIAL_CONSOLE 0 /* ttyS0 */
62
63static void __init ek_map_io(void)
64{
65 int serial[AT91_NR_UART] = EK_UART_MAP;
66 int i;
67
68 at91rm9200_map_io();
69
70 /* Initialize clocks: 18.432 MHz crystal */
71 at91_clock_init(18432000);
72
73#ifdef CONFIG_SERIAL_AT91
74 at91_console_port = EK_SERIAL_CONSOLE;
75 memcpy(at91_serial_map, serial, sizeof(serial));
76
77 /* Register UARTs */
78 for (i = 0; i < AT91_NR_UART; i++) {
79 if (serial[i] >= 0)
80 at91_register_uart(i, serial[i]);
81 }
82#endif
83}
84
85static struct at91_eth_data __initdata ek_eth_data = {
86 .phy_irq_pin = AT91_PIN_PC4,
87 .is_rmii = 1,
88};
89
90static struct at91_usbh_data __initdata ek_usbh_data = {
91 .ports = 2,
92};
93
94static struct at91_udc_data __initdata ek_udc_data = {
95 .vbus_pin = AT91_PIN_PD4,
96 .pullup_pin = AT91_PIN_PD5,
97};
98
99static struct at91_mmc_data __initdata ek_mmc_data = {
100 .det_pin = AT91_PIN_PB27,
101 .is_b = 0,
102 .wire4 = 1,
103 .wp_pin = AT91_PIN_PA17,
104};
105
106static void __init ek_board_init(void)
107{
108 /* Ethernet */
109 at91_add_device_eth(&ek_eth_data);
110 /* USB Host */
111 at91_add_device_usbh(&ek_usbh_data);
112 /* USB Device */
113 at91_add_device_udc(&ek_udc_data);
114 /* MMC */
115 at91_set_gpio_output(AT91_PIN_PB22, 1); /* this MMC card slot can optionally use SPI signaling (CS3). default: MMC */
116 at91_add_device_mmc(&ek_mmc_data);
117 /* VGA */
118// ek_add_device_video();
119}
120
121MACHINE_START(AT91RM9200EK, "Atmel AT91RM9200-EK")
122 /* Maintainer: SAN People/Atmel */
123 .phys_ram = AT91_SDRAM_BASE,
124 .phys_io = AT91_BASE_SYS,
125 .io_pg_offst = (AT91_VA_BASE_SYS >> 18) & 0xfffc,
126 .boot_params = AT91_SDRAM_BASE + 0x100,
127 .timer = &at91rm9200_timer,
128 .map_io = ek_map_io,
129 .init_irq = ek_init_irq,
130 .init_machine = ek_board_init,
131MACHINE_END
diff --git a/arch/arm/mach-integrator/clock.c b/arch/arm/mach-integrator/clock.c
index 40684e01e865..95a1e263f7fa 100644
--- a/arch/arm/mach-integrator/clock.c
+++ b/arch/arm/mach-integrator/clock.c
@@ -15,6 +15,7 @@
15#include <linux/err.h> 15#include <linux/err.h>
16#include <linux/string.h> 16#include <linux/string.h>
17#include <linux/clk.h> 17#include <linux/clk.h>
18#include <linux/mutex.h>
18 19
19#include <asm/semaphore.h> 20#include <asm/semaphore.h>
20#include <asm/hardware/icst525.h> 21#include <asm/hardware/icst525.h>
@@ -22,20 +23,20 @@
22#include "clock.h" 23#include "clock.h"
23 24
24static LIST_HEAD(clocks); 25static LIST_HEAD(clocks);
25static DECLARE_MUTEX(clocks_sem); 26static DEFINE_MUTEX(clocks_mutex);
26 27
27struct clk *clk_get(struct device *dev, const char *id) 28struct clk *clk_get(struct device *dev, const char *id)
28{ 29{
29 struct clk *p, *clk = ERR_PTR(-ENOENT); 30 struct clk *p, *clk = ERR_PTR(-ENOENT);
30 31
31 down(&clocks_sem); 32 mutex_lock(&clocks_mutex);
32 list_for_each_entry(p, &clocks, node) { 33 list_for_each_entry(p, &clocks, node) {
33 if (strcmp(id, p->name) == 0 && try_module_get(p->owner)) { 34 if (strcmp(id, p->name) == 0 && try_module_get(p->owner)) {
34 clk = p; 35 clk = p;
35 break; 36 break;
36 } 37 }
37 } 38 }
38 up(&clocks_sem); 39 mutex_unlock(&clocks_mutex);
39 40
40 return clk; 41 return clk;
41} 42}
@@ -107,18 +108,18 @@ static struct clk uart_clk = {
107 108
108int clk_register(struct clk *clk) 109int clk_register(struct clk *clk)
109{ 110{
110 down(&clocks_sem); 111 mutex_lock(&clocks_mutex);
111 list_add(&clk->node, &clocks); 112 list_add(&clk->node, &clocks);
112 up(&clocks_sem); 113 mutex_unlock(&clocks_mutex);
113 return 0; 114 return 0;
114} 115}
115EXPORT_SYMBOL(clk_register); 116EXPORT_SYMBOL(clk_register);
116 117
117void clk_unregister(struct clk *clk) 118void clk_unregister(struct clk *clk)
118{ 119{
119 down(&clocks_sem); 120 mutex_lock(&clocks_mutex);
120 list_del(&clk->node); 121 list_del(&clk->node);
121 up(&clocks_sem); 122 mutex_unlock(&clocks_mutex);
122} 123}
123EXPORT_SYMBOL(clk_unregister); 124EXPORT_SYMBOL(clk_unregister);
124 125
diff --git a/arch/arm/mach-pxa/ssp.c b/arch/arm/mach-pxa/ssp.c
index a68b30eff4d2..93096befd017 100644
--- a/arch/arm/mach-pxa/ssp.c
+++ b/arch/arm/mach-pxa/ssp.c
@@ -31,6 +31,7 @@
31#include <linux/interrupt.h> 31#include <linux/interrupt.h>
32#include <linux/ioport.h> 32#include <linux/ioport.h>
33#include <linux/init.h> 33#include <linux/init.h>
34#include <linux/mutex.h>
34#include <asm/io.h> 35#include <asm/io.h>
35#include <asm/irq.h> 36#include <asm/irq.h>
36#include <asm/hardware.h> 37#include <asm/hardware.h>
@@ -59,7 +60,7 @@ static const struct ssp_info_ ssp_info[PXA_SSP_PORTS] = {
59#endif 60#endif
60}; 61};
61 62
62static DECLARE_MUTEX(sem); 63static DEFINE_MUTEX(mutex);
63static int use_count[PXA_SSP_PORTS] = {0, 0, 0}; 64static int use_count[PXA_SSP_PORTS] = {0, 0, 0};
64 65
65static irqreturn_t ssp_interrupt(int irq, void *dev_id, struct pt_regs *regs) 66static irqreturn_t ssp_interrupt(int irq, void *dev_id, struct pt_regs *regs)
@@ -239,16 +240,16 @@ int ssp_init(struct ssp_dev *dev, u32 port, u32 init_flags)
239 if (port > PXA_SSP_PORTS || port == 0) 240 if (port > PXA_SSP_PORTS || port == 0)
240 return -ENODEV; 241 return -ENODEV;
241 242
242 down(&sem); 243 mutex_lock(&mutex);
243 if (use_count[port - 1]) { 244 if (use_count[port - 1]) {
244 up(&sem); 245 mutex_unlock(&mutex);
245 return -EBUSY; 246 return -EBUSY;
246 } 247 }
247 use_count[port - 1]++; 248 use_count[port - 1]++;
248 249
249 if (!request_mem_region(__PREG(SSCR0_P(port)), 0x2c, "SSP")) { 250 if (!request_mem_region(__PREG(SSCR0_P(port)), 0x2c, "SSP")) {
250 use_count[port - 1]--; 251 use_count[port - 1]--;
251 up(&sem); 252 mutex_unlock(&mutex);
252 return -EBUSY; 253 return -EBUSY;
253 } 254 }
254 dev->port = port; 255 dev->port = port;
@@ -265,13 +266,13 @@ int ssp_init(struct ssp_dev *dev, u32 port, u32 init_flags)
265 266
266 /* turn on SSP port clock */ 267 /* turn on SSP port clock */
267 pxa_set_cken(ssp_info[port-1].clock, 1); 268 pxa_set_cken(ssp_info[port-1].clock, 1);
268 up(&sem); 269 mutex_unlock(&mutex);
269 return 0; 270 return 0;
270 271
271out_region: 272out_region:
272 release_mem_region(__PREG(SSCR0_P(port)), 0x2c); 273 release_mem_region(__PREG(SSCR0_P(port)), 0x2c);
273 use_count[port - 1]--; 274 use_count[port - 1]--;
274 up(&sem); 275 mutex_unlock(&mutex);
275 return ret; 276 return ret;
276} 277}
277 278
@@ -282,7 +283,7 @@ out_region:
282 */ 283 */
283void ssp_exit(struct ssp_dev *dev) 284void ssp_exit(struct ssp_dev *dev)
284{ 285{
285 down(&sem); 286 mutex_lock(&mutex);
286 SSCR0_P(dev->port) &= ~SSCR0_SSE; 287 SSCR0_P(dev->port) &= ~SSCR0_SSE;
287 288
288 if (dev->port > PXA_SSP_PORTS || dev->port == 0) { 289 if (dev->port > PXA_SSP_PORTS || dev->port == 0) {
@@ -295,7 +296,7 @@ void ssp_exit(struct ssp_dev *dev)
295 free_irq(dev->irq, dev); 296 free_irq(dev->irq, dev);
296 release_mem_region(__PREG(SSCR0_P(dev->port)), 0x2c); 297 release_mem_region(__PREG(SSCR0_P(dev->port)), 0x2c);
297 use_count[dev->port - 1]--; 298 use_count[dev->port - 1]--;
298 up(&sem); 299 mutex_unlock(&mutex);
299} 300}
300 301
301EXPORT_SYMBOL(ssp_write_word); 302EXPORT_SYMBOL(ssp_write_word);
diff --git a/arch/arm/mach-realview/clock.c b/arch/arm/mach-realview/clock.c
index ec3f7e798623..21325a4da9da 100644
--- a/arch/arm/mach-realview/clock.c
+++ b/arch/arm/mach-realview/clock.c
@@ -14,6 +14,7 @@
14#include <linux/errno.h> 14#include <linux/errno.h>
15#include <linux/err.h> 15#include <linux/err.h>
16#include <linux/clk.h> 16#include <linux/clk.h>
17#include <linux/mutex.h>
17 18
18#include <asm/semaphore.h> 19#include <asm/semaphore.h>
19#include <asm/hardware/icst307.h> 20#include <asm/hardware/icst307.h>
@@ -21,20 +22,20 @@
21#include "clock.h" 22#include "clock.h"
22 23
23static LIST_HEAD(clocks); 24static LIST_HEAD(clocks);
24static DECLARE_MUTEX(clocks_sem); 25static DEFINE_MUTEX(clocks_mutex);
25 26
26struct clk *clk_get(struct device *dev, const char *id) 27struct clk *clk_get(struct device *dev, const char *id)
27{ 28{
28 struct clk *p, *clk = ERR_PTR(-ENOENT); 29 struct clk *p, *clk = ERR_PTR(-ENOENT);
29 30
30 down(&clocks_sem); 31 mutex_lock(&clocks_mutex);
31 list_for_each_entry(p, &clocks, node) { 32 list_for_each_entry(p, &clocks, node) {
32 if (strcmp(id, p->name) == 0 && try_module_get(p->owner)) { 33 if (strcmp(id, p->name) == 0 && try_module_get(p->owner)) {
33 clk = p; 34 clk = p;
34 break; 35 break;
35 } 36 }
36 } 37 }
37 up(&clocks_sem); 38 mutex_unlock(&clocks_mutex);
38 39
39 return clk; 40 return clk;
40} 41}
@@ -109,18 +110,18 @@ static struct clk mmci_clk = {
109 110
110int clk_register(struct clk *clk) 111int clk_register(struct clk *clk)
111{ 112{
112 down(&clocks_sem); 113 mutex_lock(&clocks_mutex);
113 list_add(&clk->node, &clocks); 114 list_add(&clk->node, &clocks);
114 up(&clocks_sem); 115 mutex_unlock(&clocks_mutex);
115 return 0; 116 return 0;
116} 117}
117EXPORT_SYMBOL(clk_register); 118EXPORT_SYMBOL(clk_register);
118 119
119void clk_unregister(struct clk *clk) 120void clk_unregister(struct clk *clk)
120{ 121{
121 down(&clocks_sem); 122 mutex_lock(&clocks_mutex);
122 list_del(&clk->node); 123 list_del(&clk->node);
123 up(&clocks_sem); 124 mutex_unlock(&clocks_mutex);
124} 125}
125EXPORT_SYMBOL(clk_unregister); 126EXPORT_SYMBOL(clk_unregister);
126 127
diff --git a/arch/arm/mach-s3c2410/clock.c b/arch/arm/mach-s3c2410/clock.c
index fc09ba92d66a..af2f3d52b61b 100644
--- a/arch/arm/mach-s3c2410/clock.c
+++ b/arch/arm/mach-s3c2410/clock.c
@@ -37,6 +37,7 @@
37#include <linux/interrupt.h> 37#include <linux/interrupt.h>
38#include <linux/ioport.h> 38#include <linux/ioport.h>
39#include <linux/clk.h> 39#include <linux/clk.h>
40#include <linux/mutex.h>
40 41
41#include <asm/hardware.h> 42#include <asm/hardware.h>
42#include <asm/atomic.h> 43#include <asm/atomic.h>
@@ -51,7 +52,7 @@
51/* clock information */ 52/* clock information */
52 53
53static LIST_HEAD(clocks); 54static LIST_HEAD(clocks);
54static DECLARE_MUTEX(clocks_sem); 55static DEFINE_MUTEX(clocks_mutex);
55 56
56/* old functions */ 57/* old functions */
57 58
@@ -102,7 +103,7 @@ struct clk *clk_get(struct device *dev, const char *id)
102 else 103 else
103 idno = to_platform_device(dev)->id; 104 idno = to_platform_device(dev)->id;
104 105
105 down(&clocks_sem); 106 mutex_lock(&clocks_mutex);
106 107
107 list_for_each_entry(p, &clocks, list) { 108 list_for_each_entry(p, &clocks, list) {
108 if (p->id == idno && 109 if (p->id == idno &&
@@ -126,7 +127,7 @@ struct clk *clk_get(struct device *dev, const char *id)
126 } 127 }
127 } 128 }
128 129
129 up(&clocks_sem); 130 mutex_unlock(&clocks_mutex);
130 return clk; 131 return clk;
131} 132}
132 133
@@ -362,9 +363,9 @@ int s3c24xx_register_clock(struct clk *clk)
362 363
363 /* add to the list of available clocks */ 364 /* add to the list of available clocks */
364 365
365 down(&clocks_sem); 366 mutex_lock(&clocks_mutex);
366 list_add(&clk->list, &clocks); 367 list_add(&clk->list, &clocks);
367 up(&clocks_sem); 368 mutex_unlock(&clocks_mutex);
368 369
369 return 0; 370 return 0;
370} 371}
diff --git a/arch/arm/mach-versatile/clock.c b/arch/arm/mach-versatile/clock.c
index dcf10014f5cd..9858c96560e2 100644
--- a/arch/arm/mach-versatile/clock.c
+++ b/arch/arm/mach-versatile/clock.c
@@ -15,6 +15,7 @@
15#include <linux/err.h> 15#include <linux/err.h>
16#include <linux/string.h> 16#include <linux/string.h>
17#include <linux/clk.h> 17#include <linux/clk.h>
18#include <linux/mutex.h>
18 19
19#include <asm/semaphore.h> 20#include <asm/semaphore.h>
20#include <asm/hardware/icst307.h> 21#include <asm/hardware/icst307.h>
@@ -22,20 +23,20 @@
22#include "clock.h" 23#include "clock.h"
23 24
24static LIST_HEAD(clocks); 25static LIST_HEAD(clocks);
25static DECLARE_MUTEX(clocks_sem); 26static DEFINE_MUTEX(clocks_mutex);
26 27
27struct clk *clk_get(struct device *dev, const char *id) 28struct clk *clk_get(struct device *dev, const char *id)
28{ 29{
29 struct clk *p, *clk = ERR_PTR(-ENOENT); 30 struct clk *p, *clk = ERR_PTR(-ENOENT);
30 31
31 down(&clocks_sem); 32 mutex_lock(&clocks_mutex);
32 list_for_each_entry(p, &clocks, node) { 33 list_for_each_entry(p, &clocks, node) {
33 if (strcmp(id, p->name) == 0 && try_module_get(p->owner)) { 34 if (strcmp(id, p->name) == 0 && try_module_get(p->owner)) {
34 clk = p; 35 clk = p;
35 break; 36 break;
36 } 37 }
37 } 38 }
38 up(&clocks_sem); 39 mutex_unlock(&clocks_mutex);
39 40
40 return clk; 41 return clk;
41} 42}
@@ -110,18 +111,18 @@ static struct clk mmci_clk = {
110 111
111int clk_register(struct clk *clk) 112int clk_register(struct clk *clk)
112{ 113{
113 down(&clocks_sem); 114 mutex_lock(&clocks_mutex);
114 list_add(&clk->node, &clocks); 115 list_add(&clk->node, &clocks);
115 up(&clocks_sem); 116 mutex_unlock(&clocks_mutex);
116 return 0; 117 return 0;
117} 118}
118EXPORT_SYMBOL(clk_register); 119EXPORT_SYMBOL(clk_register);
119 120
120void clk_unregister(struct clk *clk) 121void clk_unregister(struct clk *clk)
121{ 122{
122 down(&clocks_sem); 123 mutex_lock(&clocks_mutex);
123 list_del(&clk->node); 124 list_del(&clk->node);
124 up(&clocks_sem); 125 mutex_unlock(&clocks_mutex);
125} 126}
126EXPORT_SYMBOL(clk_unregister); 127EXPORT_SYMBOL(clk_unregister);
127 128
diff --git a/arch/arm/mm/consistent.c b/arch/arm/mm/consistent.c
index 0513ed1b2fcf..c2ee18d2075e 100644
--- a/arch/arm/mm/consistent.c
+++ b/arch/arm/mm/consistent.c
@@ -20,15 +20,25 @@
20 20
21#include <asm/cacheflush.h> 21#include <asm/cacheflush.h>
22#include <asm/tlbflush.h> 22#include <asm/tlbflush.h>
23#include <asm/sizes.h>
24
25/* Sanity check size */
26#if (CONSISTENT_DMA_SIZE % SZ_2M)
27#error "CONSISTENT_DMA_SIZE must be multiple of 2MiB"
28#endif
23 29
24#define CONSISTENT_BASE (0xffc00000)
25#define CONSISTENT_END (0xffe00000) 30#define CONSISTENT_END (0xffe00000)
31#define CONSISTENT_BASE (CONSISTENT_END - CONSISTENT_DMA_SIZE)
32
26#define CONSISTENT_OFFSET(x) (((unsigned long)(x) - CONSISTENT_BASE) >> PAGE_SHIFT) 33#define CONSISTENT_OFFSET(x) (((unsigned long)(x) - CONSISTENT_BASE) >> PAGE_SHIFT)
34#define CONSISTENT_PTE_INDEX(x) (((unsigned long)(x) - CONSISTENT_BASE) >> PGDIR_SHIFT)
35#define NUM_CONSISTENT_PTES (CONSISTENT_DMA_SIZE >> PGDIR_SHIFT)
36
27 37
28/* 38/*
29 * This is the page table (2MB) covering uncached, DMA consistent allocations 39 * These are the page tables (2MB each) covering uncached, DMA consistent allocations
30 */ 40 */
31static pte_t *consistent_pte; 41static pte_t *consistent_pte[NUM_CONSISTENT_PTES];
32static DEFINE_SPINLOCK(consistent_lock); 42static DEFINE_SPINLOCK(consistent_lock);
33 43
34/* 44/*
@@ -142,7 +152,7 @@ __dma_alloc(struct device *dev, size_t size, dma_addr_t *handle, gfp_t gfp,
142 unsigned long order; 152 unsigned long order;
143 u64 mask = ISA_DMA_THRESHOLD, limit; 153 u64 mask = ISA_DMA_THRESHOLD, limit;
144 154
145 if (!consistent_pte) { 155 if (!consistent_pte[0]) {
146 printk(KERN_ERR "%s: not initialised\n", __func__); 156 printk(KERN_ERR "%s: not initialised\n", __func__);
147 dump_stack(); 157 dump_stack();
148 return NULL; 158 return NULL;
@@ -205,9 +215,12 @@ __dma_alloc(struct device *dev, size_t size, dma_addr_t *handle, gfp_t gfp,
205 c = vm_region_alloc(&consistent_head, size, 215 c = vm_region_alloc(&consistent_head, size,
206 gfp & ~(__GFP_DMA | __GFP_HIGHMEM)); 216 gfp & ~(__GFP_DMA | __GFP_HIGHMEM));
207 if (c) { 217 if (c) {
208 pte_t *pte = consistent_pte + CONSISTENT_OFFSET(c->vm_start); 218 pte_t *pte;
209 struct page *end = page + (1 << order); 219 struct page *end = page + (1 << order);
220 int idx = CONSISTENT_PTE_INDEX(c->vm_start);
221 u32 off = CONSISTENT_OFFSET(c->vm_start) & (PTRS_PER_PTE-1);
210 222
223 pte = consistent_pte[idx] + off;
211 c->vm_pages = page; 224 c->vm_pages = page;
212 225
213 /* 226 /*
@@ -226,6 +239,11 @@ __dma_alloc(struct device *dev, size_t size, dma_addr_t *handle, gfp_t gfp,
226 set_pte(pte, mk_pte(page, prot)); 239 set_pte(pte, mk_pte(page, prot));
227 page++; 240 page++;
228 pte++; 241 pte++;
242 off++;
243 if (off >= PTRS_PER_PTE) {
244 off = 0;
245 pte = consistent_pte[++idx];
246 }
229 } while (size -= PAGE_SIZE); 247 } while (size -= PAGE_SIZE);
230 248
231 /* 249 /*
@@ -327,6 +345,8 @@ void dma_free_coherent(struct device *dev, size_t size, void *cpu_addr, dma_addr
327 struct vm_region *c; 345 struct vm_region *c;
328 unsigned long flags, addr; 346 unsigned long flags, addr;
329 pte_t *ptep; 347 pte_t *ptep;
348 int idx;
349 u32 off;
330 350
331 WARN_ON(irqs_disabled()); 351 WARN_ON(irqs_disabled());
332 352
@@ -347,7 +367,9 @@ void dma_free_coherent(struct device *dev, size_t size, void *cpu_addr, dma_addr
347 size = c->vm_end - c->vm_start; 367 size = c->vm_end - c->vm_start;
348 } 368 }
349 369
350 ptep = consistent_pte + CONSISTENT_OFFSET(c->vm_start); 370 idx = CONSISTENT_PTE_INDEX(c->vm_start);
371 off = CONSISTENT_OFFSET(c->vm_start) & (PTRS_PER_PTE-1);
372 ptep = consistent_pte[idx] + off;
351 addr = c->vm_start; 373 addr = c->vm_start;
352 do { 374 do {
353 pte_t pte = ptep_get_and_clear(&init_mm, addr, ptep); 375 pte_t pte = ptep_get_and_clear(&init_mm, addr, ptep);
@@ -355,6 +377,11 @@ void dma_free_coherent(struct device *dev, size_t size, void *cpu_addr, dma_addr
355 377
356 ptep++; 378 ptep++;
357 addr += PAGE_SIZE; 379 addr += PAGE_SIZE;
380 off++;
381 if (off >= PTRS_PER_PTE) {
382 off = 0;
383 ptep = consistent_pte[++idx];
384 }
358 385
359 if (!pte_none(pte) && pte_present(pte)) { 386 if (!pte_none(pte) && pte_present(pte)) {
360 pfn = pte_pfn(pte); 387 pfn = pte_pfn(pte);
@@ -401,11 +428,12 @@ static int __init consistent_init(void)
401 pgd_t *pgd; 428 pgd_t *pgd;
402 pmd_t *pmd; 429 pmd_t *pmd;
403 pte_t *pte; 430 pte_t *pte;
404 int ret = 0; 431 int ret = 0, i = 0;
432 u32 base = CONSISTENT_BASE;
405 433
406 do { 434 do {
407 pgd = pgd_offset(&init_mm, CONSISTENT_BASE); 435 pgd = pgd_offset(&init_mm, base);
408 pmd = pmd_alloc(&init_mm, pgd, CONSISTENT_BASE); 436 pmd = pmd_alloc(&init_mm, pgd, base);
409 if (!pmd) { 437 if (!pmd) {
410 printk(KERN_ERR "%s: no pmd tables\n", __func__); 438 printk(KERN_ERR "%s: no pmd tables\n", __func__);
411 ret = -ENOMEM; 439 ret = -ENOMEM;
@@ -413,15 +441,16 @@ static int __init consistent_init(void)
413 } 441 }
414 WARN_ON(!pmd_none(*pmd)); 442 WARN_ON(!pmd_none(*pmd));
415 443
416 pte = pte_alloc_kernel(pmd, CONSISTENT_BASE); 444 pte = pte_alloc_kernel(pmd, base);
417 if (!pte) { 445 if (!pte) {
418 printk(KERN_ERR "%s: no pte tables\n", __func__); 446 printk(KERN_ERR "%s: no pte tables\n", __func__);
419 ret = -ENOMEM; 447 ret = -ENOMEM;
420 break; 448 break;
421 } 449 }
422 450
423 consistent_pte = pte; 451 consistent_pte[i++] = pte;
424 } while (0); 452 base += (1 << PGDIR_SHIFT);
453 } while (base < CONSISTENT_END);
425 454
426 return ret; 455 return ret;
427} 456}
diff --git a/arch/arm/plat-omap/clock.c b/arch/arm/plat-omap/clock.c
index 84fd65656fcf..7ebc5a29db8d 100644
--- a/arch/arm/plat-omap/clock.c
+++ b/arch/arm/plat-omap/clock.c
@@ -20,6 +20,7 @@
20#include <linux/err.h> 20#include <linux/err.h>
21#include <linux/string.h> 21#include <linux/string.h>
22#include <linux/clk.h> 22#include <linux/clk.h>
23#include <linux/mutex.h>
23 24
24#include <asm/io.h> 25#include <asm/io.h>
25#include <asm/semaphore.h> 26#include <asm/semaphore.h>
@@ -27,7 +28,7 @@
27#include <asm/arch/clock.h> 28#include <asm/arch/clock.h>
28 29
29LIST_HEAD(clocks); 30LIST_HEAD(clocks);
30static DECLARE_MUTEX(clocks_sem); 31static DEFINE_MUTEX(clocks_mutex);
31DEFINE_SPINLOCK(clockfw_lock); 32DEFINE_SPINLOCK(clockfw_lock);
32 33
33static struct clk_functions *arch_clock; 34static struct clk_functions *arch_clock;
@@ -40,14 +41,14 @@ struct clk * clk_get(struct device *dev, const char *id)
40{ 41{
41 struct clk *p, *clk = ERR_PTR(-ENOENT); 42 struct clk *p, *clk = ERR_PTR(-ENOENT);
42 43
43 down(&clocks_sem); 44 mutex_lock(&clocks_mutex);
44 list_for_each_entry(p, &clocks, node) { 45 list_for_each_entry(p, &clocks, node) {
45 if (strcmp(id, p->name) == 0 && try_module_get(p->owner)) { 46 if (strcmp(id, p->name) == 0 && try_module_get(p->owner)) {
46 clk = p; 47 clk = p;
47 break; 48 break;
48 } 49 }
49 } 50 }
50 up(&clocks_sem); 51 mutex_unlock(&clocks_mutex);
51 52
52 return clk; 53 return clk;
53} 54}
@@ -249,11 +250,11 @@ void propagate_rate(struct clk * tclk)
249 250
250int clk_register(struct clk *clk) 251int clk_register(struct clk *clk)
251{ 252{
252 down(&clocks_sem); 253 mutex_lock(&clocks_mutex);
253 list_add(&clk->node, &clocks); 254 list_add(&clk->node, &clocks);
254 if (clk->init) 255 if (clk->init)
255 clk->init(clk); 256 clk->init(clk);
256 up(&clocks_sem); 257 mutex_unlock(&clocks_mutex);
257 258
258 return 0; 259 return 0;
259} 260}
@@ -261,9 +262,9 @@ EXPORT_SYMBOL(clk_register);
261 262
262void clk_unregister(struct clk *clk) 263void clk_unregister(struct clk *clk)
263{ 264{
264 down(&clocks_sem); 265 mutex_lock(&clocks_mutex);
265 list_del(&clk->node); 266 list_del(&clk->node);
266 up(&clocks_sem); 267 mutex_unlock(&clocks_mutex);
267} 268}
268EXPORT_SYMBOL(clk_unregister); 269EXPORT_SYMBOL(clk_unregister);
269 270