aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorMichael Hennerich <michael.hennerich@analog.com>2008-10-13 02:45:06 -0400
committerBryan Wu <cooloney@kernel.org>2008-10-13 02:45:06 -0400
commit8cc7117e7c4968b10fd7327b4a62d9c23082a7b3 (patch)
tree2b567449398581b3b5d599ae06ecaf3aba081ecf /arch
parent31f3d4a317ae1541bf25d0efbf4551855bed0d5b (diff)
Blackfin arch: Add new board support for ADZS-BF526-EZ-BRD
Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/blackfin/Kconfig13
-rw-r--r--arch/blackfin/configs/BF526-EZBRD_defconfig1427
-rw-r--r--arch/blackfin/mach-bf527/boards/Kconfig5
-rw-r--r--arch/blackfin/mach-bf527/boards/Makefile1
-rw-r--r--arch/blackfin/mach-bf527/boards/ezbrd.c734
5 files changed, 2177 insertions, 3 deletions
diff --git a/arch/blackfin/Kconfig b/arch/blackfin/Kconfig
index 4154ff1101fa..c507a92cb289 100644
--- a/arch/blackfin/Kconfig
+++ b/arch/blackfin/Kconfig
@@ -249,7 +249,7 @@ config MEM_MT48LC8M32B2B5_7
249 249
250config MEM_MT48LC32M16A2TG_75 250config MEM_MT48LC32M16A2TG_75
251 bool 251 bool
252 depends on (BFIN527_EZKIT || BFIN532_IP0X || BLACKSTAMP) 252 depends on (BFIN527_EZKIT || BFIN532_IP0X || BLACKSTAMP || BFIN526_EZBRD)
253 default y 253 default y
254 254
255source "arch/blackfin/mach-bf527/Kconfig" 255source "arch/blackfin/mach-bf527/Kconfig"
@@ -286,13 +286,20 @@ config BOOT_LOAD
286 memory region is used to capture NULL pointer references as well 286 memory region is used to capture NULL pointer references as well
287 as some core kernel functions. 287 as some core kernel functions.
288 288
289config ROM_BASE
290 hex "Kernel ROM Base"
291 default "0x20040000"
292 range 0x20000000 0x20400000 if !(BF54x || BF561)
293 range 0x20000000 0x30000000 if (BF54x || BF561)
294 help
295
289comment "Clock/PLL Setup" 296comment "Clock/PLL Setup"
290 297
291config CLKIN_HZ 298config CLKIN_HZ
292 int "Frequency of the crystal on the board in Hz" 299 int "Frequency of the crystal on the board in Hz"
293 default "11059200" if BFIN533_STAMP 300 default "11059200" if BFIN533_STAMP
294 default "27000000" if BFIN533_EZKIT 301 default "27000000" if BFIN533_EZKIT
295 default "25000000" if (BFIN537_STAMP || BFIN527_EZKIT || H8606_HVSISTEMAS || BLACKSTAMP) 302 default "25000000" if (BFIN537_STAMP || BFIN527_EZKIT || H8606_HVSISTEMAS || BLACKSTAMP || BFIN526_EZBRD)
296 default "30000000" if BFIN561_EZKIT 303 default "30000000" if BFIN561_EZKIT
297 default "24576000" if PNAV10 304 default "24576000" if PNAV10
298 default "10000000" if BFIN532_IP0X 305 default "10000000" if BFIN532_IP0X
@@ -332,7 +339,7 @@ config VCO_MULT
332 default "22" if BFIN533_BLUETECHNIX_CM 339 default "22" if BFIN533_BLUETECHNIX_CM
333 default "20" if (BFIN537_BLUETECHNIX_CM || BFIN527_BLUETECHNIX_CM || BFIN561_BLUETECHNIX_CM) 340 default "20" if (BFIN537_BLUETECHNIX_CM || BFIN527_BLUETECHNIX_CM || BFIN561_BLUETECHNIX_CM)
334 default "20" if BFIN561_EZKIT 341 default "20" if BFIN561_EZKIT
335 default "16" if (H8606_HVSISTEMAS || BLACKSTAMP) 342 default "16" if (H8606_HVSISTEMAS || BLACKSTAMP || BFIN526_EZBRD)
336 help 343 help
337 This controls the frequency of the on-chip PLL. This can be between 1 and 64. 344 This controls the frequency of the on-chip PLL. This can be between 1 and 64.
338 PLL Frequency = (Crystal Frequency) * (this setting) 345 PLL Frequency = (Crystal Frequency) * (this setting)
diff --git a/arch/blackfin/configs/BF526-EZBRD_defconfig b/arch/blackfin/configs/BF526-EZBRD_defconfig
new file mode 100644
index 000000000000..c33bf6f83813
--- /dev/null
+++ b/arch/blackfin/configs/BF526-EZBRD_defconfig
@@ -0,0 +1,1427 @@
1#
2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.26.3
4# Thu Aug 28 16:49:53 2008
5#
6# CONFIG_MMU is not set
7# CONFIG_FPU is not set
8CONFIG_RWSEM_GENERIC_SPINLOCK=y
9# CONFIG_RWSEM_XCHGADD_ALGORITHM is not set
10CONFIG_BLACKFIN=y
11CONFIG_ZONE_DMA=y
12CONFIG_GENERIC_FIND_NEXT_BIT=y
13CONFIG_GENERIC_HWEIGHT=y
14CONFIG_GENERIC_HARDIRQS=y
15CONFIG_GENERIC_IRQ_PROBE=y
16CONFIG_GENERIC_GPIO=y
17CONFIG_FORCE_MAX_ZONEORDER=14
18CONFIG_GENERIC_CALIBRATE_DELAY=y
19CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
20
21#
22# General setup
23#
24CONFIG_EXPERIMENTAL=y
25CONFIG_BROKEN_ON_SMP=y
26CONFIG_INIT_ENV_ARG_LIMIT=32
27CONFIG_LOCALVERSION=""
28CONFIG_LOCALVERSION_AUTO=y
29CONFIG_SYSVIPC=y
30CONFIG_SYSVIPC_SYSCTL=y
31# CONFIG_POSIX_MQUEUE is not set
32# CONFIG_BSD_PROCESS_ACCT is not set
33# CONFIG_TASKSTATS is not set
34# CONFIG_AUDIT is not set
35CONFIG_IKCONFIG=y
36CONFIG_IKCONFIG_PROC=y
37CONFIG_LOG_BUF_SHIFT=14
38# CONFIG_CGROUPS is not set
39# CONFIG_GROUP_SCHED is not set
40CONFIG_SYSFS_DEPRECATED=y
41CONFIG_SYSFS_DEPRECATED_V2=y
42# CONFIG_RELAY is not set
43# CONFIG_NAMESPACES is not set
44CONFIG_BLK_DEV_INITRD=y
45CONFIG_INITRAMFS_SOURCE=""
46# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
47CONFIG_SYSCTL=y
48CONFIG_EMBEDDED=y
49CONFIG_UID16=y
50CONFIG_SYSCTL_SYSCALL=y
51CONFIG_SYSCTL_SYSCALL_CHECK=y
52CONFIG_KALLSYMS=y
53# CONFIG_KALLSYMS_EXTRA_PASS is not set
54CONFIG_HOTPLUG=y
55CONFIG_PRINTK=y
56CONFIG_BUG=y
57CONFIG_ELF_CORE=y
58CONFIG_COMPAT_BRK=y
59CONFIG_BASE_FULL=y
60CONFIG_FUTEX=y
61CONFIG_ANON_INODES=y
62CONFIG_EPOLL=y
63CONFIG_SIGNALFD=y
64CONFIG_TIMERFD=y
65CONFIG_EVENTFD=y
66CONFIG_VM_EVENT_COUNTERS=y
67CONFIG_SLAB=y
68# CONFIG_SLUB is not set
69# CONFIG_SLOB is not set
70# CONFIG_PROFILING is not set
71# CONFIG_MARKERS is not set
72CONFIG_HAVE_OPROFILE=y
73# CONFIG_HAVE_KPROBES is not set
74# CONFIG_HAVE_KRETPROBES is not set
75# CONFIG_HAVE_DMA_ATTRS is not set
76CONFIG_SLABINFO=y
77CONFIG_RT_MUTEXES=y
78CONFIG_TINY_SHMEM=y
79CONFIG_BASE_SMALL=0
80CONFIG_MODULES=y
81# CONFIG_MODULE_FORCE_LOAD is not set
82CONFIG_MODULE_UNLOAD=y
83# CONFIG_MODULE_FORCE_UNLOAD is not set
84# CONFIG_MODVERSIONS is not set
85# CONFIG_MODULE_SRCVERSION_ALL is not set
86CONFIG_KMOD=y
87CONFIG_BLOCK=y
88# CONFIG_LBD is not set
89# CONFIG_BLK_DEV_IO_TRACE is not set
90# CONFIG_LSF is not set
91# CONFIG_BLK_DEV_BSG is not set
92
93#
94# IO Schedulers
95#
96CONFIG_IOSCHED_NOOP=y
97# CONFIG_IOSCHED_AS is not set
98# CONFIG_IOSCHED_DEADLINE is not set
99# CONFIG_IOSCHED_CFQ is not set
100# CONFIG_DEFAULT_AS is not set
101# CONFIG_DEFAULT_DEADLINE is not set
102# CONFIG_DEFAULT_CFQ is not set
103CONFIG_DEFAULT_NOOP=y
104CONFIG_DEFAULT_IOSCHED="noop"
105CONFIG_CLASSIC_RCU=y
106# CONFIG_PREEMPT_NONE is not set
107CONFIG_PREEMPT_VOLUNTARY=y
108# CONFIG_PREEMPT is not set
109
110#
111# Blackfin Processor Options
112#
113
114#
115# Processor and Board Settings
116#
117# CONFIG_BF522 is not set
118# CONFIG_BF523 is not set
119# CONFIG_BF524 is not set
120# CONFIG_BF525 is not set
121CONFIG_BF526=y
122# CONFIG_BF527 is not set
123# CONFIG_BF531 is not set
124# CONFIG_BF532 is not set
125# CONFIG_BF533 is not set
126# CONFIG_BF534 is not set
127# CONFIG_BF536 is not set
128# CONFIG_BF537 is not set
129# CONFIG_BF542 is not set
130# CONFIG_BF544 is not set
131# CONFIG_BF547 is not set
132# CONFIG_BF548 is not set
133# CONFIG_BF549 is not set
134# CONFIG_BF561 is not set
135CONFIG_BF_REV_0_0=y
136# CONFIG_BF_REV_0_1 is not set
137# CONFIG_BF_REV_0_2 is not set
138# CONFIG_BF_REV_0_3 is not set
139# CONFIG_BF_REV_0_4 is not set
140# CONFIG_BF_REV_0_5 is not set
141# CONFIG_BF_REV_ANY is not set
142# CONFIG_BF_REV_NONE is not set
143CONFIG_BF52x=y
144CONFIG_MEM_MT48LC32M16A2TG_75=y
145# CONFIG_BFIN527_EZKIT is not set
146# CONFIG_BFIN527_BLUETECHNIX_CM is not set
147CONFIG_BFIN526_EZBRD=y
148
149#
150# BF527 Specific Configuration
151#
152
153#
154# Alternative Multiplexing Scheme
155#
156# CONFIG_BF527_SPORT0_PORTF is not set
157CONFIG_BF527_SPORT0_PORTG=y
158CONFIG_BF527_SPORT0_TSCLK_PG10=y
159# CONFIG_BF527_SPORT0_TSCLK_PG14 is not set
160CONFIG_BF527_UART1_PORTF=y
161# CONFIG_BF527_UART1_PORTG is not set
162# CONFIG_BF527_NAND_D_PORTF is not set
163CONFIG_BF527_NAND_D_PORTH=y
164
165#
166# Interrupt Priority Assignment
167#
168
169#
170# Priority
171#
172CONFIG_IRQ_PLL_WAKEUP=7
173CONFIG_IRQ_DMA0_ERROR=7
174CONFIG_IRQ_DMAR0_BLK=7
175CONFIG_IRQ_DMAR1_BLK=7
176CONFIG_IRQ_DMAR0_OVR=7
177CONFIG_IRQ_DMAR1_OVR=7
178CONFIG_IRQ_PPI_ERROR=7
179CONFIG_IRQ_MAC_ERROR=7
180CONFIG_IRQ_SPORT0_ERROR=7
181CONFIG_IRQ_SPORT1_ERROR=7
182CONFIG_IRQ_UART0_ERROR=7
183CONFIG_IRQ_UART1_ERROR=7
184CONFIG_IRQ_RTC=8
185CONFIG_IRQ_PPI=8
186CONFIG_IRQ_SPORT0_RX=9
187CONFIG_IRQ_SPORT0_TX=9
188CONFIG_IRQ_SPORT1_RX=9
189CONFIG_IRQ_SPORT1_TX=9
190CONFIG_IRQ_TWI=10
191CONFIG_IRQ_SPI=10
192CONFIG_IRQ_UART0_RX=10
193CONFIG_IRQ_UART0_TX=10
194CONFIG_IRQ_UART1_RX=10
195CONFIG_IRQ_UART1_TX=10
196CONFIG_IRQ_OPTSEC=11
197CONFIG_IRQ_CNT=11
198CONFIG_IRQ_MAC_RX=11
199CONFIG_IRQ_PORTH_INTA=11
200CONFIG_IRQ_MAC_TX=11
201CONFIG_IRQ_PORTH_INTB=11
202CONFIG_IRQ_TMR0=12
203CONFIG_IRQ_TMR1=12
204CONFIG_IRQ_TMR2=12
205CONFIG_IRQ_TMR3=12
206CONFIG_IRQ_TMR4=12
207CONFIG_IRQ_TMR5=12
208CONFIG_IRQ_TMR6=12
209CONFIG_IRQ_TMR7=12
210CONFIG_IRQ_PORTG_INTA=12
211CONFIG_IRQ_PORTG_INTB=12
212CONFIG_IRQ_MEM_DMA0=13
213CONFIG_IRQ_MEM_DMA1=13
214CONFIG_IRQ_WATCH=13
215CONFIG_IRQ_PORTF_INTA=13
216CONFIG_IRQ_PORTF_INTB=13
217CONFIG_IRQ_SPI_ERROR=7
218CONFIG_IRQ_NFC_ERROR=7
219CONFIG_IRQ_HDMA_ERROR=7
220CONFIG_IRQ_HDMA=7
221CONFIG_IRQ_USB_EINT=10
222CONFIG_IRQ_USB_INT0=11
223CONFIG_IRQ_USB_INT1=11
224CONFIG_IRQ_USB_INT2=11
225CONFIG_IRQ_USB_DMA=11
226
227#
228# Board customizations
229#
230# CONFIG_CMDLINE_BOOL is not set
231CONFIG_BOOT_LOAD=0x1000
232
233#
234# Clock/PLL Setup
235#
236CONFIG_CLKIN_HZ=25000000
237# CONFIG_BFIN_KERNEL_CLOCK is not set
238CONFIG_MAX_MEM_SIZE=512
239CONFIG_MAX_VCO_HZ=400000000
240CONFIG_MIN_VCO_HZ=50000000
241CONFIG_MAX_SCLK_HZ=133333333
242CONFIG_MIN_SCLK_HZ=27000000
243
244#
245# Kernel Timer/Scheduler
246#
247# CONFIG_HZ_100 is not set
248CONFIG_HZ_250=y
249# CONFIG_HZ_300 is not set
250# CONFIG_HZ_1000 is not set
251CONFIG_HZ=250
252# CONFIG_SCHED_HRTICK is not set
253CONFIG_GENERIC_TIME=y
254CONFIG_GENERIC_CLOCKEVENTS=y
255# CONFIG_CYCLES_CLOCKSOURCE is not set
256# CONFIG_TICK_ONESHOT is not set
257# CONFIG_NO_HZ is not set
258# CONFIG_HIGH_RES_TIMERS is not set
259CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
260
261#
262# Memory Setup
263#
264
265#
266# Misc
267#
268CONFIG_BFIN_SCRATCH_REG_RETN=y
269# CONFIG_BFIN_SCRATCH_REG_RETE is not set
270# CONFIG_BFIN_SCRATCH_REG_CYCLES is not set
271
272#
273# Blackfin Kernel Optimizations
274#
275
276#
277# Memory Optimizations
278#
279CONFIG_I_ENTRY_L1=y
280CONFIG_EXCPT_IRQ_SYSC_L1=y
281CONFIG_DO_IRQ_L1=y
282CONFIG_CORE_TIMER_IRQ_L1=y
283CONFIG_IDLE_L1=y
284# CONFIG_SCHEDULE_L1 is not set
285CONFIG_ARITHMETIC_OPS_L1=y
286CONFIG_ACCESS_OK_L1=y
287# CONFIG_MEMSET_L1 is not set
288# CONFIG_MEMCPY_L1 is not set
289# CONFIG_SYS_BFIN_SPINLOCK_L1 is not set
290# CONFIG_IP_CHECKSUM_L1 is not set
291CONFIG_CACHELINE_ALIGNED_L1=y
292# CONFIG_SYSCALL_TAB_L1 is not set
293# CONFIG_CPLB_SWITCH_TAB_L1 is not set
294
295#
296# Speed Optimizations
297#
298CONFIG_BFIN_INS_LOWOVERHEAD=y
299CONFIG_RAMKERNEL=y
300# CONFIG_ROMKERNEL is not set
301CONFIG_SELECT_MEMORY_MODEL=y
302CONFIG_FLATMEM_MANUAL=y
303# CONFIG_DISCONTIGMEM_MANUAL is not set
304# CONFIG_SPARSEMEM_MANUAL is not set
305CONFIG_FLATMEM=y
306CONFIG_FLAT_NODE_MEM_MAP=y
307# CONFIG_SPARSEMEM_STATIC is not set
308# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
309CONFIG_PAGEFLAGS_EXTENDED=y
310CONFIG_SPLIT_PTLOCK_CPUS=4
311# CONFIG_RESOURCES_64BIT is not set
312CONFIG_ZONE_DMA_FLAG=1
313CONFIG_VIRT_TO_BUS=y
314CONFIG_BFIN_GPTIMERS=y
315CONFIG_BFIN_DMA_5XX=y
316# CONFIG_DMA_UNCACHED_4M is not set
317# CONFIG_DMA_UNCACHED_2M is not set
318CONFIG_DMA_UNCACHED_1M=y
319# CONFIG_DMA_UNCACHED_NONE is not set
320
321#
322# Cache Support
323#
324CONFIG_BFIN_ICACHE=y
325CONFIG_BFIN_DCACHE=y
326# CONFIG_BFIN_DCACHE_BANKA is not set
327# CONFIG_BFIN_ICACHE_LOCK is not set
328CONFIG_BFIN_WB=y
329# CONFIG_BFIN_WT is not set
330# CONFIG_MPU is not set
331
332#
333# Asynchonous Memory Configuration
334#
335
336#
337# EBIU_AMGCTL Global Control
338#
339CONFIG_C_AMCKEN=y
340CONFIG_C_CDPRIO=y
341# CONFIG_C_AMBEN is not set
342# CONFIG_C_AMBEN_B0 is not set
343# CONFIG_C_AMBEN_B0_B1 is not set
344# CONFIG_C_AMBEN_B0_B1_B2 is not set
345CONFIG_C_AMBEN_ALL=y
346
347#
348# EBIU_AMBCTL Control
349#
350CONFIG_BANK_0=0x7BB0
351CONFIG_BANK_1=0x5554
352CONFIG_BANK_2=0x7BB0
353CONFIG_BANK_3=0xFFC0
354
355#
356# Bus options (PCI, PCMCIA, EISA, MCA, ISA)
357#
358# CONFIG_ARCH_SUPPORTS_MSI is not set
359# CONFIG_PCCARD is not set
360
361#
362# Executable file formats
363#
364CONFIG_BINFMT_ELF_FDPIC=y
365CONFIG_BINFMT_FLAT=y
366CONFIG_BINFMT_ZFLAT=y
367# CONFIG_BINFMT_SHARED_FLAT is not set
368# CONFIG_BINFMT_MISC is not set
369
370#
371# Power management options
372#
373# CONFIG_PM is not set
374CONFIG_ARCH_SUSPEND_POSSIBLE=y
375# CONFIG_PM_WAKEUP_BY_GPIO is not set
376
377#
378# CPU Frequency scaling
379#
380# CONFIG_CPU_FREQ is not set
381
382#
383# Networking
384#
385CONFIG_NET=y
386
387#
388# Networking options
389#
390CONFIG_PACKET=y
391# CONFIG_PACKET_MMAP is not set
392CONFIG_UNIX=y
393CONFIG_XFRM=y
394# CONFIG_XFRM_USER is not set
395# CONFIG_XFRM_SUB_POLICY is not set
396# CONFIG_XFRM_MIGRATE is not set
397# CONFIG_XFRM_STATISTICS is not set
398# CONFIG_NET_KEY is not set
399CONFIG_INET=y
400# CONFIG_IP_MULTICAST is not set
401# CONFIG_IP_ADVANCED_ROUTER is not set
402CONFIG_IP_FIB_HASH=y
403CONFIG_IP_PNP=y
404# CONFIG_IP_PNP_DHCP is not set
405# CONFIG_IP_PNP_BOOTP is not set
406# CONFIG_IP_PNP_RARP is not set
407# CONFIG_NET_IPIP is not set
408# CONFIG_NET_IPGRE is not set
409# CONFIG_ARPD is not set
410CONFIG_SYN_COOKIES=y
411# CONFIG_INET_AH is not set
412# CONFIG_INET_ESP is not set
413# CONFIG_INET_IPCOMP is not set
414# CONFIG_INET_XFRM_TUNNEL is not set
415# CONFIG_INET_TUNNEL is not set
416CONFIG_INET_XFRM_MODE_TRANSPORT=y
417CONFIG_INET_XFRM_MODE_TUNNEL=y
418CONFIG_INET_XFRM_MODE_BEET=y
419# CONFIG_INET_LRO is not set
420CONFIG_INET_DIAG=y
421CONFIG_INET_TCP_DIAG=y
422# CONFIG_TCP_CONG_ADVANCED is not set
423CONFIG_TCP_CONG_CUBIC=y
424CONFIG_DEFAULT_TCP_CONG="cubic"
425# CONFIG_TCP_MD5SIG is not set
426# CONFIG_IPV6 is not set
427# CONFIG_NETLABEL is not set
428# CONFIG_NETWORK_SECMARK is not set
429# CONFIG_NETFILTER is not set
430# CONFIG_IP_DCCP is not set
431# CONFIG_IP_SCTP is not set
432# CONFIG_TIPC is not set
433# CONFIG_ATM is not set
434# CONFIG_BRIDGE is not set
435# CONFIG_VLAN_8021Q is not set
436# CONFIG_DECNET is not set
437# CONFIG_LLC2 is not set
438# CONFIG_IPX is not set
439# CONFIG_ATALK is not set
440# CONFIG_X25 is not set
441# CONFIG_LAPB is not set
442# CONFIG_ECONET is not set
443# CONFIG_WAN_ROUTER is not set
444# CONFIG_NET_SCHED is not set
445
446#
447# Network testing
448#
449# CONFIG_NET_PKTGEN is not set
450# CONFIG_HAMRADIO is not set
451# CONFIG_CAN is not set
452# CONFIG_IRDA is not set
453# CONFIG_BT is not set
454# CONFIG_AF_RXRPC is not set
455
456#
457# Wireless
458#
459# CONFIG_CFG80211 is not set
460# CONFIG_WIRELESS_EXT is not set
461# CONFIG_MAC80211 is not set
462# CONFIG_IEEE80211 is not set
463# CONFIG_RFKILL is not set
464# CONFIG_NET_9P is not set
465
466#
467# Device Drivers
468#
469
470#
471# Generic Driver Options
472#
473CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
474CONFIG_STANDALONE=y
475CONFIG_PREVENT_FIRMWARE_BUILD=y
476# CONFIG_FW_LOADER is not set
477# CONFIG_SYS_HYPERVISOR is not set
478# CONFIG_CONNECTOR is not set
479CONFIG_MTD=y
480# CONFIG_MTD_DEBUG is not set
481# CONFIG_MTD_CONCAT is not set
482CONFIG_MTD_PARTITIONS=y
483# CONFIG_MTD_REDBOOT_PARTS is not set
484# CONFIG_MTD_CMDLINE_PARTS is not set
485# CONFIG_MTD_AR7_PARTS is not set
486
487#
488# User Modules And Translation Layers
489#
490CONFIG_MTD_CHAR=m
491CONFIG_MTD_BLKDEVS=y
492CONFIG_MTD_BLOCK=y
493# CONFIG_FTL is not set
494# CONFIG_NFTL is not set
495# CONFIG_INFTL is not set
496# CONFIG_RFD_FTL is not set
497# CONFIG_SSFDC is not set
498# CONFIG_MTD_OOPS is not set
499
500#
501# RAM/ROM/Flash chip drivers
502#
503# CONFIG_MTD_CFI is not set
504CONFIG_MTD_JEDECPROBE=m
505CONFIG_MTD_GEN_PROBE=m
506# CONFIG_MTD_CFI_ADV_OPTIONS is not set
507CONFIG_MTD_MAP_BANK_WIDTH_1=y
508CONFIG_MTD_MAP_BANK_WIDTH_2=y
509CONFIG_MTD_MAP_BANK_WIDTH_4=y
510# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
511# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
512# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
513CONFIG_MTD_CFI_I1=y
514CONFIG_MTD_CFI_I2=y
515# CONFIG_MTD_CFI_I4 is not set
516# CONFIG_MTD_CFI_I8 is not set
517# CONFIG_MTD_CFI_INTELEXT is not set
518# CONFIG_MTD_CFI_AMDSTD is not set
519# CONFIG_MTD_CFI_STAA is not set
520CONFIG_MTD_RAM=y
521CONFIG_MTD_ROM=m
522# CONFIG_MTD_ABSENT is not set
523
524#
525# Mapping drivers for chip access
526#
527CONFIG_MTD_COMPLEX_MAPPINGS=y
528# CONFIG_MTD_PHYSMAP is not set
529# CONFIG_MTD_GPIO_ADDR is not set
530# CONFIG_MTD_UCLINUX is not set
531# CONFIG_MTD_PLATRAM is not set
532
533#
534# Self-contained MTD device drivers
535#
536# CONFIG_MTD_DATAFLASH is not set
537# CONFIG_MTD_M25P80 is not set
538# CONFIG_MTD_SLRAM is not set
539# CONFIG_MTD_PHRAM is not set
540# CONFIG_MTD_MTDRAM is not set
541# CONFIG_MTD_BLOCK2MTD is not set
542
543#
544# Disk-On-Chip Device Drivers
545#
546# CONFIG_MTD_DOC2000 is not set
547# CONFIG_MTD_DOC2001 is not set
548# CONFIG_MTD_DOC2001PLUS is not set
549CONFIG_MTD_NAND=m
550# CONFIG_MTD_NAND_VERIFY_WRITE is not set
551# CONFIG_MTD_NAND_ECC_SMC is not set
552# CONFIG_MTD_NAND_MUSEUM_IDS is not set
553CONFIG_MTD_NAND_BFIN=m
554CONFIG_BFIN_NAND_BASE=0x20212000
555CONFIG_BFIN_NAND_CLE=2
556CONFIG_BFIN_NAND_ALE=1
557CONFIG_BFIN_NAND_READY=3
558CONFIG_MTD_NAND_IDS=m
559# CONFIG_MTD_NAND_BF5XX is not set
560# CONFIG_MTD_NAND_DISKONCHIP is not set
561# CONFIG_MTD_NAND_NANDSIM is not set
562# CONFIG_MTD_NAND_PLATFORM is not set
563# CONFIG_MTD_ALAUDA is not set
564# CONFIG_MTD_ONENAND is not set
565
566#
567# UBI - Unsorted block images
568#
569# CONFIG_MTD_UBI is not set
570# CONFIG_PARPORT is not set
571CONFIG_BLK_DEV=y
572# CONFIG_BLK_DEV_COW_COMMON is not set
573# CONFIG_BLK_DEV_LOOP is not set
574# CONFIG_BLK_DEV_NBD is not set
575# CONFIG_BLK_DEV_UB is not set
576CONFIG_BLK_DEV_RAM=y
577CONFIG_BLK_DEV_RAM_COUNT=16
578CONFIG_BLK_DEV_RAM_SIZE=4096
579# CONFIG_BLK_DEV_XIP is not set
580# CONFIG_CDROM_PKTCDVD is not set
581# CONFIG_ATA_OVER_ETH is not set
582CONFIG_MISC_DEVICES=y
583# CONFIG_EEPROM_93CX6 is not set
584# CONFIG_ENCLOSURE_SERVICES is not set
585CONFIG_HAVE_IDE=y
586# CONFIG_IDE is not set
587
588#
589# SCSI device support
590#
591# CONFIG_RAID_ATTRS is not set
592# CONFIG_SCSI is not set
593# CONFIG_SCSI_DMA is not set
594# CONFIG_SCSI_NETLINK is not set
595# CONFIG_ATA is not set
596# CONFIG_MD is not set
597CONFIG_NETDEVICES=y
598# CONFIG_NETDEVICES_MULTIQUEUE is not set
599# CONFIG_DUMMY is not set
600# CONFIG_BONDING is not set
601# CONFIG_MACVLAN is not set
602# CONFIG_EQUALIZER is not set
603# CONFIG_TUN is not set
604# CONFIG_VETH is not set
605CONFIG_PHYLIB=y
606
607#
608# MII PHY device drivers
609#
610# CONFIG_MARVELL_PHY is not set
611# CONFIG_DAVICOM_PHY is not set
612# CONFIG_QSEMI_PHY is not set
613# CONFIG_LXT_PHY is not set
614# CONFIG_CICADA_PHY is not set
615# CONFIG_VITESSE_PHY is not set
616# CONFIG_SMSC_PHY is not set
617# CONFIG_BROADCOM_PHY is not set
618# CONFIG_ICPLUS_PHY is not set
619# CONFIG_REALTEK_PHY is not set
620# CONFIG_FIXED_PHY is not set
621# CONFIG_MDIO_BITBANG is not set
622CONFIG_NET_ETHERNET=y
623CONFIG_MII=y
624CONFIG_BFIN_MAC=y
625CONFIG_BFIN_TX_DESC_NUM=10
626CONFIG_BFIN_RX_DESC_NUM=20
627CONFIG_BFIN_MAC_RMII=y
628# CONFIG_SMC91X is not set
629# CONFIG_SMSC911X is not set
630# CONFIG_DM9000 is not set
631# CONFIG_ENC28J60 is not set
632# CONFIG_IBM_NEW_EMAC_ZMII is not set
633# CONFIG_IBM_NEW_EMAC_RGMII is not set
634# CONFIG_IBM_NEW_EMAC_TAH is not set
635# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
636# CONFIG_B44 is not set
637CONFIG_NETDEV_1000=y
638# CONFIG_E1000E_ENABLED is not set
639# CONFIG_AX88180 is not set
640CONFIG_NETDEV_10000=y
641
642#
643# Wireless LAN
644#
645# CONFIG_WLAN_PRE80211 is not set
646# CONFIG_WLAN_80211 is not set
647# CONFIG_IWLWIFI_LEDS is not set
648
649#
650# USB Network Adapters
651#
652# CONFIG_USB_CATC is not set
653# CONFIG_USB_KAWETH is not set
654# CONFIG_USB_PEGASUS is not set
655# CONFIG_USB_RTL8150 is not set
656# CONFIG_USB_USBNET is not set
657# CONFIG_WAN is not set
658# CONFIG_PPP is not set
659# CONFIG_SLIP is not set
660# CONFIG_NETCONSOLE is not set
661# CONFIG_NETPOLL is not set
662# CONFIG_NET_POLL_CONTROLLER is not set
663# CONFIG_ISDN is not set
664# CONFIG_PHONE is not set
665
666#
667# Input device support
668#
669CONFIG_INPUT=y
670# CONFIG_INPUT_FF_MEMLESS is not set
671# CONFIG_INPUT_POLLDEV is not set
672
673#
674# Userland interfaces
675#
676# CONFIG_INPUT_MOUSEDEV is not set
677# CONFIG_INPUT_JOYDEV is not set
678# CONFIG_INPUT_EVDEV is not set
679# CONFIG_INPUT_EVBUG is not set
680
681#
682# Input Device Drivers
683#
684# CONFIG_INPUT_KEYBOARD is not set
685# CONFIG_INPUT_MOUSE is not set
686# CONFIG_INPUT_JOYSTICK is not set
687# CONFIG_INPUT_TABLET is not set
688# CONFIG_INPUT_TOUCHSCREEN is not set
689CONFIG_INPUT_MISC=y
690# CONFIG_INPUT_ATI_REMOTE is not set
691# CONFIG_INPUT_ATI_REMOTE2 is not set
692# CONFIG_INPUT_KEYSPAN_REMOTE is not set
693# CONFIG_INPUT_POWERMATE is not set
694# CONFIG_INPUT_YEALINK is not set
695# CONFIG_INPUT_UINPUT is not set
696# CONFIG_TWI_KEYPAD is not set
697
698#
699# Hardware I/O ports
700#
701# CONFIG_SERIO is not set
702# CONFIG_GAMEPORT is not set
703
704#
705# Character devices
706#
707# CONFIG_AD9960 is not set
708# CONFIG_SPI_ADC_BF533 is not set
709# CONFIG_BF5xx_PPIFCD is not set
710# CONFIG_BFIN_SIMPLE_TIMER is not set
711# CONFIG_BF5xx_PPI is not set
712# CONFIG_BFIN_SPORT is not set
713# CONFIG_BFIN_TIMER_LATENCY is not set
714# CONFIG_TWI_LCD is not set
715CONFIG_SIMPLE_GPIO=m
716CONFIG_VT=y
717CONFIG_VT_CONSOLE=y
718CONFIG_HW_CONSOLE=y
719# CONFIG_VT_HW_CONSOLE_BINDING is not set
720CONFIG_DEVKMEM=y
721# CONFIG_SERIAL_NONSTANDARD is not set
722
723#
724# Serial drivers
725#
726# CONFIG_SERIAL_8250 is not set
727
728#
729# Non-8250 serial port support
730#
731CONFIG_SERIAL_BFIN=y
732CONFIG_SERIAL_BFIN_CONSOLE=y
733CONFIG_SERIAL_BFIN_DMA=y
734# CONFIG_SERIAL_BFIN_PIO is not set
735# CONFIG_SERIAL_BFIN_UART0 is not set
736CONFIG_SERIAL_BFIN_UART1=y
737# CONFIG_BFIN_UART1_CTSRTS is not set
738CONFIG_SERIAL_CORE=y
739CONFIG_SERIAL_CORE_CONSOLE=y
740# CONFIG_SERIAL_BFIN_SPORT is not set
741CONFIG_UNIX98_PTYS=y
742# CONFIG_LEGACY_PTYS is not set
743CONFIG_BFIN_OTP=y
744# CONFIG_BFIN_OTP_WRITE_ENABLE is not set
745
746#
747# CAN, the car bus and industrial fieldbus
748#
749# CONFIG_CAN4LINUX is not set
750# CONFIG_IPMI_HANDLER is not set
751CONFIG_HW_RANDOM=y
752# CONFIG_R3964 is not set
753# CONFIG_RAW_DRIVER is not set
754# CONFIG_TCG_TPM is not set
755CONFIG_I2C=y
756CONFIG_I2C_BOARDINFO=y
757CONFIG_I2C_CHARDEV=m
758CONFIG_I2C_HELPER_AUTO=y
759
760#
761# I2C Hardware Bus support
762#
763CONFIG_I2C_BLACKFIN_TWI=y
764CONFIG_I2C_BLACKFIN_TWI_CLK_KHZ=50
765# CONFIG_I2C_GPIO is not set
766# CONFIG_I2C_OCORES is not set
767# CONFIG_I2C_PARPORT_LIGHT is not set
768# CONFIG_I2C_SIMTEC is not set
769# CONFIG_I2C_TAOS_EVM is not set
770# CONFIG_I2C_STUB is not set
771# CONFIG_I2C_TINY_USB is not set
772# CONFIG_I2C_PCA_PLATFORM is not set
773
774#
775# Miscellaneous I2C Chip support
776#
777# CONFIG_DS1682 is not set
778# CONFIG_SENSORS_AD5252 is not set
779# CONFIG_SENSORS_EEPROM is not set
780# CONFIG_SENSORS_PCF8574 is not set
781# CONFIG_PCF8575 is not set
782# CONFIG_SENSORS_PCF8591 is not set
783# CONFIG_SENSORS_MAX6875 is not set
784# CONFIG_SENSORS_TSL2550 is not set
785# CONFIG_I2C_DEBUG_CORE is not set
786# CONFIG_I2C_DEBUG_ALGO is not set
787# CONFIG_I2C_DEBUG_BUS is not set
788# CONFIG_I2C_DEBUG_CHIP is not set
789CONFIG_SPI=y
790CONFIG_SPI_MASTER=y
791
792#
793# SPI Master Controller Drivers
794#
795CONFIG_SPI_BFIN=y
796# CONFIG_SPI_BITBANG is not set
797
798#
799# SPI Protocol Masters
800#
801# CONFIG_SPI_AT25 is not set
802# CONFIG_SPI_SPIDEV is not set
803# CONFIG_SPI_TLE62X0 is not set
804# CONFIG_W1 is not set
805# CONFIG_POWER_SUPPLY is not set
806CONFIG_HWMON=y
807# CONFIG_HWMON_VID is not set
808# CONFIG_SENSORS_AD7418 is not set
809# CONFIG_SENSORS_ADM1021 is not set
810# CONFIG_SENSORS_ADM1025 is not set
811# CONFIG_SENSORS_ADM1026 is not set
812# CONFIG_SENSORS_ADM1029 is not set
813# CONFIG_SENSORS_ADM1031 is not set
814# CONFIG_SENSORS_ADM9240 is not set
815# CONFIG_SENSORS_ADT7470 is not set
816# CONFIG_SENSORS_ADT7473 is not set
817# CONFIG_SENSORS_ATXP1 is not set
818# CONFIG_SENSORS_DS1621 is not set
819# CONFIG_SENSORS_F71805F is not set
820# CONFIG_SENSORS_F71882FG is not set
821# CONFIG_SENSORS_F75375S is not set
822# CONFIG_SENSORS_GL518SM is not set
823# CONFIG_SENSORS_GL520SM is not set
824# CONFIG_SENSORS_IT87 is not set
825# CONFIG_SENSORS_LM63 is not set
826# CONFIG_SENSORS_LM70 is not set
827# CONFIG_SENSORS_LM75 is not set
828# CONFIG_SENSORS_LM77 is not set
829# CONFIG_SENSORS_LM78 is not set
830# CONFIG_SENSORS_LM80 is not set
831# CONFIG_SENSORS_LM83 is not set
832# CONFIG_SENSORS_LM85 is not set
833# CONFIG_SENSORS_LM87 is not set
834# CONFIG_SENSORS_LM90 is not set
835# CONFIG_SENSORS_LM92 is not set
836# CONFIG_SENSORS_LM93 is not set
837# CONFIG_SENSORS_MAX1619 is not set
838# CONFIG_SENSORS_MAX6650 is not set
839# CONFIG_SENSORS_PC87360 is not set
840# CONFIG_SENSORS_PC87427 is not set
841# CONFIG_SENSORS_DME1737 is not set
842# CONFIG_SENSORS_SMSC47M1 is not set
843# CONFIG_SENSORS_SMSC47M192 is not set
844# CONFIG_SENSORS_SMSC47B397 is not set
845# CONFIG_SENSORS_ADS7828 is not set
846# CONFIG_SENSORS_THMC50 is not set
847# CONFIG_SENSORS_VT1211 is not set
848# CONFIG_SENSORS_W83781D is not set
849# CONFIG_SENSORS_W83791D is not set
850# CONFIG_SENSORS_W83792D is not set
851# CONFIG_SENSORS_W83793 is not set
852# CONFIG_SENSORS_W83L785TS is not set
853# CONFIG_SENSORS_W83L786NG is not set
854# CONFIG_SENSORS_W83627HF is not set
855# CONFIG_SENSORS_W83627EHF is not set
856# CONFIG_HWMON_DEBUG_CHIP is not set
857# CONFIG_THERMAL is not set
858# CONFIG_THERMAL_HWMON is not set
859CONFIG_WATCHDOG=y
860# CONFIG_WATCHDOG_NOWAYOUT is not set
861
862#
863# Watchdog Device Drivers
864#
865# CONFIG_SOFT_WATCHDOG is not set
866CONFIG_BFIN_WDT=y
867
868#
869# USB-based Watchdog Cards
870#
871# CONFIG_USBPCWATCHDOG is not set
872
873#
874# Sonics Silicon Backplane
875#
876CONFIG_SSB_POSSIBLE=y
877# CONFIG_SSB is not set
878
879#
880# Multifunction device drivers
881#
882# CONFIG_MFD_SM501 is not set
883# CONFIG_HTC_PASIC3 is not set
884
885#
886# Multimedia devices
887#
888
889#
890# Multimedia core support
891#
892# CONFIG_VIDEO_DEV is not set
893# CONFIG_DVB_CORE is not set
894# CONFIG_VIDEO_MEDIA is not set
895
896#
897# Multimedia drivers
898#
899# CONFIG_DAB is not set
900
901#
902# Graphics support
903#
904# CONFIG_VGASTATE is not set
905# CONFIG_VIDEO_OUTPUT_CONTROL is not set
906# CONFIG_FB is not set
907# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
908
909#
910# Display device support
911#
912# CONFIG_DISPLAY_SUPPORT is not set
913
914#
915# Console display driver support
916#
917CONFIG_DUMMY_CONSOLE=y
918
919#
920# Sound
921#
922CONFIG_SOUND=m
923
924#
925# Advanced Linux Sound Architecture
926#
927CONFIG_SND=m
928CONFIG_SND_TIMER=m
929CONFIG_SND_PCM=m
930# CONFIG_SND_SEQUENCER is not set
931CONFIG_SND_OSSEMUL=y
932CONFIG_SND_MIXER_OSS=m
933CONFIG_SND_PCM_OSS=m
934CONFIG_SND_PCM_OSS_PLUGINS=y
935# CONFIG_SND_DYNAMIC_MINORS is not set
936CONFIG_SND_SUPPORT_OLD_API=y
937CONFIG_SND_VERBOSE_PROCFS=y
938# CONFIG_SND_VERBOSE_PRINTK is not set
939# CONFIG_SND_DEBUG is not set
940
941#
942# Generic devices
943#
944# CONFIG_SND_DUMMY is not set
945# CONFIG_SND_MTPAV is not set
946# CONFIG_SND_SERIAL_U16550 is not set
947# CONFIG_SND_MPU401 is not set
948
949#
950# SPI devices
951#
952
953#
954# ALSA Blackfin devices
955#
956# CONFIG_SND_BLACKFIN_AD1836 is not set
957# CONFIG_SND_BFIN_AD73311 is not set
958# CONFIG_SND_BFIN_AD73322 is not set
959
960#
961# USB devices
962#
963# CONFIG_SND_USB_AUDIO is not set
964# CONFIG_SND_USB_CAIAQ is not set
965
966#
967# System on Chip audio support
968#
969CONFIG_SND_SOC=m
970CONFIG_SND_BF5XX_I2S=m
971CONFIG_SND_BF5XX_SOC_SSM2602=m
972# CONFIG_SND_BF5XX_AC97 is not set
973CONFIG_SND_BF5XX_SOC_SPORT=m
974CONFIG_SND_BF5XX_SOC_I2S=m
975CONFIG_SND_BF5XX_SPORT_NUM=0
976
977#
978# ALSA SoC audio for Freescale SOCs
979#
980
981#
982# SoC Audio for the Texas Instruments OMAP
983#
984CONFIG_SND_SOC_SSM2602=m
985
986#
987# Open Sound System
988#
989# CONFIG_SOUND_PRIME is not set
990CONFIG_HID_SUPPORT=y
991CONFIG_HID=y
992# CONFIG_HID_DEBUG is not set
993# CONFIG_HIDRAW is not set
994
995#
996# USB Input Devices
997#
998CONFIG_USB_HID=y
999# CONFIG_USB_HIDINPUT_POWERBOOK is not set
1000# CONFIG_HID_FF is not set
1001# CONFIG_USB_HIDDEV is not set
1002CONFIG_USB_SUPPORT=y
1003CONFIG_USB_ARCH_HAS_HCD=y
1004# CONFIG_USB_ARCH_HAS_OHCI is not set
1005# CONFIG_USB_ARCH_HAS_EHCI is not set
1006CONFIG_USB=y
1007# CONFIG_USB_DEBUG is not set
1008# CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set
1009
1010#
1011# Miscellaneous USB options
1012#
1013# CONFIG_USB_DEVICEFS is not set
1014CONFIG_USB_DEVICE_CLASS=y
1015# CONFIG_USB_DYNAMIC_MINORS is not set
1016# CONFIG_USB_OTG is not set
1017# CONFIG_USB_OTG_WHITELIST is not set
1018CONFIG_USB_OTG_BLACKLIST_HUB=y
1019
1020#
1021# USB Host Controller Drivers
1022#
1023# CONFIG_USB_C67X00_HCD is not set
1024# CONFIG_USB_ISP116X_HCD is not set
1025# CONFIG_USB_ISP1760_HCD is not set
1026# CONFIG_USB_ISP1362_HCD is not set
1027# CONFIG_USB_SL811_HCD is not set
1028# CONFIG_USB_R8A66597_HCD is not set
1029CONFIG_USB_MUSB_HDRC=y
1030CONFIG_USB_MUSB_SOC=y
1031
1032#
1033# Blackfin high speed USB support
1034#
1035CONFIG_USB_MUSB_HOST=y
1036# CONFIG_USB_MUSB_PERIPHERAL is not set
1037# CONFIG_USB_MUSB_OTG is not set
1038CONFIG_USB_MUSB_HDRC_HCD=y
1039CONFIG_MUSB_PIO_ONLY=y
1040CONFIG_USB_MUSB_LOGLEVEL=0
1041
1042#
1043# USB Device Class drivers
1044#
1045# CONFIG_USB_ACM is not set
1046# CONFIG_USB_PRINTER is not set
1047# CONFIG_USB_WDM is not set
1048
1049#
1050# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
1051#
1052
1053#
1054# may also be needed; see USB_STORAGE Help for more information
1055#
1056# CONFIG_USB_LIBUSUAL is not set
1057
1058#
1059# USB Imaging devices
1060#
1061# CONFIG_USB_MDC800 is not set
1062CONFIG_USB_MON=y
1063
1064#
1065# USB port drivers
1066#
1067# CONFIG_USB_SERIAL is not set
1068
1069#
1070# USB Miscellaneous drivers
1071#
1072# CONFIG_USB_EMI62 is not set
1073# CONFIG_USB_EMI26 is not set
1074# CONFIG_USB_ADUTUX is not set
1075# CONFIG_USB_AUERSWALD is not set
1076# CONFIG_USB_RIO500 is not set
1077# CONFIG_USB_LEGOTOWER is not set
1078# CONFIG_USB_LCD is not set
1079# CONFIG_USB_BERRY_CHARGE is not set
1080# CONFIG_USB_LED is not set
1081# CONFIG_USB_CYPRESS_CY7C63 is not set
1082# CONFIG_USB_CYTHERM is not set
1083# CONFIG_USB_PHIDGET is not set
1084# CONFIG_USB_IDMOUSE is not set
1085# CONFIG_USB_FTDI_ELAN is not set
1086# CONFIG_USB_APPLEDISPLAY is not set
1087# CONFIG_USB_SISUSBVGA is not set
1088# CONFIG_USB_LD is not set
1089# CONFIG_USB_TRANCEVIBRATOR is not set
1090# CONFIG_USB_IOWARRIOR is not set
1091# CONFIG_USB_ISIGHTFW is not set
1092# CONFIG_USB_GADGET is not set
1093# CONFIG_MMC is not set
1094# CONFIG_MEMSTICK is not set
1095# CONFIG_NEW_LEDS is not set
1096# CONFIG_ACCESSIBILITY is not set
1097CONFIG_RTC_LIB=y
1098CONFIG_RTC_CLASS=y
1099CONFIG_RTC_HCTOSYS=y
1100CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
1101# CONFIG_RTC_DEBUG is not set
1102
1103#
1104# RTC interfaces
1105#
1106CONFIG_RTC_INTF_SYSFS=y
1107CONFIG_RTC_INTF_PROC=y
1108CONFIG_RTC_INTF_DEV=y
1109# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
1110# CONFIG_RTC_DRV_TEST is not set
1111
1112#
1113# I2C RTC drivers
1114#
1115# CONFIG_RTC_DRV_DS1307 is not set
1116# CONFIG_RTC_DRV_DS1374 is not set
1117# CONFIG_RTC_DRV_DS1672 is not set
1118# CONFIG_RTC_DRV_MAX6900 is not set
1119# CONFIG_RTC_DRV_RS5C372 is not set
1120# CONFIG_RTC_DRV_ISL1208 is not set
1121# CONFIG_RTC_DRV_X1205 is not set
1122# CONFIG_RTC_DRV_PCF8563 is not set
1123# CONFIG_RTC_DRV_PCF8583 is not set
1124# CONFIG_RTC_DRV_M41T80 is not set
1125# CONFIG_RTC_DRV_S35390A is not set
1126# CONFIG_RTC_DRV_FM3130 is not set
1127
1128#
1129# SPI RTC drivers
1130#
1131# CONFIG_RTC_DRV_MAX6902 is not set
1132# CONFIG_RTC_DRV_R9701 is not set
1133# CONFIG_RTC_DRV_RS5C348 is not set
1134
1135#
1136# Platform RTC drivers
1137#
1138# CONFIG_RTC_DRV_DS1511 is not set
1139# CONFIG_RTC_DRV_DS1553 is not set
1140# CONFIG_RTC_DRV_DS1742 is not set
1141# CONFIG_RTC_DRV_STK17TA8 is not set
1142# CONFIG_RTC_DRV_M48T86 is not set
1143# CONFIG_RTC_DRV_M48T59 is not set
1144# CONFIG_RTC_DRV_V3020 is not set
1145
1146#
1147# on-CPU RTC drivers
1148#
1149CONFIG_RTC_DRV_BFIN=y
1150# CONFIG_UIO is not set
1151
1152#
1153# File systems
1154#
1155# CONFIG_EXT2_FS is not set
1156# CONFIG_EXT3_FS is not set
1157# CONFIG_EXT4DEV_FS is not set
1158# CONFIG_REISERFS_FS is not set
1159# CONFIG_JFS_FS is not set
1160# CONFIG_FS_POSIX_ACL is not set
1161# CONFIG_XFS_FS is not set
1162# CONFIG_OCFS2_FS is not set
1163# CONFIG_DNOTIFY is not set
1164CONFIG_INOTIFY=y
1165CONFIG_INOTIFY_USER=y
1166# CONFIG_QUOTA is not set
1167# CONFIG_AUTOFS_FS is not set
1168# CONFIG_AUTOFS4_FS is not set
1169# CONFIG_FUSE_FS is not set
1170
1171#
1172# CD-ROM/DVD Filesystems
1173#
1174# CONFIG_ISO9660_FS is not set
1175# CONFIG_UDF_FS is not set
1176
1177#
1178# DOS/FAT/NT Filesystems
1179#
1180# CONFIG_MSDOS_FS is not set
1181# CONFIG_VFAT_FS is not set
1182# CONFIG_NTFS_FS is not set
1183
1184#
1185# Pseudo filesystems
1186#
1187CONFIG_PROC_FS=y
1188CONFIG_PROC_SYSCTL=y
1189CONFIG_SYSFS=y
1190# CONFIG_TMPFS is not set
1191# CONFIG_HUGETLB_PAGE is not set
1192# CONFIG_CONFIGFS_FS is not set
1193
1194#
1195# Miscellaneous filesystems
1196#
1197# CONFIG_ADFS_FS is not set
1198# CONFIG_AFFS_FS is not set
1199# CONFIG_HFS_FS is not set
1200# CONFIG_HFSPLUS_FS is not set
1201# CONFIG_BEFS_FS is not set
1202# CONFIG_BFS_FS is not set
1203# CONFIG_EFS_FS is not set
1204CONFIG_YAFFS_FS=m
1205CONFIG_YAFFS_YAFFS1=y
1206# CONFIG_YAFFS_9BYTE_TAGS is not set
1207# CONFIG_YAFFS_DOES_ECC is not set
1208CONFIG_YAFFS_YAFFS2=y
1209CONFIG_YAFFS_AUTO_YAFFS2=y
1210# CONFIG_YAFFS_DISABLE_LAZY_LOAD is not set
1211# CONFIG_YAFFS_DISABLE_WIDE_TNODES is not set
1212# CONFIG_YAFFS_ALWAYS_CHECK_CHUNK_ERASED is not set
1213CONFIG_YAFFS_SHORT_NAMES_IN_RAM=y
1214CONFIG_JFFS2_FS=m
1215CONFIG_JFFS2_FS_DEBUG=0
1216CONFIG_JFFS2_FS_WRITEBUFFER=y
1217# CONFIG_JFFS2_FS_WBUF_VERIFY is not set
1218# CONFIG_JFFS2_SUMMARY is not set
1219# CONFIG_JFFS2_FS_XATTR is not set
1220# CONFIG_JFFS2_COMPRESSION_OPTIONS is not set
1221CONFIG_JFFS2_ZLIB=y
1222# CONFIG_JFFS2_LZO is not set
1223CONFIG_JFFS2_RTIME=y
1224# CONFIG_JFFS2_RUBIN is not set
1225# CONFIG_CRAMFS is not set
1226# CONFIG_VXFS_FS is not set
1227# CONFIG_MINIX_FS is not set
1228# CONFIG_HPFS_FS is not set
1229# CONFIG_QNX4FS_FS is not set
1230# CONFIG_ROMFS_FS is not set
1231# CONFIG_SYSV_FS is not set
1232# CONFIG_UFS_FS is not set
1233CONFIG_NETWORK_FILESYSTEMS=y
1234CONFIG_NFS_FS=m
1235CONFIG_NFS_V3=y
1236# CONFIG_NFS_V3_ACL is not set
1237# CONFIG_NFS_V4 is not set
1238# CONFIG_NFSD is not set
1239CONFIG_LOCKD=m
1240CONFIG_LOCKD_V4=y
1241CONFIG_NFS_COMMON=y
1242CONFIG_SUNRPC=m
1243# CONFIG_SUNRPC_BIND34 is not set
1244# CONFIG_RPCSEC_GSS_KRB5 is not set
1245# CONFIG_RPCSEC_GSS_SPKM3 is not set
1246CONFIG_SMB_FS=m
1247# CONFIG_SMB_NLS_DEFAULT is not set
1248# CONFIG_CIFS is not set
1249# CONFIG_NCP_FS is not set
1250# CONFIG_CODA_FS is not set
1251# CONFIG_AFS_FS is not set
1252
1253#
1254# Partition Types
1255#
1256# CONFIG_PARTITION_ADVANCED is not set
1257CONFIG_MSDOS_PARTITION=y
1258CONFIG_NLS=m
1259CONFIG_NLS_DEFAULT="iso8859-1"
1260# CONFIG_NLS_CODEPAGE_437 is not set
1261# CONFIG_NLS_CODEPAGE_737 is not set
1262# CONFIG_NLS_CODEPAGE_775 is not set
1263# CONFIG_NLS_CODEPAGE_850 is not set
1264# CONFIG_NLS_CODEPAGE_852 is not set
1265# CONFIG_NLS_CODEPAGE_855 is not set
1266# CONFIG_NLS_CODEPAGE_857 is not set
1267# CONFIG_NLS_CODEPAGE_860 is not set
1268# CONFIG_NLS_CODEPAGE_861 is not set
1269# CONFIG_NLS_CODEPAGE_862 is not set
1270# CONFIG_NLS_CODEPAGE_863 is not set
1271# CONFIG_NLS_CODEPAGE_864 is not set
1272# CONFIG_NLS_CODEPAGE_865 is not set
1273# CONFIG_NLS_CODEPAGE_866 is not set
1274# CONFIG_NLS_CODEPAGE_869 is not set
1275# CONFIG_NLS_CODEPAGE_936 is not set
1276# CONFIG_NLS_CODEPAGE_950 is not set
1277# CONFIG_NLS_CODEPAGE_932 is not set
1278# CONFIG_NLS_CODEPAGE_949 is not set
1279# CONFIG_NLS_CODEPAGE_874 is not set
1280# CONFIG_NLS_ISO8859_8 is not set
1281# CONFIG_NLS_CODEPAGE_1250 is not set
1282# CONFIG_NLS_CODEPAGE_1251 is not set
1283# CONFIG_NLS_ASCII is not set
1284# CONFIG_NLS_ISO8859_1 is not set
1285# CONFIG_NLS_ISO8859_2 is not set
1286# CONFIG_NLS_ISO8859_3 is not set
1287# CONFIG_NLS_ISO8859_4 is not set
1288# CONFIG_NLS_ISO8859_5 is not set
1289# CONFIG_NLS_ISO8859_6 is not set
1290# CONFIG_NLS_ISO8859_7 is not set
1291# CONFIG_NLS_ISO8859_9 is not set
1292# CONFIG_NLS_ISO8859_13 is not set
1293# CONFIG_NLS_ISO8859_14 is not set
1294# CONFIG_NLS_ISO8859_15 is not set
1295# CONFIG_NLS_KOI8_R is not set
1296# CONFIG_NLS_KOI8_U is not set
1297# CONFIG_NLS_UTF8 is not set
1298# CONFIG_DLM is not set
1299
1300#
1301# Kernel hacking
1302#
1303# CONFIG_PRINTK_TIME is not set
1304CONFIG_ENABLE_WARN_DEPRECATED=y
1305CONFIG_ENABLE_MUST_CHECK=y
1306CONFIG_FRAME_WARN=1024
1307# CONFIG_MAGIC_SYSRQ is not set
1308# CONFIG_UNUSED_SYMBOLS is not set
1309CONFIG_DEBUG_FS=y
1310# CONFIG_HEADERS_CHECK is not set
1311# CONFIG_DEBUG_KERNEL is not set
1312# CONFIG_DEBUG_BUGVERBOSE is not set
1313# CONFIG_SAMPLES is not set
1314CONFIG_DEBUG_MMRS=y
1315CONFIG_DEBUG_HUNT_FOR_ZERO=y
1316CONFIG_DEBUG_BFIN_HWTRACE_ON=y
1317CONFIG_DEBUG_BFIN_HWTRACE_COMPRESSION_OFF=y
1318# CONFIG_DEBUG_BFIN_HWTRACE_COMPRESSION_ONE is not set
1319# CONFIG_DEBUG_BFIN_HWTRACE_COMPRESSION_TWO is not set
1320CONFIG_DEBUG_BFIN_HWTRACE_COMPRESSION=0
1321# CONFIG_DEBUG_BFIN_HWTRACE_EXPAND is not set
1322# CONFIG_DEBUG_BFIN_NO_KERN_HWTRACE is not set
1323CONFIG_EARLY_PRINTK=y
1324CONFIG_CPLB_INFO=y
1325CONFIG_ACCESS_CHECK=y
1326
1327#
1328# Security options
1329#
1330# CONFIG_KEYS is not set
1331CONFIG_SECURITY=y
1332# CONFIG_SECURITY_NETWORK is not set
1333# CONFIG_SECURITY_CAPABILITIES is not set
1334# CONFIG_SECURITY_ROOTPLUG is not set
1335CONFIG_SECURITY_DEFAULT_MMAP_MIN_ADDR=0
1336CONFIG_CRYPTO=y
1337
1338#
1339# Crypto core or helper
1340#
1341# CONFIG_CRYPTO_MANAGER is not set
1342# CONFIG_CRYPTO_GF128MUL is not set
1343# CONFIG_CRYPTO_NULL is not set
1344# CONFIG_CRYPTO_CRYPTD is not set
1345# CONFIG_CRYPTO_AUTHENC is not set
1346# CONFIG_CRYPTO_TEST is not set
1347
1348#
1349# Authenticated Encryption with Associated Data
1350#
1351# CONFIG_CRYPTO_CCM is not set
1352# CONFIG_CRYPTO_GCM is not set
1353# CONFIG_CRYPTO_SEQIV is not set
1354
1355#
1356# Block modes
1357#
1358# CONFIG_CRYPTO_CBC is not set
1359# CONFIG_CRYPTO_CTR is not set
1360# CONFIG_CRYPTO_CTS is not set
1361# CONFIG_CRYPTO_ECB is not set
1362# CONFIG_CRYPTO_LRW is not set
1363# CONFIG_CRYPTO_PCBC is not set
1364# CONFIG_CRYPTO_XTS is not set
1365
1366#
1367# Hash modes
1368#
1369# CONFIG_CRYPTO_HMAC is not set
1370# CONFIG_CRYPTO_XCBC is not set
1371
1372#
1373# Digest
1374#
1375# CONFIG_CRYPTO_CRC32C is not set
1376# CONFIG_CRYPTO_MD4 is not set
1377# CONFIG_CRYPTO_MD5 is not set
1378# CONFIG_CRYPTO_MICHAEL_MIC is not set
1379# CONFIG_CRYPTO_SHA1 is not set
1380# CONFIG_CRYPTO_SHA256 is not set
1381# CONFIG_CRYPTO_SHA512 is not set
1382# CONFIG_CRYPTO_TGR192 is not set
1383# CONFIG_CRYPTO_WP512 is not set
1384
1385#
1386# Ciphers
1387#
1388# CONFIG_CRYPTO_AES is not set
1389# CONFIG_CRYPTO_ANUBIS is not set
1390# CONFIG_CRYPTO_ARC4 is not set
1391# CONFIG_CRYPTO_BLOWFISH is not set
1392# CONFIG_CRYPTO_CAMELLIA is not set
1393# CONFIG_CRYPTO_CAST5 is not set
1394# CONFIG_CRYPTO_CAST6 is not set
1395# CONFIG_CRYPTO_DES is not set
1396# CONFIG_CRYPTO_FCRYPT is not set
1397# CONFIG_CRYPTO_KHAZAD is not set
1398# CONFIG_CRYPTO_SALSA20 is not set
1399# CONFIG_CRYPTO_SEED is not set
1400# CONFIG_CRYPTO_SERPENT is not set
1401# CONFIG_CRYPTO_TEA is not set
1402# CONFIG_CRYPTO_TWOFISH is not set
1403
1404#
1405# Compression
1406#
1407# CONFIG_CRYPTO_DEFLATE is not set
1408# CONFIG_CRYPTO_LZO is not set
1409CONFIG_CRYPTO_HW=y
1410
1411#
1412# Library routines
1413#
1414CONFIG_BITREVERSE=y
1415# CONFIG_GENERIC_FIND_FIRST_BIT is not set
1416CONFIG_CRC_CCITT=m
1417# CONFIG_CRC16 is not set
1418# CONFIG_CRC_ITU_T is not set
1419CONFIG_CRC32=y
1420# CONFIG_CRC7 is not set
1421# CONFIG_LIBCRC32C is not set
1422CONFIG_ZLIB_INFLATE=y
1423CONFIG_ZLIB_DEFLATE=m
1424CONFIG_PLIST=y
1425CONFIG_HAS_IOMEM=y
1426CONFIG_HAS_IOPORT=y
1427CONFIG_HAS_DMA=y
diff --git a/arch/blackfin/mach-bf527/boards/Kconfig b/arch/blackfin/mach-bf527/boards/Kconfig
index 8bf9e58f0148..df224d04e167 100644
--- a/arch/blackfin/mach-bf527/boards/Kconfig
+++ b/arch/blackfin/mach-bf527/boards/Kconfig
@@ -14,4 +14,9 @@ config BFIN527_BLUETECHNIX_CM
14 help 14 help
15 CM-BF527 support for EVAL- and DEV-Board. 15 CM-BF527 support for EVAL- and DEV-Board.
16 16
17config BFIN526_EZBRD
18 bool "BF526-EZBRD"
19 help
20 BF526-EZBRD/EZKIT Lite board support.
21
17endchoice 22endchoice
diff --git a/arch/blackfin/mach-bf527/boards/Makefile b/arch/blackfin/mach-bf527/boards/Makefile
index 7ba7d256bbb8..eb6ed3362f9f 100644
--- a/arch/blackfin/mach-bf527/boards/Makefile
+++ b/arch/blackfin/mach-bf527/boards/Makefile
@@ -4,3 +4,4 @@
4 4
5obj-$(CONFIG_BFIN527_EZKIT) += ezkit.o 5obj-$(CONFIG_BFIN527_EZKIT) += ezkit.o
6obj-$(CONFIG_BFIN527_BLUETECHNIX_CM) += cm_bf527.o 6obj-$(CONFIG_BFIN527_BLUETECHNIX_CM) += cm_bf527.o
7obj-$(CONFIG_BFIN526_EZBRD) += ezbrd.o
diff --git a/arch/blackfin/mach-bf527/boards/ezbrd.c b/arch/blackfin/mach-bf527/boards/ezbrd.c
new file mode 100644
index 000000000000..36c87b6fbdec
--- /dev/null
+++ b/arch/blackfin/mach-bf527/boards/ezbrd.c
@@ -0,0 +1,734 @@
1/*
2 * File: arch/blackfin/mach-bf527/boards/ezbrd.c
3 * Based on: arch/blackfin/mach-bf537/boards/stamp.c
4 * Author: Aidan Williams <aidan@nicta.com.au>
5 *
6 * Created:
7 * Description:
8 *
9 * Modified:
10 * Copyright 2005 National ICT Australia (NICTA)
11 * Copyright 2004-2008 Analog Devices Inc.
12 *
13 * Bugs: Enter bugs at http://blackfin.uclinux.org/
14 *
15 * This program is free software; you can redistribute it and/or modify
16 * it under the terms of the GNU General Public License as published by
17 * the Free Software Foundation; either version 2 of the License, or
18 * (at your option) any later version.
19 *
20 * This program is distributed in the hope that it will be useful,
21 * but WITHOUT ANY WARRANTY; without even the implied warranty of
22 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23 * GNU General Public License for more details.
24 *
25 * You should have received a copy of the GNU General Public License
26 * along with this program; if not, see the file COPYING, or write
27 * to the Free Software Foundation, Inc.,
28 * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
29 */
30
31#include <linux/device.h>
32#include <linux/platform_device.h>
33#include <linux/mtd/mtd.h>
34#include <linux/mtd/partitions.h>
35#include <linux/mtd/physmap.h>
36#include <linux/spi/spi.h>
37#include <linux/spi/flash.h>
38
39#include <linux/i2c.h>
40#include <linux/irq.h>
41#include <linux/interrupt.h>
42#include <linux/usb/musb.h>
43#include <asm/dma.h>
44#include <asm/bfin5xx_spi.h>
45#include <asm/reboot.h>
46#include <asm/nand.h>
47#include <asm/portmux.h>
48#include <asm/dpmc.h>
49#include <linux/spi/ad7877.h>
50
51/*
52 * Name the Board for the /proc/cpuinfo
53 */
54const char bfin_board_name[] = "BF526-EZBRD";
55
56/*
57 * Driver needs to know address, irq and flag pin.
58 */
59
60#if defined(CONFIG_USB_MUSB_HDRC) || defined(CONFIG_USB_MUSB_HDRC_MODULE)
61static struct resource musb_resources[] = {
62 [0] = {
63 .start = 0xffc03800,
64 .end = 0xffc03cff,
65 .flags = IORESOURCE_MEM,
66 },
67 [1] = { /* general IRQ */
68 .start = IRQ_USB_INT0,
69 .end = IRQ_USB_INT0,
70 .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL,
71 },
72 [2] = { /* DMA IRQ */
73 .start = IRQ_USB_DMA,
74 .end = IRQ_USB_DMA,
75 .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL,
76 },
77};
78
79static struct musb_hdrc_config musb_config = {
80 .multipoint = 0,
81 .dyn_fifo = 0,
82 .soft_con = 1,
83 .dma = 1,
84 .num_eps = 7,
85 .dma_channels = 7,
86 .gpio_vrsel = GPIO_PG13,
87};
88
89static struct musb_hdrc_platform_data musb_plat = {
90#if defined(CONFIG_USB_MUSB_OTG)
91 .mode = MUSB_OTG,
92#elif defined(CONFIG_USB_MUSB_HDRC_HCD)
93 .mode = MUSB_HOST,
94#elif defined(CONFIG_USB_GADGET_MUSB_HDRC)
95 .mode = MUSB_PERIPHERAL,
96#endif
97 .config = &musb_config,
98};
99
100static u64 musb_dmamask = ~(u32)0;
101
102static struct platform_device musb_device = {
103 .name = "musb_hdrc",
104 .id = 0,
105 .dev = {
106 .dma_mask = &musb_dmamask,
107 .coherent_dma_mask = 0xffffffff,
108 .platform_data = &musb_plat,
109 },
110 .num_resources = ARRAY_SIZE(musb_resources),
111 .resource = musb_resources,
112};
113#endif
114
115#if defined(CONFIG_MTD_PHYSMAP) || defined(CONFIG_MTD_PHYSMAP_MODULE)
116static struct mtd_partition ezbrd_partitions[] = {
117 {
118 .name = "bootloader(nor)",
119 .size = 0x40000,
120 .offset = 0,
121 }, {
122 .name = "linux kernel(nor)",
123 .size = 0x1C0000,
124 .offset = MTDPART_OFS_APPEND,
125 }, {
126 .name = "file system(nor)",
127 .size = MTDPART_SIZ_FULL,
128 .offset = MTDPART_OFS_APPEND,
129 }
130};
131
132static struct physmap_flash_data ezbrd_flash_data = {
133 .width = 2,
134 .parts = ezbrd_partitions,
135 .nr_parts = ARRAY_SIZE(ezbrd_partitions),
136};
137
138static struct resource ezbrd_flash_resource = {
139 .start = 0x20000000,
140 .end = 0x203fffff,
141 .flags = IORESOURCE_MEM,
142};
143
144static struct platform_device ezbrd_flash_device = {
145 .name = "physmap-flash",
146 .id = 0,
147 .dev = {
148 .platform_data = &ezbrd_flash_data,
149 },
150 .num_resources = 1,
151 .resource = &ezbrd_flash_resource,
152};
153#endif
154
155#if defined(CONFIG_MTD_NAND_BF5XX) || defined(CONFIG_MTD_NAND_BF5XX_MODULE)
156static struct mtd_partition partition_info[] = {
157 {
158 .name = "linux kernel(nand)",
159 .offset = 0,
160 .size = 4 * 1024 * 1024,
161 },
162 {
163 .name = "file system(nand)",
164 .offset = MTDPART_OFS_APPEND,
165 .size = MTDPART_SIZ_FULL,
166 },
167};
168
169static struct bf5xx_nand_platform bf5xx_nand_platform = {
170 .page_size = NFC_PG_SIZE_256,
171 .data_width = NFC_NWIDTH_8,
172 .partitions = partition_info,
173 .nr_partitions = ARRAY_SIZE(partition_info),
174 .rd_dly = 3,
175 .wr_dly = 3,
176};
177
178static struct resource bf5xx_nand_resources[] = {
179 {
180 .start = NFC_CTL,
181 .end = NFC_DATA_RD + 2,
182 .flags = IORESOURCE_MEM,
183 },
184 {
185 .start = CH_NFC,
186 .end = CH_NFC,
187 .flags = IORESOURCE_IRQ,
188 },
189};
190
191static struct platform_device bf5xx_nand_device = {
192 .name = "bf5xx-nand",
193 .id = 0,
194 .num_resources = ARRAY_SIZE(bf5xx_nand_resources),
195 .resource = bf5xx_nand_resources,
196 .dev = {
197 .platform_data = &bf5xx_nand_platform,
198 },
199};
200#endif
201
202#if defined(CONFIG_RTC_DRV_BFIN) || defined(CONFIG_RTC_DRV_BFIN_MODULE)
203static struct platform_device rtc_device = {
204 .name = "rtc-bfin",
205 .id = -1,
206};
207#endif
208
209
210#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
211static struct platform_device bfin_mac_device = {
212 .name = "bfin_mac",
213};
214#endif
215
216#if defined(CONFIG_MTD_M25P80) \
217 || defined(CONFIG_MTD_M25P80_MODULE)
218static struct mtd_partition bfin_spi_flash_partitions[] = {
219 {
220 .name = "bootloader(spi)",
221 .size = 0x00040000,
222 .offset = 0,
223 .mask_flags = MTD_CAP_ROM
224 }, {
225 .name = "linux kernel(spi)",
226 .size = MTDPART_SIZ_FULL,
227 .offset = MTDPART_OFS_APPEND,
228 }
229};
230
231static struct flash_platform_data bfin_spi_flash_data = {
232 .name = "m25p80",
233 .parts = bfin_spi_flash_partitions,
234 .nr_parts = ARRAY_SIZE(bfin_spi_flash_partitions),
235 .type = "m25p16",
236};
237
238/* SPI flash chip (m25p64) */
239static struct bfin5xx_spi_chip spi_flash_chip_info = {
240 .enable_dma = 0, /* use dma transfer with this chip*/
241 .bits_per_word = 8,
242};
243#endif
244
245#if defined(CONFIG_SPI_ADC_BF533) \
246 || defined(CONFIG_SPI_ADC_BF533_MODULE)
247/* SPI ADC chip */
248static struct bfin5xx_spi_chip spi_adc_chip_info = {
249 .enable_dma = 1, /* use dma transfer with this chip*/
250 .bits_per_word = 16,
251};
252#endif
253
254#if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE)
255static struct bfin5xx_spi_chip spi_mmc_chip_info = {
256 .enable_dma = 1,
257 .bits_per_word = 8,
258};
259#endif
260
261#if defined(CONFIG_PBX)
262static struct bfin5xx_spi_chip spi_si3xxx_chip_info = {
263 .ctl_reg = 0x4, /* send zero */
264 .enable_dma = 0,
265 .bits_per_word = 8,
266 .cs_change_per_word = 1,
267};
268#endif
269
270#if defined(CONFIG_TOUCHSCREEN_AD7877) || defined(CONFIG_TOUCHSCREEN_AD7877_MODULE)
271static struct bfin5xx_spi_chip spi_ad7877_chip_info = {
272 .enable_dma = 0,
273 .bits_per_word = 16,
274};
275
276static const struct ad7877_platform_data bfin_ad7877_ts_info = {
277 .model = 7877,
278 .vref_delay_usecs = 50, /* internal, no capacitor */
279 .x_plate_ohms = 419,
280 .y_plate_ohms = 486,
281 .pressure_max = 1000,
282 .pressure_min = 0,
283 .stopacq_polarity = 1,
284 .first_conversion_delay = 3,
285 .acquisition_time = 1,
286 .averaging = 1,
287 .pen_down_acc_interval = 1,
288};
289#endif
290
291#if defined(CONFIG_SND_SOC_WM8731) || defined(CONFIG_SND_SOC_WM8731_MODULE) \
292 && defined(CONFIG_SND_SOC_WM8731_SPI)
293static struct bfin5xx_spi_chip spi_wm8731_chip_info = {
294 .enable_dma = 0,
295 .bits_per_word = 16,
296};
297#endif
298
299#if defined(CONFIG_SPI_SPIDEV) || defined(CONFIG_SPI_SPIDEV_MODULE)
300static struct bfin5xx_spi_chip spidev_chip_info = {
301 .enable_dma = 0,
302 .bits_per_word = 8,
303};
304#endif
305
306#if defined(CONFIG_FB_BFIN_LQ035Q1) || defined(CONFIG_FB_BFIN_LQ035Q1_MODULE)
307static struct bfin5xx_spi_chip lq035q1_spi_chip_info = {
308 .enable_dma = 0,
309 .bits_per_word = 8,
310};
311#endif
312
313static struct spi_board_info bfin_spi_board_info[] __initdata = {
314#if defined(CONFIG_MTD_M25P80) \
315 || defined(CONFIG_MTD_M25P80_MODULE)
316 {
317 /* the modalias must be the same as spi device driver name */
318 .modalias = "m25p80", /* Name of spi_driver for this device */
319 .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */
320 .bus_num = 0, /* Framework bus number */
321 .chip_select = 1, /* Framework chip select. On STAMP537 it is SPISSEL1*/
322 .platform_data = &bfin_spi_flash_data,
323 .controller_data = &spi_flash_chip_info,
324 .mode = SPI_MODE_3,
325 },
326#endif
327
328#if defined(CONFIG_SPI_ADC_BF533) \
329 || defined(CONFIG_SPI_ADC_BF533_MODULE)
330 {
331 .modalias = "bfin_spi_adc", /* Name of spi_driver for this device */
332 .max_speed_hz = 6250000, /* max spi clock (SCK) speed in HZ */
333 .bus_num = 0, /* Framework bus number */
334 .chip_select = 1, /* Framework chip select. */
335 .platform_data = NULL, /* No spi_driver specific config */
336 .controller_data = &spi_adc_chip_info,
337 },
338#endif
339
340#if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE)
341 {
342 .modalias = "spi_mmc_dummy",
343 .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */
344 .bus_num = 0,
345 .chip_select = 0,
346 .platform_data = NULL,
347 .controller_data = &spi_mmc_chip_info,
348 .mode = SPI_MODE_3,
349 },
350 {
351 .modalias = "spi_mmc",
352 .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */
353 .bus_num = 0,
354 .chip_select = CONFIG_SPI_MMC_CS_CHAN,
355 .platform_data = NULL,
356 .controller_data = &spi_mmc_chip_info,
357 .mode = SPI_MODE_3,
358 },
359#endif
360#if defined(CONFIG_PBX)
361 {
362 .modalias = "fxs-spi",
363 .max_speed_hz = 12500000, /* max spi clock (SCK) speed in HZ */
364 .bus_num = 0,
365 .chip_select = 8 - CONFIG_J11_JUMPER,
366 .controller_data = &spi_si3xxx_chip_info,
367 .mode = SPI_MODE_3,
368 },
369 {
370 .modalias = "fxo-spi",
371 .max_speed_hz = 12500000, /* max spi clock (SCK) speed in HZ */
372 .bus_num = 0,
373 .chip_select = 8 - CONFIG_J19_JUMPER,
374 .controller_data = &spi_si3xxx_chip_info,
375 .mode = SPI_MODE_3,
376 },
377#endif
378#if defined(CONFIG_TOUCHSCREEN_AD7877) || defined(CONFIG_TOUCHSCREEN_AD7877_MODULE)
379 {
380 .modalias = "ad7877",
381 .platform_data = &bfin_ad7877_ts_info,
382 .irq = IRQ_PF8,
383 .max_speed_hz = 12500000, /* max spi clock (SCK) speed in HZ */
384 .bus_num = 0,
385 .chip_select = 2,
386 .controller_data = &spi_ad7877_chip_info,
387 },
388#endif
389#if defined(CONFIG_SND_SOC_WM8731) || defined(CONFIG_SND_SOC_WM8731_MODULE) \
390 && defined(CONFIG_SND_SOC_WM8731_SPI)
391 {
392 .modalias = "wm8731",
393 .max_speed_hz = 3125000, /* max spi clock (SCK) speed in HZ */
394 .bus_num = 0,
395 .chip_select = 5,
396 .controller_data = &spi_wm8731_chip_info,
397 .mode = SPI_MODE_0,
398 },
399#endif
400#if defined(CONFIG_SPI_SPIDEV) || defined(CONFIG_SPI_SPIDEV_MODULE)
401 {
402 .modalias = "spidev",
403 .max_speed_hz = 3125000, /* max spi clock (SCK) speed in HZ */
404 .bus_num = 0,
405 .chip_select = 1,
406 .controller_data = &spidev_chip_info,
407 },
408#endif
409#if defined(CONFIG_FB_BFIN_LQ035Q1) || defined(CONFIG_FB_BFIN_LQ035Q1_MODULE)
410 {
411 .modalias = "bfin-lq035q1-spi",
412 .max_speed_hz = 20000000, /* max spi clock (SCK) speed in HZ */
413 .bus_num = 0,
414 .chip_select = 1,
415 .controller_data = &lq035q1_spi_chip_info,
416 .mode = SPI_CPHA | SPI_CPOL,
417 },
418#endif
419};
420
421#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE)
422/* SPI controller data */
423static struct bfin5xx_spi_master bfin_spi0_info = {
424 .num_chipselect = 8,
425 .enable_dma = 1, /* master has the ability to do dma transfer */
426 .pin_req = {P_SPI0_SCK, P_SPI0_MISO, P_SPI0_MOSI, 0},
427};
428
429/* SPI (0) */
430static struct resource bfin_spi0_resource[] = {
431 [0] = {
432 .start = SPI0_REGBASE,
433 .end = SPI0_REGBASE + 0xFF,
434 .flags = IORESOURCE_MEM,
435 },
436 [1] = {
437 .start = CH_SPI,
438 .end = CH_SPI,
439 .flags = IORESOURCE_IRQ,
440 },
441};
442
443static struct platform_device bfin_spi0_device = {
444 .name = "bfin-spi",
445 .id = 0, /* Bus number */
446 .num_resources = ARRAY_SIZE(bfin_spi0_resource),
447 .resource = bfin_spi0_resource,
448 .dev = {
449 .platform_data = &bfin_spi0_info, /* Passed to driver */
450 },
451};
452#endif /* spi master and devices */
453
454#if defined(CONFIG_SERIAL_BFIN) || defined(CONFIG_SERIAL_BFIN_MODULE)
455static struct resource bfin_uart_resources[] = {
456#ifdef CONFIG_SERIAL_BFIN_UART0
457 {
458 .start = 0xFFC00400,
459 .end = 0xFFC004FF,
460 .flags = IORESOURCE_MEM,
461 },
462#endif
463#ifdef CONFIG_SERIAL_BFIN_UART1
464 {
465 .start = 0xFFC02000,
466 .end = 0xFFC020FF,
467 .flags = IORESOURCE_MEM,
468 },
469#endif
470};
471
472static struct platform_device bfin_uart_device = {
473 .name = "bfin-uart",
474 .id = 1,
475 .num_resources = ARRAY_SIZE(bfin_uart_resources),
476 .resource = bfin_uart_resources,
477};
478#endif
479
480#if defined(CONFIG_BFIN_SIR) || defined(CONFIG_BFIN_SIR_MODULE)
481static struct resource bfin_sir_resources[] = {
482#ifdef CONFIG_BFIN_SIR0
483 {
484 .start = 0xFFC00400,
485 .end = 0xFFC004FF,
486 .flags = IORESOURCE_MEM,
487 },
488#endif
489#ifdef CONFIG_BFIN_SIR1
490 {
491 .start = 0xFFC02000,
492 .end = 0xFFC020FF,
493 .flags = IORESOURCE_MEM,
494 },
495#endif
496};
497
498static struct platform_device bfin_sir_device = {
499 .name = "bfin_sir",
500 .id = 0,
501 .num_resources = ARRAY_SIZE(bfin_sir_resources),
502 .resource = bfin_sir_resources,
503};
504#endif
505
506#if defined(CONFIG_I2C_BLACKFIN_TWI) || defined(CONFIG_I2C_BLACKFIN_TWI_MODULE)
507static struct resource bfin_twi0_resource[] = {
508 [0] = {
509 .start = TWI0_REGBASE,
510 .end = TWI0_REGBASE,
511 .flags = IORESOURCE_MEM,
512 },
513 [1] = {
514 .start = IRQ_TWI,
515 .end = IRQ_TWI,
516 .flags = IORESOURCE_IRQ,
517 },
518};
519
520static struct platform_device i2c_bfin_twi_device = {
521 .name = "i2c-bfin-twi",
522 .id = 0,
523 .num_resources = ARRAY_SIZE(bfin_twi0_resource),
524 .resource = bfin_twi0_resource,
525};
526#endif
527
528#ifdef CONFIG_I2C_BOARDINFO
529static struct i2c_board_info __initdata bfin_i2c_board_info[] = {
530#if defined(CONFIG_TWI_LCD) || defined(CONFIG_TWI_LCD_MODULE)
531 {
532 I2C_BOARD_INFO("pcf8574_lcd", 0x22),
533 },
534#endif
535#if defined(CONFIG_TWI_KEYPAD) || defined(CONFIG_TWI_KEYPAD_MODULE)
536 {
537 I2C_BOARD_INFO("pcf8574_keypad", 0x27),
538 .irq = IRQ_PF8,
539 },
540#endif
541};
542#endif
543
544#if defined(CONFIG_SERIAL_BFIN_SPORT) || defined(CONFIG_SERIAL_BFIN_SPORT_MODULE)
545static struct platform_device bfin_sport0_uart_device = {
546 .name = "bfin-sport-uart",
547 .id = 0,
548};
549
550static struct platform_device bfin_sport1_uart_device = {
551 .name = "bfin-sport-uart",
552 .id = 1,
553};
554#endif
555
556#if defined(CONFIG_KEYBOARD_GPIO) || defined(CONFIG_KEYBOARD_GPIO_MODULE)
557#include <linux/input.h>
558#include <linux/gpio_keys.h>
559
560static struct gpio_keys_button bfin_gpio_keys_table[] = {
561 {BTN_0, GPIO_PG0, 1, "gpio-keys: BTN0"},
562 {BTN_1, GPIO_PG13, 1, "gpio-keys: BTN1"},
563};
564
565static struct gpio_keys_platform_data bfin_gpio_keys_data = {
566 .buttons = bfin_gpio_keys_table,
567 .nbuttons = ARRAY_SIZE(bfin_gpio_keys_table),
568};
569
570static struct platform_device bfin_device_gpiokeys = {
571 .name = "gpio-keys",
572 .dev = {
573 .platform_data = &bfin_gpio_keys_data,
574 },
575};
576#endif
577
578static struct resource bfin_gpios_resources = {
579 .start = 0,
580 .end = MAX_BLACKFIN_GPIOS - 1,
581 .flags = IORESOURCE_IRQ,
582};
583
584static struct platform_device bfin_gpios_device = {
585 .name = "simple-gpio",
586 .id = -1,
587 .num_resources = 1,
588 .resource = &bfin_gpios_resources,
589};
590
591static const unsigned int cclk_vlev_datasheet[] =
592{
593 VRPAIR(VLEV_100, 400000000),
594 VRPAIR(VLEV_105, 426000000),
595 VRPAIR(VLEV_110, 500000000),
596 VRPAIR(VLEV_115, 533000000),
597 VRPAIR(VLEV_120, 600000000),
598};
599
600static struct bfin_dpmc_platform_data bfin_dmpc_vreg_data = {
601 .tuple_tab = cclk_vlev_datasheet,
602 .tabsize = ARRAY_SIZE(cclk_vlev_datasheet),
603 .vr_settling_time = 25 /* us */,
604};
605
606static struct platform_device bfin_dpmc = {
607 .name = "bfin dpmc",
608 .dev = {
609 .platform_data = &bfin_dmpc_vreg_data,
610 },
611};
612
613#if defined(CONFIG_FB_BFIN_LQ035Q1) || defined(CONFIG_FB_BFIN_LQ035Q1_MODULE)
614#include <asm/bfin-lq035q1.h>
615
616static struct bfin_lq035q1fb_disp_info bfin_lq035q1_data = {
617 .mode = LQ035_NORM | LQ035_RGB | LQ035_RL | LQ035_TB,
618 .use_bl = 1,
619 .gpio_bl = GPIO_PG12,
620};
621
622static struct resource bfin_lq035q1_resources[] = {
623 {
624 .start = IRQ_PPI_ERROR,
625 .end = IRQ_PPI_ERROR,
626 .flags = IORESOURCE_IRQ,
627 },
628};
629
630static struct platform_device bfin_lq035q1_device = {
631 .name = "bfin-lq035q1",
632 .id = -1,
633 .num_resources = ARRAY_SIZE(bfin_lq035q1_resources),
634 .resource = bfin_lq035q1_resources,
635 .dev = {
636 .platform_data = &bfin_lq035q1_data,
637 },
638};
639#endif
640
641static struct platform_device *stamp_devices[] __initdata = {
642
643 &bfin_dpmc,
644
645#if defined(CONFIG_MTD_NAND_BF5XX) || defined(CONFIG_MTD_NAND_BF5XX_MODULE)
646 &bf5xx_nand_device,
647#endif
648
649#if defined(CONFIG_RTC_DRV_BFIN) || defined(CONFIG_RTC_DRV_BFIN_MODULE)
650 &rtc_device,
651#endif
652
653#if defined(CONFIG_USB_MUSB_HDRC) || defined(CONFIG_USB_MUSB_HDRC_MODULE)
654 &musb_device,
655#endif
656
657#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
658 &bfin_mac_device,
659#endif
660
661#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE)
662 &bfin_spi0_device,
663#endif
664
665#if defined(CONFIG_SERIAL_BFIN) || defined(CONFIG_SERIAL_BFIN_MODULE)
666 &bfin_uart_device,
667#endif
668
669#if defined(CONFIG_FB_BFIN_LQ035Q1) || defined(CONFIG_FB_BFIN_LQ035Q1_MODULE)
670 &bfin_lq035q1_device,
671#endif
672
673#if defined(CONFIG_BFIN_SIR) || defined(CONFIG_BFIN_SIR_MODULE)
674 &bfin_sir_device,
675#endif
676
677#if defined(CONFIG_I2C_BLACKFIN_TWI) || defined(CONFIG_I2C_BLACKFIN_TWI_MODULE)
678 &i2c_bfin_twi_device,
679#endif
680
681#if defined(CONFIG_SERIAL_BFIN_SPORT) || defined(CONFIG_SERIAL_BFIN_SPORT_MODULE)
682 &bfin_sport0_uart_device,
683 &bfin_sport1_uart_device,
684#endif
685
686#if defined(CONFIG_KEYBOARD_GPIO) || defined(CONFIG_KEYBOARD_GPIO_MODULE)
687 &bfin_device_gpiokeys,
688#endif
689
690#if defined(CONFIG_MTD_PHYSMAP) || defined(CONFIG_MTD_PHYSMAP_MODULE)
691 &ezbrd_flash_device,
692#endif
693
694 &bfin_gpios_device,
695};
696
697static int __init stamp_init(void)
698{
699 printk(KERN_INFO "%s(): registering device resources\n", __func__);
700
701#ifdef CONFIG_I2C_BOARDINFO
702 i2c_register_board_info(0, bfin_i2c_board_info,
703 ARRAY_SIZE(bfin_i2c_board_info));
704#endif
705
706 platform_add_devices(stamp_devices, ARRAY_SIZE(stamp_devices));
707 spi_register_board_info(bfin_spi_board_info, ARRAY_SIZE(bfin_spi_board_info));
708 return 0;
709}
710
711arch_initcall(stamp_init);
712
713void native_machine_restart(char *cmd)
714{
715 /* workaround reboot hang when booting from SPI */
716 if ((bfin_read_SYSCR() & 0x7) == 0x3)
717 bfin_gpio_reset_spi0_ssel1();
718}
719
720void bfin_get_ether_addr(char *addr)
721{
722 /* the MAC is stored in OTP memory page 0xDF */
723 u32 ret;
724 u64 otp_mac;
725 u32 (*otp_read)(u32 page, u32 flags, u64 *page_content) = (void *)0xEF00001A;
726
727 ret = otp_read(0xDF, 0x00, &otp_mac);
728 if (!(ret & 0x1)) {
729 char *otp_mac_p = (char *)&otp_mac;
730 for (ret = 0; ret < 6; ++ret)
731 addr[ret] = otp_mac_p[5 - ret];
732 }
733}
734EXPORT_SYMBOL(bfin_get_ether_addr);