diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2009-12-06 12:00:33 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2009-12-06 12:00:33 -0500 |
commit | 3d14b5beba35250c548d3851a2b84fce742d8311 (patch) | |
tree | 065e3d93c3fcbc5ee4c44fa78662393cddbdf6de /arch/arm | |
parent | 0719dc341389882cc834ed18fc9b7fc6006b2b85 (diff) | |
parent | 1bf8e6219552d5dd27012d567ec8c4bb9c2d86b4 (diff) |
Merge branch 'sa1100' into devel
Diffstat (limited to 'arch/arm')
24 files changed, 1360 insertions, 1011 deletions
diff --git a/arch/arm/configs/h3600_defconfig b/arch/arm/configs/h3600_defconfig index f6aed7747d4d..efa78e144e5c 100644 --- a/arch/arm/configs/h3600_defconfig +++ b/arch/arm/configs/h3600_defconfig | |||
@@ -1,86 +1,189 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.12-rc4 | 3 | # Linux kernel version: 2.6.32-rc5 |
4 | # Thu Jun 9 01:59:03 2005 | 4 | # Sat Oct 24 00:09:30 2009 |
5 | # | 5 | # |
6 | CONFIG_ARM=y | 6 | CONFIG_ARM=y |
7 | CONFIG_MMU=y | 7 | CONFIG_SYS_SUPPORTS_APM_EMULATION=y |
8 | CONFIG_UID16=y | 8 | CONFIG_GENERIC_GPIO=y |
9 | CONFIG_GENERIC_TIME=y | ||
10 | CONFIG_GENERIC_CLOCKEVENTS=y | ||
11 | CONFIG_GENERIC_HARDIRQS=y | ||
12 | CONFIG_STACKTRACE_SUPPORT=y | ||
13 | CONFIG_HAVE_LATENCYTOP_SUPPORT=y | ||
14 | CONFIG_LOCKDEP_SUPPORT=y | ||
15 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y | ||
16 | CONFIG_HARDIRQS_SW_RESEND=y | ||
17 | CONFIG_GENERIC_IRQ_PROBE=y | ||
9 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 18 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
19 | CONFIG_ARCH_HAS_CPUFREQ=y | ||
20 | CONFIG_GENERIC_HWEIGHT=y | ||
10 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 21 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
11 | CONFIG_GENERIC_IOMAP=y | 22 | CONFIG_ARCH_MTD_XIP=y |
23 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y | ||
24 | CONFIG_VECTORS_BASE=0xffff0000 | ||
25 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | ||
26 | CONFIG_CONSTRUCTORS=y | ||
12 | 27 | ||
13 | # | 28 | # |
14 | # Code maturity level options | 29 | # General setup |
15 | # | 30 | # |
16 | CONFIG_EXPERIMENTAL=y | 31 | CONFIG_EXPERIMENTAL=y |
17 | CONFIG_CLEAN_COMPILE=y | ||
18 | CONFIG_BROKEN_ON_SMP=y | 32 | CONFIG_BROKEN_ON_SMP=y |
19 | CONFIG_INIT_ENV_ARG_LIMIT=32 | 33 | CONFIG_INIT_ENV_ARG_LIMIT=32 |
20 | |||
21 | # | ||
22 | # General setup | ||
23 | # | ||
24 | CONFIG_LOCALVERSION="" | 34 | CONFIG_LOCALVERSION="" |
35 | CONFIG_LOCALVERSION_AUTO=y | ||
25 | CONFIG_SWAP=y | 36 | CONFIG_SWAP=y |
26 | CONFIG_SYSVIPC=y | 37 | CONFIG_SYSVIPC=y |
38 | CONFIG_SYSVIPC_SYSCTL=y | ||
27 | # CONFIG_POSIX_MQUEUE is not set | 39 | # CONFIG_POSIX_MQUEUE is not set |
28 | # CONFIG_BSD_PROCESS_ACCT is not set | 40 | # CONFIG_BSD_PROCESS_ACCT is not set |
29 | CONFIG_SYSCTL=y | 41 | # CONFIG_TASKSTATS is not set |
30 | # CONFIG_AUDIT is not set | 42 | # CONFIG_AUDIT is not set |
31 | CONFIG_HOTPLUG=y | 43 | |
32 | CONFIG_KOBJECT_UEVENT=y | 44 | # |
45 | # RCU Subsystem | ||
46 | # | ||
47 | CONFIG_TREE_RCU=y | ||
48 | # CONFIG_TREE_PREEMPT_RCU is not set | ||
49 | # CONFIG_RCU_TRACE is not set | ||
50 | CONFIG_RCU_FANOUT=32 | ||
51 | # CONFIG_RCU_FANOUT_EXACT is not set | ||
52 | # CONFIG_TREE_RCU_TRACE is not set | ||
33 | # CONFIG_IKCONFIG is not set | 53 | # CONFIG_IKCONFIG is not set |
54 | CONFIG_LOG_BUF_SHIFT=14 | ||
55 | # CONFIG_GROUP_SCHED is not set | ||
56 | # CONFIG_CGROUPS is not set | ||
57 | # CONFIG_SYSFS_DEPRECATED_V2 is not set | ||
58 | # CONFIG_RELAY is not set | ||
59 | CONFIG_NAMESPACES=y | ||
60 | # CONFIG_UTS_NS is not set | ||
61 | # CONFIG_IPC_NS is not set | ||
62 | # CONFIG_USER_NS is not set | ||
63 | # CONFIG_PID_NS is not set | ||
64 | # CONFIG_NET_NS is not set | ||
65 | CONFIG_BLK_DEV_INITRD=y | ||
66 | CONFIG_INITRAMFS_SOURCE="" | ||
67 | CONFIG_RD_GZIP=y | ||
68 | CONFIG_RD_BZIP2=y | ||
69 | CONFIG_RD_LZMA=y | ||
70 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | ||
71 | CONFIG_SYSCTL=y | ||
72 | CONFIG_ANON_INODES=y | ||
34 | # CONFIG_EMBEDDED is not set | 73 | # CONFIG_EMBEDDED is not set |
74 | CONFIG_UID16=y | ||
75 | CONFIG_SYSCTL_SYSCALL=y | ||
35 | CONFIG_KALLSYMS=y | 76 | CONFIG_KALLSYMS=y |
36 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | 77 | # CONFIG_KALLSYMS_EXTRA_PASS is not set |
78 | CONFIG_HOTPLUG=y | ||
37 | CONFIG_PRINTK=y | 79 | CONFIG_PRINTK=y |
38 | CONFIG_BUG=y | 80 | CONFIG_BUG=y |
81 | CONFIG_ELF_CORE=y | ||
39 | CONFIG_BASE_FULL=y | 82 | CONFIG_BASE_FULL=y |
40 | CONFIG_FUTEX=y | 83 | CONFIG_FUTEX=y |
41 | CONFIG_EPOLL=y | 84 | CONFIG_EPOLL=y |
42 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | 85 | CONFIG_SIGNALFD=y |
86 | CONFIG_TIMERFD=y | ||
87 | CONFIG_EVENTFD=y | ||
43 | CONFIG_SHMEM=y | 88 | CONFIG_SHMEM=y |
44 | CONFIG_CC_ALIGN_FUNCTIONS=0 | 89 | CONFIG_AIO=y |
45 | CONFIG_CC_ALIGN_LABELS=0 | 90 | |
46 | CONFIG_CC_ALIGN_LOOPS=0 | 91 | # |
47 | CONFIG_CC_ALIGN_JUMPS=0 | 92 | # Kernel Performance Events And Counters |
48 | # CONFIG_TINY_SHMEM is not set | 93 | # |
49 | CONFIG_BASE_SMALL=0 | 94 | CONFIG_VM_EVENT_COUNTERS=y |
95 | CONFIG_SLUB_DEBUG=y | ||
96 | CONFIG_COMPAT_BRK=y | ||
97 | # CONFIG_SLAB is not set | ||
98 | CONFIG_SLUB=y | ||
99 | # CONFIG_SLOB is not set | ||
100 | # CONFIG_PROFILING is not set | ||
101 | CONFIG_HAVE_OPROFILE=y | ||
102 | # CONFIG_KPROBES is not set | ||
103 | CONFIG_HAVE_KPROBES=y | ||
104 | CONFIG_HAVE_KRETPROBES=y | ||
105 | CONFIG_HAVE_CLK=y | ||
50 | 106 | ||
51 | # | 107 | # |
52 | # Loadable module support | 108 | # GCOV-based kernel profiling |
53 | # | 109 | # |
110 | # CONFIG_SLOW_WORK is not set | ||
111 | CONFIG_HAVE_GENERIC_DMA_COHERENT=y | ||
112 | CONFIG_SLABINFO=y | ||
113 | CONFIG_RT_MUTEXES=y | ||
114 | CONFIG_BASE_SMALL=0 | ||
54 | CONFIG_MODULES=y | 115 | CONFIG_MODULES=y |
116 | # CONFIG_MODULE_FORCE_LOAD is not set | ||
55 | # CONFIG_MODULE_UNLOAD is not set | 117 | # CONFIG_MODULE_UNLOAD is not set |
56 | CONFIG_OBSOLETE_MODPARM=y | ||
57 | # CONFIG_MODVERSIONS is not set | 118 | # CONFIG_MODVERSIONS is not set |
58 | # CONFIG_MODULE_SRCVERSION_ALL is not set | 119 | # CONFIG_MODULE_SRCVERSION_ALL is not set |
59 | # CONFIG_KMOD is not set | 120 | CONFIG_BLOCK=y |
121 | # CONFIG_LBDAF is not set | ||
122 | # CONFIG_BLK_DEV_BSG is not set | ||
123 | # CONFIG_BLK_DEV_INTEGRITY is not set | ||
124 | |||
125 | # | ||
126 | # IO Schedulers | ||
127 | # | ||
128 | CONFIG_IOSCHED_NOOP=y | ||
129 | # CONFIG_IOSCHED_AS is not set | ||
130 | # CONFIG_IOSCHED_DEADLINE is not set | ||
131 | # CONFIG_IOSCHED_CFQ is not set | ||
132 | # CONFIG_DEFAULT_AS is not set | ||
133 | # CONFIG_DEFAULT_DEADLINE is not set | ||
134 | # CONFIG_DEFAULT_CFQ is not set | ||
135 | CONFIG_DEFAULT_NOOP=y | ||
136 | CONFIG_DEFAULT_IOSCHED="noop" | ||
137 | CONFIG_FREEZER=y | ||
60 | 138 | ||
61 | # | 139 | # |
62 | # System Type | 140 | # System Type |
63 | # | 141 | # |
64 | # CONFIG_ARCH_CLPS7500 is not set | 142 | CONFIG_MMU=y |
143 | # CONFIG_ARCH_AAEC2000 is not set | ||
144 | # CONFIG_ARCH_INTEGRATOR is not set | ||
145 | # CONFIG_ARCH_REALVIEW is not set | ||
146 | # CONFIG_ARCH_VERSATILE is not set | ||
147 | # CONFIG_ARCH_AT91 is not set | ||
65 | # CONFIG_ARCH_CLPS711X is not set | 148 | # CONFIG_ARCH_CLPS711X is not set |
66 | # CONFIG_ARCH_CO285 is not set | 149 | # CONFIG_ARCH_GEMINI is not set |
67 | # CONFIG_ARCH_EBSA110 is not set | 150 | # CONFIG_ARCH_EBSA110 is not set |
151 | # CONFIG_ARCH_EP93XX is not set | ||
68 | # CONFIG_ARCH_FOOTBRIDGE is not set | 152 | # CONFIG_ARCH_FOOTBRIDGE is not set |
69 | # CONFIG_ARCH_INTEGRATOR is not set | 153 | # CONFIG_ARCH_MXC is not set |
70 | # CONFIG_ARCH_IOP3XX is not set | 154 | # CONFIG_ARCH_STMP3XXX is not set |
71 | # CONFIG_ARCH_IXP4XX is not set | 155 | # CONFIG_ARCH_NETX is not set |
156 | # CONFIG_ARCH_H720X is not set | ||
157 | # CONFIG_ARCH_NOMADIK is not set | ||
158 | # CONFIG_ARCH_IOP13XX is not set | ||
159 | # CONFIG_ARCH_IOP32X is not set | ||
160 | # CONFIG_ARCH_IOP33X is not set | ||
161 | # CONFIG_ARCH_IXP23XX is not set | ||
72 | # CONFIG_ARCH_IXP2000 is not set | 162 | # CONFIG_ARCH_IXP2000 is not set |
163 | # CONFIG_ARCH_IXP4XX is not set | ||
73 | # CONFIG_ARCH_L7200 is not set | 164 | # CONFIG_ARCH_L7200 is not set |
165 | # CONFIG_ARCH_KIRKWOOD is not set | ||
166 | # CONFIG_ARCH_LOKI is not set | ||
167 | # CONFIG_ARCH_MV78XX0 is not set | ||
168 | # CONFIG_ARCH_ORION5X is not set | ||
169 | # CONFIG_ARCH_MMP is not set | ||
170 | # CONFIG_ARCH_KS8695 is not set | ||
171 | # CONFIG_ARCH_NS9XXX is not set | ||
172 | # CONFIG_ARCH_W90X900 is not set | ||
173 | # CONFIG_ARCH_PNX4008 is not set | ||
74 | # CONFIG_ARCH_PXA is not set | 174 | # CONFIG_ARCH_PXA is not set |
175 | # CONFIG_ARCH_MSM is not set | ||
75 | # CONFIG_ARCH_RPC is not set | 176 | # CONFIG_ARCH_RPC is not set |
76 | CONFIG_ARCH_SA1100=y | 177 | CONFIG_ARCH_SA1100=y |
77 | # CONFIG_ARCH_S3C2410 is not set | 178 | # CONFIG_ARCH_S3C2410 is not set |
179 | # CONFIG_ARCH_S3C64XX is not set | ||
180 | # CONFIG_ARCH_S5PC1XX is not set | ||
78 | # CONFIG_ARCH_SHARK is not set | 181 | # CONFIG_ARCH_SHARK is not set |
79 | # CONFIG_ARCH_LH7A40X is not set | 182 | # CONFIG_ARCH_LH7A40X is not set |
183 | # CONFIG_ARCH_U300 is not set | ||
184 | # CONFIG_ARCH_DAVINCI is not set | ||
80 | # CONFIG_ARCH_OMAP is not set | 185 | # CONFIG_ARCH_OMAP is not set |
81 | # CONFIG_ARCH_VERSATILE is not set | 186 | # CONFIG_ARCH_BCMRING is not set |
82 | # CONFIG_ARCH_IMX is not set | ||
83 | # CONFIG_ARCH_H720X is not set | ||
84 | 187 | ||
85 | # | 188 | # |
86 | # SA11x0 Implementations | 189 | # SA11x0 Implementations |
@@ -106,27 +209,31 @@ CONFIG_CPU_32=y | |||
106 | CONFIG_CPU_SA1100=y | 209 | CONFIG_CPU_SA1100=y |
107 | CONFIG_CPU_32v4=y | 210 | CONFIG_CPU_32v4=y |
108 | CONFIG_CPU_ABRT_EV4=y | 211 | CONFIG_CPU_ABRT_EV4=y |
212 | CONFIG_CPU_PABRT_LEGACY=y | ||
109 | CONFIG_CPU_CACHE_V4WB=y | 213 | CONFIG_CPU_CACHE_V4WB=y |
110 | CONFIG_CPU_CACHE_VIVT=y | 214 | CONFIG_CPU_CACHE_VIVT=y |
111 | CONFIG_CPU_TLB_V4WB=y | 215 | CONFIG_CPU_TLB_V4WB=y |
112 | CONFIG_CPU_MINICACHE=y | 216 | CONFIG_CPU_CP15=y |
217 | CONFIG_CPU_CP15_MMU=y | ||
113 | 218 | ||
114 | # | 219 | # |
115 | # Processor Features | 220 | # Processor Features |
116 | # | 221 | # |
222 | # CONFIG_CPU_ICACHE_DISABLE is not set | ||
223 | # CONFIG_CPU_DCACHE_DISABLE is not set | ||
224 | CONFIG_ARM_L1_CACHE_SHIFT=5 | ||
117 | 225 | ||
118 | # | 226 | # |
119 | # Bus support | 227 | # Bus support |
120 | # | 228 | # |
121 | CONFIG_ISA=y | 229 | CONFIG_ISA=y |
122 | CONFIG_ISA_DMA_API=y | 230 | # CONFIG_PCI_SYSCALL is not set |
123 | 231 | # CONFIG_ARCH_SUPPORTS_MSI is not set | |
124 | # | ||
125 | # PCCARD (PCMCIA/CardBus) support | ||
126 | # | ||
127 | CONFIG_PCCARD=y | 232 | CONFIG_PCCARD=y |
128 | # CONFIG_PCMCIA_DEBUG is not set | 233 | # CONFIG_PCMCIA_DEBUG is not set |
129 | CONFIG_PCMCIA=y | 234 | CONFIG_PCMCIA=y |
235 | CONFIG_PCMCIA_LOAD_CIS=y | ||
236 | CONFIG_PCMCIA_IOCTL=y | ||
130 | 237 | ||
131 | # | 238 | # |
132 | # PC-card bridges | 239 | # PC-card bridges |
@@ -138,11 +245,41 @@ CONFIG_PCMCIA_SA1100=y | |||
138 | # | 245 | # |
139 | # Kernel Features | 246 | # Kernel Features |
140 | # | 247 | # |
141 | # CONFIG_SMP is not set | 248 | CONFIG_TICK_ONESHOT=y |
249 | # CONFIG_NO_HZ is not set | ||
250 | # CONFIG_HIGH_RES_TIMERS is not set | ||
251 | CONFIG_GENERIC_CLOCKEVENTS_BUILD=y | ||
252 | CONFIG_VMSPLIT_3G=y | ||
253 | # CONFIG_VMSPLIT_2G is not set | ||
254 | # CONFIG_VMSPLIT_1G is not set | ||
255 | CONFIG_PAGE_OFFSET=0xC0000000 | ||
256 | CONFIG_PREEMPT_NONE=y | ||
257 | # CONFIG_PREEMPT_VOLUNTARY is not set | ||
142 | # CONFIG_PREEMPT is not set | 258 | # CONFIG_PREEMPT is not set |
143 | CONFIG_DISCONTIGMEM=y | 259 | CONFIG_HZ=100 |
260 | # CONFIG_AEABI is not set | ||
261 | CONFIG_ARCH_SPARSEMEM_ENABLE=y | ||
262 | CONFIG_ARCH_SPARSEMEM_DEFAULT=y | ||
263 | # CONFIG_ARCH_SELECT_MEMORY_MODEL is not set | ||
264 | # CONFIG_HIGHMEM is not set | ||
265 | CONFIG_SELECT_MEMORY_MODEL=y | ||
266 | # CONFIG_FLATMEM_MANUAL is not set | ||
267 | # CONFIG_DISCONTIGMEM_MANUAL is not set | ||
268 | CONFIG_SPARSEMEM_MANUAL=y | ||
269 | CONFIG_SPARSEMEM=y | ||
270 | CONFIG_HAVE_MEMORY_PRESENT=y | ||
271 | CONFIG_SPARSEMEM_EXTREME=y | ||
272 | CONFIG_SPLIT_PTLOCK_CPUS=4096 | ||
273 | # CONFIG_PHYS_ADDR_T_64BIT is not set | ||
274 | CONFIG_ZONE_DMA_FLAG=0 | ||
275 | CONFIG_VIRT_TO_BUS=y | ||
276 | CONFIG_HAVE_MLOCK=y | ||
277 | CONFIG_HAVE_MLOCKED_PAGE_BIT=y | ||
278 | # CONFIG_KSM is not set | ||
279 | CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 | ||
144 | # CONFIG_LEDS is not set | 280 | # CONFIG_LEDS is not set |
145 | CONFIG_ALIGNMENT_TRAP=y | 281 | CONFIG_ALIGNMENT_TRAP=y |
282 | # CONFIG_UACCESS_WITH_MEMCPY is not set | ||
146 | 283 | ||
147 | # | 284 | # |
148 | # Boot options | 285 | # Boot options |
@@ -151,22 +288,26 @@ CONFIG_ZBOOT_ROM_TEXT=0x0 | |||
151 | CONFIG_ZBOOT_ROM_BSS=0x0 | 288 | CONFIG_ZBOOT_ROM_BSS=0x0 |
152 | CONFIG_CMDLINE="" | 289 | CONFIG_CMDLINE="" |
153 | # CONFIG_XIP_KERNEL is not set | 290 | # CONFIG_XIP_KERNEL is not set |
291 | # CONFIG_KEXEC is not set | ||
154 | 292 | ||
155 | # | 293 | # |
156 | # CPU Frequency scaling | 294 | # CPU Power Management |
157 | # | 295 | # |
158 | CONFIG_CPU_FREQ=y | 296 | CONFIG_CPU_FREQ=y |
159 | CONFIG_CPU_FREQ_TABLE=y | ||
160 | # CONFIG_CPU_FREQ_DEBUG is not set | 297 | # CONFIG_CPU_FREQ_DEBUG is not set |
161 | CONFIG_CPU_FREQ_STAT=y | 298 | # CONFIG_CPU_FREQ_STAT is not set |
162 | # CONFIG_CPU_FREQ_STAT_DETAILS is not set | ||
163 | # CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set | 299 | # CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set |
300 | # CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set | ||
164 | CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y | 301 | CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y |
302 | # CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set | ||
303 | # CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set | ||
165 | # CONFIG_CPU_FREQ_GOV_PERFORMANCE is not set | 304 | # CONFIG_CPU_FREQ_GOV_PERFORMANCE is not set |
166 | # CONFIG_CPU_FREQ_GOV_POWERSAVE is not set | 305 | # CONFIG_CPU_FREQ_GOV_POWERSAVE is not set |
167 | CONFIG_CPU_FREQ_GOV_USERSPACE=y | 306 | CONFIG_CPU_FREQ_GOV_USERSPACE=y |
168 | # CONFIG_CPU_FREQ_GOV_ONDEMAND is not set | 307 | # CONFIG_CPU_FREQ_GOV_ONDEMAND is not set |
308 | # CONFIG_CPU_FREQ_GOV_CONSERVATIVE is not set | ||
169 | CONFIG_CPU_FREQ_SA1100=y | 309 | CONFIG_CPU_FREQ_SA1100=y |
310 | # CONFIG_CPU_IDLE is not set | ||
170 | 311 | ||
171 | # | 312 | # |
172 | # Floating point emulation | 313 | # Floating point emulation |
@@ -183,6 +324,8 @@ CONFIG_FPE_NWFPE=y | |||
183 | # Userspace binary formats | 324 | # Userspace binary formats |
184 | # | 325 | # |
185 | CONFIG_BINFMT_ELF=y | 326 | CONFIG_BINFMT_ELF=y |
327 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
328 | CONFIG_HAVE_AOUT=y | ||
186 | # CONFIG_BINFMT_AOUT is not set | 329 | # CONFIG_BINFMT_AOUT is not set |
187 | # CONFIG_BINFMT_MISC is not set | 330 | # CONFIG_BINFMT_MISC is not set |
188 | # CONFIG_ARTHUR is not set | 331 | # CONFIG_ARTHUR is not set |
@@ -191,8 +334,120 @@ CONFIG_BINFMT_ELF=y | |||
191 | # Power management options | 334 | # Power management options |
192 | # | 335 | # |
193 | CONFIG_PM=y | 336 | CONFIG_PM=y |
194 | # CONFIG_PM_LEGACY is not set | 337 | # CONFIG_PM_DEBUG is not set |
195 | # CONFIG_APM is not set | 338 | CONFIG_PM_SLEEP=y |
339 | CONFIG_SUSPEND=y | ||
340 | CONFIG_SUSPEND_FREEZER=y | ||
341 | # CONFIG_APM_EMULATION is not set | ||
342 | # CONFIG_PM_RUNTIME is not set | ||
343 | CONFIG_ARCH_SUSPEND_POSSIBLE=y | ||
344 | CONFIG_NET=y | ||
345 | |||
346 | # | ||
347 | # Networking options | ||
348 | # | ||
349 | # CONFIG_PACKET is not set | ||
350 | CONFIG_UNIX=y | ||
351 | CONFIG_XFRM=y | ||
352 | # CONFIG_XFRM_USER is not set | ||
353 | # CONFIG_XFRM_SUB_POLICY is not set | ||
354 | # CONFIG_XFRM_MIGRATE is not set | ||
355 | # CONFIG_XFRM_STATISTICS is not set | ||
356 | # CONFIG_NET_KEY is not set | ||
357 | CONFIG_INET=y | ||
358 | # CONFIG_IP_MULTICAST is not set | ||
359 | # CONFIG_IP_ADVANCED_ROUTER is not set | ||
360 | CONFIG_IP_FIB_HASH=y | ||
361 | # CONFIG_IP_PNP is not set | ||
362 | # CONFIG_NET_IPIP is not set | ||
363 | # CONFIG_NET_IPGRE is not set | ||
364 | # CONFIG_ARPD is not set | ||
365 | # CONFIG_SYN_COOKIES is not set | ||
366 | # CONFIG_INET_AH is not set | ||
367 | # CONFIG_INET_ESP is not set | ||
368 | # CONFIG_INET_IPCOMP is not set | ||
369 | # CONFIG_INET_XFRM_TUNNEL is not set | ||
370 | # CONFIG_INET_TUNNEL is not set | ||
371 | CONFIG_INET_XFRM_MODE_TRANSPORT=y | ||
372 | CONFIG_INET_XFRM_MODE_TUNNEL=y | ||
373 | CONFIG_INET_XFRM_MODE_BEET=y | ||
374 | CONFIG_INET_LRO=y | ||
375 | CONFIG_INET_DIAG=y | ||
376 | CONFIG_INET_TCP_DIAG=y | ||
377 | # CONFIG_TCP_CONG_ADVANCED is not set | ||
378 | CONFIG_TCP_CONG_CUBIC=y | ||
379 | CONFIG_DEFAULT_TCP_CONG="cubic" | ||
380 | # CONFIG_TCP_MD5SIG is not set | ||
381 | # CONFIG_IPV6 is not set | ||
382 | # CONFIG_NETWORK_SECMARK is not set | ||
383 | # CONFIG_NETFILTER is not set | ||
384 | # CONFIG_IP_DCCP is not set | ||
385 | # CONFIG_IP_SCTP is not set | ||
386 | # CONFIG_RDS is not set | ||
387 | # CONFIG_TIPC is not set | ||
388 | # CONFIG_ATM is not set | ||
389 | # CONFIG_BRIDGE is not set | ||
390 | # CONFIG_NET_DSA is not set | ||
391 | # CONFIG_VLAN_8021Q is not set | ||
392 | # CONFIG_DECNET is not set | ||
393 | # CONFIG_LLC2 is not set | ||
394 | # CONFIG_IPX is not set | ||
395 | # CONFIG_ATALK is not set | ||
396 | # CONFIG_X25 is not set | ||
397 | # CONFIG_LAPB is not set | ||
398 | # CONFIG_ECONET is not set | ||
399 | # CONFIG_WAN_ROUTER is not set | ||
400 | # CONFIG_PHONET is not set | ||
401 | # CONFIG_IEEE802154 is not set | ||
402 | # CONFIG_NET_SCHED is not set | ||
403 | # CONFIG_DCB is not set | ||
404 | |||
405 | # | ||
406 | # Network testing | ||
407 | # | ||
408 | # CONFIG_NET_PKTGEN is not set | ||
409 | # CONFIG_HAMRADIO is not set | ||
410 | # CONFIG_CAN is not set | ||
411 | CONFIG_IRDA=m | ||
412 | |||
413 | # | ||
414 | # IrDA protocols | ||
415 | # | ||
416 | CONFIG_IRLAN=m | ||
417 | CONFIG_IRNET=m | ||
418 | CONFIG_IRCOMM=m | ||
419 | # CONFIG_IRDA_ULTRA is not set | ||
420 | |||
421 | # | ||
422 | # IrDA options | ||
423 | # | ||
424 | # CONFIG_IRDA_CACHE_LAST_LSAP is not set | ||
425 | # CONFIG_IRDA_FAST_RR is not set | ||
426 | # CONFIG_IRDA_DEBUG is not set | ||
427 | |||
428 | # | ||
429 | # Infrared-port device drivers | ||
430 | # | ||
431 | |||
432 | # | ||
433 | # SIR device drivers | ||
434 | # | ||
435 | # CONFIG_IRTTY_SIR is not set | ||
436 | |||
437 | # | ||
438 | # Dongle support | ||
439 | # | ||
440 | |||
441 | # | ||
442 | # FIR device drivers | ||
443 | # | ||
444 | CONFIG_SA1100_FIR=m | ||
445 | # CONFIG_BT is not set | ||
446 | # CONFIG_AF_RXRPC is not set | ||
447 | # CONFIG_WIRELESS is not set | ||
448 | # CONFIG_WIMAX is not set | ||
449 | # CONFIG_RFKILL is not set | ||
450 | # CONFIG_NET_9P is not set | ||
196 | 451 | ||
197 | # | 452 | # |
198 | # Device Drivers | 453 | # Device Drivers |
@@ -201,15 +456,17 @@ CONFIG_PM=y | |||
201 | # | 456 | # |
202 | # Generic Driver Options | 457 | # Generic Driver Options |
203 | # | 458 | # |
459 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||
204 | CONFIG_STANDALONE=y | 460 | CONFIG_STANDALONE=y |
205 | CONFIG_PREVENT_FIRMWARE_BUILD=y | 461 | CONFIG_PREVENT_FIRMWARE_BUILD=y |
206 | # CONFIG_FW_LOADER is not set | 462 | CONFIG_FW_LOADER=y |
207 | 463 | CONFIG_FIRMWARE_IN_KERNEL=y | |
208 | # | 464 | CONFIG_EXTRA_FIRMWARE="" |
209 | # Memory Technology Devices (MTD) | 465 | # CONFIG_SYS_HYPERVISOR is not set |
210 | # | 466 | # CONFIG_CONNECTOR is not set |
211 | CONFIG_MTD=y | 467 | CONFIG_MTD=y |
212 | # CONFIG_MTD_DEBUG is not set | 468 | # CONFIG_MTD_DEBUG is not set |
469 | # CONFIG_MTD_TESTS is not set | ||
213 | # CONFIG_MTD_CONCAT is not set | 470 | # CONFIG_MTD_CONCAT is not set |
214 | CONFIG_MTD_PARTITIONS=y | 471 | CONFIG_MTD_PARTITIONS=y |
215 | CONFIG_MTD_REDBOOT_PARTS=y | 472 | CONFIG_MTD_REDBOOT_PARTS=y |
@@ -218,15 +475,20 @@ CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1 | |||
218 | # CONFIG_MTD_REDBOOT_PARTS_READONLY is not set | 475 | # CONFIG_MTD_REDBOOT_PARTS_READONLY is not set |
219 | # CONFIG_MTD_CMDLINE_PARTS is not set | 476 | # CONFIG_MTD_CMDLINE_PARTS is not set |
220 | # CONFIG_MTD_AFS_PARTS is not set | 477 | # CONFIG_MTD_AFS_PARTS is not set |
478 | # CONFIG_MTD_AR7_PARTS is not set | ||
221 | 479 | ||
222 | # | 480 | # |
223 | # User Modules And Translation Layers | 481 | # User Modules And Translation Layers |
224 | # | 482 | # |
225 | CONFIG_MTD_CHAR=y | 483 | CONFIG_MTD_CHAR=y |
484 | CONFIG_MTD_BLKDEVS=y | ||
226 | CONFIG_MTD_BLOCK=y | 485 | CONFIG_MTD_BLOCK=y |
227 | # CONFIG_FTL is not set | 486 | # CONFIG_FTL is not set |
228 | # CONFIG_NFTL is not set | 487 | # CONFIG_NFTL is not set |
229 | # CONFIG_INFTL is not set | 488 | # CONFIG_INFTL is not set |
489 | # CONFIG_RFD_FTL is not set | ||
490 | # CONFIG_SSFDC is not set | ||
491 | # CONFIG_MTD_OOPS is not set | ||
230 | 492 | ||
231 | # | 493 | # |
232 | # RAM/ROM/Flash chip drivers | 494 | # RAM/ROM/Flash chip drivers |
@@ -249,6 +511,7 @@ CONFIG_MTD_MAP_BANK_WIDTH_4=y | |||
249 | CONFIG_MTD_CFI_I2=y | 511 | CONFIG_MTD_CFI_I2=y |
250 | # CONFIG_MTD_CFI_I4 is not set | 512 | # CONFIG_MTD_CFI_I4 is not set |
251 | # CONFIG_MTD_CFI_I8 is not set | 513 | # CONFIG_MTD_CFI_I8 is not set |
514 | # CONFIG_MTD_OTP is not set | ||
252 | CONFIG_MTD_CFI_INTELEXT=y | 515 | CONFIG_MTD_CFI_INTELEXT=y |
253 | # CONFIG_MTD_CFI_AMDSTD is not set | 516 | # CONFIG_MTD_CFI_AMDSTD is not set |
254 | # CONFIG_MTD_CFI_STAA is not set | 517 | # CONFIG_MTD_CFI_STAA is not set |
@@ -265,7 +528,7 @@ CONFIG_MTD_CFI_UTIL=y | |||
265 | # CONFIG_MTD_PHYSMAP is not set | 528 | # CONFIG_MTD_PHYSMAP is not set |
266 | # CONFIG_MTD_ARM_INTEGRATOR is not set | 529 | # CONFIG_MTD_ARM_INTEGRATOR is not set |
267 | CONFIG_MTD_SA1100=y | 530 | CONFIG_MTD_SA1100=y |
268 | # CONFIG_MTD_EDB7312 is not set | 531 | # CONFIG_MTD_PLATRAM is not set |
269 | 532 | ||
270 | # | 533 | # |
271 | # Self-contained MTD device drivers | 534 | # Self-contained MTD device drivers |
@@ -273,7 +536,6 @@ CONFIG_MTD_SA1100=y | |||
273 | # CONFIG_MTD_SLRAM is not set | 536 | # CONFIG_MTD_SLRAM is not set |
274 | # CONFIG_MTD_PHRAM is not set | 537 | # CONFIG_MTD_PHRAM is not set |
275 | # CONFIG_MTD_MTDRAM is not set | 538 | # CONFIG_MTD_MTDRAM is not set |
276 | # CONFIG_MTD_BLKMTD is not set | ||
277 | # CONFIG_MTD_BLOCK2MTD is not set | 539 | # CONFIG_MTD_BLOCK2MTD is not set |
278 | 540 | ||
279 | # | 541 | # |
@@ -282,26 +544,21 @@ CONFIG_MTD_SA1100=y | |||
282 | # CONFIG_MTD_DOC2000 is not set | 544 | # CONFIG_MTD_DOC2000 is not set |
283 | # CONFIG_MTD_DOC2001 is not set | 545 | # CONFIG_MTD_DOC2001 is not set |
284 | # CONFIG_MTD_DOC2001PLUS is not set | 546 | # CONFIG_MTD_DOC2001PLUS is not set |
285 | |||
286 | # | ||
287 | # NAND Flash Device Drivers | ||
288 | # | ||
289 | # CONFIG_MTD_NAND is not set | 547 | # CONFIG_MTD_NAND is not set |
548 | # CONFIG_MTD_ONENAND is not set | ||
290 | 549 | ||
291 | # | 550 | # |
292 | # Parallel port support | 551 | # LPDDR flash memory drivers |
293 | # | 552 | # |
294 | # CONFIG_PARPORT is not set | 553 | # CONFIG_MTD_LPDDR is not set |
295 | 554 | ||
296 | # | 555 | # |
297 | # Plug and Play support | 556 | # UBI - Unsorted block images |
298 | # | 557 | # |
558 | # CONFIG_MTD_UBI is not set | ||
559 | # CONFIG_PARPORT is not set | ||
299 | # CONFIG_PNP is not set | 560 | # CONFIG_PNP is not set |
300 | 561 | CONFIG_BLK_DEV=y | |
301 | # | ||
302 | # Block devices | ||
303 | # | ||
304 | # CONFIG_BLK_DEV_XD is not set | ||
305 | # CONFIG_BLK_DEV_COW_COMMON is not set | 562 | # CONFIG_BLK_DEV_COW_COMMON is not set |
306 | CONFIG_BLK_DEV_LOOP=m | 563 | CONFIG_BLK_DEV_LOOP=m |
307 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set | 564 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set |
@@ -309,212 +566,58 @@ CONFIG_BLK_DEV_LOOP=m | |||
309 | CONFIG_BLK_DEV_RAM=y | 566 | CONFIG_BLK_DEV_RAM=y |
310 | CONFIG_BLK_DEV_RAM_COUNT=16 | 567 | CONFIG_BLK_DEV_RAM_COUNT=16 |
311 | CONFIG_BLK_DEV_RAM_SIZE=8192 | 568 | CONFIG_BLK_DEV_RAM_SIZE=8192 |
312 | CONFIG_BLK_DEV_INITRD=y | 569 | # CONFIG_BLK_DEV_XIP is not set |
313 | CONFIG_INITRAMFS_SOURCE="" | ||
314 | # CONFIG_CDROM_PKTCDVD is not set | 570 | # CONFIG_CDROM_PKTCDVD is not set |
315 | |||
316 | # | ||
317 | # IO Schedulers | ||
318 | # | ||
319 | CONFIG_IOSCHED_NOOP=y | ||
320 | CONFIG_IOSCHED_AS=y | ||
321 | CONFIG_IOSCHED_DEADLINE=y | ||
322 | CONFIG_IOSCHED_CFQ=y | ||
323 | # CONFIG_ATA_OVER_ETH is not set | 571 | # CONFIG_ATA_OVER_ETH is not set |
572 | # CONFIG_MG_DISK is not set | ||
573 | # CONFIG_MISC_DEVICES is not set | ||
574 | CONFIG_HAVE_IDE=y | ||
575 | CONFIG_IDE=y | ||
324 | 576 | ||
325 | # | 577 | # |
326 | # ATA/ATAPI/MFM/RLL support | 578 | # Please see Documentation/ide/ide.txt for help/info on IDE drives |
327 | # | ||
328 | CONFIG_IDE=m | ||
329 | CONFIG_BLK_DEV_IDE=m | ||
330 | |||
331 | # | ||
332 | # Please see Documentation/ide.txt for help/info on IDE drives | ||
333 | # | 579 | # |
334 | # CONFIG_BLK_DEV_IDE_SATA is not set | 580 | # CONFIG_BLK_DEV_IDE_SATA is not set |
335 | CONFIG_BLK_DEV_IDEDISK=m | 581 | CONFIG_IDE_GD=y |
336 | # CONFIG_IDEDISK_MULTI_MODE is not set | 582 | CONFIG_IDE_GD_ATA=y |
337 | # CONFIG_BLK_DEV_IDECS is not set | 583 | # CONFIG_IDE_GD_ATAPI is not set |
338 | CONFIG_BLK_DEV_IDECD=m | 584 | CONFIG_BLK_DEV_IDECS=y |
585 | # CONFIG_BLK_DEV_IDECD is not set | ||
339 | # CONFIG_BLK_DEV_IDETAPE is not set | 586 | # CONFIG_BLK_DEV_IDETAPE is not set |
340 | # CONFIG_BLK_DEV_IDEFLOPPY is not set | ||
341 | # CONFIG_IDE_TASK_IOCTL is not set | 587 | # CONFIG_IDE_TASK_IOCTL is not set |
588 | CONFIG_IDE_PROC_FS=y | ||
342 | 589 | ||
343 | # | 590 | # |
344 | # IDE chipset support/bugfixes | 591 | # IDE chipset support/bugfixes |
345 | # | 592 | # |
346 | CONFIG_IDE_GENERIC=m | 593 | # CONFIG_BLK_DEV_PLATFORM is not set |
347 | # CONFIG_IDE_ARM is not set | ||
348 | # CONFIG_IDE_CHIPSETS is not set | ||
349 | # CONFIG_BLK_DEV_IDEDMA is not set | 594 | # CONFIG_BLK_DEV_IDEDMA is not set |
350 | # CONFIG_IDEDMA_AUTO is not set | ||
351 | # CONFIG_BLK_DEV_HD is not set | ||
352 | 595 | ||
353 | # | 596 | # |
354 | # SCSI device support | 597 | # SCSI device support |
355 | # | 598 | # |
599 | # CONFIG_RAID_ATTRS is not set | ||
356 | # CONFIG_SCSI is not set | 600 | # CONFIG_SCSI is not set |
357 | 601 | # CONFIG_SCSI_DMA is not set | |
358 | # | 602 | # CONFIG_SCSI_NETLINK is not set |
359 | # Multi-device support (RAID and LVM) | 603 | # CONFIG_ATA is not set |
360 | # | ||
361 | # CONFIG_MD is not set | 604 | # CONFIG_MD is not set |
362 | |||
363 | # | ||
364 | # Fusion MPT device support | ||
365 | # | ||
366 | |||
367 | # | ||
368 | # IEEE 1394 (FireWire) support | ||
369 | # | ||
370 | |||
371 | # | ||
372 | # I2O device support | ||
373 | # | ||
374 | |||
375 | # | ||
376 | # Networking support | ||
377 | # | ||
378 | CONFIG_NET=y | ||
379 | |||
380 | # | ||
381 | # Networking options | ||
382 | # | ||
383 | # CONFIG_PACKET is not set | ||
384 | CONFIG_UNIX=y | ||
385 | # CONFIG_NET_KEY is not set | ||
386 | CONFIG_INET=y | ||
387 | # CONFIG_IP_MULTICAST is not set | ||
388 | # CONFIG_IP_ADVANCED_ROUTER is not set | ||
389 | # CONFIG_IP_PNP is not set | ||
390 | # CONFIG_NET_IPIP is not set | ||
391 | # CONFIG_NET_IPGRE is not set | ||
392 | # CONFIG_ARPD is not set | ||
393 | # CONFIG_SYN_COOKIES is not set | ||
394 | # CONFIG_INET_AH is not set | ||
395 | # CONFIG_INET_ESP is not set | ||
396 | # CONFIG_INET_IPCOMP is not set | ||
397 | # CONFIG_INET_TUNNEL is not set | ||
398 | # CONFIG_IP_TCPDIAG is not set | ||
399 | # CONFIG_IP_TCPDIAG_IPV6 is not set | ||
400 | # CONFIG_IPV6 is not set | ||
401 | # CONFIG_NETFILTER is not set | ||
402 | |||
403 | # | ||
404 | # SCTP Configuration (EXPERIMENTAL) | ||
405 | # | ||
406 | # CONFIG_IP_SCTP is not set | ||
407 | # CONFIG_ATM is not set | ||
408 | # CONFIG_BRIDGE is not set | ||
409 | # CONFIG_VLAN_8021Q is not set | ||
410 | # CONFIG_DECNET is not set | ||
411 | # CONFIG_LLC2 is not set | ||
412 | # CONFIG_IPX is not set | ||
413 | # CONFIG_ATALK is not set | ||
414 | # CONFIG_X25 is not set | ||
415 | # CONFIG_LAPB is not set | ||
416 | # CONFIG_NET_DIVERT is not set | ||
417 | # CONFIG_ECONET is not set | ||
418 | # CONFIG_WAN_ROUTER is not set | ||
419 | |||
420 | # | ||
421 | # QoS and/or fair queueing | ||
422 | # | ||
423 | # CONFIG_NET_SCHED is not set | ||
424 | # CONFIG_NET_CLS_ROUTE is not set | ||
425 | |||
426 | # | ||
427 | # Network testing | ||
428 | # | ||
429 | # CONFIG_NET_PKTGEN is not set | ||
430 | # CONFIG_NETPOLL is not set | ||
431 | # CONFIG_NET_POLL_CONTROLLER is not set | ||
432 | # CONFIG_HAMRADIO is not set | ||
433 | CONFIG_IRDA=m | ||
434 | |||
435 | # | ||
436 | # IrDA protocols | ||
437 | # | ||
438 | CONFIG_IRLAN=m | ||
439 | CONFIG_IRNET=m | ||
440 | CONFIG_IRCOMM=m | ||
441 | # CONFIG_IRDA_ULTRA is not set | ||
442 | |||
443 | # | ||
444 | # IrDA options | ||
445 | # | ||
446 | # CONFIG_IRDA_CACHE_LAST_LSAP is not set | ||
447 | # CONFIG_IRDA_FAST_RR is not set | ||
448 | # CONFIG_IRDA_DEBUG is not set | ||
449 | |||
450 | # | ||
451 | # Infrared-port device drivers | ||
452 | # | ||
453 | |||
454 | # | ||
455 | # SIR device drivers | ||
456 | # | ||
457 | # CONFIG_IRTTY_SIR is not set | ||
458 | |||
459 | # | ||
460 | # Dongle support | ||
461 | # | ||
462 | |||
463 | # | ||
464 | # Old SIR device drivers | ||
465 | # | ||
466 | # CONFIG_IRPORT_SIR is not set | ||
467 | |||
468 | # | ||
469 | # Old Serial dongle support | ||
470 | # | ||
471 | |||
472 | # | ||
473 | # FIR device drivers | ||
474 | # | ||
475 | # CONFIG_NSC_FIR is not set | ||
476 | # CONFIG_WINBOND_FIR is not set | ||
477 | # CONFIG_SMC_IRCC_FIR is not set | ||
478 | # CONFIG_ALI_FIR is not set | ||
479 | CONFIG_SA1100_FIR=m | ||
480 | # CONFIG_VIA_FIR is not set | ||
481 | # CONFIG_BT is not set | ||
482 | CONFIG_NETDEVICES=y | 605 | CONFIG_NETDEVICES=y |
483 | # CONFIG_DUMMY is not set | 606 | # CONFIG_DUMMY is not set |
484 | # CONFIG_BONDING is not set | 607 | # CONFIG_BONDING is not set |
608 | # CONFIG_MACVLAN is not set | ||
485 | # CONFIG_EQUALIZER is not set | 609 | # CONFIG_EQUALIZER is not set |
486 | # CONFIG_TUN is not set | 610 | # CONFIG_TUN is not set |
487 | 611 | # CONFIG_VETH is not set | |
488 | # | ||
489 | # ARCnet devices | ||
490 | # | ||
491 | # CONFIG_ARCNET is not set | 612 | # CONFIG_ARCNET is not set |
492 | |||
493 | # | ||
494 | # Ethernet (10 or 100Mbit) | ||
495 | # | ||
496 | # CONFIG_NET_ETHERNET is not set | 613 | # CONFIG_NET_ETHERNET is not set |
497 | 614 | # CONFIG_NETDEV_1000 is not set | |
498 | # | 615 | # CONFIG_NETDEV_10000 is not set |
499 | # Ethernet (1000 Mbit) | ||
500 | # | ||
501 | |||
502 | # | ||
503 | # Ethernet (10000 Mbit) | ||
504 | # | ||
505 | |||
506 | # | ||
507 | # Token Ring devices | ||
508 | # | ||
509 | # CONFIG_TR is not set | 616 | # CONFIG_TR is not set |
617 | # CONFIG_WLAN is not set | ||
510 | 618 | ||
511 | # | 619 | # |
512 | # Wireless LAN (non-hamradio) | 620 | # Enable WiMAX (Networking options) to see the WiMAX drivers |
513 | # | ||
514 | # CONFIG_NET_RADIO is not set | ||
515 | |||
516 | # | ||
517 | # PCMCIA network device support | ||
518 | # | 621 | # |
519 | CONFIG_NET_PCMCIA=y | 622 | CONFIG_NET_PCMCIA=y |
520 | # CONFIG_PCMCIA_3C589 is not set | 623 | # CONFIG_PCMCIA_3C589 is not set |
@@ -525,10 +628,6 @@ CONFIG_PCMCIA_PCNET=y | |||
525 | # CONFIG_PCMCIA_SMC91C92 is not set | 628 | # CONFIG_PCMCIA_SMC91C92 is not set |
526 | # CONFIG_PCMCIA_XIRC2PS is not set | 629 | # CONFIG_PCMCIA_XIRC2PS is not set |
527 | # CONFIG_PCMCIA_AXNET is not set | 630 | # CONFIG_PCMCIA_AXNET is not set |
528 | |||
529 | # | ||
530 | # Wan interfaces | ||
531 | # | ||
532 | # CONFIG_WAN is not set | 631 | # CONFIG_WAN is not set |
533 | CONFIG_PPP=m | 632 | CONFIG_PPP=m |
534 | # CONFIG_PPP_MULTILINK is not set | 633 | # CONFIG_PPP_MULTILINK is not set |
@@ -537,20 +636,23 @@ CONFIG_PPP_ASYNC=m | |||
537 | # CONFIG_PPP_SYNC_TTY is not set | 636 | # CONFIG_PPP_SYNC_TTY is not set |
538 | CONFIG_PPP_DEFLATE=m | 637 | CONFIG_PPP_DEFLATE=m |
539 | CONFIG_PPP_BSDCOMP=m | 638 | CONFIG_PPP_BSDCOMP=m |
639 | # CONFIG_PPP_MPPE is not set | ||
540 | # CONFIG_PPPOE is not set | 640 | # CONFIG_PPPOE is not set |
641 | # CONFIG_PPPOL2TP is not set | ||
541 | # CONFIG_SLIP is not set | 642 | # CONFIG_SLIP is not set |
542 | # CONFIG_SHAPER is not set | 643 | CONFIG_SLHC=m |
543 | # CONFIG_NETCONSOLE is not set | 644 | # CONFIG_NETCONSOLE is not set |
544 | 645 | # CONFIG_NETPOLL is not set | |
545 | # | 646 | # CONFIG_NET_POLL_CONTROLLER is not set |
546 | # ISDN subsystem | ||
547 | # | ||
548 | # CONFIG_ISDN is not set | 647 | # CONFIG_ISDN is not set |
648 | # CONFIG_PHONE is not set | ||
549 | 649 | ||
550 | # | 650 | # |
551 | # Input device support | 651 | # Input device support |
552 | # | 652 | # |
553 | CONFIG_INPUT=y | 653 | CONFIG_INPUT=y |
654 | # CONFIG_INPUT_FF_MEMLESS is not set | ||
655 | # CONFIG_INPUT_POLLDEV is not set | ||
554 | 656 | ||
555 | # | 657 | # |
556 | # Userland interfaces | 658 | # Userland interfaces |
@@ -560,7 +662,6 @@ CONFIG_INPUT_MOUSEDEV_PSAUX=y | |||
560 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 | 662 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 |
561 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | 663 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 |
562 | # CONFIG_INPUT_JOYDEV is not set | 664 | # CONFIG_INPUT_JOYDEV is not set |
563 | # CONFIG_INPUT_TSDEV is not set | ||
564 | # CONFIG_INPUT_EVDEV is not set | 665 | # CONFIG_INPUT_EVDEV is not set |
565 | # CONFIG_INPUT_EVBUG is not set | 666 | # CONFIG_INPUT_EVBUG is not set |
566 | 667 | ||
@@ -568,47 +669,42 @@ CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | |||
568 | # Input Device Drivers | 669 | # Input Device Drivers |
569 | # | 670 | # |
570 | CONFIG_INPUT_KEYBOARD=y | 671 | CONFIG_INPUT_KEYBOARD=y |
571 | CONFIG_KEYBOARD_ATKBD=y | 672 | # CONFIG_KEYBOARD_ATKBD is not set |
572 | # CONFIG_KEYBOARD_SUNKBD is not set | ||
573 | # CONFIG_KEYBOARD_LKKBD is not set | 673 | # CONFIG_KEYBOARD_LKKBD is not set |
574 | # CONFIG_KEYBOARD_XTKBD is not set | 674 | CONFIG_KEYBOARD_GPIO=y |
675 | # CONFIG_KEYBOARD_MATRIX is not set | ||
575 | # CONFIG_KEYBOARD_NEWTON is not set | 676 | # CONFIG_KEYBOARD_NEWTON is not set |
576 | CONFIG_INPUT_MOUSE=y | 677 | # CONFIG_KEYBOARD_OPENCORES is not set |
577 | CONFIG_MOUSE_PS2=y | 678 | # CONFIG_KEYBOARD_STOWAWAY is not set |
578 | # CONFIG_MOUSE_SERIAL is not set | 679 | # CONFIG_KEYBOARD_SUNKBD is not set |
579 | # CONFIG_MOUSE_INPORT is not set | 680 | # CONFIG_KEYBOARD_XTKBD is not set |
580 | # CONFIG_MOUSE_LOGIBM is not set | 681 | # CONFIG_INPUT_MOUSE is not set |
581 | # CONFIG_MOUSE_PC110PAD is not set | ||
582 | # CONFIG_MOUSE_VSXXXAA is not set | ||
583 | # CONFIG_INPUT_JOYSTICK is not set | 682 | # CONFIG_INPUT_JOYSTICK is not set |
683 | # CONFIG_INPUT_TABLET is not set | ||
584 | # CONFIG_INPUT_TOUCHSCREEN is not set | 684 | # CONFIG_INPUT_TOUCHSCREEN is not set |
585 | # CONFIG_INPUT_MISC is not set | 685 | # CONFIG_INPUT_MISC is not set |
586 | 686 | ||
587 | # | 687 | # |
588 | # Hardware I/O ports | 688 | # Hardware I/O ports |
589 | # | 689 | # |
590 | CONFIG_SERIO=y | 690 | # CONFIG_SERIO is not set |
591 | CONFIG_SERIO_SERPORT=y | ||
592 | CONFIG_SERIO_LIBPS2=y | ||
593 | # CONFIG_SERIO_RAW is not set | ||
594 | # CONFIG_GAMEPORT is not set | 691 | # CONFIG_GAMEPORT is not set |
595 | CONFIG_SOUND_GAMEPORT=y | ||
596 | 692 | ||
597 | # | 693 | # |
598 | # Character devices | 694 | # Character devices |
599 | # | 695 | # |
600 | CONFIG_VT=y | 696 | CONFIG_VT=y |
697 | CONFIG_CONSOLE_TRANSLATIONS=y | ||
601 | CONFIG_VT_CONSOLE=y | 698 | CONFIG_VT_CONSOLE=y |
602 | CONFIG_HW_CONSOLE=y | 699 | CONFIG_HW_CONSOLE=y |
700 | # CONFIG_VT_HW_CONSOLE_BINDING is not set | ||
701 | CONFIG_DEVKMEM=y | ||
603 | # CONFIG_SERIAL_NONSTANDARD is not set | 702 | # CONFIG_SERIAL_NONSTANDARD is not set |
604 | 703 | ||
605 | # | 704 | # |
606 | # Serial drivers | 705 | # Serial drivers |
607 | # | 706 | # |
608 | CONFIG_SERIAL_8250=m | 707 | # CONFIG_SERIAL_8250 is not set |
609 | # CONFIG_SERIAL_8250_CS is not set | ||
610 | CONFIG_SERIAL_8250_NR_UARTS=4 | ||
611 | # CONFIG_SERIAL_8250_EXTENDED is not set | ||
612 | 708 | ||
613 | # | 709 | # |
614 | # Non-8250 serial port support | 710 | # Non-8250 serial port support |
@@ -618,71 +714,125 @@ CONFIG_SERIAL_SA1100_CONSOLE=y | |||
618 | CONFIG_SERIAL_CORE=y | 714 | CONFIG_SERIAL_CORE=y |
619 | CONFIG_SERIAL_CORE_CONSOLE=y | 715 | CONFIG_SERIAL_CORE_CONSOLE=y |
620 | CONFIG_UNIX98_PTYS=y | 716 | CONFIG_UNIX98_PTYS=y |
717 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set | ||
621 | CONFIG_LEGACY_PTYS=y | 718 | CONFIG_LEGACY_PTYS=y |
622 | CONFIG_LEGACY_PTY_COUNT=256 | 719 | CONFIG_LEGACY_PTY_COUNT=256 |
720 | # CONFIG_IPMI_HANDLER is not set | ||
721 | # CONFIG_HW_RANDOM is not set | ||
722 | # CONFIG_DTLK is not set | ||
723 | # CONFIG_R3964 is not set | ||
623 | 724 | ||
624 | # | 725 | # |
625 | # IPMI | 726 | # PCMCIA character devices |
626 | # | 727 | # |
627 | # CONFIG_IPMI_HANDLER is not set | 728 | # CONFIG_SYNCLINK_CS is not set |
729 | # CONFIG_CARDMAN_4000 is not set | ||
730 | # CONFIG_CARDMAN_4040 is not set | ||
731 | # CONFIG_IPWIRELESS is not set | ||
732 | # CONFIG_RAW_DRIVER is not set | ||
733 | # CONFIG_TCG_TPM is not set | ||
734 | CONFIG_DEVPORT=y | ||
735 | # CONFIG_I2C is not set | ||
736 | # CONFIG_SPI is not set | ||
628 | 737 | ||
629 | # | 738 | # |
630 | # Watchdog Cards | 739 | # PPS support |
631 | # | 740 | # |
632 | # CONFIG_WATCHDOG is not set | 741 | # CONFIG_PPS is not set |
633 | # CONFIG_NVRAM is not set | 742 | CONFIG_ARCH_REQUIRE_GPIOLIB=y |
634 | # CONFIG_RTC is not set | 743 | CONFIG_GPIOLIB=y |
635 | # CONFIG_DTLK is not set | 744 | # CONFIG_GPIO_SYSFS is not set |
636 | # CONFIG_R3964 is not set | ||
637 | 745 | ||
638 | # | 746 | # |
639 | # Ftape, the floppy tape device driver | 747 | # Memory mapped GPIO expanders: |
640 | # | 748 | # |
641 | # CONFIG_DRM is not set | ||
642 | 749 | ||
643 | # | 750 | # |
644 | # PCMCIA character devices | 751 | # I2C GPIO expanders: |
645 | # | 752 | # |
646 | # CONFIG_SYNCLINK_CS is not set | ||
647 | # CONFIG_RAW_DRIVER is not set | ||
648 | 753 | ||
649 | # | 754 | # |
650 | # TPM devices | 755 | # PCI GPIO expanders: |
651 | # | 756 | # |
652 | 757 | ||
653 | # | 758 | # |
654 | # I2C support | 759 | # SPI GPIO expanders: |
655 | # | 760 | # |
656 | # CONFIG_I2C is not set | ||
657 | 761 | ||
658 | # | 762 | # |
659 | # Misc devices | 763 | # AC97 GPIO expanders: |
660 | # | 764 | # |
765 | # CONFIG_W1 is not set | ||
766 | # CONFIG_POWER_SUPPLY is not set | ||
767 | # CONFIG_HWMON is not set | ||
768 | # CONFIG_THERMAL is not set | ||
769 | # CONFIG_WATCHDOG is not set | ||
770 | CONFIG_SSB_POSSIBLE=y | ||
661 | 771 | ||
662 | # | 772 | # |
663 | # Multimedia devices | 773 | # Sonics Silicon Backplane |
664 | # | 774 | # |
665 | # CONFIG_VIDEO_DEV is not set | 775 | # CONFIG_SSB is not set |
666 | 776 | ||
667 | # | 777 | # |
668 | # Digital Video Broadcasting Devices | 778 | # Multifunction device drivers |
669 | # | 779 | # |
670 | # CONFIG_DVB is not set | 780 | # CONFIG_MFD_CORE is not set |
781 | # CONFIG_MFD_SM501 is not set | ||
782 | # CONFIG_MFD_ASIC3 is not set | ||
783 | CONFIG_HTC_EGPIO=y | ||
784 | # CONFIG_HTC_PASIC3 is not set | ||
785 | # CONFIG_MFD_TMIO is not set | ||
786 | # CONFIG_MFD_T7L66XB is not set | ||
787 | # CONFIG_MFD_TC6387XB is not set | ||
788 | # CONFIG_MFD_TC6393XB is not set | ||
789 | |||
790 | # | ||
791 | # Multimedia Capabilities Port drivers | ||
792 | # | ||
793 | # CONFIG_MCP_SA11X0 is not set | ||
794 | # CONFIG_REGULATOR is not set | ||
795 | # CONFIG_MEDIA_SUPPORT is not set | ||
671 | 796 | ||
672 | # | 797 | # |
673 | # Graphics support | 798 | # Graphics support |
674 | # | 799 | # |
800 | # CONFIG_VGASTATE is not set | ||
801 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set | ||
675 | CONFIG_FB=y | 802 | CONFIG_FB=y |
803 | # CONFIG_FIRMWARE_EDID is not set | ||
804 | # CONFIG_FB_DDC is not set | ||
805 | # CONFIG_FB_BOOT_VESA_SUPPORT is not set | ||
676 | CONFIG_FB_CFB_FILLRECT=y | 806 | CONFIG_FB_CFB_FILLRECT=y |
677 | CONFIG_FB_CFB_COPYAREA=y | 807 | CONFIG_FB_CFB_COPYAREA=y |
678 | CONFIG_FB_CFB_IMAGEBLIT=y | 808 | CONFIG_FB_CFB_IMAGEBLIT=y |
679 | CONFIG_FB_SOFT_CURSOR=y | 809 | # CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set |
810 | # CONFIG_FB_SYS_FILLRECT is not set | ||
811 | # CONFIG_FB_SYS_COPYAREA is not set | ||
812 | # CONFIG_FB_SYS_IMAGEBLIT is not set | ||
813 | # CONFIG_FB_FOREIGN_ENDIAN is not set | ||
814 | # CONFIG_FB_SYS_FOPS is not set | ||
815 | # CONFIG_FB_SVGALIB is not set | ||
680 | # CONFIG_FB_MACMODES is not set | 816 | # CONFIG_FB_MACMODES is not set |
817 | # CONFIG_FB_BACKLIGHT is not set | ||
681 | # CONFIG_FB_MODE_HELPERS is not set | 818 | # CONFIG_FB_MODE_HELPERS is not set |
682 | # CONFIG_FB_TILEBLITTING is not set | 819 | # CONFIG_FB_TILEBLITTING is not set |
820 | |||
821 | # | ||
822 | # Frame buffer hardware drivers | ||
823 | # | ||
683 | CONFIG_FB_SA1100=y | 824 | CONFIG_FB_SA1100=y |
684 | # CONFIG_FB_S1D13XXX is not set | 825 | # CONFIG_FB_S1D13XXX is not set |
685 | # CONFIG_FB_VIRTUAL is not set | 826 | # CONFIG_FB_VIRTUAL is not set |
827 | # CONFIG_FB_METRONOME is not set | ||
828 | # CONFIG_FB_MB862XX is not set | ||
829 | # CONFIG_FB_BROADSHEET is not set | ||
830 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
831 | |||
832 | # | ||
833 | # Display device support | ||
834 | # | ||
835 | # CONFIG_DISPLAY_SUPPORT is not set | ||
686 | 836 | ||
687 | # | 837 | # |
688 | # Console display driver support | 838 | # Console display driver support |
@@ -691,65 +841,54 @@ CONFIG_FB_SA1100=y | |||
691 | # CONFIG_MDA_CONSOLE is not set | 841 | # CONFIG_MDA_CONSOLE is not set |
692 | CONFIG_DUMMY_CONSOLE=y | 842 | CONFIG_DUMMY_CONSOLE=y |
693 | # CONFIG_FRAMEBUFFER_CONSOLE is not set | 843 | # CONFIG_FRAMEBUFFER_CONSOLE is not set |
694 | |||
695 | # | ||
696 | # Logo configuration | ||
697 | # | ||
698 | # CONFIG_LOGO is not set | 844 | # CONFIG_LOGO is not set |
699 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | 845 | # CONFIG_SOUND is not set |
700 | 846 | # CONFIG_HID_SUPPORT is not set | |
701 | # | 847 | # CONFIG_USB_SUPPORT is not set |
702 | # Sound | 848 | # CONFIG_MMC is not set |
703 | # | 849 | # CONFIG_MEMSTICK is not set |
704 | CONFIG_SOUND=y | 850 | # CONFIG_NEW_LEDS is not set |
705 | 851 | # CONFIG_ACCESSIBILITY is not set | |
706 | # | 852 | CONFIG_RTC_LIB=y |
707 | # Advanced Linux Sound Architecture | 853 | # CONFIG_RTC_CLASS is not set |
708 | # | 854 | # CONFIG_DMADEVICES is not set |
709 | # CONFIG_SND is not set | 855 | # CONFIG_AUXDISPLAY is not set |
710 | 856 | # CONFIG_UIO is not set | |
711 | # | ||
712 | # Open Sound System | ||
713 | # | ||
714 | # CONFIG_SOUND_PRIME is not set | ||
715 | |||
716 | # | ||
717 | # USB support | ||
718 | # | ||
719 | CONFIG_USB_ARCH_HAS_HCD=y | ||
720 | # CONFIG_USB_ARCH_HAS_OHCI is not set | ||
721 | # CONFIG_USB is not set | ||
722 | 857 | ||
723 | # | 858 | # |
724 | # USB Gadget Support | 859 | # TI VLYNQ |
725 | # | 860 | # |
726 | # CONFIG_USB_GADGET is not set | 861 | # CONFIG_STAGING is not set |
727 | |||
728 | # | ||
729 | # MMC/SD Card support | ||
730 | # | ||
731 | # CONFIG_MMC is not set | ||
732 | 862 | ||
733 | # | 863 | # |
734 | # File systems | 864 | # File systems |
735 | # | 865 | # |
736 | CONFIG_EXT2_FS=y | 866 | CONFIG_EXT2_FS=y |
737 | # CONFIG_EXT2_FS_XATTR is not set | 867 | # CONFIG_EXT2_FS_XATTR is not set |
868 | # CONFIG_EXT2_FS_XIP is not set | ||
738 | # CONFIG_EXT3_FS is not set | 869 | # CONFIG_EXT3_FS is not set |
739 | # CONFIG_JBD is not set | 870 | # CONFIG_EXT4_FS is not set |
740 | # CONFIG_REISERFS_FS is not set | 871 | # CONFIG_REISERFS_FS is not set |
741 | # CONFIG_JFS_FS is not set | 872 | # CONFIG_JFS_FS is not set |
742 | 873 | # CONFIG_FS_POSIX_ACL is not set | |
743 | # | ||
744 | # XFS support | ||
745 | # | ||
746 | # CONFIG_XFS_FS is not set | 874 | # CONFIG_XFS_FS is not set |
747 | # CONFIG_MINIX_FS is not set | 875 | # CONFIG_OCFS2_FS is not set |
748 | # CONFIG_ROMFS_FS is not set | 876 | # CONFIG_BTRFS_FS is not set |
749 | # CONFIG_QUOTA is not set | 877 | # CONFIG_NILFS2_FS is not set |
878 | CONFIG_FILE_LOCKING=y | ||
879 | CONFIG_FSNOTIFY=y | ||
750 | CONFIG_DNOTIFY=y | 880 | CONFIG_DNOTIFY=y |
881 | # CONFIG_INOTIFY is not set | ||
882 | CONFIG_INOTIFY_USER=y | ||
883 | # CONFIG_QUOTA is not set | ||
751 | # CONFIG_AUTOFS_FS is not set | 884 | # CONFIG_AUTOFS_FS is not set |
752 | # CONFIG_AUTOFS4_FS is not set | 885 | # CONFIG_AUTOFS4_FS is not set |
886 | # CONFIG_FUSE_FS is not set | ||
887 | |||
888 | # | ||
889 | # Caches | ||
890 | # | ||
891 | # CONFIG_FSCACHE is not set | ||
753 | 892 | ||
754 | # | 893 | # |
755 | # CD-ROM/DVD Filesystems | 894 | # CD-ROM/DVD Filesystems |
@@ -771,16 +910,13 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | |||
771 | # Pseudo filesystems | 910 | # Pseudo filesystems |
772 | # | 911 | # |
773 | CONFIG_PROC_FS=y | 912 | CONFIG_PROC_FS=y |
913 | CONFIG_PROC_SYSCTL=y | ||
914 | CONFIG_PROC_PAGE_MONITOR=y | ||
774 | CONFIG_SYSFS=y | 915 | CONFIG_SYSFS=y |
775 | # CONFIG_DEVFS_FS is not set | ||
776 | # CONFIG_DEVPTS_FS_XATTR is not set | ||
777 | # CONFIG_TMPFS is not set | 916 | # CONFIG_TMPFS is not set |
778 | # CONFIG_HUGETLB_PAGE is not set | 917 | # CONFIG_HUGETLB_PAGE is not set |
779 | CONFIG_RAMFS=y | 918 | # CONFIG_CONFIGFS_FS is not set |
780 | 919 | CONFIG_MISC_FILESYSTEMS=y | |
781 | # | ||
782 | # Miscellaneous filesystems | ||
783 | # | ||
784 | # CONFIG_ADFS_FS is not set | 920 | # CONFIG_ADFS_FS is not set |
785 | # CONFIG_AFFS_FS is not set | 921 | # CONFIG_AFFS_FS is not set |
786 | # CONFIG_HFS_FS is not set | 922 | # CONFIG_HFS_FS is not set |
@@ -788,34 +924,37 @@ CONFIG_RAMFS=y | |||
788 | # CONFIG_BEFS_FS is not set | 924 | # CONFIG_BEFS_FS is not set |
789 | # CONFIG_BFS_FS is not set | 925 | # CONFIG_BFS_FS is not set |
790 | # CONFIG_EFS_FS is not set | 926 | # CONFIG_EFS_FS is not set |
791 | # CONFIG_JFFS_FS is not set | ||
792 | CONFIG_JFFS2_FS=y | 927 | CONFIG_JFFS2_FS=y |
793 | CONFIG_JFFS2_FS_DEBUG=0 | 928 | CONFIG_JFFS2_FS_DEBUG=0 |
794 | # CONFIG_JFFS2_FS_NAND is not set | 929 | CONFIG_JFFS2_FS_WRITEBUFFER=y |
795 | # CONFIG_JFFS2_FS_NOR_ECC is not set | 930 | # CONFIG_JFFS2_FS_WBUF_VERIFY is not set |
931 | # CONFIG_JFFS2_SUMMARY is not set | ||
932 | # CONFIG_JFFS2_FS_XATTR is not set | ||
796 | # CONFIG_JFFS2_COMPRESSION_OPTIONS is not set | 933 | # CONFIG_JFFS2_COMPRESSION_OPTIONS is not set |
797 | CONFIG_JFFS2_ZLIB=y | 934 | CONFIG_JFFS2_ZLIB=y |
935 | # CONFIG_JFFS2_LZO is not set | ||
798 | CONFIG_JFFS2_RTIME=y | 936 | CONFIG_JFFS2_RTIME=y |
799 | # CONFIG_JFFS2_RUBIN is not set | 937 | # CONFIG_JFFS2_RUBIN is not set |
800 | CONFIG_CRAMFS=m | 938 | CONFIG_CRAMFS=m |
939 | # CONFIG_SQUASHFS is not set | ||
801 | # CONFIG_VXFS_FS is not set | 940 | # CONFIG_VXFS_FS is not set |
941 | # CONFIG_MINIX_FS is not set | ||
942 | # CONFIG_OMFS_FS is not set | ||
802 | # CONFIG_HPFS_FS is not set | 943 | # CONFIG_HPFS_FS is not set |
803 | # CONFIG_QNX4FS_FS is not set | 944 | # CONFIG_QNX4FS_FS is not set |
945 | # CONFIG_ROMFS_FS is not set | ||
804 | # CONFIG_SYSV_FS is not set | 946 | # CONFIG_SYSV_FS is not set |
805 | # CONFIG_UFS_FS is not set | 947 | # CONFIG_UFS_FS is not set |
806 | 948 | CONFIG_NETWORK_FILESYSTEMS=y | |
807 | # | ||
808 | # Network File Systems | ||
809 | # | ||
810 | CONFIG_NFS_FS=y | 949 | CONFIG_NFS_FS=y |
811 | # CONFIG_NFS_V3 is not set | 950 | # CONFIG_NFS_V3 is not set |
812 | # CONFIG_NFS_V4 is not set | 951 | # CONFIG_NFS_V4 is not set |
813 | # CONFIG_NFS_DIRECTIO is not set | ||
814 | CONFIG_NFSD=m | 952 | CONFIG_NFSD=m |
815 | # CONFIG_NFSD_V3 is not set | 953 | # CONFIG_NFSD_V3 is not set |
816 | CONFIG_NFSD_TCP=y | 954 | # CONFIG_NFSD_V4 is not set |
817 | CONFIG_LOCKD=y | 955 | CONFIG_LOCKD=y |
818 | CONFIG_EXPORTFS=m | 956 | CONFIG_EXPORTFS=m |
957 | CONFIG_NFS_COMMON=y | ||
819 | CONFIG_SUNRPC=y | 958 | CONFIG_SUNRPC=y |
820 | # CONFIG_RPCSEC_GSS_KRB5 is not set | 959 | # CONFIG_RPCSEC_GSS_KRB5 is not set |
821 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | 960 | # CONFIG_RPCSEC_GSS_SPKM3 is not set |
@@ -831,10 +970,6 @@ CONFIG_SMB_FS=m | |||
831 | # | 970 | # |
832 | # CONFIG_PARTITION_ADVANCED is not set | 971 | # CONFIG_PARTITION_ADVANCED is not set |
833 | CONFIG_MSDOS_PARTITION=y | 972 | CONFIG_MSDOS_PARTITION=y |
834 | |||
835 | # | ||
836 | # Native Language Support | ||
837 | # | ||
838 | CONFIG_NLS=y | 973 | CONFIG_NLS=y |
839 | CONFIG_NLS_DEFAULT="iso8859-1" | 974 | CONFIG_NLS_DEFAULT="iso8859-1" |
840 | # CONFIG_NLS_CODEPAGE_437 is not set | 975 | # CONFIG_NLS_CODEPAGE_437 is not set |
@@ -875,20 +1010,34 @@ CONFIG_NLS_DEFAULT="iso8859-1" | |||
875 | # CONFIG_NLS_KOI8_R is not set | 1010 | # CONFIG_NLS_KOI8_R is not set |
876 | # CONFIG_NLS_KOI8_U is not set | 1011 | # CONFIG_NLS_KOI8_U is not set |
877 | # CONFIG_NLS_UTF8 is not set | 1012 | # CONFIG_NLS_UTF8 is not set |
878 | 1013 | # CONFIG_DLM is not set | |
879 | # | ||
880 | # Profiling support | ||
881 | # | ||
882 | # CONFIG_PROFILING is not set | ||
883 | 1014 | ||
884 | # | 1015 | # |
885 | # Kernel hacking | 1016 | # Kernel hacking |
886 | # | 1017 | # |
887 | # CONFIG_PRINTK_TIME is not set | 1018 | # CONFIG_PRINTK_TIME is not set |
1019 | CONFIG_ENABLE_WARN_DEPRECATED=y | ||
1020 | CONFIG_ENABLE_MUST_CHECK=y | ||
1021 | CONFIG_FRAME_WARN=1024 | ||
1022 | # CONFIG_MAGIC_SYSRQ is not set | ||
1023 | # CONFIG_STRIP_ASM_SYMS is not set | ||
1024 | # CONFIG_UNUSED_SYMBOLS is not set | ||
1025 | # CONFIG_DEBUG_FS is not set | ||
1026 | # CONFIG_HEADERS_CHECK is not set | ||
888 | # CONFIG_DEBUG_KERNEL is not set | 1027 | # CONFIG_DEBUG_KERNEL is not set |
889 | CONFIG_LOG_BUF_SHIFT=14 | 1028 | # CONFIG_SLUB_DEBUG_ON is not set |
1029 | # CONFIG_SLUB_STATS is not set | ||
890 | CONFIG_DEBUG_BUGVERBOSE=y | 1030 | CONFIG_DEBUG_BUGVERBOSE=y |
1031 | CONFIG_DEBUG_MEMORY_INIT=y | ||
891 | CONFIG_FRAME_POINTER=y | 1032 | CONFIG_FRAME_POINTER=y |
1033 | # CONFIG_RCU_CPU_STALL_DETECTOR is not set | ||
1034 | # CONFIG_LATENCYTOP is not set | ||
1035 | # CONFIG_SYSCTL_SYSCALL_CHECK is not set | ||
1036 | CONFIG_HAVE_FUNCTION_TRACER=y | ||
1037 | CONFIG_TRACING_SUPPORT=y | ||
1038 | # CONFIG_FTRACE is not set | ||
1039 | # CONFIG_SAMPLES is not set | ||
1040 | CONFIG_HAVE_ARCH_KGDB=y | ||
892 | # CONFIG_DEBUG_USER is not set | 1041 | # CONFIG_DEBUG_USER is not set |
893 | 1042 | ||
894 | # | 1043 | # |
@@ -896,21 +1045,120 @@ CONFIG_FRAME_POINTER=y | |||
896 | # | 1045 | # |
897 | # CONFIG_KEYS is not set | 1046 | # CONFIG_KEYS is not set |
898 | # CONFIG_SECURITY is not set | 1047 | # CONFIG_SECURITY is not set |
1048 | # CONFIG_SECURITYFS is not set | ||
1049 | # CONFIG_SECURITY_FILE_CAPABILITIES is not set | ||
1050 | CONFIG_CRYPTO=y | ||
1051 | |||
1052 | # | ||
1053 | # Crypto core or helper | ||
1054 | # | ||
1055 | # CONFIG_CRYPTO_FIPS is not set | ||
1056 | CONFIG_CRYPTO_ALGAPI=m | ||
1057 | CONFIG_CRYPTO_ALGAPI2=m | ||
1058 | CONFIG_CRYPTO_RNG=m | ||
1059 | CONFIG_CRYPTO_RNG2=m | ||
1060 | # CONFIG_CRYPTO_MANAGER is not set | ||
1061 | # CONFIG_CRYPTO_MANAGER2 is not set | ||
1062 | # CONFIG_CRYPTO_GF128MUL is not set | ||
1063 | # CONFIG_CRYPTO_NULL is not set | ||
1064 | # CONFIG_CRYPTO_CRYPTD is not set | ||
1065 | # CONFIG_CRYPTO_AUTHENC is not set | ||
1066 | # CONFIG_CRYPTO_TEST is not set | ||
1067 | |||
1068 | # | ||
1069 | # Authenticated Encryption with Associated Data | ||
1070 | # | ||
1071 | # CONFIG_CRYPTO_CCM is not set | ||
1072 | # CONFIG_CRYPTO_GCM is not set | ||
1073 | # CONFIG_CRYPTO_SEQIV is not set | ||
1074 | |||
1075 | # | ||
1076 | # Block modes | ||
1077 | # | ||
1078 | # CONFIG_CRYPTO_CBC is not set | ||
1079 | # CONFIG_CRYPTO_CTR is not set | ||
1080 | # CONFIG_CRYPTO_CTS is not set | ||
1081 | # CONFIG_CRYPTO_ECB is not set | ||
1082 | # CONFIG_CRYPTO_LRW is not set | ||
1083 | # CONFIG_CRYPTO_PCBC is not set | ||
1084 | # CONFIG_CRYPTO_XTS is not set | ||
1085 | |||
1086 | # | ||
1087 | # Hash modes | ||
1088 | # | ||
1089 | # CONFIG_CRYPTO_HMAC is not set | ||
1090 | # CONFIG_CRYPTO_XCBC is not set | ||
1091 | # CONFIG_CRYPTO_VMAC is not set | ||
1092 | |||
1093 | # | ||
1094 | # Digest | ||
1095 | # | ||
1096 | # CONFIG_CRYPTO_CRC32C is not set | ||
1097 | # CONFIG_CRYPTO_GHASH is not set | ||
1098 | # CONFIG_CRYPTO_MD4 is not set | ||
1099 | # CONFIG_CRYPTO_MD5 is not set | ||
1100 | # CONFIG_CRYPTO_MICHAEL_MIC is not set | ||
1101 | # CONFIG_CRYPTO_RMD128 is not set | ||
1102 | # CONFIG_CRYPTO_RMD160 is not set | ||
1103 | # CONFIG_CRYPTO_RMD256 is not set | ||
1104 | # CONFIG_CRYPTO_RMD320 is not set | ||
1105 | # CONFIG_CRYPTO_SHA1 is not set | ||
1106 | # CONFIG_CRYPTO_SHA256 is not set | ||
1107 | # CONFIG_CRYPTO_SHA512 is not set | ||
1108 | # CONFIG_CRYPTO_TGR192 is not set | ||
1109 | # CONFIG_CRYPTO_WP512 is not set | ||
1110 | |||
1111 | # | ||
1112 | # Ciphers | ||
1113 | # | ||
1114 | CONFIG_CRYPTO_AES=m | ||
1115 | # CONFIG_CRYPTO_ANUBIS is not set | ||
1116 | # CONFIG_CRYPTO_ARC4 is not set | ||
1117 | # CONFIG_CRYPTO_BLOWFISH is not set | ||
1118 | # CONFIG_CRYPTO_CAMELLIA is not set | ||
1119 | # CONFIG_CRYPTO_CAST5 is not set | ||
1120 | # CONFIG_CRYPTO_CAST6 is not set | ||
1121 | # CONFIG_CRYPTO_DES is not set | ||
1122 | # CONFIG_CRYPTO_FCRYPT is not set | ||
1123 | # CONFIG_CRYPTO_KHAZAD is not set | ||
1124 | # CONFIG_CRYPTO_SALSA20 is not set | ||
1125 | # CONFIG_CRYPTO_SEED is not set | ||
1126 | # CONFIG_CRYPTO_SERPENT is not set | ||
1127 | # CONFIG_CRYPTO_TEA is not set | ||
1128 | # CONFIG_CRYPTO_TWOFISH is not set | ||
899 | 1129 | ||
900 | # | 1130 | # |
901 | # Cryptographic options | 1131 | # Compression |
902 | # | 1132 | # |
903 | # CONFIG_CRYPTO is not set | 1133 | # CONFIG_CRYPTO_DEFLATE is not set |
1134 | # CONFIG_CRYPTO_ZLIB is not set | ||
1135 | # CONFIG_CRYPTO_LZO is not set | ||
904 | 1136 | ||
905 | # | 1137 | # |
906 | # Hardware crypto devices | 1138 | # Random Number Generation |
907 | # | 1139 | # |
1140 | CONFIG_CRYPTO_ANSI_CPRNG=m | ||
1141 | CONFIG_CRYPTO_HW=y | ||
1142 | # CONFIG_BINARY_PRINTF is not set | ||
908 | 1143 | ||
909 | # | 1144 | # |
910 | # Library routines | 1145 | # Library routines |
911 | # | 1146 | # |
1147 | CONFIG_BITREVERSE=y | ||
1148 | CONFIG_GENERIC_FIND_LAST_BIT=y | ||
912 | CONFIG_CRC_CCITT=m | 1149 | CONFIG_CRC_CCITT=m |
1150 | # CONFIG_CRC16 is not set | ||
1151 | # CONFIG_CRC_T10DIF is not set | ||
1152 | # CONFIG_CRC_ITU_T is not set | ||
913 | CONFIG_CRC32=y | 1153 | CONFIG_CRC32=y |
1154 | # CONFIG_CRC7 is not set | ||
914 | # CONFIG_LIBCRC32C is not set | 1155 | # CONFIG_LIBCRC32C is not set |
915 | CONFIG_ZLIB_INFLATE=y | 1156 | CONFIG_ZLIB_INFLATE=y |
916 | CONFIG_ZLIB_DEFLATE=y | 1157 | CONFIG_ZLIB_DEFLATE=y |
1158 | CONFIG_DECOMPRESS_GZIP=y | ||
1159 | CONFIG_DECOMPRESS_BZIP2=y | ||
1160 | CONFIG_DECOMPRESS_LZMA=y | ||
1161 | CONFIG_HAS_IOMEM=y | ||
1162 | CONFIG_HAS_IOPORT=y | ||
1163 | CONFIG_HAS_DMA=y | ||
1164 | CONFIG_NLATTR=y | ||
diff --git a/arch/arm/mach-sa1100/Kconfig b/arch/arm/mach-sa1100/Kconfig index 4e5c07f4e456..03a7f3857c5e 100644 --- a/arch/arm/mach-sa1100/Kconfig +++ b/arch/arm/mach-sa1100/Kconfig | |||
@@ -53,23 +53,23 @@ config SA1100_COLLIE | |||
53 | 53 | ||
54 | config SA1100_H3100 | 54 | config SA1100_H3100 |
55 | bool "Compaq iPAQ H3100" | 55 | bool "Compaq iPAQ H3100" |
56 | select HTC_EGPIO | ||
56 | help | 57 | help |
57 | Say Y here if you intend to run this kernel on the Compaq iPAQ | 58 | Say Y here if you intend to run this kernel on the Compaq iPAQ |
58 | H3100 handheld computer. Information about this machine and the | 59 | H3100 handheld computer. Information about this machine and the |
59 | Linux port to this machine can be found at: | 60 | Linux port to this machine can be found at: |
60 | 61 | ||
61 | <http://www.handhelds.org/Compaq/index.html#iPAQ_H3100> | 62 | <http://www.handhelds.org/Compaq/index.html#iPAQ_H3100> |
62 | <http://www.compaq.com/products/handhelds/pocketpc/> | ||
63 | 63 | ||
64 | config SA1100_H3600 | 64 | config SA1100_H3600 |
65 | bool "Compaq iPAQ H3600/H3700" | 65 | bool "Compaq iPAQ H3600/H3700" |
66 | select HTC_EGPIO | ||
66 | help | 67 | help |
67 | Say Y here if you intend to run this kernel on the Compaq iPAQ | 68 | Say Y here if you intend to run this kernel on the Compaq iPAQ |
68 | H3600 handheld computer. Information about this machine and the | 69 | H3600 handheld computer. Information about this machine and the |
69 | Linux port to this machine can be found at: | 70 | Linux port to this machine can be found at: |
70 | 71 | ||
71 | <http://www.handhelds.org/Compaq/index.html#iPAQ_H3600> | 72 | <http://www.handhelds.org/Compaq/index.html#iPAQ_H3600> |
72 | <http://www.compaq.com/products/handhelds/pocketpc/> | ||
73 | 73 | ||
74 | config SA1100_BADGE4 | 74 | config SA1100_BADGE4 |
75 | bool "HP Labs BadgePAD 4" | 75 | bool "HP Labs BadgePAD 4" |
diff --git a/arch/arm/mach-sa1100/Makefile b/arch/arm/mach-sa1100/Makefile index bb7b8198d0c4..89349c1dd7a6 100644 --- a/arch/arm/mach-sa1100/Makefile +++ b/arch/arm/mach-sa1100/Makefile | |||
@@ -25,8 +25,8 @@ led-$(CONFIG_SA1100_CERF) += leds-cerf.o | |||
25 | 25 | ||
26 | obj-$(CONFIG_SA1100_COLLIE) += collie.o | 26 | obj-$(CONFIG_SA1100_COLLIE) += collie.o |
27 | 27 | ||
28 | obj-$(CONFIG_SA1100_H3100) += h3600.o | 28 | obj-$(CONFIG_SA1100_H3100) += h3100.o h3xxx.o |
29 | obj-$(CONFIG_SA1100_H3600) += h3600.o | 29 | obj-$(CONFIG_SA1100_H3600) += h3600.o h3xxx.o |
30 | 30 | ||
31 | obj-$(CONFIG_SA1100_HACKKIT) += hackkit.o | 31 | obj-$(CONFIG_SA1100_HACKKIT) += hackkit.o |
32 | led-$(CONFIG_SA1100_HACKKIT) += leds-hackkit.o | 32 | led-$(CONFIG_SA1100_HACKKIT) += leds-hackkit.o |
diff --git a/arch/arm/mach-sa1100/assabet.c b/arch/arm/mach-sa1100/assabet.c index 55e64477a876..169e5b87dbff 100644 --- a/arch/arm/mach-sa1100/assabet.c +++ b/arch/arm/mach-sa1100/assabet.c | |||
@@ -249,10 +249,10 @@ static void __init assabet_init(void) | |||
249 | #endif | 249 | #endif |
250 | } | 250 | } |
251 | 251 | ||
252 | sa11x0_set_flash_data(&assabet_flash_data, assabet_flash_resources, | 252 | sa11x0_register_mtd(&assabet_flash_data, assabet_flash_resources, |
253 | ARRAY_SIZE(assabet_flash_resources)); | 253 | ARRAY_SIZE(assabet_flash_resources)); |
254 | sa11x0_set_irda_data(&assabet_irda_data); | 254 | sa11x0_register_irda(&assabet_irda_data); |
255 | sa11x0_set_mcp_data(&assabet_mcp_data); | 255 | sa11x0_register_mcp(&assabet_mcp_data); |
256 | } | 256 | } |
257 | 257 | ||
258 | /* | 258 | /* |
diff --git a/arch/arm/mach-sa1100/badge4.c b/arch/arm/mach-sa1100/badge4.c index ab5883b39ddf..051ec0f0023c 100644 --- a/arch/arm/mach-sa1100/badge4.c +++ b/arch/arm/mach-sa1100/badge4.c | |||
@@ -212,7 +212,7 @@ static int __init badge4_init(void) | |||
212 | /* maybe turn on 5v0 from the start */ | 212 | /* maybe turn on 5v0 from the start */ |
213 | badge4_set_5V(BADGE4_5V_INITIALLY, five_v_on); | 213 | badge4_set_5V(BADGE4_5V_INITIALLY, five_v_on); |
214 | 214 | ||
215 | sa11x0_set_flash_data(&badge4_flash_data, &badge4_flash_resource, 1); | 215 | sa11x0_register_mtd(&badge4_flash_data, &badge4_flash_resource, 1); |
216 | 216 | ||
217 | return 0; | 217 | return 0; |
218 | } | 218 | } |
diff --git a/arch/arm/mach-sa1100/cerf.c b/arch/arm/mach-sa1100/cerf.c index fd3ad9cfc912..bc950ef418af 100644 --- a/arch/arm/mach-sa1100/cerf.c +++ b/arch/arm/mach-sa1100/cerf.c | |||
@@ -129,8 +129,8 @@ static struct mcp_plat_data cerf_mcp_data = { | |||
129 | static void __init cerf_init(void) | 129 | static void __init cerf_init(void) |
130 | { | 130 | { |
131 | platform_add_devices(cerf_devices, ARRAY_SIZE(cerf_devices)); | 131 | platform_add_devices(cerf_devices, ARRAY_SIZE(cerf_devices)); |
132 | sa11x0_set_flash_data(&cerf_flash_data, &cerf_flash_resource, 1); | 132 | sa11x0_register_mtd(&cerf_flash_data, &cerf_flash_resource, 1); |
133 | sa11x0_set_mcp_data(&cerf_mcp_data); | 133 | sa11x0_register_mcp(&cerf_mcp_data); |
134 | } | 134 | } |
135 | 135 | ||
136 | MACHINE_START(CERF, "Intrinsyc CerfBoard/CerfCube") | 136 | MACHINE_START(CERF, "Intrinsyc CerfBoard/CerfCube") |
diff --git a/arch/arm/mach-sa1100/collie.c b/arch/arm/mach-sa1100/collie.c index bbf2ebcc3066..9982c5c28edf 100644 --- a/arch/arm/mach-sa1100/collie.c +++ b/arch/arm/mach-sa1100/collie.c | |||
@@ -26,6 +26,7 @@ | |||
26 | #include <linux/mtd/partitions.h> | 26 | #include <linux/mtd/partitions.h> |
27 | #include <linux/timer.h> | 27 | #include <linux/timer.h> |
28 | #include <linux/gpio.h> | 28 | #include <linux/gpio.h> |
29 | #include <linux/pda_power.h> | ||
29 | 30 | ||
30 | #include <mach/hardware.h> | 31 | #include <mach/hardware.h> |
31 | #include <asm/mach-types.h> | 32 | #include <asm/mach-types.h> |
@@ -56,6 +57,7 @@ static struct resource collie_scoop_resources[] = { | |||
56 | static struct scoop_config collie_scoop_setup = { | 57 | static struct scoop_config collie_scoop_setup = { |
57 | .io_dir = COLLIE_SCOOP_IO_DIR, | 58 | .io_dir = COLLIE_SCOOP_IO_DIR, |
58 | .io_out = COLLIE_SCOOP_IO_OUT, | 59 | .io_out = COLLIE_SCOOP_IO_OUT, |
60 | .gpio_base = COLLIE_SCOOP_GPIO_BASE, | ||
59 | }; | 61 | }; |
60 | 62 | ||
61 | struct platform_device colliescoop_device = { | 63 | struct platform_device colliescoop_device = { |
@@ -85,6 +87,70 @@ static struct scoop_pcmcia_config collie_pcmcia_config = { | |||
85 | static struct mcp_plat_data collie_mcp_data = { | 87 | static struct mcp_plat_data collie_mcp_data = { |
86 | .mccr0 = MCCR0_ADM | MCCR0_ExtClk, | 88 | .mccr0 = MCCR0_ADM | MCCR0_ExtClk, |
87 | .sclk_rate = 9216000, | 89 | .sclk_rate = 9216000, |
90 | .gpio_base = COLLIE_TC35143_GPIO_BASE, | ||
91 | }; | ||
92 | |||
93 | /* | ||
94 | * Collie AC IN | ||
95 | */ | ||
96 | static int collie_power_init(struct device *dev) | ||
97 | { | ||
98 | int ret = gpio_request(COLLIE_GPIO_AC_IN, "ac in"); | ||
99 | if (ret) | ||
100 | goto err_gpio_req; | ||
101 | |||
102 | ret = gpio_direction_input(COLLIE_GPIO_AC_IN); | ||
103 | if (ret) | ||
104 | goto err_gpio_in; | ||
105 | |||
106 | return 0; | ||
107 | |||
108 | err_gpio_in: | ||
109 | gpio_free(COLLIE_GPIO_AC_IN); | ||
110 | err_gpio_req: | ||
111 | return ret; | ||
112 | } | ||
113 | |||
114 | static void collie_power_exit(struct device *dev) | ||
115 | { | ||
116 | gpio_free(COLLIE_GPIO_AC_IN); | ||
117 | } | ||
118 | |||
119 | static int collie_power_ac_online(void) | ||
120 | { | ||
121 | return gpio_get_value(COLLIE_GPIO_AC_IN) == 2; | ||
122 | } | ||
123 | |||
124 | static char *collie_ac_supplied_to[] = { | ||
125 | "main-battery", | ||
126 | "backup-battery", | ||
127 | }; | ||
128 | |||
129 | static struct pda_power_pdata collie_power_data = { | ||
130 | .init = collie_power_init, | ||
131 | .is_ac_online = collie_power_ac_online, | ||
132 | .exit = collie_power_exit, | ||
133 | .supplied_to = collie_ac_supplied_to, | ||
134 | .num_supplicants = ARRAY_SIZE(collie_ac_supplied_to), | ||
135 | }; | ||
136 | |||
137 | static struct resource collie_power_resource[] = { | ||
138 | { | ||
139 | .name = "ac", | ||
140 | .start = gpio_to_irq(COLLIE_GPIO_AC_IN), | ||
141 | .end = gpio_to_irq(COLLIE_GPIO_AC_IN), | ||
142 | .flags = IORESOURCE_IRQ | | ||
143 | IORESOURCE_IRQ_HIGHEDGE | | ||
144 | IORESOURCE_IRQ_LOWEDGE, | ||
145 | }, | ||
146 | }; | ||
147 | |||
148 | static struct platform_device collie_power_device = { | ||
149 | .name = "pda-power", | ||
150 | .id = -1, | ||
151 | .dev.platform_data = &collie_power_data, | ||
152 | .resource = collie_power_resource, | ||
153 | .num_resources = ARRAY_SIZE(collie_power_resource), | ||
88 | }; | 154 | }; |
89 | 155 | ||
90 | #ifdef CONFIG_SHARP_LOCOMO | 156 | #ifdef CONFIG_SHARP_LOCOMO |
@@ -178,6 +244,7 @@ struct platform_device collie_locomo_device = { | |||
178 | static struct platform_device *devices[] __initdata = { | 244 | static struct platform_device *devices[] __initdata = { |
179 | &collie_locomo_device, | 245 | &collie_locomo_device, |
180 | &colliescoop_device, | 246 | &colliescoop_device, |
247 | &collie_power_device, | ||
181 | }; | 248 | }; |
182 | 249 | ||
183 | static struct mtd_partition collie_partitions[] = { | 250 | static struct mtd_partition collie_partitions[] = { |
@@ -248,22 +315,24 @@ static void __init collie_init(void) | |||
248 | GPDR = GPIO_LDD8 | GPIO_LDD9 | GPIO_LDD10 | GPIO_LDD11 | GPIO_LDD12 | | 315 | GPDR = GPIO_LDD8 | GPIO_LDD9 | GPIO_LDD10 | GPIO_LDD11 | GPIO_LDD12 | |
249 | GPIO_LDD13 | GPIO_LDD14 | GPIO_LDD15 | GPIO_SSP_TXD | | 316 | GPIO_LDD13 | GPIO_LDD14 | GPIO_LDD15 | GPIO_SSP_TXD | |
250 | GPIO_SSP_SCLK | GPIO_SSP_SFRM | GPIO_SDLC_SCLK | | 317 | GPIO_SSP_SCLK | GPIO_SSP_SFRM | GPIO_SDLC_SCLK | |
251 | COLLIE_GPIO_UCB1x00_RESET | COLLIE_GPIO_nMIC_ON | | 318 | _COLLIE_GPIO_UCB1x00_RESET | _COLLIE_GPIO_nMIC_ON | |
252 | COLLIE_GPIO_nREMOCON_ON | GPIO_32_768kHz; | 319 | _COLLIE_GPIO_nREMOCON_ON | GPIO_32_768kHz; |
253 | 320 | ||
254 | PPDR = PPC_LDD0 | PPC_LDD1 | PPC_LDD2 | PPC_LDD3 | PPC_LDD4 | PPC_LDD5 | | 321 | PPDR = PPC_LDD0 | PPC_LDD1 | PPC_LDD2 | PPC_LDD3 | PPC_LDD4 | PPC_LDD5 | |
255 | PPC_LDD6 | PPC_LDD7 | PPC_L_PCLK | PPC_L_LCLK | PPC_L_FCLK | PPC_L_BIAS | | 322 | PPC_LDD6 | PPC_LDD7 | PPC_L_PCLK | PPC_L_LCLK | PPC_L_FCLK | PPC_L_BIAS | |
256 | PPC_TXD1 | PPC_TXD2 | PPC_TXD3 | PPC_TXD4 | PPC_SCLK | PPC_SFRM; | 323 | PPC_TXD1 | PPC_TXD2 | PPC_TXD3 | PPC_TXD4 | PPC_SCLK | PPC_SFRM; |
257 | 324 | ||
258 | PWER = COLLIE_GPIO_AC_IN | COLLIE_GPIO_CO | COLLIE_GPIO_ON_KEY | | 325 | PWER = _COLLIE_GPIO_AC_IN | _COLLIE_GPIO_CO | _COLLIE_GPIO_ON_KEY | |
259 | COLLIE_GPIO_WAKEUP | COLLIE_GPIO_nREMOCON_INT | PWER_RTC; | 326 | _COLLIE_GPIO_WAKEUP | _COLLIE_GPIO_nREMOCON_INT | PWER_RTC; |
260 | 327 | ||
261 | PGSR = COLLIE_GPIO_nREMOCON_ON; | 328 | PGSR = _COLLIE_GPIO_nREMOCON_ON; |
262 | 329 | ||
263 | PSDR = PPC_RXD1 | PPC_RXD2 | PPC_RXD3 | PPC_RXD4; | 330 | PSDR = PPC_RXD1 | PPC_RXD2 | PPC_RXD3 | PPC_RXD4; |
264 | 331 | ||
265 | PCFR = PCFR_OPDE; | 332 | PCFR = PCFR_OPDE; |
266 | 333 | ||
334 | GPSR |= _COLLIE_GPIO_UCB1x00_RESET; | ||
335 | |||
267 | 336 | ||
268 | platform_scoop_config = &collie_pcmcia_config; | 337 | platform_scoop_config = &collie_pcmcia_config; |
269 | 338 | ||
@@ -272,9 +341,9 @@ static void __init collie_init(void) | |||
272 | printk(KERN_WARNING "collie: Unable to register LoCoMo device\n"); | 341 | printk(KERN_WARNING "collie: Unable to register LoCoMo device\n"); |
273 | } | 342 | } |
274 | 343 | ||
275 | sa11x0_set_flash_data(&collie_flash_data, collie_flash_resources, | 344 | sa11x0_register_mtd(&collie_flash_data, collie_flash_resources, |
276 | ARRAY_SIZE(collie_flash_resources)); | 345 | ARRAY_SIZE(collie_flash_resources)); |
277 | sa11x0_set_mcp_data(&collie_mcp_data); | 346 | sa11x0_register_mcp(&collie_mcp_data); |
278 | 347 | ||
279 | sharpsl_save_param(); | 348 | sharpsl_save_param(); |
280 | } | 349 | } |
diff --git a/arch/arm/mach-sa1100/generic.c b/arch/arm/mach-sa1100/generic.c index 23cfdd593954..9faea1511c1f 100644 --- a/arch/arm/mach-sa1100/generic.c +++ b/arch/arm/mach-sa1100/generic.c | |||
@@ -162,6 +162,17 @@ static void sa1100_power_off(void) | |||
162 | PMCR = PMCR_SF; | 162 | PMCR = PMCR_SF; |
163 | } | 163 | } |
164 | 164 | ||
165 | static void sa11x0_register_device(struct platform_device *dev, void *data) | ||
166 | { | ||
167 | int err; | ||
168 | dev->dev.platform_data = data; | ||
169 | err = platform_device_register(dev); | ||
170 | if (err) | ||
171 | printk(KERN_ERR "Unable to register device %s: %d\n", | ||
172 | dev->name, err); | ||
173 | } | ||
174 | |||
175 | |||
165 | static struct resource sa11x0udc_resources[] = { | 176 | static struct resource sa11x0udc_resources[] = { |
166 | [0] = { | 177 | [0] = { |
167 | .start = 0x80000000, | 178 | .start = 0x80000000, |
@@ -234,9 +245,9 @@ static struct platform_device sa11x0mcp_device = { | |||
234 | .resource = sa11x0mcp_resources, | 245 | .resource = sa11x0mcp_resources, |
235 | }; | 246 | }; |
236 | 247 | ||
237 | void sa11x0_set_mcp_data(struct mcp_plat_data *data) | 248 | void sa11x0_register_mcp(struct mcp_plat_data *data) |
238 | { | 249 | { |
239 | sa11x0mcp_device.dev.platform_data = data; | 250 | sa11x0_register_device(&sa11x0mcp_device, data); |
240 | } | 251 | } |
241 | 252 | ||
242 | static struct resource sa11x0ssp_resources[] = { | 253 | static struct resource sa11x0ssp_resources[] = { |
@@ -293,13 +304,13 @@ static struct platform_device sa11x0mtd_device = { | |||
293 | .id = -1, | 304 | .id = -1, |
294 | }; | 305 | }; |
295 | 306 | ||
296 | void sa11x0_set_flash_data(struct flash_platform_data *flash, | 307 | void sa11x0_register_mtd(struct flash_platform_data *flash, |
297 | struct resource *res, int nr) | 308 | struct resource *res, int nr) |
298 | { | 309 | { |
299 | flash->name = "sa1100"; | 310 | flash->name = "sa1100"; |
300 | sa11x0mtd_device.dev.platform_data = flash; | ||
301 | sa11x0mtd_device.resource = res; | 311 | sa11x0mtd_device.resource = res; |
302 | sa11x0mtd_device.num_resources = nr; | 312 | sa11x0mtd_device.num_resources = nr; |
313 | sa11x0_register_device(&sa11x0mtd_device, flash); | ||
303 | } | 314 | } |
304 | 315 | ||
305 | static struct resource sa11x0ir_resources[] = { | 316 | static struct resource sa11x0ir_resources[] = { |
@@ -329,9 +340,9 @@ static struct platform_device sa11x0ir_device = { | |||
329 | .resource = sa11x0ir_resources, | 340 | .resource = sa11x0ir_resources, |
330 | }; | 341 | }; |
331 | 342 | ||
332 | void sa11x0_set_irda_data(struct irda_platform_data *irda) | 343 | void sa11x0_register_irda(struct irda_platform_data *irda) |
333 | { | 344 | { |
334 | sa11x0ir_device.dev.platform_data = irda; | 345 | sa11x0_register_device(&sa11x0ir_device, irda); |
335 | } | 346 | } |
336 | 347 | ||
337 | static struct platform_device sa11x0rtc_device = { | 348 | static struct platform_device sa11x0rtc_device = { |
@@ -343,21 +354,15 @@ static struct platform_device *sa11x0_devices[] __initdata = { | |||
343 | &sa11x0udc_device, | 354 | &sa11x0udc_device, |
344 | &sa11x0uart1_device, | 355 | &sa11x0uart1_device, |
345 | &sa11x0uart3_device, | 356 | &sa11x0uart3_device, |
346 | &sa11x0mcp_device, | ||
347 | &sa11x0ssp_device, | 357 | &sa11x0ssp_device, |
348 | &sa11x0pcmcia_device, | 358 | &sa11x0pcmcia_device, |
349 | &sa11x0fb_device, | 359 | &sa11x0fb_device, |
350 | &sa11x0mtd_device, | ||
351 | &sa11x0rtc_device, | 360 | &sa11x0rtc_device, |
352 | }; | 361 | }; |
353 | 362 | ||
354 | static int __init sa1100_init(void) | 363 | static int __init sa1100_init(void) |
355 | { | 364 | { |
356 | pm_power_off = sa1100_power_off; | 365 | pm_power_off = sa1100_power_off; |
357 | |||
358 | if (sa11x0ir_device.dev.platform_data) | ||
359 | platform_device_register(&sa11x0ir_device); | ||
360 | |||
361 | return platform_add_devices(sa11x0_devices, ARRAY_SIZE(sa11x0_devices)); | 366 | return platform_add_devices(sa11x0_devices, ARRAY_SIZE(sa11x0_devices)); |
362 | } | 367 | } |
363 | 368 | ||
diff --git a/arch/arm/mach-sa1100/generic.h b/arch/arm/mach-sa1100/generic.h index 793c2e6c991f..ec03f187c52b 100644 --- a/arch/arm/mach-sa1100/generic.h +++ b/arch/arm/mach-sa1100/generic.h | |||
@@ -32,14 +32,11 @@ extern unsigned int sa11x0_ppcr_to_freq(unsigned int idx); | |||
32 | struct flash_platform_data; | 32 | struct flash_platform_data; |
33 | struct resource; | 33 | struct resource; |
34 | 34 | ||
35 | extern void sa11x0_set_flash_data(struct flash_platform_data *flash, | 35 | void sa11x0_register_mtd(struct flash_platform_data *flash, |
36 | struct resource *res, int nr); | 36 | struct resource *res, int nr); |
37 | |||
38 | struct sa11x0_ssp_plat_ops; | ||
39 | extern void sa11x0_set_ssp_data(struct sa11x0_ssp_plat_ops *ops); | ||
40 | 37 | ||
41 | struct irda_platform_data; | 38 | struct irda_platform_data; |
42 | void sa11x0_set_irda_data(struct irda_platform_data *irda); | 39 | void sa11x0_register_irda(struct irda_platform_data *irda); |
43 | 40 | ||
44 | struct mcp_plat_data; | 41 | struct mcp_plat_data; |
45 | void sa11x0_set_mcp_data(struct mcp_plat_data *data); | 42 | void sa11x0_register_mcp(struct mcp_plat_data *data); |
diff --git a/arch/arm/mach-sa1100/h3100.c b/arch/arm/mach-sa1100/h3100.c new file mode 100644 index 000000000000..0c7cea0dc013 --- /dev/null +++ b/arch/arm/mach-sa1100/h3100.c | |||
@@ -0,0 +1,95 @@ | |||
1 | /* | ||
2 | * Support for Compaq iPAQ H3100 handheld computer | ||
3 | * | ||
4 | * Copyright (c) 2000,1 Compaq Computer Corporation. (Author: Jamey Hicks) | ||
5 | * Copyright (c) 2009 Dmitry Artamonow <mad_soft@inbox.ru> | ||
6 | * | ||
7 | * This program is free software; you can redistribute it and/or modify | ||
8 | * it under the terms of the GNU General Public License version 2 as | ||
9 | * published by the Free Software Foundation. | ||
10 | * | ||
11 | */ | ||
12 | |||
13 | #include <linux/init.h> | ||
14 | #include <linux/kernel.h> | ||
15 | #include <linux/gpio.h> | ||
16 | |||
17 | #include <asm/mach-types.h> | ||
18 | #include <asm/mach/arch.h> | ||
19 | #include <asm/mach/irda.h> | ||
20 | |||
21 | #include <mach/h3xxx.h> | ||
22 | |||
23 | #include "generic.h" | ||
24 | |||
25 | /* | ||
26 | * helper for sa1100fb | ||
27 | */ | ||
28 | static void h3100_lcd_power(int enable) | ||
29 | { | ||
30 | if (!gpio_request(H3XXX_EGPIO_LCD_ON, "LCD ON")) { | ||
31 | gpio_set_value(H3100_GPIO_LCD_3V_ON, enable); | ||
32 | gpio_direction_output(H3XXX_EGPIO_LCD_ON, enable); | ||
33 | gpio_free(H3XXX_EGPIO_LCD_ON); | ||
34 | } else { | ||
35 | pr_err("%s: can't request H3XXX_EGPIO_LCD_ON\n", __func__); | ||
36 | } | ||
37 | } | ||
38 | |||
39 | |||
40 | static void __init h3100_map_io(void) | ||
41 | { | ||
42 | h3xxx_map_io(); | ||
43 | |||
44 | sa1100fb_lcd_power = h3100_lcd_power; | ||
45 | |||
46 | /* Older bootldrs put GPIO2-9 in alternate mode on the | ||
47 | assumption that they are used for video */ | ||
48 | GAFR &= ~0x000001fb; | ||
49 | } | ||
50 | |||
51 | /* | ||
52 | * This turns the IRDA power on or off on the Compaq H3100 | ||
53 | */ | ||
54 | static int h3100_irda_set_power(struct device *dev, unsigned int state) | ||
55 | { | ||
56 | gpio_set_value(H3100_GPIO_IR_ON, state); | ||
57 | return 0; | ||
58 | } | ||
59 | |||
60 | static void h3100_irda_set_speed(struct device *dev, unsigned int speed) | ||
61 | { | ||
62 | gpio_set_value(H3100_GPIO_IR_FSEL, !(speed < 4000000)); | ||
63 | } | ||
64 | |||
65 | static struct irda_platform_data h3100_irda_data = { | ||
66 | .set_power = h3100_irda_set_power, | ||
67 | .set_speed = h3100_irda_set_speed, | ||
68 | }; | ||
69 | |||
70 | static struct gpio_default_state h3100_default_gpio[] = { | ||
71 | { H3100_GPIO_IR_ON, GPIO_MODE_OUT0, "IrDA power" }, | ||
72 | { H3100_GPIO_IR_FSEL, GPIO_MODE_OUT0, "IrDA fsel" }, | ||
73 | { H3XXX_GPIO_COM_DCD, GPIO_MODE_IN, "COM DCD" }, | ||
74 | { H3XXX_GPIO_COM_CTS, GPIO_MODE_IN, "COM CTS" }, | ||
75 | { H3XXX_GPIO_COM_RTS, GPIO_MODE_OUT0, "COM RTS" }, | ||
76 | { H3100_GPIO_LCD_3V_ON, GPIO_MODE_OUT0, "LCD 3v" }, | ||
77 | }; | ||
78 | |||
79 | static void __init h3100_mach_init(void) | ||
80 | { | ||
81 | h3xxx_init_gpio(h3100_default_gpio, ARRAY_SIZE(h3100_default_gpio)); | ||
82 | h3xxx_mach_init(); | ||
83 | sa11x0_register_irda(&h3100_irda_data); | ||
84 | } | ||
85 | |||
86 | MACHINE_START(H3100, "Compaq iPAQ H3100") | ||
87 | .phys_io = 0x80000000, | ||
88 | .io_pg_offst = ((0xf8000000) >> 18) & 0xfffc, | ||
89 | .boot_params = 0xc0000100, | ||
90 | .map_io = h3100_map_io, | ||
91 | .init_irq = sa1100_init_irq, | ||
92 | .timer = &sa1100_timer, | ||
93 | .init_machine = h3100_mach_init, | ||
94 | MACHINE_END | ||
95 | |||
diff --git a/arch/arm/mach-sa1100/h3600.c b/arch/arm/mach-sa1100/h3600.c index 0eb2f159578b..af3b71459f8d 100644 --- a/arch/arm/mach-sa1100/h3600.c +++ b/arch/arm/mach-sa1100/h3600.c | |||
@@ -1,421 +1,127 @@ | |||
1 | /* | 1 | /* |
2 | * Hardware definitions for Compaq iPAQ H3xxx Handheld Computers | 2 | * Support for Compaq iPAQ H3600 handheld computer |
3 | * | 3 | * |
4 | * Copyright 2000,1 Compaq Computer Corporation. | 4 | * Copyright (c) 2000,1 Compaq Computer Corporation. (Author: Jamey Hicks) |
5 | * Copyright (c) 2009 Dmitry Artamonow <mad_soft@inbox.ru> | ||
5 | * | 6 | * |
6 | * Use consistent with the GNU GPL is permitted, | 7 | * This program is free software; you can redistribute it and/or modify |
7 | * provided that this copyright notice is | 8 | * it under the terms of the GNU General Public License version 2 as |
8 | * preserved in its entirety in all copies and derived works. | 9 | * published by the Free Software Foundation. |
9 | * | ||
10 | * COMPAQ COMPUTER CORPORATION MAKES NO WARRANTIES, EXPRESSED OR IMPLIED, | ||
11 | * AS TO THE USEFULNESS OR CORRECTNESS OF THIS CODE OR ITS | ||
12 | * FITNESS FOR ANY PARTICULAR PURPOSE. | ||
13 | * | ||
14 | * Author: Jamey Hicks. | ||
15 | * | ||
16 | * History: | ||
17 | * | ||
18 | * 2001-10-?? Andrew Christian Added support for iPAQ H3800 | ||
19 | * and abstracted EGPIO interface. | ||
20 | * | 10 | * |
21 | */ | 11 | */ |
22 | #include <linux/module.h> | 12 | |
23 | #include <linux/init.h> | 13 | #include <linux/init.h> |
24 | #include <linux/kernel.h> | 14 | #include <linux/kernel.h> |
25 | #include <linux/tty.h> | 15 | #include <linux/gpio.h> |
26 | #include <linux/pm.h> | ||
27 | #include <linux/device.h> | ||
28 | #include <linux/mtd/mtd.h> | ||
29 | #include <linux/mtd/partitions.h> | ||
30 | #include <linux/serial_core.h> | ||
31 | 16 | ||
32 | #include <asm/irq.h> | ||
33 | #include <mach/hardware.h> | ||
34 | #include <asm/mach-types.h> | 17 | #include <asm/mach-types.h> |
35 | #include <asm/setup.h> | ||
36 | |||
37 | #include <asm/mach/irq.h> | ||
38 | #include <asm/mach/arch.h> | 18 | #include <asm/mach/arch.h> |
39 | #include <asm/mach/flash.h> | ||
40 | #include <asm/mach/irda.h> | 19 | #include <asm/mach/irda.h> |
41 | #include <asm/mach/map.h> | ||
42 | #include <asm/mach/serial_sa1100.h> | ||
43 | 20 | ||
44 | #include <mach/h3600.h> | 21 | #include <mach/h3xxx.h> |
45 | #include <mach/h3600_gpio.h> | ||
46 | 22 | ||
47 | #include "generic.h" | 23 | #include "generic.h" |
48 | 24 | ||
49 | void (*assign_h3600_egpio)(enum ipaq_egpio_type x, int level); | ||
50 | EXPORT_SYMBOL(assign_h3600_egpio); | ||
51 | |||
52 | static struct mtd_partition h3xxx_partitions[] = { | ||
53 | { | ||
54 | .name = "H3XXX boot firmware", | ||
55 | .size = 0x00040000, | ||
56 | .offset = 0, | ||
57 | .mask_flags = MTD_WRITEABLE, /* force read-only */ | ||
58 | }, { | ||
59 | .name = "H3XXX rootfs", | ||
60 | .size = MTDPART_SIZ_FULL, | ||
61 | .offset = 0x00040000, | ||
62 | } | ||
63 | }; | ||
64 | |||
65 | static void h3xxx_set_vpp(int vpp) | ||
66 | { | ||
67 | assign_h3600_egpio(IPAQ_EGPIO_VPP_ON, vpp); | ||
68 | } | ||
69 | |||
70 | static struct flash_platform_data h3xxx_flash_data = { | ||
71 | .map_name = "cfi_probe", | ||
72 | .set_vpp = h3xxx_set_vpp, | ||
73 | .parts = h3xxx_partitions, | ||
74 | .nr_parts = ARRAY_SIZE(h3xxx_partitions), | ||
75 | }; | ||
76 | |||
77 | static struct resource h3xxx_flash_resource = { | ||
78 | .start = SA1100_CS0_PHYS, | ||
79 | .end = SA1100_CS0_PHYS + SZ_32M - 1, | ||
80 | .flags = IORESOURCE_MEM, | ||
81 | }; | ||
82 | |||
83 | /* | 25 | /* |
84 | * This turns the IRDA power on or off on the Compaq H3600 | 26 | * helper for sa1100fb |
85 | */ | ||
86 | static int h3600_irda_set_power(struct device *dev, unsigned int state) | ||
87 | { | ||
88 | assign_h3600_egpio( IPAQ_EGPIO_IR_ON, state ); | ||
89 | |||
90 | return 0; | ||
91 | } | ||
92 | |||
93 | static void h3600_irda_set_speed(struct device *dev, unsigned int speed) | ||
94 | { | ||
95 | assign_h3600_egpio(IPAQ_EGPIO_IR_FSEL, !(speed < 4000000)); | ||
96 | } | ||
97 | |||
98 | static struct irda_platform_data h3600_irda_data = { | ||
99 | .set_power = h3600_irda_set_power, | ||
100 | .set_speed = h3600_irda_set_speed, | ||
101 | }; | ||
102 | |||
103 | static void h3xxx_mach_init(void) | ||
104 | { | ||
105 | sa11x0_set_flash_data(&h3xxx_flash_data, &h3xxx_flash_resource, 1); | ||
106 | sa11x0_set_irda_data(&h3600_irda_data); | ||
107 | } | ||
108 | |||
109 | /* | ||
110 | * low-level UART features | ||
111 | */ | 27 | */ |
112 | 28 | static void h3600_lcd_power(int enable) | |
113 | static void h3600_uart_set_mctrl(struct uart_port *port, u_int mctrl) | ||
114 | { | 29 | { |
115 | if (port->mapbase == _Ser3UTCR0) { | 30 | if (gpio_request(H3XXX_EGPIO_LCD_ON, "LCD power")) { |
116 | if (mctrl & TIOCM_RTS) | 31 | pr_err("%s: can't request H3XXX_EGPIO_LCD_ON\n", __func__); |
117 | GPCR = GPIO_H3600_COM_RTS; | 32 | goto err1; |
118 | else | ||
119 | GPSR = GPIO_H3600_COM_RTS; | ||
120 | } | 33 | } |
121 | } | 34 | if (gpio_request(H3600_EGPIO_LCD_PCI, "LCD control")) { |
122 | 35 | pr_err("%s: can't request H3XXX_EGPIO_LCD_PCI\n", __func__); | |
123 | static u_int h3600_uart_get_mctrl(struct uart_port *port) | 36 | goto err2; |
124 | { | 37 | } |
125 | u_int ret = TIOCM_CD | TIOCM_CTS | TIOCM_DSR; | 38 | if (gpio_request(H3600_EGPIO_LCD_5V_ON, "LCD 5v")) { |
126 | 39 | pr_err("%s: can't request H3XXX_EGPIO_LCD_5V_ON\n", __func__); | |
127 | if (port->mapbase == _Ser3UTCR0) { | 40 | goto err3; |
128 | int gplr = GPLR; | 41 | } |
129 | /* DCD and CTS bits are inverted in GPLR by RS232 transceiver */ | 42 | if (gpio_request(H3600_EGPIO_LVDD_ON, "LCD 9v/-6.5v")) { |
130 | if (gplr & GPIO_H3600_COM_DCD) | 43 | pr_err("%s: can't request H3600_EGPIO_LVDD_ON\n", __func__); |
131 | ret &= ~TIOCM_CD; | 44 | goto err4; |
132 | if (gplr & GPIO_H3600_COM_CTS) | ||
133 | ret &= ~TIOCM_CTS; | ||
134 | } | 45 | } |
135 | 46 | ||
136 | return ret; | 47 | gpio_direction_output(H3XXX_EGPIO_LCD_ON, enable); |
137 | } | 48 | gpio_direction_output(H3600_EGPIO_LCD_PCI, enable); |
49 | gpio_direction_output(H3600_EGPIO_LCD_5V_ON, enable); | ||
50 | gpio_direction_output(H3600_EGPIO_LVDD_ON, enable); | ||
138 | 51 | ||
139 | static void h3600_uart_pm(struct uart_port *port, u_int state, u_int oldstate) | 52 | gpio_free(H3600_EGPIO_LVDD_ON); |
140 | { | 53 | err4: gpio_free(H3600_EGPIO_LCD_5V_ON); |
141 | if (port->mapbase == _Ser2UTCR0) { /* TODO: REMOVE THIS */ | 54 | err3: gpio_free(H3600_EGPIO_LCD_PCI); |
142 | assign_h3600_egpio(IPAQ_EGPIO_IR_ON, !state); | 55 | err2: gpio_free(H3XXX_EGPIO_LCD_ON); |
143 | } else if (port->mapbase == _Ser3UTCR0) { | 56 | err1: return; |
144 | assign_h3600_egpio(IPAQ_EGPIO_RS232_ON, !state); | ||
145 | } | ||
146 | } | 57 | } |
147 | 58 | ||
148 | /* | 59 | static void __init h3600_map_io(void) |
149 | * Enable/Disable wake up events for this serial port. | ||
150 | * Obviously, we only support this on the normal COM port. | ||
151 | */ | ||
152 | static int h3600_uart_set_wake(struct uart_port *port, u_int enable) | ||
153 | { | 60 | { |
154 | int err = -EINVAL; | 61 | h3xxx_map_io(); |
155 | 62 | ||
156 | if (port->mapbase == _Ser3UTCR0) { | 63 | sa1100fb_lcd_power = h3600_lcd_power; |
157 | if (enable) | ||
158 | PWER |= PWER_GPIO23 | PWER_GPIO25; /* DCD and CTS */ | ||
159 | else | ||
160 | PWER &= ~(PWER_GPIO23 | PWER_GPIO25); /* DCD and CTS */ | ||
161 | err = 0; | ||
162 | } | ||
163 | return err; | ||
164 | } | 64 | } |
165 | 65 | ||
166 | static struct sa1100_port_fns h3600_port_fns __initdata = { | ||
167 | .set_mctrl = h3600_uart_set_mctrl, | ||
168 | .get_mctrl = h3600_uart_get_mctrl, | ||
169 | .pm = h3600_uart_pm, | ||
170 | .set_wake = h3600_uart_set_wake, | ||
171 | }; | ||
172 | |||
173 | /* | 66 | /* |
174 | * helper for sa1100fb | 67 | * This turns the IRDA power on or off on the Compaq H3600 |
175 | */ | 68 | */ |
176 | static void h3xxx_lcd_power(int enable) | 69 | static int h3600_irda_set_power(struct device *dev, unsigned int state) |
177 | { | 70 | { |
178 | assign_h3600_egpio(IPAQ_EGPIO_LCD_POWER, enable); | 71 | gpio_set_value(H3600_EGPIO_IR_ON, state); |
72 | return 0; | ||
179 | } | 73 | } |
180 | 74 | ||
181 | static struct map_desc h3600_io_desc[] __initdata = { | 75 | static void h3600_irda_set_speed(struct device *dev, unsigned int speed) |
182 | { /* static memory bank 2 CS#2 */ | ||
183 | .virtual = H3600_BANK_2_VIRT, | ||
184 | .pfn = __phys_to_pfn(SA1100_CS2_PHYS), | ||
185 | .length = 0x02800000, | ||
186 | .type = MT_DEVICE | ||
187 | }, { /* static memory bank 4 CS#4 */ | ||
188 | .virtual = H3600_BANK_4_VIRT, | ||
189 | .pfn = __phys_to_pfn(SA1100_CS4_PHYS), | ||
190 | .length = 0x00800000, | ||
191 | .type = MT_DEVICE | ||
192 | }, { /* EGPIO 0 CS#5 */ | ||
193 | .virtual = H3600_EGPIO_VIRT, | ||
194 | .pfn = __phys_to_pfn(H3600_EGPIO_PHYS), | ||
195 | .length = 0x01000000, | ||
196 | .type = MT_DEVICE | ||
197 | } | ||
198 | }; | ||
199 | |||
200 | /* | ||
201 | * Common map_io initialization | ||
202 | */ | ||
203 | |||
204 | static void __init h3xxx_map_io(void) | ||
205 | { | 76 | { |
206 | sa1100_map_io(); | 77 | gpio_set_value(H3600_EGPIO_IR_FSEL, !(speed < 4000000)); |
207 | iotable_init(h3600_io_desc, ARRAY_SIZE(h3600_io_desc)); | ||
208 | |||
209 | sa1100_register_uart_fns(&h3600_port_fns); | ||
210 | sa1100_register_uart(0, 3); /* Common serial port */ | ||
211 | // sa1100_register_uart(1, 1); /* Microcontroller on 3100/3600 */ | ||
212 | |||
213 | /* Ensure those pins are outputs and driving low */ | ||
214 | PPDR |= PPC_TXD4 | PPC_SCLK | PPC_SFRM; | ||
215 | PPSR &= ~(PPC_TXD4 | PPC_SCLK | PPC_SFRM); | ||
216 | |||
217 | /* Configure suspend conditions */ | ||
218 | PGSR = 0; | ||
219 | PWER = PWER_GPIO0 | PWER_RTC; | ||
220 | PCFR = PCFR_OPDE; | ||
221 | PSDR = 0; | ||
222 | |||
223 | sa1100fb_lcd_power = h3xxx_lcd_power; | ||
224 | } | 78 | } |
225 | 79 | ||
226 | /************************* H3100 *************************/ | 80 | static int h3600_irda_startup(struct device *dev) |
227 | |||
228 | #ifdef CONFIG_SA1100_H3100 | ||
229 | |||
230 | #define H3100_EGPIO (*(volatile unsigned int *)H3600_EGPIO_VIRT) | ||
231 | static unsigned int h3100_egpio = 0; | ||
232 | |||
233 | static void h3100_control_egpio(enum ipaq_egpio_type x, int setp) | ||
234 | { | 81 | { |
235 | unsigned int egpio = 0; | 82 | int err = gpio_request(H3600_EGPIO_IR_ON, "IrDA power"); |
236 | long gpio = 0; | 83 | if (err) |
237 | unsigned long flags; | 84 | goto err1; |
238 | 85 | err = gpio_direction_output(H3600_EGPIO_IR_ON, 0); | |
239 | switch (x) { | 86 | if (err) |
240 | case IPAQ_EGPIO_LCD_POWER: | 87 | goto err2; |
241 | egpio |= EGPIO_H3600_LCD_ON; | 88 | err = gpio_request(H3600_EGPIO_IR_FSEL, "IrDA fsel"); |
242 | gpio |= GPIO_H3100_LCD_3V_ON; | 89 | if (err) |
243 | break; | 90 | goto err2; |
244 | case IPAQ_EGPIO_LCD_ENABLE: | 91 | err = gpio_direction_output(H3600_EGPIO_IR_FSEL, 0); |
245 | break; | 92 | if (err) |
246 | case IPAQ_EGPIO_CODEC_NRESET: | 93 | goto err3; |
247 | egpio |= EGPIO_H3600_CODEC_NRESET; | 94 | return 0; |
248 | break; | ||
249 | case IPAQ_EGPIO_AUDIO_ON: | ||
250 | gpio |= GPIO_H3100_AUD_PWR_ON | ||
251 | | GPIO_H3100_AUD_ON; | ||
252 | break; | ||
253 | case IPAQ_EGPIO_QMUTE: | ||
254 | gpio |= GPIO_H3100_QMUTE; | ||
255 | break; | ||
256 | case IPAQ_EGPIO_OPT_NVRAM_ON: | ||
257 | egpio |= EGPIO_H3600_OPT_NVRAM_ON; | ||
258 | break; | ||
259 | case IPAQ_EGPIO_OPT_ON: | ||
260 | egpio |= EGPIO_H3600_OPT_ON; | ||
261 | break; | ||
262 | case IPAQ_EGPIO_CARD_RESET: | ||
263 | egpio |= EGPIO_H3600_CARD_RESET; | ||
264 | break; | ||
265 | case IPAQ_EGPIO_OPT_RESET: | ||
266 | egpio |= EGPIO_H3600_OPT_RESET; | ||
267 | break; | ||
268 | case IPAQ_EGPIO_IR_ON: | ||
269 | gpio |= GPIO_H3100_IR_ON; | ||
270 | break; | ||
271 | case IPAQ_EGPIO_IR_FSEL: | ||
272 | gpio |= GPIO_H3100_IR_FSEL; | ||
273 | break; | ||
274 | case IPAQ_EGPIO_RS232_ON: | ||
275 | egpio |= EGPIO_H3600_RS232_ON; | ||
276 | break; | ||
277 | case IPAQ_EGPIO_VPP_ON: | ||
278 | egpio |= EGPIO_H3600_VPP_ON; | ||
279 | break; | ||
280 | } | ||
281 | 95 | ||
282 | if (egpio || gpio) { | 96 | err3: gpio_free(H3600_EGPIO_IR_FSEL); |
283 | local_irq_save(flags); | 97 | err2: gpio_free(H3600_EGPIO_IR_ON); |
284 | if (setp) { | 98 | err1: return err; |
285 | h3100_egpio |= egpio; | ||
286 | GPSR = gpio; | ||
287 | } else { | ||
288 | h3100_egpio &= ~egpio; | ||
289 | GPCR = gpio; | ||
290 | } | ||
291 | H3100_EGPIO = h3100_egpio; | ||
292 | local_irq_restore(flags); | ||
293 | } | ||
294 | } | 99 | } |
295 | 100 | ||
296 | #define H3100_DIRECT_EGPIO (GPIO_H3100_BT_ON \ | 101 | static void h3600_irda_shutdown(struct device *dev) |
297 | | GPIO_H3100_GPIO3 \ | ||
298 | | GPIO_H3100_QMUTE \ | ||
299 | | GPIO_H3100_LCD_3V_ON \ | ||
300 | | GPIO_H3100_AUD_ON \ | ||
301 | | GPIO_H3100_AUD_PWR_ON \ | ||
302 | | GPIO_H3100_IR_ON \ | ||
303 | | GPIO_H3100_IR_FSEL) | ||
304 | |||
305 | static void __init h3100_map_io(void) | ||
306 | { | 102 | { |
307 | h3xxx_map_io(); | 103 | gpio_free(H3600_EGPIO_IR_ON); |
308 | 104 | gpio_free(H3600_EGPIO_IR_FSEL); | |
309 | /* Initialize h3100-specific values here */ | ||
310 | GPCR = 0x0fffffff; /* All outputs are set low by default */ | ||
311 | GPDR = GPIO_H3600_COM_RTS | GPIO_H3600_L3_CLOCK | | ||
312 | GPIO_H3600_L3_MODE | GPIO_H3600_L3_DATA | | ||
313 | GPIO_H3600_CLK_SET1 | GPIO_H3600_CLK_SET0 | | ||
314 | H3100_DIRECT_EGPIO; | ||
315 | |||
316 | /* Older bootldrs put GPIO2-9 in alternate mode on the | ||
317 | assumption that they are used for video */ | ||
318 | GAFR &= ~H3100_DIRECT_EGPIO; | ||
319 | |||
320 | H3100_EGPIO = h3100_egpio; | ||
321 | assign_h3600_egpio = h3100_control_egpio; | ||
322 | } | 105 | } |
323 | 106 | ||
324 | MACHINE_START(H3100, "Compaq iPAQ H3100") | 107 | static struct irda_platform_data h3600_irda_data = { |
325 | .phys_io = 0x80000000, | 108 | .set_power = h3600_irda_set_power, |
326 | .io_pg_offst = ((0xf8000000) >> 18) & 0xfffc, | 109 | .set_speed = h3600_irda_set_speed, |
327 | .boot_params = 0xc0000100, | 110 | .startup = h3600_irda_startup, |
328 | .map_io = h3100_map_io, | 111 | .shutdown = h3600_irda_shutdown, |
329 | .init_irq = sa1100_init_irq, | 112 | }; |
330 | .timer = &sa1100_timer, | ||
331 | .init_machine = h3xxx_mach_init, | ||
332 | MACHINE_END | ||
333 | |||
334 | #endif /* CONFIG_SA1100_H3100 */ | ||
335 | |||
336 | /************************* H3600 *************************/ | ||
337 | |||
338 | #ifdef CONFIG_SA1100_H3600 | ||
339 | |||
340 | #define H3600_EGPIO (*(volatile unsigned int *)H3600_EGPIO_VIRT) | ||
341 | static unsigned int h3600_egpio = EGPIO_H3600_RS232_ON; | ||
342 | |||
343 | static void h3600_control_egpio(enum ipaq_egpio_type x, int setp) | ||
344 | { | ||
345 | unsigned int egpio = 0; | ||
346 | unsigned long flags; | ||
347 | |||
348 | switch (x) { | ||
349 | case IPAQ_EGPIO_LCD_POWER: | ||
350 | egpio |= EGPIO_H3600_LCD_ON | | ||
351 | EGPIO_H3600_LCD_PCI | | ||
352 | EGPIO_H3600_LCD_5V_ON | | ||
353 | EGPIO_H3600_LVDD_ON; | ||
354 | break; | ||
355 | case IPAQ_EGPIO_LCD_ENABLE: | ||
356 | break; | ||
357 | case IPAQ_EGPIO_CODEC_NRESET: | ||
358 | egpio |= EGPIO_H3600_CODEC_NRESET; | ||
359 | break; | ||
360 | case IPAQ_EGPIO_AUDIO_ON: | ||
361 | egpio |= EGPIO_H3600_AUD_AMP_ON | | ||
362 | EGPIO_H3600_AUD_PWR_ON; | ||
363 | break; | ||
364 | case IPAQ_EGPIO_QMUTE: | ||
365 | egpio |= EGPIO_H3600_QMUTE; | ||
366 | break; | ||
367 | case IPAQ_EGPIO_OPT_NVRAM_ON: | ||
368 | egpio |= EGPIO_H3600_OPT_NVRAM_ON; | ||
369 | break; | ||
370 | case IPAQ_EGPIO_OPT_ON: | ||
371 | egpio |= EGPIO_H3600_OPT_ON; | ||
372 | break; | ||
373 | case IPAQ_EGPIO_CARD_RESET: | ||
374 | egpio |= EGPIO_H3600_CARD_RESET; | ||
375 | break; | ||
376 | case IPAQ_EGPIO_OPT_RESET: | ||
377 | egpio |= EGPIO_H3600_OPT_RESET; | ||
378 | break; | ||
379 | case IPAQ_EGPIO_IR_ON: | ||
380 | egpio |= EGPIO_H3600_IR_ON; | ||
381 | break; | ||
382 | case IPAQ_EGPIO_IR_FSEL: | ||
383 | egpio |= EGPIO_H3600_IR_FSEL; | ||
384 | break; | ||
385 | case IPAQ_EGPIO_RS232_ON: | ||
386 | egpio |= EGPIO_H3600_RS232_ON; | ||
387 | break; | ||
388 | case IPAQ_EGPIO_VPP_ON: | ||
389 | egpio |= EGPIO_H3600_VPP_ON; | ||
390 | break; | ||
391 | } | ||
392 | 113 | ||
393 | if (egpio) { | 114 | static struct gpio_default_state h3600_default_gpio[] = { |
394 | local_irq_save(flags); | 115 | { H3XXX_GPIO_COM_DCD, GPIO_MODE_IN, "COM DCD" }, |
395 | if (setp) | 116 | { H3XXX_GPIO_COM_CTS, GPIO_MODE_IN, "COM CTS" }, |
396 | h3600_egpio |= egpio; | 117 | { H3XXX_GPIO_COM_RTS, GPIO_MODE_OUT0, "COM RTS" }, |
397 | else | 118 | }; |
398 | h3600_egpio &= ~egpio; | ||
399 | H3600_EGPIO = h3600_egpio; | ||
400 | local_irq_restore(flags); | ||
401 | } | ||
402 | } | ||
403 | 119 | ||
404 | static void __init h3600_map_io(void) | 120 | static void __init h3600_mach_init(void) |
405 | { | 121 | { |
406 | h3xxx_map_io(); | 122 | h3xxx_init_gpio(h3600_default_gpio, ARRAY_SIZE(h3600_default_gpio)); |
407 | 123 | h3xxx_mach_init(); | |
408 | /* Initialize h3600-specific values here */ | 124 | sa11x0_register_irda(&h3600_irda_data); |
409 | |||
410 | GPCR = 0x0fffffff; /* All outputs are set low by default */ | ||
411 | GPDR = GPIO_H3600_COM_RTS | GPIO_H3600_L3_CLOCK | | ||
412 | GPIO_H3600_L3_MODE | GPIO_H3600_L3_DATA | | ||
413 | GPIO_H3600_CLK_SET1 | GPIO_H3600_CLK_SET0 | | ||
414 | GPIO_LDD15 | GPIO_LDD14 | GPIO_LDD13 | GPIO_LDD12 | | ||
415 | GPIO_LDD11 | GPIO_LDD10 | GPIO_LDD9 | GPIO_LDD8; | ||
416 | |||
417 | H3600_EGPIO = h3600_egpio; /* Maintains across sleep? */ | ||
418 | assign_h3600_egpio = h3600_control_egpio; | ||
419 | } | 125 | } |
420 | 126 | ||
421 | MACHINE_START(H3600, "Compaq iPAQ H3600") | 127 | MACHINE_START(H3600, "Compaq iPAQ H3600") |
@@ -425,8 +131,6 @@ MACHINE_START(H3600, "Compaq iPAQ H3600") | |||
425 | .map_io = h3600_map_io, | 131 | .map_io = h3600_map_io, |
426 | .init_irq = sa1100_init_irq, | 132 | .init_irq = sa1100_init_irq, |
427 | .timer = &sa1100_timer, | 133 | .timer = &sa1100_timer, |
428 | .init_machine = h3xxx_mach_init, | 134 | .init_machine = h3600_mach_init, |
429 | MACHINE_END | 135 | MACHINE_END |
430 | 136 | ||
431 | #endif /* CONFIG_SA1100_H3600 */ | ||
432 | |||
diff --git a/arch/arm/mach-sa1100/h3xxx.c b/arch/arm/mach-sa1100/h3xxx.c new file mode 100644 index 000000000000..b0784c974c2d --- /dev/null +++ b/arch/arm/mach-sa1100/h3xxx.c | |||
@@ -0,0 +1,313 @@ | |||
1 | /* | ||
2 | * Support for Compaq iPAQ H3100 and H3600 handheld computers (common code) | ||
3 | * | ||
4 | * Copyright (c) 2000,1 Compaq Computer Corporation. (Author: Jamey Hicks) | ||
5 | * Copyright (c) 2009 Dmitry Artamonow <mad_soft@inbox.ru> | ||
6 | * | ||
7 | * This program is free software; you can redistribute it and/or modify | ||
8 | * it under the terms of the GNU General Public License version 2 as | ||
9 | * published by the Free Software Foundation. | ||
10 | * | ||
11 | */ | ||
12 | |||
13 | #include <linux/kernel.h> | ||
14 | #include <linux/gpio.h> | ||
15 | #include <linux/gpio_keys.h> | ||
16 | #include <linux/input.h> | ||
17 | #include <linux/mfd/htc-egpio.h> | ||
18 | #include <linux/mtd/mtd.h> | ||
19 | #include <linux/mtd/partitions.h> | ||
20 | #include <linux/platform_device.h> | ||
21 | #include <linux/serial_core.h> | ||
22 | |||
23 | #include <asm/mach/flash.h> | ||
24 | #include <asm/mach/map.h> | ||
25 | #include <asm/mach/serial_sa1100.h> | ||
26 | |||
27 | #include <mach/h3xxx.h> | ||
28 | |||
29 | #include "generic.h" | ||
30 | |||
31 | void h3xxx_init_gpio(struct gpio_default_state *s, size_t n) | ||
32 | { | ||
33 | while (n--) { | ||
34 | const char *name = s->name; | ||
35 | int err; | ||
36 | |||
37 | if (!name) | ||
38 | name = "[init]"; | ||
39 | err = gpio_request(s->gpio, name); | ||
40 | if (err) { | ||
41 | printk(KERN_ERR "gpio%u: unable to request: %d\n", | ||
42 | s->gpio, err); | ||
43 | continue; | ||
44 | } | ||
45 | if (s->mode >= 0) { | ||
46 | err = gpio_direction_output(s->gpio, s->mode); | ||
47 | } else { | ||
48 | err = gpio_direction_input(s->gpio); | ||
49 | } | ||
50 | if (err) { | ||
51 | printk(KERN_ERR "gpio%u: unable to set direction: %d\n", | ||
52 | s->gpio, err); | ||
53 | continue; | ||
54 | } | ||
55 | if (!s->name) | ||
56 | gpio_free(s->gpio); | ||
57 | s++; | ||
58 | } | ||
59 | } | ||
60 | |||
61 | |||
62 | /* | ||
63 | * H3xxx flash support | ||
64 | */ | ||
65 | static struct mtd_partition h3xxx_partitions[] = { | ||
66 | { | ||
67 | .name = "H3XXX boot firmware", | ||
68 | .size = 0x00040000, | ||
69 | .offset = 0, | ||
70 | .mask_flags = MTD_WRITEABLE, /* force read-only */ | ||
71 | }, { | ||
72 | .name = "H3XXX rootfs", | ||
73 | .size = MTDPART_SIZ_FULL, | ||
74 | .offset = 0x00040000, | ||
75 | } | ||
76 | }; | ||
77 | |||
78 | static void h3xxx_set_vpp(int vpp) | ||
79 | { | ||
80 | gpio_set_value(H3XXX_EGPIO_VPP_ON, vpp); | ||
81 | } | ||
82 | |||
83 | static int h3xxx_flash_init(void) | ||
84 | { | ||
85 | int err = gpio_request(H3XXX_EGPIO_VPP_ON, "Flash Vpp"); | ||
86 | if (err) { | ||
87 | pr_err("%s: can't request H3XXX_EGPIO_VPP_ON\n", __func__); | ||
88 | return err; | ||
89 | } | ||
90 | |||
91 | err = gpio_direction_output(H3XXX_EGPIO_VPP_ON, 0); | ||
92 | if (err) | ||
93 | gpio_free(H3XXX_EGPIO_VPP_ON); | ||
94 | |||
95 | return err; | ||
96 | } | ||
97 | |||
98 | static void h3xxx_flash_exit(void) | ||
99 | { | ||
100 | gpio_free(H3XXX_EGPIO_VPP_ON); | ||
101 | } | ||
102 | |||
103 | static struct flash_platform_data h3xxx_flash_data = { | ||
104 | .map_name = "cfi_probe", | ||
105 | .set_vpp = h3xxx_set_vpp, | ||
106 | .init = h3xxx_flash_init, | ||
107 | .exit = h3xxx_flash_exit, | ||
108 | .parts = h3xxx_partitions, | ||
109 | .nr_parts = ARRAY_SIZE(h3xxx_partitions), | ||
110 | }; | ||
111 | |||
112 | static struct resource h3xxx_flash_resource = { | ||
113 | .start = SA1100_CS0_PHYS, | ||
114 | .end = SA1100_CS0_PHYS + SZ_32M - 1, | ||
115 | .flags = IORESOURCE_MEM, | ||
116 | }; | ||
117 | |||
118 | |||
119 | /* | ||
120 | * H3xxx uart support | ||
121 | */ | ||
122 | static void h3xxx_uart_set_mctrl(struct uart_port *port, u_int mctrl) | ||
123 | { | ||
124 | if (port->mapbase == _Ser3UTCR0) { | ||
125 | gpio_set_value(H3XXX_GPIO_COM_RTS, !(mctrl & TIOCM_RTS)); | ||
126 | } | ||
127 | } | ||
128 | |||
129 | static u_int h3xxx_uart_get_mctrl(struct uart_port *port) | ||
130 | { | ||
131 | u_int ret = TIOCM_CD | TIOCM_CTS | TIOCM_DSR; | ||
132 | |||
133 | if (port->mapbase == _Ser3UTCR0) { | ||
134 | /* | ||
135 | * DCD and CTS bits are inverted in GPLR by RS232 transceiver | ||
136 | */ | ||
137 | if (gpio_get_value(H3XXX_GPIO_COM_DCD)) | ||
138 | ret &= ~TIOCM_CD; | ||
139 | if (gpio_get_value(H3XXX_GPIO_COM_CTS)) | ||
140 | ret &= ~TIOCM_CTS; | ||
141 | } | ||
142 | |||
143 | return ret; | ||
144 | } | ||
145 | |||
146 | static void h3xxx_uart_pm(struct uart_port *port, u_int state, u_int oldstate) | ||
147 | { | ||
148 | if (port->mapbase == _Ser3UTCR0) { | ||
149 | if (!gpio_request(H3XXX_EGPIO_RS232_ON, "RS232 transceiver")) { | ||
150 | gpio_direction_output(H3XXX_EGPIO_RS232_ON, !state); | ||
151 | gpio_free(H3XXX_EGPIO_RS232_ON); | ||
152 | } else { | ||
153 | pr_err("%s: can't request H3XXX_EGPIO_RS232_ON\n", | ||
154 | __func__); | ||
155 | } | ||
156 | } | ||
157 | } | ||
158 | |||
159 | /* | ||
160 | * Enable/Disable wake up events for this serial port. | ||
161 | * Obviously, we only support this on the normal COM port. | ||
162 | */ | ||
163 | static int h3xxx_uart_set_wake(struct uart_port *port, u_int enable) | ||
164 | { | ||
165 | int err = -EINVAL; | ||
166 | |||
167 | if (port->mapbase == _Ser3UTCR0) { | ||
168 | if (enable) | ||
169 | PWER |= PWER_GPIO23 | PWER_GPIO25; /* DCD and CTS */ | ||
170 | else | ||
171 | PWER &= ~(PWER_GPIO23 | PWER_GPIO25); /* DCD and CTS */ | ||
172 | err = 0; | ||
173 | } | ||
174 | return err; | ||
175 | } | ||
176 | |||
177 | static struct sa1100_port_fns h3xxx_port_fns __initdata = { | ||
178 | .set_mctrl = h3xxx_uart_set_mctrl, | ||
179 | .get_mctrl = h3xxx_uart_get_mctrl, | ||
180 | .pm = h3xxx_uart_pm, | ||
181 | .set_wake = h3xxx_uart_set_wake, | ||
182 | }; | ||
183 | |||
184 | /* | ||
185 | * EGPIO | ||
186 | */ | ||
187 | |||
188 | static struct resource egpio_resources[] = { | ||
189 | [0] = { | ||
190 | .start = H3600_EGPIO_PHYS, | ||
191 | .end = H3600_EGPIO_PHYS + 0x4 - 1, | ||
192 | .flags = IORESOURCE_MEM, | ||
193 | }, | ||
194 | }; | ||
195 | |||
196 | static struct htc_egpio_chip egpio_chips[] = { | ||
197 | [0] = { | ||
198 | .reg_start = 0, | ||
199 | .gpio_base = H3XXX_EGPIO_BASE, | ||
200 | .num_gpios = 16, | ||
201 | .direction = HTC_EGPIO_OUTPUT, | ||
202 | .initial_values = 0x0080, /* H3XXX_EGPIO_RS232_ON */ | ||
203 | }, | ||
204 | }; | ||
205 | |||
206 | static struct htc_egpio_platform_data egpio_info = { | ||
207 | .reg_width = 16, | ||
208 | .bus_width = 16, | ||
209 | .chip = egpio_chips, | ||
210 | .num_chips = ARRAY_SIZE(egpio_chips), | ||
211 | }; | ||
212 | |||
213 | static struct platform_device h3xxx_egpio = { | ||
214 | .name = "htc-egpio", | ||
215 | .id = -1, | ||
216 | .resource = egpio_resources, | ||
217 | .num_resources = ARRAY_SIZE(egpio_resources), | ||
218 | .dev = { | ||
219 | .platform_data = &egpio_info, | ||
220 | }, | ||
221 | }; | ||
222 | |||
223 | /* | ||
224 | * GPIO keys | ||
225 | */ | ||
226 | |||
227 | static struct gpio_keys_button h3xxx_button_table[] = { | ||
228 | { | ||
229 | .code = KEY_POWER, | ||
230 | .gpio = H3XXX_GPIO_PWR_BUTTON, | ||
231 | .desc = "Power Button", | ||
232 | .active_low = 1, | ||
233 | .type = EV_KEY, | ||
234 | .wakeup = 1, | ||
235 | }, { | ||
236 | .code = KEY_ENTER, | ||
237 | .gpio = H3XXX_GPIO_ACTION_BUTTON, | ||
238 | .active_low = 1, | ||
239 | .desc = "Action button", | ||
240 | .type = EV_KEY, | ||
241 | .wakeup = 0, | ||
242 | }, | ||
243 | }; | ||
244 | |||
245 | static struct gpio_keys_platform_data h3xxx_keys_data = { | ||
246 | .buttons = h3xxx_button_table, | ||
247 | .nbuttons = ARRAY_SIZE(h3xxx_button_table), | ||
248 | }; | ||
249 | |||
250 | static struct platform_device h3xxx_keys = { | ||
251 | .name = "gpio-keys", | ||
252 | .id = -1, | ||
253 | .dev = { | ||
254 | .platform_data = &h3xxx_keys_data, | ||
255 | }, | ||
256 | }; | ||
257 | |||
258 | static struct platform_device *h3xxx_devices[] = { | ||
259 | &h3xxx_egpio, | ||
260 | &h3xxx_keys, | ||
261 | }; | ||
262 | |||
263 | void __init h3xxx_mach_init(void) | ||
264 | { | ||
265 | sa1100_register_uart_fns(&h3xxx_port_fns); | ||
266 | sa11x0_register_mtd(&h3xxx_flash_data, &h3xxx_flash_resource, 1); | ||
267 | platform_add_devices(h3xxx_devices, ARRAY_SIZE(h3xxx_devices)); | ||
268 | } | ||
269 | |||
270 | static struct map_desc h3600_io_desc[] __initdata = { | ||
271 | { /* static memory bank 2 CS#2 */ | ||
272 | .virtual = H3600_BANK_2_VIRT, | ||
273 | .pfn = __phys_to_pfn(SA1100_CS2_PHYS), | ||
274 | .length = 0x02800000, | ||
275 | .type = MT_DEVICE | ||
276 | }, { /* static memory bank 4 CS#4 */ | ||
277 | .virtual = H3600_BANK_4_VIRT, | ||
278 | .pfn = __phys_to_pfn(SA1100_CS4_PHYS), | ||
279 | .length = 0x00800000, | ||
280 | .type = MT_DEVICE | ||
281 | }, { /* EGPIO 0 CS#5 */ | ||
282 | .virtual = H3600_EGPIO_VIRT, | ||
283 | .pfn = __phys_to_pfn(H3600_EGPIO_PHYS), | ||
284 | .length = 0x01000000, | ||
285 | .type = MT_DEVICE | ||
286 | } | ||
287 | }; | ||
288 | |||
289 | /* | ||
290 | * Common map_io initialization | ||
291 | */ | ||
292 | |||
293 | void __init h3xxx_map_io(void) | ||
294 | { | ||
295 | sa1100_map_io(); | ||
296 | iotable_init(h3600_io_desc, ARRAY_SIZE(h3600_io_desc)); | ||
297 | |||
298 | sa1100_register_uart(0, 3); /* Common serial port */ | ||
299 | // sa1100_register_uart(1, 1); /* Microcontroller on 3100/3600 */ | ||
300 | |||
301 | /* Ensure those pins are outputs and driving low */ | ||
302 | PPDR |= PPC_TXD4 | PPC_SCLK | PPC_SFRM; | ||
303 | PPSR &= ~(PPC_TXD4 | PPC_SCLK | PPC_SFRM); | ||
304 | |||
305 | /* Configure suspend conditions */ | ||
306 | PGSR = 0; | ||
307 | PCFR = PCFR_OPDE; | ||
308 | PSDR = 0; | ||
309 | |||
310 | GPCR = 0x0fffffff; /* All outputs are set low by default */ | ||
311 | GPDR = 0; /* Configure all GPIOs as input */ | ||
312 | } | ||
313 | |||
diff --git a/arch/arm/mach-sa1100/hackkit.c b/arch/arm/mach-sa1100/hackkit.c index e7056c0b562c..51568dfc8e97 100644 --- a/arch/arm/mach-sa1100/hackkit.c +++ b/arch/arm/mach-sa1100/hackkit.c | |||
@@ -187,7 +187,7 @@ static struct resource hackkit_flash_resource = { | |||
187 | 187 | ||
188 | static void __init hackkit_init(void) | 188 | static void __init hackkit_init(void) |
189 | { | 189 | { |
190 | sa11x0_set_flash_data(&hackkit_flash_data, &hackkit_flash_resource, 1); | 190 | sa11x0_register_mtd(&hackkit_flash_data, &hackkit_flash_resource, 1); |
191 | } | 191 | } |
192 | 192 | ||
193 | /********************************************************************** | 193 | /********************************************************************** |
diff --git a/arch/arm/mach-sa1100/include/mach/collie.h b/arch/arm/mach-sa1100/include/mach/collie.h index 9efb569cdb60..71a0b3fdcc8c 100644 --- a/arch/arm/mach-sa1100/include/mach/collie.h +++ b/arch/arm/mach-sa1100/include/mach/collie.h | |||
@@ -25,29 +25,39 @@ | |||
25 | #define COLLIE_GPIO_VPEN (COLLIE_SCOOP_GPIO_BASE + 7) | 25 | #define COLLIE_GPIO_VPEN (COLLIE_SCOOP_GPIO_BASE + 7) |
26 | #define COLLIE_SCP_LB_VOL_CHG SCOOP_GPCR_PA19 | 26 | #define COLLIE_SCP_LB_VOL_CHG SCOOP_GPCR_PA19 |
27 | 27 | ||
28 | #define COLLIE_SCOOP_IO_DIR ( COLLIE_SCP_MUTE_L | COLLIE_SCP_MUTE_R | \ | 28 | #define COLLIE_SCOOP_IO_DIR (COLLIE_SCP_MUTE_L | COLLIE_SCP_MUTE_R | \ |
29 | COLLIE_SCP_5VON | COLLIE_SCP_AMP_ON | \ | 29 | COLLIE_SCP_5VON | COLLIE_SCP_AMP_ON | \ |
30 | COLLIE_SCP_LB_VOL_CHG ) | 30 | COLLIE_SCP_LB_VOL_CHG) |
31 | #define COLLIE_SCOOP_IO_OUT ( COLLIE_SCP_MUTE_L | COLLIE_SCP_MUTE_R ) | 31 | #define COLLIE_SCOOP_IO_OUT (COLLIE_SCP_MUTE_L | COLLIE_SCP_MUTE_R) |
32 | 32 | ||
33 | /* GPIOs for which the generic definition doesn't say much */ | 33 | /* GPIOs for gpiolib */ |
34 | 34 | ||
35 | #define COLLIE_GPIO_ON_KEY GPIO_GPIO (0) | 35 | #define COLLIE_GPIO_ON_KEY (0) |
36 | #define COLLIE_GPIO_AC_IN GPIO_GPIO (1) | 36 | #define COLLIE_GPIO_AC_IN (1) |
37 | #define COLLIE_GPIO_SDIO_INT GPIO_GPIO (11) | 37 | #define COLLIE_GPIO_SDIO_INT (11) |
38 | #define COLLIE_GPIO_CF_IRQ GPIO_GPIO (14) | 38 | #define COLLIE_GPIO_CF_IRQ (14) |
39 | #define COLLIE_GPIO_nREMOCON_INT GPIO_GPIO (15) | 39 | #define COLLIE_GPIO_nREMOCON_INT (15) |
40 | #define COLLIE_GPIO_UCB1x00_RESET GPIO_GPIO (16) | 40 | #define COLLIE_GPIO_UCB1x00_RESET (16) |
41 | #define COLLIE_GPIO_nMIC_ON GPIO_GPIO (17) | 41 | #define COLLIE_GPIO_nMIC_ON (17) |
42 | #define COLLIE_GPIO_nREMOCON_ON GPIO_GPIO (18) | 42 | #define COLLIE_GPIO_nREMOCON_ON (18) |
43 | #define COLLIE_GPIO_CO GPIO_GPIO (20) | 43 | #define COLLIE_GPIO_CO (20) |
44 | #define COLLIE_GPIO_MCP_CLK GPIO_GPIO (21) | 44 | #define COLLIE_GPIO_MCP_CLK (21) |
45 | #define COLLIE_GPIO_CF_CD GPIO_GPIO (22) | 45 | #define COLLIE_GPIO_CF_CD (22) |
46 | #define COLLIE_GPIO_UCB1x00_IRQ GPIO_GPIO (23) | 46 | #define COLLIE_GPIO_UCB1x00_IRQ (23) |
47 | #define COLLIE_GPIO_WAKEUP GPIO_GPIO (24) | 47 | #define COLLIE_GPIO_WAKEUP (24) |
48 | #define COLLIE_GPIO_GA_INT GPIO_GPIO (25) | 48 | #define COLLIE_GPIO_GA_INT (25) |
49 | #define COLLIE_GPIO_MAIN_BAT_LOW GPIO_GPIO (26) | 49 | #define COLLIE_GPIO_MAIN_BAT_LOW (26) |
50 | 50 | ||
51 | /* GPIO definitions for direct register access */ | ||
52 | |||
53 | #define _COLLIE_GPIO_ON_KEY GPIO_GPIO(0) | ||
54 | #define _COLLIE_GPIO_AC_IN GPIO_GPIO(1) | ||
55 | #define _COLLIE_GPIO_nREMOCON_INT GPIO_GPIO(15) | ||
56 | #define _COLLIE_GPIO_UCB1x00_RESET GPIO_GPIO(16) | ||
57 | #define _COLLIE_GPIO_nMIC_ON GPIO_GPIO(17) | ||
58 | #define _COLLIE_GPIO_nREMOCON_ON GPIO_GPIO(18) | ||
59 | #define _COLLIE_GPIO_CO GPIO_GPIO(20) | ||
60 | #define _COLLIE_GPIO_WAKEUP GPIO_GPIO(24) | ||
51 | /* Interrupts */ | 61 | /* Interrupts */ |
52 | 62 | ||
53 | #define COLLIE_IRQ_GPIO_ON_KEY IRQ_GPIO0 | 63 | #define COLLIE_IRQ_GPIO_ON_KEY IRQ_GPIO0 |
@@ -70,19 +80,20 @@ | |||
70 | #define COLLIE_LCM_IRQ_GPIO_nSD_WP IRQ_LOCOMO_GPIO14 | 80 | #define COLLIE_LCM_IRQ_GPIO_nSD_WP IRQ_LOCOMO_GPIO14 |
71 | 81 | ||
72 | /* GPIO's on the TC35143AF (Toshiba Analog Frontend) */ | 82 | /* GPIO's on the TC35143AF (Toshiba Analog Frontend) */ |
73 | #define COLLIE_TC35143_GPIO_VERSION0 UCB_IO_0 /* GPIO0=Version */ | 83 | #define COLLIE_TC35143_GPIO_BASE (GPIO_MAX + 13) |
74 | #define COLLIE_TC35143_GPIO_TBL_CHK UCB_IO_1 /* GPIO1=TBL_CHK */ | 84 | #define COLLIE_TC35143_GPIO_VERSION0 UCB_IO_0 |
75 | #define COLLIE_TC35143_GPIO_VPEN_ON UCB_IO_2 /* GPIO2=VPNE_ON */ | 85 | #define COLLIE_TC35143_GPIO_TBL_CHK UCB_IO_1 |
76 | #define COLLIE_TC35143_GPIO_IR_ON UCB_IO_3 /* GPIO3=IR_ON */ | 86 | #define COLLIE_TC35143_GPIO_VPEN_ON UCB_IO_2 |
77 | #define COLLIE_TC35143_GPIO_AMP_ON UCB_IO_4 /* GPIO4=AMP_ON */ | 87 | #define COLLIE_TC35143_GPIO_IR_ON UCB_IO_3 |
78 | #define COLLIE_TC35143_GPIO_VERSION1 UCB_IO_5 /* GPIO5=Version */ | 88 | #define COLLIE_TC35143_GPIO_AMP_ON UCB_IO_4 |
79 | #define COLLIE_TC35143_GPIO_FS8KLPF UCB_IO_5 /* GPIO5=fs 8k LPF */ | 89 | #define COLLIE_TC35143_GPIO_VERSION1 UCB_IO_5 |
80 | #define COLLIE_TC35143_GPIO_BUZZER_BIAS UCB_IO_6 /* GPIO6=BUZZER BIAS */ | 90 | #define COLLIE_TC35143_GPIO_FS8KLPF UCB_IO_5 |
81 | #define COLLIE_TC35143_GPIO_MBAT_ON UCB_IO_7 /* GPIO7=MBAT_ON */ | 91 | #define COLLIE_TC35143_GPIO_BUZZER_BIAS UCB_IO_6 |
82 | #define COLLIE_TC35143_GPIO_BBAT_ON UCB_IO_8 /* GPIO8=BBAT_ON */ | 92 | #define COLLIE_GPIO_MBAT_ON (COLLIE_TC35143_GPIO_BASE + 7) |
83 | #define COLLIE_TC35143_GPIO_TMP_ON UCB_IO_9 /* GPIO9=TMP_ON */ | 93 | #define COLLIE_GPIO_BBAT_ON (COLLIE_TC35143_GPIO_BASE + 8) |
84 | #define COLLIE_TC35143_GPIO_IN ( UCB_IO_0 | UCB_IO_2 | UCB_IO_5 ) | 94 | #define COLLIE_GPIO_TMP_ON (COLLIE_TC35143_GPIO_BASE + 9) |
85 | #define COLLIE_TC35143_GPIO_OUT ( UCB_IO_1 | UCB_IO_3 | UCB_IO_4 | UCB_IO_6 | \ | 95 | #define COLLIE_TC35143_GPIO_IN (UCB_IO_0 | UCB_IO_2 | UCB_IO_5) |
86 | UCB_IO_7 | UCB_IO_8 | UCB_IO_9 ) | 96 | #define COLLIE_TC35143_GPIO_OUT (UCB_IO_1 | UCB_IO_3 | UCB_IO_4 \ |
97 | | UCB_IO_6) | ||
87 | 98 | ||
88 | #endif | 99 | #endif |
diff --git a/arch/arm/mach-sa1100/include/mach/gpio.h b/arch/arm/mach-sa1100/include/mach/gpio.h index 582a0c92da53..7befc104e9a9 100644 --- a/arch/arm/mach-sa1100/include/mach/gpio.h +++ b/arch/arm/mach-sa1100/include/mach/gpio.h | |||
@@ -49,20 +49,9 @@ static inline void gpio_set_value(unsigned gpio, int value) | |||
49 | 49 | ||
50 | #define gpio_cansleep __gpio_cansleep | 50 | #define gpio_cansleep __gpio_cansleep |
51 | 51 | ||
52 | static inline unsigned gpio_to_irq(unsigned gpio) | 52 | #define gpio_to_irq(gpio) ((gpio < 11) ? (IRQ_GPIO0 + gpio) : \ |
53 | { | 53 | (IRQ_GPIO11 - 11 + gpio)) |
54 | if (gpio < 11) | 54 | #define irq_to_gpio(irq) ((irq < IRQ_GPIO11_27) ? (irq - IRQ_GPIO0) : \ |
55 | return IRQ_GPIO0 + gpio; | 55 | (irq - IRQ_GPIO11 + 11)) |
56 | else | ||
57 | return IRQ_GPIO11 - 11 + gpio; | ||
58 | } | ||
59 | |||
60 | static inline unsigned irq_to_gpio(unsigned irq) | ||
61 | { | ||
62 | if (irq < IRQ_GPIO11_27) | ||
63 | return irq - IRQ_GPIO0; | ||
64 | else | ||
65 | return irq - IRQ_GPIO11 + 11; | ||
66 | } | ||
67 | 56 | ||
68 | #endif | 57 | #endif |
diff --git a/arch/arm/mach-sa1100/include/mach/h3600.h b/arch/arm/mach-sa1100/include/mach/h3600.h deleted file mode 100644 index 2827faa47421..000000000000 --- a/arch/arm/mach-sa1100/include/mach/h3600.h +++ /dev/null | |||
@@ -1,100 +0,0 @@ | |||
1 | /* | ||
2 | * | ||
3 | * Definitions for H3600 Handheld Computer | ||
4 | * | ||
5 | * Copyright 2000 Compaq Computer Corporation. | ||
6 | * | ||
7 | * Use consistent with the GNU GPL is permitted, | ||
8 | * provided that this copyright notice is | ||
9 | * preserved in its entirety in all copies and derived works. | ||
10 | * | ||
11 | * COMPAQ COMPUTER CORPORATION MAKES NO WARRANTIES, EXPRESSED OR IMPLIED, | ||
12 | * AS TO THE USEFULNESS OR CORRECTNESS OF THIS CODE OR ITS | ||
13 | * FITNESS FOR ANY PARTICULAR PURPOSE. | ||
14 | * | ||
15 | * Author: Jamey Hicks. | ||
16 | * | ||
17 | * History: | ||
18 | * | ||
19 | * 2001-10-?? Andrew Christian Added support for iPAQ H3800 | ||
20 | * | ||
21 | */ | ||
22 | |||
23 | #ifndef _INCLUDE_H3600_H_ | ||
24 | #define _INCLUDE_H3600_H_ | ||
25 | |||
26 | typedef int __bitwise pm_request_t; | ||
27 | |||
28 | #define PM_SUSPEND ((__force pm_request_t) 1) /* enter D1-D3 */ | ||
29 | #define PM_RESUME ((__force pm_request_t) 2) /* enter D0 */ | ||
30 | |||
31 | /* generalized support for H3xxx series Compaq Pocket PC's */ | ||
32 | #define machine_is_h3xxx() (machine_is_h3100() || machine_is_h3600()) | ||
33 | |||
34 | /* Physical memory regions corresponding to chip selects */ | ||
35 | #define H3600_EGPIO_PHYS (SA1100_CS5_PHYS + 0x01000000) | ||
36 | #define H3600_BANK_2_PHYS SA1100_CS2_PHYS | ||
37 | #define H3600_BANK_4_PHYS SA1100_CS4_PHYS | ||
38 | |||
39 | /* Virtual memory regions corresponding to chip selects 2 & 4 (used on sleeves) */ | ||
40 | #define H3600_EGPIO_VIRT 0xf0000000 | ||
41 | #define H3600_BANK_2_VIRT 0xf1000000 | ||
42 | #define H3600_BANK_4_VIRT 0xf3800000 | ||
43 | |||
44 | /* | ||
45 | Machine-independent GPIO definitions | ||
46 | --- these are common across all current iPAQ platforms | ||
47 | */ | ||
48 | |||
49 | #define GPIO_H3600_NPOWER_BUTTON GPIO_GPIO (0) /* Also known as the "off button" */ | ||
50 | |||
51 | #define GPIO_H3600_PCMCIA_CD1 GPIO_GPIO (10) | ||
52 | #define GPIO_H3600_PCMCIA_IRQ1 GPIO_GPIO (11) | ||
53 | |||
54 | /* UDA1341 L3 Interface */ | ||
55 | #define GPIO_H3600_L3_DATA GPIO_GPIO (14) | ||
56 | #define GPIO_H3600_L3_MODE GPIO_GPIO (15) | ||
57 | #define GPIO_H3600_L3_CLOCK GPIO_GPIO (16) | ||
58 | |||
59 | #define GPIO_H3600_PCMCIA_CD0 GPIO_GPIO (17) | ||
60 | #define GPIO_H3600_SYS_CLK GPIO_GPIO (19) | ||
61 | #define GPIO_H3600_PCMCIA_IRQ0 GPIO_GPIO (21) | ||
62 | |||
63 | #define GPIO_H3600_COM_DCD GPIO_GPIO (23) | ||
64 | #define GPIO_H3600_OPT_IRQ GPIO_GPIO (24) | ||
65 | #define GPIO_H3600_COM_CTS GPIO_GPIO (25) | ||
66 | #define GPIO_H3600_COM_RTS GPIO_GPIO (26) | ||
67 | |||
68 | #define IRQ_GPIO_H3600_NPOWER_BUTTON IRQ_GPIO0 | ||
69 | #define IRQ_GPIO_H3600_PCMCIA_CD1 IRQ_GPIO10 | ||
70 | #define IRQ_GPIO_H3600_PCMCIA_IRQ1 IRQ_GPIO11 | ||
71 | #define IRQ_GPIO_H3600_PCMCIA_CD0 IRQ_GPIO17 | ||
72 | #define IRQ_GPIO_H3600_PCMCIA_IRQ0 IRQ_GPIO21 | ||
73 | #define IRQ_GPIO_H3600_COM_DCD IRQ_GPIO23 | ||
74 | #define IRQ_GPIO_H3600_OPT_IRQ IRQ_GPIO24 | ||
75 | #define IRQ_GPIO_H3600_COM_CTS IRQ_GPIO25 | ||
76 | |||
77 | |||
78 | #ifndef __ASSEMBLY__ | ||
79 | |||
80 | enum ipaq_egpio_type { | ||
81 | IPAQ_EGPIO_LCD_POWER, /* Power to the LCD panel */ | ||
82 | IPAQ_EGPIO_CODEC_NRESET, /* Clear to reset the audio codec (remember to return high) */ | ||
83 | IPAQ_EGPIO_AUDIO_ON, /* Audio power */ | ||
84 | IPAQ_EGPIO_QMUTE, /* Audio muting */ | ||
85 | IPAQ_EGPIO_OPT_NVRAM_ON, /* Non-volatile RAM on extension sleeves (SPI interface) */ | ||
86 | IPAQ_EGPIO_OPT_ON, /* Power to extension sleeves */ | ||
87 | IPAQ_EGPIO_CARD_RESET, /* Reset PCMCIA cards on extension sleeve (???) */ | ||
88 | IPAQ_EGPIO_OPT_RESET, /* Reset option pack (???) */ | ||
89 | IPAQ_EGPIO_IR_ON, /* IR sensor/emitter power */ | ||
90 | IPAQ_EGPIO_IR_FSEL, /* IR speed selection 1->fast, 0->slow */ | ||
91 | IPAQ_EGPIO_RS232_ON, /* Maxim RS232 chip power */ | ||
92 | IPAQ_EGPIO_VPP_ON, /* Turn on power to flash programming */ | ||
93 | IPAQ_EGPIO_LCD_ENABLE, /* Enable/disable LCD controller */ | ||
94 | }; | ||
95 | |||
96 | extern void (*assign_h3600_egpio)(enum ipaq_egpio_type x, int level); | ||
97 | |||
98 | #endif /* ASSEMBLY */ | ||
99 | |||
100 | #endif /* _INCLUDE_H3600_H_ */ | ||
diff --git a/arch/arm/mach-sa1100/include/mach/h3600_gpio.h b/arch/arm/mach-sa1100/include/mach/h3600_gpio.h deleted file mode 100644 index a36ca76d018b..000000000000 --- a/arch/arm/mach-sa1100/include/mach/h3600_gpio.h +++ /dev/null | |||
@@ -1,77 +0,0 @@ | |||
1 | /* | ||
2 | * | ||
3 | * Definitions for H3600 Handheld Computer | ||
4 | * | ||
5 | * Copyright 2000 Compaq Computer Corporation. | ||
6 | * | ||
7 | * Use consistent with the GNU GPL is permitted, | ||
8 | * provided that this copyright notice is | ||
9 | * preserved in its entirety in all copies and derived works. | ||
10 | * | ||
11 | * COMPAQ COMPUTER CORPORATION MAKES NO WARRANTIES, EXPRESSED OR IMPLIED, | ||
12 | * AS TO THE USEFULNESS OR CORRECTNESS OF THIS CODE OR ITS | ||
13 | * FITNESS FOR ANY PARTICULAR PURPOSE. | ||
14 | * | ||
15 | * Author: Jamey Hicks. | ||
16 | * | ||
17 | * History: | ||
18 | * | ||
19 | * 2001-10-?? Andrew Christian Added support for iPAQ H3800 | ||
20 | * | ||
21 | */ | ||
22 | |||
23 | #ifndef _INCLUDE_H3600_GPIO_H_ | ||
24 | #define _INCLUDE_H3600_GPIO_H_ | ||
25 | |||
26 | /* | ||
27 | * GPIO lines that are common across ALL iPAQ models are in "h3600.h" | ||
28 | * This file contains machine-specific definitions | ||
29 | */ | ||
30 | |||
31 | #define GPIO_H3600_SUSPEND GPIO_GPIO (0) | ||
32 | /* GPIO[2:9] used by LCD on H3600/3800, used as GPIO on H3100 */ | ||
33 | #define GPIO_H3100_BT_ON GPIO_GPIO (2) | ||
34 | #define GPIO_H3100_GPIO3 GPIO_GPIO (3) | ||
35 | #define GPIO_H3100_QMUTE GPIO_GPIO (4) | ||
36 | #define GPIO_H3100_LCD_3V_ON GPIO_GPIO (5) | ||
37 | #define GPIO_H3100_AUD_ON GPIO_GPIO (6) | ||
38 | #define GPIO_H3100_AUD_PWR_ON GPIO_GPIO (7) | ||
39 | #define GPIO_H3100_IR_ON GPIO_GPIO (8) | ||
40 | #define GPIO_H3100_IR_FSEL GPIO_GPIO (9) | ||
41 | |||
42 | /* for H3600, audio sample rate clock generator */ | ||
43 | #define GPIO_H3600_CLK_SET0 GPIO_GPIO (12) | ||
44 | #define GPIO_H3600_CLK_SET1 GPIO_GPIO (13) | ||
45 | |||
46 | #define GPIO_H3600_ACTION_BUTTON GPIO_GPIO (18) | ||
47 | #define GPIO_H3600_SOFT_RESET GPIO_GPIO (20) /* Also known as BATT_FAULT */ | ||
48 | #define GPIO_H3600_OPT_LOCK GPIO_GPIO (22) | ||
49 | #define GPIO_H3600_OPT_DET GPIO_GPIO (27) | ||
50 | |||
51 | /****************************************************/ | ||
52 | |||
53 | #define IRQ_GPIO_H3600_ACTION_BUTTON IRQ_GPIO18 | ||
54 | #define IRQ_GPIO_H3600_OPT_DET IRQ_GPIO27 | ||
55 | |||
56 | /* H3100 / 3600 EGPIO pins */ | ||
57 | #define EGPIO_H3600_VPP_ON (1 << 0) | ||
58 | #define EGPIO_H3600_CARD_RESET (1 << 1) /* reset the attached pcmcia/compactflash card. active high. */ | ||
59 | #define EGPIO_H3600_OPT_RESET (1 << 2) /* reset the attached option pack. active high. */ | ||
60 | #define EGPIO_H3600_CODEC_NRESET (1 << 3) /* reset the onboard UDA1341. active low. */ | ||
61 | #define EGPIO_H3600_OPT_NVRAM_ON (1 << 4) /* apply power to optionpack nvram, active high. */ | ||
62 | #define EGPIO_H3600_OPT_ON (1 << 5) /* full power to option pack. active high. */ | ||
63 | #define EGPIO_H3600_LCD_ON (1 << 6) /* enable 3.3V to LCD. active high. */ | ||
64 | #define EGPIO_H3600_RS232_ON (1 << 7) /* UART3 transceiver force on. Active high. */ | ||
65 | |||
66 | /* H3600 only EGPIO pins */ | ||
67 | #define EGPIO_H3600_LCD_PCI (1 << 8) /* LCD control IC enable. active high. */ | ||
68 | #define EGPIO_H3600_IR_ON (1 << 9) /* apply power to IR module. active high. */ | ||
69 | #define EGPIO_H3600_AUD_AMP_ON (1 << 10) /* apply power to audio power amp. active high. */ | ||
70 | #define EGPIO_H3600_AUD_PWR_ON (1 << 11) /* apply power to reset of audio circuit. active high. */ | ||
71 | #define EGPIO_H3600_QMUTE (1 << 12) /* mute control for onboard UDA1341. active high. */ | ||
72 | #define EGPIO_H3600_IR_FSEL (1 << 13) /* IR speed select: 1->fast, 0->slow */ | ||
73 | #define EGPIO_H3600_LCD_5V_ON (1 << 14) /* enable 5V to LCD. active high. */ | ||
74 | #define EGPIO_H3600_LVDD_ON (1 << 15) /* enable 9V and -6.5V to LCD. */ | ||
75 | |||
76 | |||
77 | #endif /* _INCLUDE_H3600_GPIO_H_ */ | ||
diff --git a/arch/arm/mach-sa1100/include/mach/h3xxx.h b/arch/arm/mach-sa1100/include/mach/h3xxx.h new file mode 100644 index 000000000000..7d9df16f04a2 --- /dev/null +++ b/arch/arm/mach-sa1100/include/mach/h3xxx.h | |||
@@ -0,0 +1,94 @@ | |||
1 | /* | ||
2 | * Definitions for Compaq iPAQ H3100 and H3600 handheld computers | ||
3 | * | ||
4 | * (c) 2000 Compaq Computer Corporation. (Author: Jamey Hicks) | ||
5 | * (c) 2009 Dmitry Artamonow <mad_soft@inbox.ru> | ||
6 | * | ||
7 | * This program is free software; you can redistribute it and/or modify | ||
8 | * it under the terms of the GNU General Public License version 2 as | ||
9 | * published by the Free Software Foundation. | ||
10 | * | ||
11 | */ | ||
12 | |||
13 | #ifndef _INCLUDE_H3XXX_H_ | ||
14 | #define _INCLUDE_H3XXX_H_ | ||
15 | |||
16 | /* Physical memory regions corresponding to chip selects */ | ||
17 | #define H3600_EGPIO_PHYS (SA1100_CS5_PHYS + 0x01000000) | ||
18 | #define H3600_BANK_2_PHYS SA1100_CS2_PHYS | ||
19 | #define H3600_BANK_4_PHYS SA1100_CS4_PHYS | ||
20 | |||
21 | /* Virtual memory regions corresponding to chip selects 2 & 4 (used on sleeves) */ | ||
22 | #define H3600_EGPIO_VIRT 0xf0000000 | ||
23 | #define H3600_BANK_2_VIRT 0xf1000000 | ||
24 | #define H3600_BANK_4_VIRT 0xf3800000 | ||
25 | |||
26 | /* | ||
27 | * gpiolib numbers for all iPAQs | ||
28 | */ | ||
29 | #define H3XXX_GPIO_PWR_BUTTON 0 | ||
30 | #define H3XXX_GPIO_PCMCIA_CD1 10 | ||
31 | #define H3XXX_GPIO_PCMCIA_IRQ1 11 | ||
32 | #define H3XXX_GPIO_PCMCIA_CD0 17 | ||
33 | #define H3XXX_GPIO_ACTION_BUTTON 18 | ||
34 | #define H3XXX_GPIO_SYS_CLK 19 | ||
35 | #define H3XXX_GPIO_PCMCIA_IRQ0 21 | ||
36 | #define H3XXX_GPIO_COM_DCD 23 | ||
37 | #define H3XXX_GPIO_OPTION 24 | ||
38 | #define H3XXX_GPIO_COM_CTS 25 | ||
39 | #define H3XXX_GPIO_COM_RTS 26 | ||
40 | |||
41 | /* machine-specific gpios */ | ||
42 | |||
43 | #define H3100_GPIO_BT_ON 2 | ||
44 | #define H3100_GPIO_QMUTE 4 | ||
45 | #define H3100_GPIO_LCD_3V_ON 5 | ||
46 | #define H3100_GPIO_AUD_ON 6 | ||
47 | #define H3100_GPIO_AUD_PWR_ON 7 | ||
48 | #define H3100_GPIO_IR_ON 8 | ||
49 | #define H3100_GPIO_IR_FSEL 9 | ||
50 | |||
51 | #define H3600_GPIO_CLK_SET0 12 /* audio sample rate clock generator */ | ||
52 | #define H3600_GPIO_CLK_SET1 13 | ||
53 | #define H3600_GPIO_SOFT_RESET 20 /* also known as BATT_FAULT */ | ||
54 | #define H3600_GPIO_OPT_LOCK 22 | ||
55 | #define H3600_GPIO_OPT_DET 27 | ||
56 | |||
57 | |||
58 | /* H3100 / 3600 EGPIO pins */ | ||
59 | #define H3XXX_EGPIO_BASE (GPIO_MAX + 1) | ||
60 | |||
61 | #define H3XXX_EGPIO_VPP_ON (H3XXX_EGPIO_BASE + 0) | ||
62 | #define H3XXX_EGPIO_CARD_RESET (H3XXX_EGPIO_BASE + 1) /* reset the attached pcmcia/compactflash card. active high. */ | ||
63 | #define H3XXX_EGPIO_OPT_RESET (H3XXX_EGPIO_BASE + 2) /* reset the attached option pack. active high. */ | ||
64 | #define H3XXX_EGPIO_CODEC_NRESET (H3XXX_EGPIO_BASE + 3) /* reset the onboard UDA1341. active low. */ | ||
65 | #define H3XXX_EGPIO_OPT_NVRAM_ON (H3XXX_EGPIO_BASE + 4) /* apply power to optionpack nvram, active high. */ | ||
66 | #define H3XXX_EGPIO_OPT_ON (H3XXX_EGPIO_BASE + 5) /* full power to option pack. active high. */ | ||
67 | #define H3XXX_EGPIO_LCD_ON (H3XXX_EGPIO_BASE + 6) /* enable 3.3V to LCD. active high. */ | ||
68 | #define H3XXX_EGPIO_RS232_ON (H3XXX_EGPIO_BASE + 7) /* UART3 transceiver force on. Active high. */ | ||
69 | |||
70 | /* H3600 only EGPIO pins */ | ||
71 | #define H3600_EGPIO_LCD_PCI (H3XXX_EGPIO_BASE + 8) /* LCD control IC enable. active high. */ | ||
72 | #define H3600_EGPIO_IR_ON (H3XXX_EGPIO_BASE + 9) /* apply power to IR module. active high. */ | ||
73 | #define H3600_EGPIO_AUD_AMP_ON (H3XXX_EGPIO_BASE + 10) /* apply power to audio power amp. active high. */ | ||
74 | #define H3600_EGPIO_AUD_PWR_ON (H3XXX_EGPIO_BASE + 11) /* apply power to reset of audio circuit. active high. */ | ||
75 | #define H3600_EGPIO_QMUTE (H3XXX_EGPIO_BASE + 12) /* mute control for onboard UDA1341. active high. */ | ||
76 | #define H3600_EGPIO_IR_FSEL (H3XXX_EGPIO_BASE + 13) /* IR speed select: 1->fast, 0->slow */ | ||
77 | #define H3600_EGPIO_LCD_5V_ON (H3XXX_EGPIO_BASE + 14) /* enable 5V to LCD. active high. */ | ||
78 | #define H3600_EGPIO_LVDD_ON (H3XXX_EGPIO_BASE + 15) /* enable 9V and -6.5V to LCD. */ | ||
79 | |||
80 | struct gpio_default_state { | ||
81 | int gpio; | ||
82 | int mode; | ||
83 | const char *name; | ||
84 | }; | ||
85 | |||
86 | #define GPIO_MODE_IN -1 | ||
87 | #define GPIO_MODE_OUT0 0 | ||
88 | #define GPIO_MODE_OUT1 1 | ||
89 | |||
90 | void h3xxx_init_gpio(struct gpio_default_state *s, size_t n); | ||
91 | void __init h3xxx_map_io(void); | ||
92 | void __init h3xxx_mach_init(void); | ||
93 | |||
94 | #endif /* _INCLUDE_H3XXX_H_ */ | ||
diff --git a/arch/arm/mach-sa1100/include/mach/mcp.h b/arch/arm/mach-sa1100/include/mach/mcp.h index fb8b09a57ad7..ed1a331508a7 100644 --- a/arch/arm/mach-sa1100/include/mach/mcp.h +++ b/arch/arm/mach-sa1100/include/mach/mcp.h | |||
@@ -16,6 +16,7 @@ struct mcp_plat_data { | |||
16 | u32 mccr0; | 16 | u32 mccr0; |
17 | u32 mccr1; | 17 | u32 mccr1; |
18 | unsigned int sclk_rate; | 18 | unsigned int sclk_rate; |
19 | int gpio_base; | ||
19 | }; | 20 | }; |
20 | 21 | ||
21 | #endif | 22 | #endif |
diff --git a/arch/arm/mach-sa1100/jornada720.c b/arch/arm/mach-sa1100/jornada720.c index fd776bb666cd..13ebd2d99bfd 100644 --- a/arch/arm/mach-sa1100/jornada720.c +++ b/arch/arm/mach-sa1100/jornada720.c | |||
@@ -354,7 +354,7 @@ static struct resource jornada720_flash_resource = { | |||
354 | 354 | ||
355 | static void __init jornada720_mach_init(void) | 355 | static void __init jornada720_mach_init(void) |
356 | { | 356 | { |
357 | sa11x0_set_flash_data(&jornada720_flash_data, &jornada720_flash_resource, 1); | 357 | sa11x0_register_mtd(&jornada720_flash_data, &jornada720_flash_resource, 1); |
358 | } | 358 | } |
359 | 359 | ||
360 | MACHINE_START(JORNADA720, "HP Jornada 720") | 360 | MACHINE_START(JORNADA720, "HP Jornada 720") |
diff --git a/arch/arm/mach-sa1100/lart.c b/arch/arm/mach-sa1100/lart.c index 1f940df0e5af..68069d6dc07a 100644 --- a/arch/arm/mach-sa1100/lart.c +++ b/arch/arm/mach-sa1100/lart.c | |||
@@ -28,7 +28,7 @@ static struct mcp_plat_data lart_mcp_data = { | |||
28 | 28 | ||
29 | static void __init lart_init(void) | 29 | static void __init lart_init(void) |
30 | { | 30 | { |
31 | sa11x0_set_mcp_data(&lart_mcp_data); | 31 | sa11x0_register_mcp(&lart_mcp_data); |
32 | } | 32 | } |
33 | 33 | ||
34 | static struct map_desc lart_io_desc[] __initdata = { | 34 | static struct map_desc lart_io_desc[] __initdata = { |
diff --git a/arch/arm/mach-sa1100/pleb.c b/arch/arm/mach-sa1100/pleb.c index e1458bc1868e..1ccd6018d3a3 100644 --- a/arch/arm/mach-sa1100/pleb.c +++ b/arch/arm/mach-sa1100/pleb.c | |||
@@ -109,7 +109,7 @@ static struct flash_platform_data pleb_flash_data = { | |||
109 | 109 | ||
110 | static void __init pleb_init(void) | 110 | static void __init pleb_init(void) |
111 | { | 111 | { |
112 | sa11x0_set_flash_data(&pleb_flash_data, pleb_flash_resources, | 112 | sa11x0_register_mtd(&pleb_flash_data, pleb_flash_resources, |
113 | ARRAY_SIZE(pleb_flash_resources)); | 113 | ARRAY_SIZE(pleb_flash_resources)); |
114 | 114 | ||
115 | 115 | ||
diff --git a/arch/arm/mach-sa1100/shannon.c b/arch/arm/mach-sa1100/shannon.c index ddd917d1083d..85e82bb73d7e 100644 --- a/arch/arm/mach-sa1100/shannon.c +++ b/arch/arm/mach-sa1100/shannon.c | |||
@@ -59,8 +59,8 @@ static struct mcp_plat_data shannon_mcp_data = { | |||
59 | 59 | ||
60 | static void __init shannon_init(void) | 60 | static void __init shannon_init(void) |
61 | { | 61 | { |
62 | sa11x0_set_flash_data(&shannon_flash_data, &shannon_flash_resource, 1); | 62 | sa11x0_register_mtd(&shannon_flash_data, &shannon_flash_resource, 1); |
63 | sa11x0_set_mcp_data(&shannon_mcp_data); | 63 | sa11x0_register_mcp(&shannon_mcp_data); |
64 | } | 64 | } |
65 | 65 | ||
66 | static void __init shannon_map_io(void) | 66 | static void __init shannon_map_io(void) |
diff --git a/arch/arm/mach-sa1100/simpad.c b/arch/arm/mach-sa1100/simpad.c index 3c74534f7fee..49cfd64663ac 100644 --- a/arch/arm/mach-sa1100/simpad.c +++ b/arch/arm/mach-sa1100/simpad.c | |||
@@ -166,9 +166,9 @@ static void __init simpad_map_io(void) | |||
166 | PCFR = 0; | 166 | PCFR = 0; |
167 | PSDR = 0; | 167 | PSDR = 0; |
168 | 168 | ||
169 | sa11x0_set_flash_data(&simpad_flash_data, simpad_flash_resources, | 169 | sa11x0_register_mtd(&simpad_flash_data, simpad_flash_resources, |
170 | ARRAY_SIZE(simpad_flash_resources)); | 170 | ARRAY_SIZE(simpad_flash_resources)); |
171 | sa11x0_set_mcp_data(&simpad_mcp_data); | 171 | sa11x0_register_mcp(&simpad_mcp_data); |
172 | } | 172 | } |
173 | 173 | ||
174 | static void simpad_power_off(void) | 174 | static void simpad_power_off(void) |