diff options
author | Sergey Lapin <slapin@ossfans.org> | 2008-08-29 10:47:52 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2008-09-26 16:17:47 -0400 |
commit | c49e1e63a9c7893d9ff9be4258d86ddc5485d712 (patch) | |
tree | eed5240ff105f54dcc26fe469e7746b230563000 /arch/arm | |
parent | d9105c2b01eedb620cae96073dde4f760367817f (diff) |
[ARM] 5238/2: Very basic Palm Zire 72 support
This patch contains very basic support of Palm Zire 72.
Signed-off-by: Sergey Lapin <slapin@ossfans.org>
Acked-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/configs/palmz72_defconfig | 951 | ||||
-rw-r--r-- | arch/arm/mach-pxa/Kconfig | 10 | ||||
-rw-r--r-- | arch/arm/mach-pxa/Makefile | 1 | ||||
-rw-r--r-- | arch/arm/mach-pxa/include/mach/palmz72.h | 67 | ||||
-rw-r--r-- | arch/arm/mach-pxa/palmz72.c | 480 |
5 files changed, 1509 insertions, 0 deletions
diff --git a/arch/arm/configs/palmz72_defconfig b/arch/arm/configs/palmz72_defconfig new file mode 100644 index 000000000000..3245f8f33e0a --- /dev/null +++ b/arch/arm/configs/palmz72_defconfig | |||
@@ -0,0 +1,951 @@ | |||
1 | # | ||
2 | # Automatically generated make config: don't edit | ||
3 | # Linux kernel version: 2.6.27-rc4 | ||
4 | # Sun Aug 24 02:29:27 2008 | ||
5 | # | ||
6 | CONFIG_ARM=y | ||
7 | CONFIG_HAVE_PWM=y | ||
8 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y | ||
9 | CONFIG_GENERIC_GPIO=y | ||
10 | CONFIG_GENERIC_TIME=y | ||
11 | CONFIG_GENERIC_CLOCKEVENTS=y | ||
12 | CONFIG_MMU=y | ||
13 | # CONFIG_NO_IOPORT is not set | ||
14 | CONFIG_GENERIC_HARDIRQS=y | ||
15 | CONFIG_STACKTRACE_SUPPORT=y | ||
16 | CONFIG_HAVE_LATENCYTOP_SUPPORT=y | ||
17 | CONFIG_LOCKDEP_SUPPORT=y | ||
18 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y | ||
19 | CONFIG_HARDIRQS_SW_RESEND=y | ||
20 | CONFIG_GENERIC_IRQ_PROBE=y | ||
21 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | ||
22 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | ||
23 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | ||
24 | CONFIG_GENERIC_HWEIGHT=y | ||
25 | CONFIG_GENERIC_CALIBRATE_DELAY=y | ||
26 | CONFIG_ARCH_SUPPORTS_AOUT=y | ||
27 | CONFIG_ZONE_DMA=y | ||
28 | CONFIG_ARCH_MTD_XIP=y | ||
29 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y | ||
30 | CONFIG_VECTORS_BASE=0xffff0000 | ||
31 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | ||
32 | |||
33 | # | ||
34 | # General setup | ||
35 | # | ||
36 | CONFIG_EXPERIMENTAL=y | ||
37 | CONFIG_BROKEN_ON_SMP=y | ||
38 | CONFIG_LOCK_KERNEL=y | ||
39 | CONFIG_INIT_ENV_ARG_LIMIT=32 | ||
40 | CONFIG_LOCALVERSION="" | ||
41 | # CONFIG_LOCALVERSION_AUTO is not set | ||
42 | CONFIG_SWAP=y | ||
43 | CONFIG_SYSVIPC=y | ||
44 | CONFIG_SYSVIPC_SYSCTL=y | ||
45 | # CONFIG_POSIX_MQUEUE is not set | ||
46 | # CONFIG_BSD_PROCESS_ACCT is not set | ||
47 | # CONFIG_TASKSTATS is not set | ||
48 | # CONFIG_AUDIT is not set | ||
49 | # CONFIG_IKCONFIG is not set | ||
50 | CONFIG_LOG_BUF_SHIFT=14 | ||
51 | # CONFIG_CGROUPS is not set | ||
52 | # CONFIG_GROUP_SCHED is not set | ||
53 | CONFIG_SYSFS_DEPRECATED=y | ||
54 | CONFIG_SYSFS_DEPRECATED_V2=y | ||
55 | # CONFIG_RELAY is not set | ||
56 | CONFIG_NAMESPACES=y | ||
57 | # CONFIG_UTS_NS is not set | ||
58 | # CONFIG_IPC_NS is not set | ||
59 | # CONFIG_USER_NS is not set | ||
60 | # CONFIG_PID_NS is not set | ||
61 | CONFIG_BLK_DEV_INITRD=y | ||
62 | CONFIG_INITRAMFS_SOURCE="" | ||
63 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | ||
64 | CONFIG_SYSCTL=y | ||
65 | # CONFIG_EMBEDDED is not set | ||
66 | CONFIG_UID16=y | ||
67 | CONFIG_SYSCTL_SYSCALL=y | ||
68 | CONFIG_KALLSYMS=y | ||
69 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | ||
70 | CONFIG_HOTPLUG=y | ||
71 | CONFIG_PRINTK=y | ||
72 | CONFIG_BUG=y | ||
73 | CONFIG_ELF_CORE=y | ||
74 | CONFIG_COMPAT_BRK=y | ||
75 | CONFIG_BASE_FULL=y | ||
76 | CONFIG_FUTEX=y | ||
77 | CONFIG_ANON_INODES=y | ||
78 | CONFIG_EPOLL=y | ||
79 | CONFIG_SIGNALFD=y | ||
80 | CONFIG_TIMERFD=y | ||
81 | CONFIG_EVENTFD=y | ||
82 | CONFIG_SHMEM=y | ||
83 | CONFIG_VM_EVENT_COUNTERS=y | ||
84 | CONFIG_SLAB=y | ||
85 | # CONFIG_SLUB is not set | ||
86 | # CONFIG_SLOB is not set | ||
87 | # CONFIG_PROFILING is not set | ||
88 | # CONFIG_MARKERS is not set | ||
89 | CONFIG_HAVE_OPROFILE=y | ||
90 | # CONFIG_KPROBES is not set | ||
91 | # CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS is not set | ||
92 | # CONFIG_HAVE_IOREMAP_PROT is not set | ||
93 | CONFIG_HAVE_KPROBES=y | ||
94 | CONFIG_HAVE_KRETPROBES=y | ||
95 | # CONFIG_HAVE_ARCH_TRACEHOOK is not set | ||
96 | # CONFIG_HAVE_DMA_ATTRS is not set | ||
97 | # CONFIG_USE_GENERIC_SMP_HELPERS is not set | ||
98 | CONFIG_HAVE_CLK=y | ||
99 | CONFIG_PROC_PAGE_MONITOR=y | ||
100 | CONFIG_HAVE_GENERIC_DMA_COHERENT=y | ||
101 | CONFIG_SLABINFO=y | ||
102 | CONFIG_RT_MUTEXES=y | ||
103 | # CONFIG_TINY_SHMEM is not set | ||
104 | CONFIG_BASE_SMALL=0 | ||
105 | CONFIG_MODULES=y | ||
106 | # CONFIG_MODULE_FORCE_LOAD is not set | ||
107 | CONFIG_MODULE_UNLOAD=y | ||
108 | # CONFIG_MODULE_FORCE_UNLOAD is not set | ||
109 | # CONFIG_MODVERSIONS is not set | ||
110 | # CONFIG_MODULE_SRCVERSION_ALL is not set | ||
111 | CONFIG_KMOD=y | ||
112 | CONFIG_BLOCK=y | ||
113 | # CONFIG_LBD is not set | ||
114 | # CONFIG_BLK_DEV_IO_TRACE is not set | ||
115 | # CONFIG_LSF is not set | ||
116 | # CONFIG_BLK_DEV_BSG is not set | ||
117 | # CONFIG_BLK_DEV_INTEGRITY is not set | ||
118 | |||
119 | # | ||
120 | # IO Schedulers | ||
121 | # | ||
122 | CONFIG_IOSCHED_NOOP=y | ||
123 | CONFIG_IOSCHED_AS=y | ||
124 | # CONFIG_IOSCHED_DEADLINE is not set | ||
125 | # CONFIG_IOSCHED_CFQ is not set | ||
126 | CONFIG_DEFAULT_AS=y | ||
127 | # CONFIG_DEFAULT_DEADLINE is not set | ||
128 | # CONFIG_DEFAULT_CFQ is not set | ||
129 | # CONFIG_DEFAULT_NOOP is not set | ||
130 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
131 | CONFIG_CLASSIC_RCU=y | ||
132 | |||
133 | # | ||
134 | # System Type | ||
135 | # | ||
136 | # CONFIG_ARCH_AAEC2000 is not set | ||
137 | # CONFIG_ARCH_INTEGRATOR is not set | ||
138 | # CONFIG_ARCH_REALVIEW is not set | ||
139 | # CONFIG_ARCH_VERSATILE is not set | ||
140 | # CONFIG_ARCH_AT91 is not set | ||
141 | # CONFIG_ARCH_CLPS7500 is not set | ||
142 | # CONFIG_ARCH_CLPS711X is not set | ||
143 | # CONFIG_ARCH_EBSA110 is not set | ||
144 | # CONFIG_ARCH_EP93XX is not set | ||
145 | # CONFIG_ARCH_FOOTBRIDGE is not set | ||
146 | # CONFIG_ARCH_NETX is not set | ||
147 | # CONFIG_ARCH_H720X is not set | ||
148 | # CONFIG_ARCH_IMX is not set | ||
149 | # CONFIG_ARCH_IOP13XX is not set | ||
150 | # CONFIG_ARCH_IOP32X is not set | ||
151 | # CONFIG_ARCH_IOP33X is not set | ||
152 | # CONFIG_ARCH_IXP23XX is not set | ||
153 | # CONFIG_ARCH_IXP2000 is not set | ||
154 | # CONFIG_ARCH_IXP4XX is not set | ||
155 | # CONFIG_ARCH_L7200 is not set | ||
156 | # CONFIG_ARCH_KIRKWOOD is not set | ||
157 | # CONFIG_ARCH_KS8695 is not set | ||
158 | # CONFIG_ARCH_NS9XXX is not set | ||
159 | # CONFIG_ARCH_LOKI is not set | ||
160 | # CONFIG_ARCH_MV78XX0 is not set | ||
161 | # CONFIG_ARCH_MXC is not set | ||
162 | # CONFIG_ARCH_ORION5X is not set | ||
163 | # CONFIG_ARCH_PNX4008 is not set | ||
164 | CONFIG_ARCH_PXA=y | ||
165 | # CONFIG_ARCH_RPC is not set | ||
166 | # CONFIG_ARCH_SA1100 is not set | ||
167 | # CONFIG_ARCH_S3C2410 is not set | ||
168 | # CONFIG_ARCH_SHARK is not set | ||
169 | # CONFIG_ARCH_LH7A40X is not set | ||
170 | # CONFIG_ARCH_DAVINCI is not set | ||
171 | # CONFIG_ARCH_OMAP is not set | ||
172 | # CONFIG_ARCH_MSM7X00A is not set | ||
173 | |||
174 | # | ||
175 | # Intel PXA2xx/PXA3xx Implementations | ||
176 | # | ||
177 | # CONFIG_ARCH_GUMSTIX is not set | ||
178 | # CONFIG_ARCH_LUBBOCK is not set | ||
179 | # CONFIG_MACH_LOGICPD_PXA270 is not set | ||
180 | # CONFIG_MACH_MAINSTONE is not set | ||
181 | # CONFIG_ARCH_PXA_IDP is not set | ||
182 | # CONFIG_PXA_SHARPSL is not set | ||
183 | # CONFIG_ARCH_PXA_ESERIES is not set | ||
184 | # CONFIG_MACH_TRIZEPS4 is not set | ||
185 | # CONFIG_MACH_EM_X270 is not set | ||
186 | # CONFIG_MACH_COLIBRI is not set | ||
187 | # CONFIG_MACH_ZYLONITE is not set | ||
188 | # CONFIG_MACH_LITTLETON is not set | ||
189 | # CONFIG_MACH_TAVOREVB is not set | ||
190 | # CONFIG_MACH_SAAR is not set | ||
191 | # CONFIG_MACH_ARMCORE is not set | ||
192 | # CONFIG_MACH_MAGICIAN is not set | ||
193 | # CONFIG_MACH_PCM027 is not set | ||
194 | CONFIG_ARCH_PXA_PALM=y | ||
195 | # CONFIG_MACH_PALMTX is not set | ||
196 | CONFIG_MACH_PALMZ72=y | ||
197 | # CONFIG_PXA_EZX is not set | ||
198 | CONFIG_PXA27x=y | ||
199 | CONFIG_PXA_PWM=y | ||
200 | |||
201 | # | ||
202 | # Boot options | ||
203 | # | ||
204 | |||
205 | # | ||
206 | # Power management | ||
207 | # | ||
208 | |||
209 | # | ||
210 | # Processor Type | ||
211 | # | ||
212 | CONFIG_CPU_32=y | ||
213 | CONFIG_CPU_XSCALE=y | ||
214 | CONFIG_CPU_32v5=y | ||
215 | CONFIG_CPU_ABRT_EV5T=y | ||
216 | CONFIG_CPU_PABRT_NOIFAR=y | ||
217 | CONFIG_CPU_CACHE_VIVT=y | ||
218 | CONFIG_CPU_TLB_V4WBI=y | ||
219 | CONFIG_CPU_CP15=y | ||
220 | CONFIG_CPU_CP15_MMU=y | ||
221 | |||
222 | # | ||
223 | # Processor Features | ||
224 | # | ||
225 | CONFIG_ARM_THUMB=y | ||
226 | # CONFIG_CPU_DCACHE_DISABLE is not set | ||
227 | # CONFIG_OUTER_CACHE is not set | ||
228 | CONFIG_IWMMXT=y | ||
229 | CONFIG_XSCALE_PMU=y | ||
230 | |||
231 | # | ||
232 | # Bus support | ||
233 | # | ||
234 | # CONFIG_PCI_SYSCALL is not set | ||
235 | # CONFIG_ARCH_SUPPORTS_MSI is not set | ||
236 | # CONFIG_PCCARD is not set | ||
237 | |||
238 | # | ||
239 | # Kernel Features | ||
240 | # | ||
241 | CONFIG_TICK_ONESHOT=y | ||
242 | # CONFIG_NO_HZ is not set | ||
243 | # CONFIG_HIGH_RES_TIMERS is not set | ||
244 | CONFIG_GENERIC_CLOCKEVENTS_BUILD=y | ||
245 | CONFIG_PREEMPT=y | ||
246 | CONFIG_HZ=100 | ||
247 | CONFIG_AEABI=y | ||
248 | CONFIG_OABI_COMPAT=y | ||
249 | # CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set | ||
250 | CONFIG_SELECT_MEMORY_MODEL=y | ||
251 | CONFIG_FLATMEM_MANUAL=y | ||
252 | # CONFIG_DISCONTIGMEM_MANUAL is not set | ||
253 | # CONFIG_SPARSEMEM_MANUAL is not set | ||
254 | CONFIG_FLATMEM=y | ||
255 | CONFIG_FLAT_NODE_MEM_MAP=y | ||
256 | # CONFIG_SPARSEMEM_STATIC is not set | ||
257 | # CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set | ||
258 | CONFIG_PAGEFLAGS_EXTENDED=y | ||
259 | CONFIG_SPLIT_PTLOCK_CPUS=4096 | ||
260 | # CONFIG_RESOURCES_64BIT is not set | ||
261 | CONFIG_ZONE_DMA_FLAG=1 | ||
262 | CONFIG_BOUNCE=y | ||
263 | CONFIG_VIRT_TO_BUS=y | ||
264 | CONFIG_ALIGNMENT_TRAP=y | ||
265 | |||
266 | # | ||
267 | # Boot options | ||
268 | # | ||
269 | CONFIG_ZBOOT_ROM_TEXT=0x0 | ||
270 | CONFIG_ZBOOT_ROM_BSS=0x0 | ||
271 | CONFIG_CMDLINE="mem=32M console=tty root=/dev/mmcblk0" | ||
272 | # CONFIG_XIP_KERNEL is not set | ||
273 | # CONFIG_KEXEC is not set | ||
274 | |||
275 | # | ||
276 | # CPU Frequency scaling | ||
277 | # | ||
278 | # CONFIG_CPU_FREQ is not set | ||
279 | |||
280 | # | ||
281 | # Floating point emulation | ||
282 | # | ||
283 | |||
284 | # | ||
285 | # At least one emulation must be selected | ||
286 | # | ||
287 | CONFIG_FPE_NWFPE=y | ||
288 | # CONFIG_FPE_NWFPE_XP is not set | ||
289 | # CONFIG_FPE_FASTFPE is not set | ||
290 | |||
291 | # | ||
292 | # Userspace binary formats | ||
293 | # | ||
294 | CONFIG_BINFMT_ELF=y | ||
295 | # CONFIG_BINFMT_AOUT is not set | ||
296 | # CONFIG_BINFMT_MISC is not set | ||
297 | |||
298 | # | ||
299 | # Power management options | ||
300 | # | ||
301 | CONFIG_PM=y | ||
302 | # CONFIG_PM_DEBUG is not set | ||
303 | CONFIG_PM_SLEEP=y | ||
304 | CONFIG_SUSPEND=y | ||
305 | CONFIG_SUSPEND_FREEZER=y | ||
306 | CONFIG_APM_EMULATION=y | ||
307 | CONFIG_ARCH_SUSPEND_POSSIBLE=y | ||
308 | CONFIG_NET=y | ||
309 | |||
310 | # | ||
311 | # Networking options | ||
312 | # | ||
313 | CONFIG_PACKET=y | ||
314 | # CONFIG_PACKET_MMAP is not set | ||
315 | CONFIG_UNIX=y | ||
316 | # CONFIG_NET_KEY is not set | ||
317 | CONFIG_INET=y | ||
318 | # CONFIG_IP_MULTICAST is not set | ||
319 | # CONFIG_IP_ADVANCED_ROUTER is not set | ||
320 | CONFIG_IP_FIB_HASH=y | ||
321 | CONFIG_IP_PNP=y | ||
322 | # CONFIG_IP_PNP_DHCP is not set | ||
323 | CONFIG_IP_PNP_BOOTP=y | ||
324 | # CONFIG_IP_PNP_RARP is not set | ||
325 | # CONFIG_NET_IPIP is not set | ||
326 | # CONFIG_NET_IPGRE is not set | ||
327 | # CONFIG_ARPD is not set | ||
328 | # CONFIG_SYN_COOKIES is not set | ||
329 | # CONFIG_INET_AH is not set | ||
330 | # CONFIG_INET_ESP is not set | ||
331 | # CONFIG_INET_IPCOMP is not set | ||
332 | # CONFIG_INET_XFRM_TUNNEL is not set | ||
333 | # CONFIG_INET_TUNNEL is not set | ||
334 | # CONFIG_INET_XFRM_MODE_TRANSPORT is not set | ||
335 | # CONFIG_INET_XFRM_MODE_TUNNEL is not set | ||
336 | # CONFIG_INET_XFRM_MODE_BEET is not set | ||
337 | # CONFIG_INET_LRO is not set | ||
338 | CONFIG_INET_DIAG=y | ||
339 | CONFIG_INET_TCP_DIAG=y | ||
340 | # CONFIG_TCP_CONG_ADVANCED is not set | ||
341 | CONFIG_TCP_CONG_CUBIC=y | ||
342 | CONFIG_DEFAULT_TCP_CONG="cubic" | ||
343 | # CONFIG_TCP_MD5SIG is not set | ||
344 | # CONFIG_IPV6 is not set | ||
345 | # CONFIG_NETWORK_SECMARK is not set | ||
346 | # CONFIG_NETFILTER is not set | ||
347 | # CONFIG_IP_DCCP is not set | ||
348 | # CONFIG_IP_SCTP is not set | ||
349 | # CONFIG_TIPC is not set | ||
350 | # CONFIG_ATM is not set | ||
351 | # CONFIG_BRIDGE is not set | ||
352 | # CONFIG_VLAN_8021Q is not set | ||
353 | # CONFIG_DECNET is not set | ||
354 | # CONFIG_LLC2 is not set | ||
355 | # CONFIG_IPX is not set | ||
356 | # CONFIG_ATALK is not set | ||
357 | # CONFIG_X25 is not set | ||
358 | # CONFIG_LAPB is not set | ||
359 | # CONFIG_ECONET is not set | ||
360 | # CONFIG_WAN_ROUTER is not set | ||
361 | # CONFIG_NET_SCHED is not set | ||
362 | |||
363 | # | ||
364 | # Network testing | ||
365 | # | ||
366 | # CONFIG_NET_PKTGEN is not set | ||
367 | # CONFIG_HAMRADIO is not set | ||
368 | # CONFIG_CAN is not set | ||
369 | # CONFIG_IRDA is not set | ||
370 | # CONFIG_BT is not set | ||
371 | # CONFIG_AF_RXRPC is not set | ||
372 | |||
373 | # | ||
374 | # Wireless | ||
375 | # | ||
376 | # CONFIG_CFG80211 is not set | ||
377 | # CONFIG_WIRELESS_EXT is not set | ||
378 | # CONFIG_MAC80211 is not set | ||
379 | # CONFIG_IEEE80211 is not set | ||
380 | # CONFIG_RFKILL is not set | ||
381 | # CONFIG_NET_9P is not set | ||
382 | |||
383 | # | ||
384 | # Device Drivers | ||
385 | # | ||
386 | |||
387 | # | ||
388 | # Generic Driver Options | ||
389 | # | ||
390 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||
391 | CONFIG_STANDALONE=y | ||
392 | CONFIG_PREVENT_FIRMWARE_BUILD=y | ||
393 | CONFIG_FW_LOADER=y | ||
394 | CONFIG_FIRMWARE_IN_KERNEL=y | ||
395 | CONFIG_EXTRA_FIRMWARE="" | ||
396 | # CONFIG_SYS_HYPERVISOR is not set | ||
397 | # CONFIG_CONNECTOR is not set | ||
398 | # CONFIG_MTD is not set | ||
399 | # CONFIG_PARPORT is not set | ||
400 | CONFIG_BLK_DEV=y | ||
401 | # CONFIG_BLK_DEV_COW_COMMON is not set | ||
402 | CONFIG_BLK_DEV_LOOP=y | ||
403 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set | ||
404 | # CONFIG_BLK_DEV_NBD is not set | ||
405 | # CONFIG_BLK_DEV_RAM is not set | ||
406 | # CONFIG_CDROM_PKTCDVD is not set | ||
407 | # CONFIG_ATA_OVER_ETH is not set | ||
408 | # CONFIG_MISC_DEVICES is not set | ||
409 | CONFIG_HAVE_IDE=y | ||
410 | # CONFIG_IDE is not set | ||
411 | |||
412 | # | ||
413 | # SCSI device support | ||
414 | # | ||
415 | # CONFIG_RAID_ATTRS is not set | ||
416 | # CONFIG_SCSI is not set | ||
417 | # CONFIG_SCSI_DMA is not set | ||
418 | # CONFIG_SCSI_NETLINK is not set | ||
419 | # CONFIG_ATA is not set | ||
420 | # CONFIG_MD is not set | ||
421 | # CONFIG_NETDEVICES is not set | ||
422 | # CONFIG_ISDN is not set | ||
423 | |||
424 | # | ||
425 | # Input device support | ||
426 | # | ||
427 | CONFIG_INPUT=y | ||
428 | # CONFIG_INPUT_FF_MEMLESS is not set | ||
429 | # CONFIG_INPUT_POLLDEV is not set | ||
430 | |||
431 | # | ||
432 | # Userland interfaces | ||
433 | # | ||
434 | CONFIG_INPUT_MOUSEDEV=y | ||
435 | # CONFIG_INPUT_MOUSEDEV_PSAUX is not set | ||
436 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 | ||
437 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | ||
438 | # CONFIG_INPUT_JOYDEV is not set | ||
439 | CONFIG_INPUT_EVDEV=y | ||
440 | # CONFIG_INPUT_EVBUG is not set | ||
441 | |||
442 | # | ||
443 | # Input Device Drivers | ||
444 | # | ||
445 | CONFIG_INPUT_KEYBOARD=y | ||
446 | # CONFIG_KEYBOARD_ATKBD is not set | ||
447 | # CONFIG_KEYBOARD_SUNKBD is not set | ||
448 | # CONFIG_KEYBOARD_LKKBD is not set | ||
449 | # CONFIG_KEYBOARD_XTKBD is not set | ||
450 | # CONFIG_KEYBOARD_NEWTON is not set | ||
451 | # CONFIG_KEYBOARD_STOWAWAY is not set | ||
452 | CONFIG_KEYBOARD_PXA27x=y | ||
453 | # CONFIG_KEYBOARD_GPIO is not set | ||
454 | # CONFIG_KEYBOARD_MATRIX is not set | ||
455 | # CONFIG_INPUT_MOUSE is not set | ||
456 | # CONFIG_INPUT_JOYSTICK is not set | ||
457 | # CONFIG_INPUT_TABLET is not set | ||
458 | # CONFIG_INPUT_TOUCHSCREEN is not set | ||
459 | # CONFIG_INPUT_MISC is not set | ||
460 | |||
461 | # | ||
462 | # Hardware I/O ports | ||
463 | # | ||
464 | # CONFIG_SERIO is not set | ||
465 | # CONFIG_GAMEPORT is not set | ||
466 | |||
467 | # | ||
468 | # Character devices | ||
469 | # | ||
470 | CONFIG_VT=y | ||
471 | CONFIG_CONSOLE_TRANSLATIONS=y | ||
472 | CONFIG_VT_CONSOLE=y | ||
473 | CONFIG_HW_CONSOLE=y | ||
474 | # CONFIG_VT_HW_CONSOLE_BINDING is not set | ||
475 | CONFIG_DEVKMEM=y | ||
476 | # CONFIG_SERIAL_NONSTANDARD is not set | ||
477 | |||
478 | # | ||
479 | # Serial drivers | ||
480 | # | ||
481 | # CONFIG_SERIAL_8250 is not set | ||
482 | |||
483 | # | ||
484 | # Non-8250 serial port support | ||
485 | # | ||
486 | # CONFIG_SERIAL_PXA is not set | ||
487 | CONFIG_UNIX98_PTYS=y | ||
488 | CONFIG_LEGACY_PTYS=y | ||
489 | CONFIG_LEGACY_PTY_COUNT=256 | ||
490 | # CONFIG_IPMI_HANDLER is not set | ||
491 | # CONFIG_HW_RANDOM is not set | ||
492 | # CONFIG_NVRAM is not set | ||
493 | # CONFIG_R3964 is not set | ||
494 | # CONFIG_RAW_DRIVER is not set | ||
495 | # CONFIG_TCG_TPM is not set | ||
496 | CONFIG_I2C=y | ||
497 | CONFIG_I2C_BOARDINFO=y | ||
498 | # CONFIG_I2C_CHARDEV is not set | ||
499 | CONFIG_I2C_HELPER_AUTO=y | ||
500 | |||
501 | # | ||
502 | # I2C Hardware Bus support | ||
503 | # | ||
504 | |||
505 | # | ||
506 | # I2C system bus drivers (mostly embedded / system-on-chip) | ||
507 | # | ||
508 | # CONFIG_I2C_GPIO is not set | ||
509 | # CONFIG_I2C_OCORES is not set | ||
510 | CONFIG_I2C_PXA=y | ||
511 | # CONFIG_I2C_PXA_SLAVE is not set | ||
512 | # CONFIG_I2C_SIMTEC is not set | ||
513 | |||
514 | # | ||
515 | # External I2C/SMBus adapter drivers | ||
516 | # | ||
517 | # CONFIG_I2C_PARPORT_LIGHT is not set | ||
518 | # CONFIG_I2C_TAOS_EVM is not set | ||
519 | |||
520 | # | ||
521 | # Other I2C/SMBus bus drivers | ||
522 | # | ||
523 | # CONFIG_I2C_PCA_PLATFORM is not set | ||
524 | # CONFIG_I2C_STUB is not set | ||
525 | |||
526 | # | ||
527 | # Miscellaneous I2C Chip support | ||
528 | # | ||
529 | # CONFIG_DS1682 is not set | ||
530 | # CONFIG_AT24 is not set | ||
531 | # CONFIG_SENSORS_EEPROM is not set | ||
532 | # CONFIG_SENSORS_PCF8574 is not set | ||
533 | # CONFIG_PCF8575 is not set | ||
534 | # CONFIG_SENSORS_PCA9539 is not set | ||
535 | # CONFIG_SENSORS_PCF8591 is not set | ||
536 | # CONFIG_TPS65010 is not set | ||
537 | # CONFIG_SENSORS_MAX6875 is not set | ||
538 | # CONFIG_SENSORS_TSL2550 is not set | ||
539 | # CONFIG_I2C_DEBUG_CORE is not set | ||
540 | # CONFIG_I2C_DEBUG_ALGO is not set | ||
541 | # CONFIG_I2C_DEBUG_BUS is not set | ||
542 | # CONFIG_I2C_DEBUG_CHIP is not set | ||
543 | CONFIG_SPI=y | ||
544 | CONFIG_SPI_MASTER=y | ||
545 | |||
546 | # | ||
547 | # SPI Master Controller Drivers | ||
548 | # | ||
549 | # CONFIG_SPI_BITBANG is not set | ||
550 | # CONFIG_SPI_PXA2XX is not set | ||
551 | |||
552 | # | ||
553 | # SPI Protocol Masters | ||
554 | # | ||
555 | # CONFIG_SPI_AT25 is not set | ||
556 | CONFIG_SPI_SPIDEV=y | ||
557 | # CONFIG_SPI_TLE62X0 is not set | ||
558 | CONFIG_ARCH_REQUIRE_GPIOLIB=y | ||
559 | CONFIG_GPIOLIB=y | ||
560 | CONFIG_GPIO_SYSFS=y | ||
561 | |||
562 | # | ||
563 | # I2C GPIO expanders: | ||
564 | # | ||
565 | # CONFIG_GPIO_MAX732X is not set | ||
566 | # CONFIG_GPIO_PCA953X is not set | ||
567 | # CONFIG_GPIO_PCF857X is not set | ||
568 | |||
569 | # | ||
570 | # PCI GPIO expanders: | ||
571 | # | ||
572 | |||
573 | # | ||
574 | # SPI GPIO expanders: | ||
575 | # | ||
576 | # CONFIG_GPIO_MAX7301 is not set | ||
577 | # CONFIG_GPIO_MCP23S08 is not set | ||
578 | # CONFIG_W1 is not set | ||
579 | CONFIG_POWER_SUPPLY=y | ||
580 | # CONFIG_POWER_SUPPLY_DEBUG is not set | ||
581 | CONFIG_PDA_POWER=y | ||
582 | # CONFIG_APM_POWER is not set | ||
583 | # CONFIG_BATTERY_DS2760 is not set | ||
584 | # CONFIG_HWMON is not set | ||
585 | # CONFIG_WATCHDOG is not set | ||
586 | |||
587 | # | ||
588 | # Sonics Silicon Backplane | ||
589 | # | ||
590 | CONFIG_SSB_POSSIBLE=y | ||
591 | # CONFIG_SSB is not set | ||
592 | |||
593 | # | ||
594 | # Multifunction device drivers | ||
595 | # | ||
596 | # CONFIG_MFD_CORE is not set | ||
597 | # CONFIG_MFD_SM501 is not set | ||
598 | # CONFIG_HTC_EGPIO is not set | ||
599 | # CONFIG_HTC_PASIC3 is not set | ||
600 | # CONFIG_MFD_TMIO is not set | ||
601 | # CONFIG_MFD_T7L66XB is not set | ||
602 | # CONFIG_MFD_TC6387XB is not set | ||
603 | # CONFIG_MFD_TC6393XB is not set | ||
604 | |||
605 | # | ||
606 | # Multimedia devices | ||
607 | # | ||
608 | |||
609 | # | ||
610 | # Multimedia core support | ||
611 | # | ||
612 | # CONFIG_VIDEO_DEV is not set | ||
613 | # CONFIG_DVB_CORE is not set | ||
614 | # CONFIG_VIDEO_MEDIA is not set | ||
615 | |||
616 | # | ||
617 | # Multimedia drivers | ||
618 | # | ||
619 | # CONFIG_DAB is not set | ||
620 | |||
621 | # | ||
622 | # Graphics support | ||
623 | # | ||
624 | # CONFIG_VGASTATE is not set | ||
625 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set | ||
626 | CONFIG_FB=y | ||
627 | # CONFIG_FIRMWARE_EDID is not set | ||
628 | # CONFIG_FB_DDC is not set | ||
629 | CONFIG_FB_CFB_FILLRECT=y | ||
630 | CONFIG_FB_CFB_COPYAREA=y | ||
631 | CONFIG_FB_CFB_IMAGEBLIT=y | ||
632 | # CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set | ||
633 | # CONFIG_FB_SYS_FILLRECT is not set | ||
634 | # CONFIG_FB_SYS_COPYAREA is not set | ||
635 | # CONFIG_FB_SYS_IMAGEBLIT is not set | ||
636 | # CONFIG_FB_FOREIGN_ENDIAN is not set | ||
637 | # CONFIG_FB_SYS_FOPS is not set | ||
638 | # CONFIG_FB_SVGALIB is not set | ||
639 | # CONFIG_FB_MACMODES is not set | ||
640 | # CONFIG_FB_BACKLIGHT is not set | ||
641 | # CONFIG_FB_MODE_HELPERS is not set | ||
642 | # CONFIG_FB_TILEBLITTING is not set | ||
643 | |||
644 | # | ||
645 | # Frame buffer hardware drivers | ||
646 | # | ||
647 | # CONFIG_FB_S1D13XXX is not set | ||
648 | CONFIG_FB_PXA=y | ||
649 | # CONFIG_FB_PXA_SMARTPANEL is not set | ||
650 | # CONFIG_FB_PXA_PARAMETERS is not set | ||
651 | # CONFIG_FB_MBX is not set | ||
652 | # CONFIG_FB_W100 is not set | ||
653 | # CONFIG_FB_AM200EPD is not set | ||
654 | # CONFIG_FB_VIRTUAL is not set | ||
655 | CONFIG_BACKLIGHT_LCD_SUPPORT=y | ||
656 | # CONFIG_LCD_CLASS_DEVICE is not set | ||
657 | CONFIG_BACKLIGHT_CLASS_DEVICE=y | ||
658 | # CONFIG_BACKLIGHT_CORGI is not set | ||
659 | CONFIG_BACKLIGHT_PWM=y | ||
660 | |||
661 | # | ||
662 | # Display device support | ||
663 | # | ||
664 | CONFIG_DISPLAY_SUPPORT=y | ||
665 | |||
666 | # | ||
667 | # Display hardware drivers | ||
668 | # | ||
669 | |||
670 | # | ||
671 | # Console display driver support | ||
672 | # | ||
673 | # CONFIG_VGA_CONSOLE is not set | ||
674 | CONFIG_DUMMY_CONSOLE=y | ||
675 | CONFIG_FRAMEBUFFER_CONSOLE=y | ||
676 | # CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set | ||
677 | # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set | ||
678 | CONFIG_FONTS=y | ||
679 | CONFIG_FONT_8x8=y | ||
680 | # CONFIG_FONT_8x16 is not set | ||
681 | # CONFIG_FONT_6x11 is not set | ||
682 | # CONFIG_FONT_7x14 is not set | ||
683 | # CONFIG_FONT_PEARL_8x8 is not set | ||
684 | # CONFIG_FONT_ACORN_8x8 is not set | ||
685 | # CONFIG_FONT_MINI_4x6 is not set | ||
686 | # CONFIG_FONT_SUN8x16 is not set | ||
687 | # CONFIG_FONT_SUN12x22 is not set | ||
688 | # CONFIG_FONT_10x18 is not set | ||
689 | # CONFIG_LOGO is not set | ||
690 | # CONFIG_SOUND is not set | ||
691 | # CONFIG_HID_SUPPORT is not set | ||
692 | # CONFIG_USB_SUPPORT is not set | ||
693 | CONFIG_MMC=y | ||
694 | CONFIG_MMC_DEBUG=y | ||
695 | # CONFIG_MMC_UNSAFE_RESUME is not set | ||
696 | |||
697 | # | ||
698 | # MMC/SD Card Drivers | ||
699 | # | ||
700 | CONFIG_MMC_BLOCK=y | ||
701 | CONFIG_MMC_BLOCK_BOUNCE=y | ||
702 | # CONFIG_SDIO_UART is not set | ||
703 | # CONFIG_MMC_TEST is not set | ||
704 | |||
705 | # | ||
706 | # MMC/SD Host Controller Drivers | ||
707 | # | ||
708 | CONFIG_MMC_PXA=y | ||
709 | # CONFIG_MMC_SDHCI is not set | ||
710 | # CONFIG_MMC_SPI is not set | ||
711 | # CONFIG_NEW_LEDS is not set | ||
712 | CONFIG_RTC_LIB=y | ||
713 | CONFIG_RTC_CLASS=y | ||
714 | CONFIG_RTC_HCTOSYS=y | ||
715 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" | ||
716 | # CONFIG_RTC_DEBUG is not set | ||
717 | |||
718 | # | ||
719 | # RTC interfaces | ||
720 | # | ||
721 | CONFIG_RTC_INTF_SYSFS=y | ||
722 | CONFIG_RTC_INTF_PROC=y | ||
723 | CONFIG_RTC_INTF_DEV=y | ||
724 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set | ||
725 | # CONFIG_RTC_DRV_TEST is not set | ||
726 | |||
727 | # | ||
728 | # I2C RTC drivers | ||
729 | # | ||
730 | # CONFIG_RTC_DRV_DS1307 is not set | ||
731 | # CONFIG_RTC_DRV_DS1374 is not set | ||
732 | # CONFIG_RTC_DRV_DS1672 is not set | ||
733 | # CONFIG_RTC_DRV_MAX6900 is not set | ||
734 | # CONFIG_RTC_DRV_RS5C372 is not set | ||
735 | # CONFIG_RTC_DRV_ISL1208 is not set | ||
736 | # CONFIG_RTC_DRV_X1205 is not set | ||
737 | # CONFIG_RTC_DRV_PCF8563 is not set | ||
738 | # CONFIG_RTC_DRV_PCF8583 is not set | ||
739 | # CONFIG_RTC_DRV_M41T80 is not set | ||
740 | # CONFIG_RTC_DRV_S35390A is not set | ||
741 | # CONFIG_RTC_DRV_FM3130 is not set | ||
742 | |||
743 | # | ||
744 | # SPI RTC drivers | ||
745 | # | ||
746 | # CONFIG_RTC_DRV_M41T94 is not set | ||
747 | # CONFIG_RTC_DRV_DS1305 is not set | ||
748 | # CONFIG_RTC_DRV_MAX6902 is not set | ||
749 | # CONFIG_RTC_DRV_R9701 is not set | ||
750 | # CONFIG_RTC_DRV_RS5C348 is not set | ||
751 | |||
752 | # | ||
753 | # Platform RTC drivers | ||
754 | # | ||
755 | # CONFIG_RTC_DRV_CMOS is not set | ||
756 | # CONFIG_RTC_DRV_DS1511 is not set | ||
757 | # CONFIG_RTC_DRV_DS1553 is not set | ||
758 | # CONFIG_RTC_DRV_DS1742 is not set | ||
759 | # CONFIG_RTC_DRV_STK17TA8 is not set | ||
760 | # CONFIG_RTC_DRV_M48T86 is not set | ||
761 | # CONFIG_RTC_DRV_M48T59 is not set | ||
762 | # CONFIG_RTC_DRV_V3020 is not set | ||
763 | |||
764 | # | ||
765 | # on-CPU RTC drivers | ||
766 | # | ||
767 | CONFIG_RTC_DRV_SA1100=y | ||
768 | # CONFIG_DMADEVICES is not set | ||
769 | |||
770 | # | ||
771 | # Voltage and Current regulators | ||
772 | # | ||
773 | # CONFIG_REGULATOR is not set | ||
774 | # CONFIG_REGULATOR_FIXED_VOLTAGE is not set | ||
775 | # CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set | ||
776 | # CONFIG_REGULATOR_BQ24022 is not set | ||
777 | # CONFIG_UIO is not set | ||
778 | |||
779 | # | ||
780 | # File systems | ||
781 | # | ||
782 | CONFIG_EXT2_FS=y | ||
783 | # CONFIG_EXT2_FS_XATTR is not set | ||
784 | # CONFIG_EXT2_FS_XIP is not set | ||
785 | CONFIG_EXT3_FS=y | ||
786 | CONFIG_EXT3_FS_XATTR=y | ||
787 | # CONFIG_EXT3_FS_POSIX_ACL is not set | ||
788 | # CONFIG_EXT3_FS_SECURITY is not set | ||
789 | # CONFIG_EXT4DEV_FS is not set | ||
790 | CONFIG_JBD=y | ||
791 | CONFIG_FS_MBCACHE=y | ||
792 | # CONFIG_REISERFS_FS is not set | ||
793 | # CONFIG_JFS_FS is not set | ||
794 | # CONFIG_FS_POSIX_ACL is not set | ||
795 | # CONFIG_XFS_FS is not set | ||
796 | # CONFIG_OCFS2_FS is not set | ||
797 | # CONFIG_DNOTIFY is not set | ||
798 | # CONFIG_INOTIFY is not set | ||
799 | # CONFIG_QUOTA is not set | ||
800 | # CONFIG_AUTOFS_FS is not set | ||
801 | # CONFIG_AUTOFS4_FS is not set | ||
802 | # CONFIG_FUSE_FS is not set | ||
803 | |||
804 | # | ||
805 | # CD-ROM/DVD Filesystems | ||
806 | # | ||
807 | # CONFIG_ISO9660_FS is not set | ||
808 | # CONFIG_UDF_FS is not set | ||
809 | |||
810 | # | ||
811 | # DOS/FAT/NT Filesystems | ||
812 | # | ||
813 | CONFIG_FAT_FS=y | ||
814 | CONFIG_MSDOS_FS=y | ||
815 | CONFIG_VFAT_FS=y | ||
816 | CONFIG_FAT_DEFAULT_CODEPAGE=866 | ||
817 | CONFIG_FAT_DEFAULT_IOCHARSET="utf8" | ||
818 | # CONFIG_NTFS_FS is not set | ||
819 | |||
820 | # | ||
821 | # Pseudo filesystems | ||
822 | # | ||
823 | CONFIG_PROC_FS=y | ||
824 | CONFIG_PROC_SYSCTL=y | ||
825 | CONFIG_SYSFS=y | ||
826 | CONFIG_TMPFS=y | ||
827 | # CONFIG_TMPFS_POSIX_ACL is not set | ||
828 | # CONFIG_HUGETLB_PAGE is not set | ||
829 | # CONFIG_CONFIGFS_FS is not set | ||
830 | |||
831 | # | ||
832 | # Miscellaneous filesystems | ||
833 | # | ||
834 | # CONFIG_ADFS_FS is not set | ||
835 | # CONFIG_AFFS_FS is not set | ||
836 | # CONFIG_HFS_FS is not set | ||
837 | # CONFIG_HFSPLUS_FS is not set | ||
838 | # CONFIG_BEFS_FS is not set | ||
839 | # CONFIG_BFS_FS is not set | ||
840 | # CONFIG_EFS_FS is not set | ||
841 | # CONFIG_CRAMFS is not set | ||
842 | # CONFIG_VXFS_FS is not set | ||
843 | # CONFIG_MINIX_FS is not set | ||
844 | # CONFIG_OMFS_FS is not set | ||
845 | # CONFIG_HPFS_FS is not set | ||
846 | # CONFIG_QNX4FS_FS is not set | ||
847 | # CONFIG_ROMFS_FS is not set | ||
848 | # CONFIG_SYSV_FS is not set | ||
849 | # CONFIG_UFS_FS is not set | ||
850 | # CONFIG_NETWORK_FILESYSTEMS is not set | ||
851 | |||
852 | # | ||
853 | # Partition Types | ||
854 | # | ||
855 | # CONFIG_PARTITION_ADVANCED is not set | ||
856 | CONFIG_MSDOS_PARTITION=y | ||
857 | CONFIG_NLS=y | ||
858 | CONFIG_NLS_DEFAULT="utf8" | ||
859 | # CONFIG_NLS_CODEPAGE_437 is not set | ||
860 | # CONFIG_NLS_CODEPAGE_737 is not set | ||
861 | # CONFIG_NLS_CODEPAGE_775 is not set | ||
862 | # CONFIG_NLS_CODEPAGE_850 is not set | ||
863 | # CONFIG_NLS_CODEPAGE_852 is not set | ||
864 | # CONFIG_NLS_CODEPAGE_855 is not set | ||
865 | # CONFIG_NLS_CODEPAGE_857 is not set | ||
866 | # CONFIG_NLS_CODEPAGE_860 is not set | ||
867 | # CONFIG_NLS_CODEPAGE_861 is not set | ||
868 | # CONFIG_NLS_CODEPAGE_862 is not set | ||
869 | # CONFIG_NLS_CODEPAGE_863 is not set | ||
870 | # CONFIG_NLS_CODEPAGE_864 is not set | ||
871 | # CONFIG_NLS_CODEPAGE_865 is not set | ||
872 | CONFIG_NLS_CODEPAGE_866=y | ||
873 | # CONFIG_NLS_CODEPAGE_869 is not set | ||
874 | # CONFIG_NLS_CODEPAGE_936 is not set | ||
875 | # CONFIG_NLS_CODEPAGE_950 is not set | ||
876 | # CONFIG_NLS_CODEPAGE_932 is not set | ||
877 | # CONFIG_NLS_CODEPAGE_949 is not set | ||
878 | # CONFIG_NLS_CODEPAGE_874 is not set | ||
879 | # CONFIG_NLS_ISO8859_8 is not set | ||
880 | # CONFIG_NLS_CODEPAGE_1250 is not set | ||
881 | # CONFIG_NLS_CODEPAGE_1251 is not set | ||
882 | # CONFIG_NLS_ASCII is not set | ||
883 | # CONFIG_NLS_ISO8859_1 is not set | ||
884 | # CONFIG_NLS_ISO8859_2 is not set | ||
885 | # CONFIG_NLS_ISO8859_3 is not set | ||
886 | # CONFIG_NLS_ISO8859_4 is not set | ||
887 | # CONFIG_NLS_ISO8859_5 is not set | ||
888 | # CONFIG_NLS_ISO8859_6 is not set | ||
889 | # CONFIG_NLS_ISO8859_7 is not set | ||
890 | # CONFIG_NLS_ISO8859_9 is not set | ||
891 | # CONFIG_NLS_ISO8859_13 is not set | ||
892 | # CONFIG_NLS_ISO8859_14 is not set | ||
893 | # CONFIG_NLS_ISO8859_15 is not set | ||
894 | # CONFIG_NLS_KOI8_R is not set | ||
895 | # CONFIG_NLS_KOI8_U is not set | ||
896 | CONFIG_NLS_UTF8=y | ||
897 | # CONFIG_DLM is not set | ||
898 | |||
899 | # | ||
900 | # Kernel hacking | ||
901 | # | ||
902 | # CONFIG_PRINTK_TIME is not set | ||
903 | CONFIG_ENABLE_WARN_DEPRECATED=y | ||
904 | CONFIG_ENABLE_MUST_CHECK=y | ||
905 | CONFIG_FRAME_WARN=1024 | ||
906 | # CONFIG_MAGIC_SYSRQ is not set | ||
907 | # CONFIG_UNUSED_SYMBOLS is not set | ||
908 | # CONFIG_DEBUG_FS is not set | ||
909 | # CONFIG_HEADERS_CHECK is not set | ||
910 | # CONFIG_DEBUG_KERNEL is not set | ||
911 | CONFIG_DEBUG_BUGVERBOSE=y | ||
912 | CONFIG_DEBUG_MEMORY_INIT=y | ||
913 | CONFIG_FRAME_POINTER=y | ||
914 | # CONFIG_LATENCYTOP is not set | ||
915 | CONFIG_SYSCTL_SYSCALL_CHECK=y | ||
916 | CONFIG_HAVE_FTRACE=y | ||
917 | CONFIG_HAVE_DYNAMIC_FTRACE=y | ||
918 | # CONFIG_FTRACE is not set | ||
919 | # CONFIG_IRQSOFF_TRACER is not set | ||
920 | # CONFIG_PREEMPT_TRACER is not set | ||
921 | # CONFIG_SCHED_TRACER is not set | ||
922 | # CONFIG_CONTEXT_SWITCH_TRACER is not set | ||
923 | # CONFIG_SAMPLES is not set | ||
924 | CONFIG_HAVE_ARCH_KGDB=y | ||
925 | CONFIG_DEBUG_USER=y | ||
926 | |||
927 | # | ||
928 | # Security options | ||
929 | # | ||
930 | # CONFIG_KEYS is not set | ||
931 | # CONFIG_SECURITY is not set | ||
932 | # CONFIG_SECURITY_FILE_CAPABILITIES is not set | ||
933 | # CONFIG_CRYPTO is not set | ||
934 | |||
935 | # | ||
936 | # Library routines | ||
937 | # | ||
938 | CONFIG_BITREVERSE=y | ||
939 | # CONFIG_GENERIC_FIND_FIRST_BIT is not set | ||
940 | # CONFIG_GENERIC_FIND_NEXT_BIT is not set | ||
941 | # CONFIG_CRC_CCITT is not set | ||
942 | # CONFIG_CRC16 is not set | ||
943 | CONFIG_CRC_T10DIF=y | ||
944 | # CONFIG_CRC_ITU_T is not set | ||
945 | CONFIG_CRC32=y | ||
946 | # CONFIG_CRC7 is not set | ||
947 | # CONFIG_LIBCRC32C is not set | ||
948 | CONFIG_PLIST=y | ||
949 | CONFIG_HAS_IOMEM=y | ||
950 | CONFIG_HAS_IOPORT=y | ||
951 | CONFIG_HAS_DMA=y | ||
diff --git a/arch/arm/mach-pxa/Kconfig b/arch/arm/mach-pxa/Kconfig index e8ee7ec9ff6d..86ae8009fa0d 100644 --- a/arch/arm/mach-pxa/Kconfig +++ b/arch/arm/mach-pxa/Kconfig | |||
@@ -236,6 +236,16 @@ config MACH_PALMTX | |||
236 | Say Y here if you intend to run this kernel on a Palm T|X | 236 | Say Y here if you intend to run this kernel on a Palm T|X |
237 | handheld computer. | 237 | handheld computer. |
238 | 238 | ||
239 | config MACH_PALMZ72 | ||
240 | bool "Palm Zire 72" | ||
241 | default y | ||
242 | depends on ARCH_PXA_PALM | ||
243 | select PXA27x | ||
244 | select IWMMXT | ||
245 | help | ||
246 | Say Y here if you intend to run this kernel on Palm Zire 72 | ||
247 | handheld computer. | ||
248 | |||
239 | config MACH_PCM990_BASEBOARD | 249 | config MACH_PCM990_BASEBOARD |
240 | bool "PHYTEC PCM-990 development board" | 250 | bool "PHYTEC PCM-990 development board" |
241 | select HAVE_PWM | 251 | select HAVE_PWM |
diff --git a/arch/arm/mach-pxa/Makefile b/arch/arm/mach-pxa/Makefile index 99ecbe7f8506..8596dbcc7617 100644 --- a/arch/arm/mach-pxa/Makefile +++ b/arch/arm/mach-pxa/Makefile | |||
@@ -43,6 +43,7 @@ obj-$(CONFIG_MACH_E750) += e750_lcd.o | |||
43 | obj-$(CONFIG_MACH_E400) += e400_lcd.o | 43 | obj-$(CONFIG_MACH_E400) += e400_lcd.o |
44 | obj-$(CONFIG_MACH_E800) += e800_lcd.o | 44 | obj-$(CONFIG_MACH_E800) += e800_lcd.o |
45 | obj-$(CONFIG_MACH_PALMTX) += palmtx.o | 45 | obj-$(CONFIG_MACH_PALMTX) += palmtx.o |
46 | obj-$(CONFIG_MACH_PALMZ72) += palmz72.o | ||
46 | 47 | ||
47 | ifeq ($(CONFIG_MACH_ZYLONITE),y) | 48 | ifeq ($(CONFIG_MACH_ZYLONITE),y) |
48 | obj-y += zylonite.o | 49 | obj-y += zylonite.o |
diff --git a/arch/arm/mach-pxa/include/mach/palmz72.h b/arch/arm/mach-pxa/include/mach/palmz72.h new file mode 100644 index 000000000000..8fd30bcecb7c --- /dev/null +++ b/arch/arm/mach-pxa/include/mach/palmz72.h | |||
@@ -0,0 +1,67 @@ | |||
1 | /* | ||
2 | * GPIOs and interrupts for Palm Zire72 Handheld Computer | ||
3 | * | ||
4 | * Authors: Alex Osborne <bobofdoom@gmail.com> | ||
5 | * Jan Herman <2hp@seznam.cz> | ||
6 | * Sergey Lapin <slapin@ossfans.org> | ||
7 | * | ||
8 | * This program is free software; you can redistribute it and/or modify | ||
9 | * it under the terms of the GNU General Public License version 2 as | ||
10 | * published by the Free Software Foundation. | ||
11 | * | ||
12 | */ | ||
13 | |||
14 | #ifndef _INCLUDE_PALMZ72_H_ | ||
15 | #define _INCLUDE_PALMZ72_H_ | ||
16 | |||
17 | /* Power and control */ | ||
18 | #define GPIO_NR_PALMZ72_GPIO_RESET 1 | ||
19 | #define GPIO_NR_PALMZ72_POWER_DETECT 0 | ||
20 | |||
21 | /* SD/MMC */ | ||
22 | #define GPIO_NR_PALMZ72_SD_DETECT_N 14 | ||
23 | #define GPIO_NR_PALMZ72_SD_POWER_N 98 | ||
24 | #define GPIO_NR_PALMZ72_SD_RO 115 | ||
25 | |||
26 | /* Touchscreen */ | ||
27 | #define GPIO_NR_PALMZ72_WM9712_IRQ 27 | ||
28 | |||
29 | /* IRDA - disable GPIO connected to SD pin of tranceiver (TFBS4710?) ? */ | ||
30 | #define GPIO_NR_PALMZ72_IR_DISABLE 49 | ||
31 | |||
32 | /* USB */ | ||
33 | #define GPIO_NR_PALMZ72_USB_DETECT_N 15 | ||
34 | #define GPIO_NR_PALMZ72_USB_POWER 95 | ||
35 | #define GPIO_NR_PALMZ72_USB_PULLUP 12 | ||
36 | |||
37 | /* LCD/Backlight */ | ||
38 | #define GPIO_NR_PALMZ72_BL_POWER 20 | ||
39 | #define GPIO_NR_PALMZ72_LCD_POWER 96 | ||
40 | |||
41 | /* LED */ | ||
42 | #define GPIO_NR_PALMZ72_LED_GREEN 88 | ||
43 | |||
44 | /* Bluetooth */ | ||
45 | #define GPIO_NR_PALMZ72_BT_POWER 17 | ||
46 | #define GPIO_NR_PALMZ72_BT_RESET 83 | ||
47 | |||
48 | /** Initial values **/ | ||
49 | |||
50 | /* Battery */ | ||
51 | #define PALMZ72_BAT_MAX_VOLTAGE 4000 /* 4.00v current voltage */ | ||
52 | #define PALMZ72_BAT_MIN_VOLTAGE 3550 /* 3.55v critical voltage */ | ||
53 | #define PALMZ72_BAT_MAX_CURRENT 0 /* unknokn */ | ||
54 | #define PALMZ72_BAT_MIN_CURRENT 0 /* unknown */ | ||
55 | #define PALMZ72_BAT_MAX_CHARGE 1 /* unknown */ | ||
56 | #define PALMZ72_BAT_MIN_CHARGE 1 /* unknown */ | ||
57 | #define PALMZ72_MAX_LIFE_MINS 360 /* on-life in minutes */ | ||
58 | |||
59 | /* Backlight */ | ||
60 | #define PALMZ72_MAX_INTENSITY 0xFE | ||
61 | #define PALMZ72_DEFAULT_INTENSITY 0x7E | ||
62 | #define PALMZ72_LIMIT_MASK 0x7F | ||
63 | #define PALMZ72_PRESCALER 0x3F | ||
64 | #define PALMZ72_PERIOD_NS 3500 | ||
65 | |||
66 | #endif | ||
67 | |||
diff --git a/arch/arm/mach-pxa/palmz72.c b/arch/arm/mach-pxa/palmz72.c new file mode 100644 index 000000000000..a90b4d77a201 --- /dev/null +++ b/arch/arm/mach-pxa/palmz72.c | |||
@@ -0,0 +1,480 @@ | |||
1 | /* | ||
2 | * Hardware definitions for Palm Zire72 | ||
3 | * | ||
4 | * Authors: | ||
5 | * Vladimir "Farcaller" Pouzanov <farcaller@gmail.com> | ||
6 | * Sergey Lapin <slapin@ossfans.org> | ||
7 | * Alex Osborne <bobofdoom@gmail.com> | ||
8 | * Jan Herman <2hp@seznam.cz> | ||
9 | * | ||
10 | * Rewrite for mainline: | ||
11 | * Marek Vasut <marek.vasut@gmail.com> | ||
12 | * | ||
13 | * This program is free software; you can redistribute it and/or modify | ||
14 | * it under the terms of the GNU General Public License version 2 as | ||
15 | * published by the Free Software Foundation. | ||
16 | * | ||
17 | * (find more info at www.hackndev.com) | ||
18 | * | ||
19 | */ | ||
20 | |||
21 | #include <linux/platform_device.h> | ||
22 | #include <linux/sysdev.h> | ||
23 | #include <linux/delay.h> | ||
24 | #include <linux/irq.h> | ||
25 | #include <linux/gpio_keys.h> | ||
26 | #include <linux/input.h> | ||
27 | #include <linux/pda_power.h> | ||
28 | #include <linux/pwm_backlight.h> | ||
29 | #include <linux/gpio.h> | ||
30 | #include <linux/power_supply.h> | ||
31 | |||
32 | #include <asm/mach-types.h> | ||
33 | #include <asm/mach/arch.h> | ||
34 | #include <asm/mach/map.h> | ||
35 | |||
36 | #include <mach/audio.h> | ||
37 | #include <mach/palmz72.h> | ||
38 | #include <mach/mmc.h> | ||
39 | #include <mach/pxafb.h> | ||
40 | #include <mach/pxa-regs.h> | ||
41 | #include <mach/pxa2xx-regs.h> | ||
42 | #include <mach/mfp-pxa27x.h> | ||
43 | #include <mach/irda.h> | ||
44 | #include <mach/pxa27x_keypad.h> | ||
45 | #include <mach/udc.h> | ||
46 | #include <mach/pm.h> | ||
47 | |||
48 | #include "generic.h" | ||
49 | #include "devices.h" | ||
50 | |||
51 | /****************************************************************************** | ||
52 | * Pin configuration | ||
53 | ******************************************************************************/ | ||
54 | static unsigned long palmz72_pin_config[] __initdata = { | ||
55 | /* MMC */ | ||
56 | GPIO32_MMC_CLK, | ||
57 | GPIO92_MMC_DAT_0, | ||
58 | GPIO109_MMC_DAT_1, | ||
59 | GPIO110_MMC_DAT_2, | ||
60 | GPIO111_MMC_DAT_3, | ||
61 | GPIO112_MMC_CMD, | ||
62 | GPIO14_GPIO, /* SD detect */ | ||
63 | GPIO115_GPIO, /* SD RO */ | ||
64 | GPIO98_GPIO, /* SD power */ | ||
65 | |||
66 | /* AC97 */ | ||
67 | GPIO28_AC97_BITCLK, | ||
68 | GPIO29_AC97_SDATA_IN_0, | ||
69 | GPIO30_AC97_SDATA_OUT, | ||
70 | GPIO31_AC97_SYNC, | ||
71 | |||
72 | /* IrDA */ | ||
73 | GPIO49_GPIO, /* ir disable */ | ||
74 | GPIO46_FICP_RXD, | ||
75 | GPIO47_FICP_TXD, | ||
76 | |||
77 | /* PWM */ | ||
78 | GPIO16_PWM0_OUT, | ||
79 | |||
80 | /* USB */ | ||
81 | GPIO15_GPIO, /* usb detect */ | ||
82 | GPIO12_GPIO, /* usb pullup */ | ||
83 | GPIO95_GPIO, /* usb power */ | ||
84 | |||
85 | /* Matrix keypad */ | ||
86 | GPIO100_KP_MKIN_0 | WAKEUP_ON_LEVEL_HIGH, | ||
87 | GPIO101_KP_MKIN_1 | WAKEUP_ON_LEVEL_HIGH, | ||
88 | GPIO102_KP_MKIN_2 | WAKEUP_ON_LEVEL_HIGH, | ||
89 | GPIO97_KP_MKIN_3 | WAKEUP_ON_LEVEL_HIGH, | ||
90 | GPIO103_KP_MKOUT_0, | ||
91 | GPIO104_KP_MKOUT_1, | ||
92 | GPIO105_KP_MKOUT_2, | ||
93 | |||
94 | /* LCD */ | ||
95 | GPIO58_LCD_LDD_0, | ||
96 | GPIO59_LCD_LDD_1, | ||
97 | GPIO60_LCD_LDD_2, | ||
98 | GPIO61_LCD_LDD_3, | ||
99 | GPIO62_LCD_LDD_4, | ||
100 | GPIO63_LCD_LDD_5, | ||
101 | GPIO64_LCD_LDD_6, | ||
102 | GPIO65_LCD_LDD_7, | ||
103 | GPIO66_LCD_LDD_8, | ||
104 | GPIO67_LCD_LDD_9, | ||
105 | GPIO68_LCD_LDD_10, | ||
106 | GPIO69_LCD_LDD_11, | ||
107 | GPIO70_LCD_LDD_12, | ||
108 | GPIO71_LCD_LDD_13, | ||
109 | GPIO72_LCD_LDD_14, | ||
110 | GPIO73_LCD_LDD_15, | ||
111 | GPIO74_LCD_FCLK, | ||
112 | GPIO75_LCD_LCLK, | ||
113 | GPIO76_LCD_PCLK, | ||
114 | GPIO77_LCD_BIAS, | ||
115 | GPIO20_GPIO, /* bl power */ | ||
116 | GPIO21_GPIO, /* LCD border switch */ | ||
117 | GPIO22_GPIO, /* LCD border color */ | ||
118 | GPIO96_GPIO, /* lcd power */ | ||
119 | |||
120 | /* Misc. */ | ||
121 | GPIO0_GPIO | WAKEUP_ON_LEVEL_HIGH, /* power detect */ | ||
122 | GPIO88_GPIO, /* green led */ | ||
123 | GPIO27_GPIO, /* WM9712 IRQ */ | ||
124 | }; | ||
125 | |||
126 | /****************************************************************************** | ||
127 | * SD/MMC card controller | ||
128 | ******************************************************************************/ | ||
129 | static int palmz72_mci_init(struct device *dev, | ||
130 | irq_handler_t palmz72_detect_int, void *data) | ||
131 | { | ||
132 | int err = 0; | ||
133 | |||
134 | /* Setup an interrupt for detecting card insert/remove events */ | ||
135 | err = gpio_request(GPIO_NR_PALMZ72_SD_DETECT_N, "SD IRQ"); | ||
136 | if (err) | ||
137 | goto err; | ||
138 | err = gpio_direction_input(GPIO_NR_PALMZ72_SD_DETECT_N); | ||
139 | if (err) | ||
140 | goto err2; | ||
141 | err = request_irq(gpio_to_irq(GPIO_NR_PALMZ72_SD_DETECT_N), | ||
142 | palmz72_detect_int, IRQF_DISABLED | IRQF_SAMPLE_RANDOM | | ||
143 | IRQF_TRIGGER_FALLING | IRQF_TRIGGER_RISING, | ||
144 | "SD/MMC card detect", data); | ||
145 | if (err) { | ||
146 | printk(KERN_ERR "%s: cannot request SD/MMC card detect IRQ\n", | ||
147 | __func__); | ||
148 | goto err2; | ||
149 | } | ||
150 | |||
151 | /* SD_POWER is not actually power, but it is more like chip | ||
152 | * select, i.e. it is inverted */ | ||
153 | |||
154 | err = gpio_request(GPIO_NR_PALMZ72_SD_POWER_N, "SD_POWER"); | ||
155 | if (err) | ||
156 | goto err3; | ||
157 | err = gpio_direction_output(GPIO_NR_PALMZ72_SD_POWER_N, 0); | ||
158 | if (err) | ||
159 | goto err4; | ||
160 | err = gpio_request(GPIO_NR_PALMZ72_SD_RO, "SD_RO"); | ||
161 | if (err) | ||
162 | goto err4; | ||
163 | err = gpio_direction_input(GPIO_NR_PALMZ72_SD_RO); | ||
164 | if (err) | ||
165 | goto err5; | ||
166 | |||
167 | printk(KERN_DEBUG "%s: irq registered\n", __func__); | ||
168 | |||
169 | return 0; | ||
170 | |||
171 | err5: | ||
172 | gpio_free(GPIO_NR_PALMZ72_SD_RO); | ||
173 | err4: | ||
174 | gpio_free(GPIO_NR_PALMZ72_SD_POWER_N); | ||
175 | err3: | ||
176 | free_irq(gpio_to_irq(GPIO_NR_PALMZ72_SD_DETECT_N), data); | ||
177 | err2: | ||
178 | gpio_free(GPIO_NR_PALMZ72_SD_DETECT_N); | ||
179 | err: | ||
180 | return err; | ||
181 | } | ||
182 | |||
183 | static void palmz72_mci_exit(struct device *dev, void *data) | ||
184 | { | ||
185 | gpio_free(GPIO_NR_PALMZ72_SD_POWER_N); | ||
186 | free_irq(gpio_to_irq(GPIO_NR_PALMZ72_SD_DETECT_N), data); | ||
187 | gpio_free(GPIO_NR_PALMZ72_SD_DETECT_N); | ||
188 | gpio_free(GPIO_NR_PALMZ72_SD_RO); | ||
189 | } | ||
190 | |||
191 | static void palmz72_mci_power(struct device *dev, unsigned int vdd) | ||
192 | { | ||
193 | struct pxamci_platform_data *p_d = dev->platform_data; | ||
194 | if (p_d->ocr_mask & (1 << vdd)) | ||
195 | gpio_set_value(GPIO_NR_PALMZ72_SD_POWER_N, 0); | ||
196 | else | ||
197 | gpio_set_value(GPIO_NR_PALMZ72_SD_POWER_N, 1); | ||
198 | } | ||
199 | |||
200 | static int palmz72_mci_ro(struct device *dev) | ||
201 | { | ||
202 | return gpio_get_value(GPIO_NR_PALMZ72_SD_RO); | ||
203 | } | ||
204 | |||
205 | static struct pxamci_platform_data palmz72_mci_platform_data = { | ||
206 | .ocr_mask = MMC_VDD_32_33 | MMC_VDD_33_34, | ||
207 | .setpower = palmz72_mci_power, | ||
208 | .get_ro = palmz72_mci_ro, | ||
209 | .init = palmz72_mci_init, | ||
210 | .exit = palmz72_mci_exit, | ||
211 | }; | ||
212 | |||
213 | /****************************************************************************** | ||
214 | * GPIO keyboard | ||
215 | ******************************************************************************/ | ||
216 | static unsigned int palmz72_matrix_keys[] = { | ||
217 | KEY(0, 0, KEY_POWER), | ||
218 | KEY(0, 1, KEY_F1), | ||
219 | KEY(0, 2, KEY_ENTER), | ||
220 | |||
221 | KEY(1, 0, KEY_F2), | ||
222 | KEY(1, 1, KEY_F3), | ||
223 | KEY(1, 2, KEY_F4), | ||
224 | |||
225 | KEY(2, 0, KEY_UP), | ||
226 | KEY(2, 2, KEY_DOWN), | ||
227 | |||
228 | KEY(3, 0, KEY_RIGHT), | ||
229 | KEY(3, 2, KEY_LEFT), | ||
230 | }; | ||
231 | |||
232 | static struct pxa27x_keypad_platform_data palmz72_keypad_platform_data = { | ||
233 | .matrix_key_rows = 4, | ||
234 | .matrix_key_cols = 3, | ||
235 | .matrix_key_map = palmz72_matrix_keys, | ||
236 | .matrix_key_map_size = ARRAY_SIZE(palmz72_matrix_keys), | ||
237 | |||
238 | .debounce_interval = 30, | ||
239 | }; | ||
240 | |||
241 | /****************************************************************************** | ||
242 | * Backlight | ||
243 | ******************************************************************************/ | ||
244 | static int palmz72_backlight_init(struct device *dev) | ||
245 | { | ||
246 | int ret; | ||
247 | |||
248 | ret = gpio_request(GPIO_NR_PALMZ72_BL_POWER, "BL POWER"); | ||
249 | if (ret) | ||
250 | goto err; | ||
251 | ret = gpio_direction_output(GPIO_NR_PALMZ72_BL_POWER, 0); | ||
252 | if (ret) | ||
253 | goto err2; | ||
254 | ret = gpio_request(GPIO_NR_PALMZ72_LCD_POWER, "LCD POWER"); | ||
255 | if (ret) | ||
256 | goto err2; | ||
257 | ret = gpio_direction_output(GPIO_NR_PALMZ72_LCD_POWER, 0); | ||
258 | if (ret) | ||
259 | goto err3; | ||
260 | |||
261 | return 0; | ||
262 | err3: | ||
263 | gpio_free(GPIO_NR_PALMZ72_LCD_POWER); | ||
264 | err2: | ||
265 | gpio_free(GPIO_NR_PALMZ72_BL_POWER); | ||
266 | err: | ||
267 | return ret; | ||
268 | } | ||
269 | |||
270 | static int palmz72_backlight_notify(int brightness) | ||
271 | { | ||
272 | gpio_set_value(GPIO_NR_PALMZ72_BL_POWER, brightness); | ||
273 | gpio_set_value(GPIO_NR_PALMZ72_LCD_POWER, brightness); | ||
274 | return brightness; | ||
275 | } | ||
276 | |||
277 | static void palmz72_backlight_exit(struct device *dev) | ||
278 | { | ||
279 | gpio_free(GPIO_NR_PALMZ72_BL_POWER); | ||
280 | gpio_free(GPIO_NR_PALMZ72_LCD_POWER); | ||
281 | } | ||
282 | |||
283 | static struct platform_pwm_backlight_data palmz72_backlight_data = { | ||
284 | .pwm_id = 0, | ||
285 | .max_brightness = PALMZ72_MAX_INTENSITY, | ||
286 | .dft_brightness = PALMZ72_MAX_INTENSITY, | ||
287 | .pwm_period_ns = PALMZ72_PERIOD_NS, | ||
288 | .init = palmz72_backlight_init, | ||
289 | .notify = palmz72_backlight_notify, | ||
290 | .exit = palmz72_backlight_exit, | ||
291 | }; | ||
292 | |||
293 | static struct platform_device palmz72_backlight = { | ||
294 | .name = "pwm-backlight", | ||
295 | .dev = { | ||
296 | .parent = &pxa27x_device_pwm0.dev, | ||
297 | .platform_data = &palmz72_backlight_data, | ||
298 | }, | ||
299 | }; | ||
300 | |||
301 | /****************************************************************************** | ||
302 | * IrDA | ||
303 | ******************************************************************************/ | ||
304 | static int palmz72_irda_startup(struct device *dev) | ||
305 | { | ||
306 | int err; | ||
307 | err = gpio_request(GPIO_NR_PALMZ72_IR_DISABLE, "IR DISABLE"); | ||
308 | if (err) | ||
309 | goto err; | ||
310 | err = gpio_direction_output(GPIO_NR_PALMZ72_IR_DISABLE, 1); | ||
311 | if (err) | ||
312 | gpio_free(GPIO_NR_PALMZ72_IR_DISABLE); | ||
313 | err: | ||
314 | return err; | ||
315 | } | ||
316 | |||
317 | static void palmz72_irda_shutdown(struct device *dev) | ||
318 | { | ||
319 | gpio_free(GPIO_NR_PALMZ72_IR_DISABLE); | ||
320 | } | ||
321 | |||
322 | static void palmz72_irda_transceiver_mode(struct device *dev, int mode) | ||
323 | { | ||
324 | gpio_set_value(GPIO_NR_PALMZ72_IR_DISABLE, mode & IR_OFF); | ||
325 | pxa2xx_transceiver_mode(dev, mode); | ||
326 | } | ||
327 | |||
328 | static struct pxaficp_platform_data palmz72_ficp_platform_data = { | ||
329 | .startup = palmz72_irda_startup, | ||
330 | .shutdown = palmz72_irda_shutdown, | ||
331 | .transceiver_cap = IR_SIRMODE | IR_OFF, | ||
332 | .transceiver_mode = palmz72_irda_transceiver_mode, | ||
333 | }; | ||
334 | |||
335 | /****************************************************************************** | ||
336 | * LEDs | ||
337 | ******************************************************************************/ | ||
338 | static struct gpio_led gpio_leds[] = { | ||
339 | { | ||
340 | .name = "palmz72:green:led", | ||
341 | .default_trigger = "none", | ||
342 | .gpio = GPIO_NR_PALMZ72_LED_GREEN, | ||
343 | }, | ||
344 | }; | ||
345 | |||
346 | static struct gpio_led_platform_data gpio_led_info = { | ||
347 | .leds = gpio_leds, | ||
348 | .num_leds = ARRAY_SIZE(gpio_leds), | ||
349 | }; | ||
350 | |||
351 | static struct platform_device palmz72_leds = { | ||
352 | .name = "leds-gpio", | ||
353 | .id = -1, | ||
354 | .dev = { | ||
355 | .platform_data = &gpio_led_info, | ||
356 | } | ||
357 | }; | ||
358 | |||
359 | /****************************************************************************** | ||
360 | * Power supply | ||
361 | ******************************************************************************/ | ||
362 | static int power_supply_init(struct device *dev) | ||
363 | { | ||
364 | int ret; | ||
365 | |||
366 | ret = gpio_request(GPIO_NR_PALMZ72_POWER_DETECT, "CABLE_STATE_AC"); | ||
367 | if (ret) | ||
368 | goto err1; | ||
369 | ret = gpio_direction_input(GPIO_NR_PALMZ72_POWER_DETECT); | ||
370 | if (ret) | ||
371 | goto err2; | ||
372 | |||
373 | ret = gpio_request(GPIO_NR_PALMZ72_USB_DETECT_N, "CABLE_STATE_USB"); | ||
374 | if (ret) | ||
375 | goto err2; | ||
376 | ret = gpio_direction_input(GPIO_NR_PALMZ72_USB_DETECT_N); | ||
377 | if (ret) | ||
378 | goto err3; | ||
379 | |||
380 | return 0; | ||
381 | err3: | ||
382 | gpio_free(GPIO_NR_PALMZ72_USB_DETECT_N); | ||
383 | err2: | ||
384 | gpio_free(GPIO_NR_PALMZ72_POWER_DETECT); | ||
385 | err1: | ||
386 | return ret; | ||
387 | } | ||
388 | |||
389 | static int palmz72_is_ac_online(void) | ||
390 | { | ||
391 | return gpio_get_value(GPIO_NR_PALMZ72_POWER_DETECT); | ||
392 | } | ||
393 | |||
394 | static int palmz72_is_usb_online(void) | ||
395 | { | ||
396 | return !gpio_get_value(GPIO_NR_PALMZ72_USB_DETECT_N); | ||
397 | } | ||
398 | |||
399 | static void power_supply_exit(struct device *dev) | ||
400 | { | ||
401 | gpio_free(GPIO_NR_PALMZ72_USB_DETECT_N); | ||
402 | gpio_free(GPIO_NR_PALMZ72_POWER_DETECT); | ||
403 | } | ||
404 | |||
405 | static char *palmz72_supplicants[] = { | ||
406 | "main-battery", | ||
407 | }; | ||
408 | |||
409 | static struct pda_power_pdata power_supply_info = { | ||
410 | .init = power_supply_init, | ||
411 | .is_ac_online = palmz72_is_ac_online, | ||
412 | .is_usb_online = palmz72_is_usb_online, | ||
413 | .exit = power_supply_exit, | ||
414 | .supplied_to = palmz72_supplicants, | ||
415 | .num_supplicants = ARRAY_SIZE(palmz72_supplicants), | ||
416 | }; | ||
417 | |||
418 | static struct platform_device power_supply = { | ||
419 | .name = "pda-power", | ||
420 | .id = -1, | ||
421 | .dev = { | ||
422 | .platform_data = &power_supply_info, | ||
423 | }, | ||
424 | }; | ||
425 | |||
426 | /****************************************************************************** | ||
427 | * Framebuffer | ||
428 | ******************************************************************************/ | ||
429 | static struct pxafb_mode_info palmz72_lcd_modes[] = { | ||
430 | { | ||
431 | .pixclock = 115384, | ||
432 | .xres = 320, | ||
433 | .yres = 320, | ||
434 | .bpp = 16, | ||
435 | |||
436 | .left_margin = 27, | ||
437 | .right_margin = 7, | ||
438 | .upper_margin = 7, | ||
439 | .lower_margin = 8, | ||
440 | |||
441 | .hsync_len = 6, | ||
442 | .vsync_len = 1, | ||
443 | }, | ||
444 | }; | ||
445 | |||
446 | static struct pxafb_mach_info palmz72_lcd_screen = { | ||
447 | .modes = palmz72_lcd_modes, | ||
448 | .num_modes = ARRAY_SIZE(palmz72_lcd_modes), | ||
449 | .lcd_conn = LCD_COLOR_TFT_16BPP | LCD_PCLK_EDGE_FALL, | ||
450 | }; | ||
451 | |||
452 | /****************************************************************************** | ||
453 | * Machine init | ||
454 | ******************************************************************************/ | ||
455 | static struct platform_device *devices[] __initdata = { | ||
456 | &palmz72_backlight, | ||
457 | &palmz72_leds, | ||
458 | &power_supply, | ||
459 | }; | ||
460 | |||
461 | static void __init palmz72_init(void) | ||
462 | { | ||
463 | pxa2xx_mfp_config(ARRAY_AND_SIZE(palmz72_pin_config)); | ||
464 | set_pxa_fb_info(&palmz72_lcd_screen); | ||
465 | pxa_set_mci_info(&palmz72_mci_platform_data); | ||
466 | pxa_set_ac97_info(NULL); | ||
467 | pxa_set_ficp_info(&palmz72_ficp_platform_data); | ||
468 | pxa_set_keypad_info(&palmz72_keypad_platform_data); | ||
469 | platform_add_devices(devices, ARRAY_SIZE(devices)); | ||
470 | } | ||
471 | |||
472 | MACHINE_START(PALMZ72, "Palm Zire72") | ||
473 | .phys_io = 0x40000000, | ||
474 | .io_pg_offst = io_p2v(0x40000000), | ||
475 | .boot_params = 0xa0000100, | ||
476 | .map_io = pxa_map_io, | ||
477 | .init_irq = pxa27x_init_irq, | ||
478 | .timer = &pxa_timer, | ||
479 | .init_machine = palmz72_init | ||
480 | MACHINE_END | ||