diff options
Diffstat (limited to 'arch')
68 files changed, 634 insertions, 440 deletions
diff --git a/arch/alpha/kernel/process.c b/arch/alpha/kernel/process.c index fa98dae3cd98..eb20c3afff58 100644 --- a/arch/alpha/kernel/process.c +++ b/arch/alpha/kernel/process.c | |||
@@ -127,6 +127,10 @@ common_shutdown_1(void *generic_ptr) | |||
127 | /* If booted from SRM, reset some of the original environment. */ | 127 | /* If booted from SRM, reset some of the original environment. */ |
128 | if (alpha_using_srm) { | 128 | if (alpha_using_srm) { |
129 | #ifdef CONFIG_DUMMY_CONSOLE | 129 | #ifdef CONFIG_DUMMY_CONSOLE |
130 | /* If we've gotten here after SysRq-b, leave interrupt | ||
131 | context before taking over the console. */ | ||
132 | if (in_interrupt()) | ||
133 | irq_exit(); | ||
130 | /* This has the effect of resetting the VGA video origin. */ | 134 | /* This has the effect of resetting the VGA video origin. */ |
131 | take_over_console(&dummy_con, 0, MAX_NR_CONSOLES-1, 1); | 135 | take_over_console(&dummy_con, 0, MAX_NR_CONSOLES-1, 1); |
132 | #endif | 136 | #endif |
diff --git a/arch/arm/Makefile b/arch/arm/Makefile index 130e6228b587..7779f2d1acad 100644 --- a/arch/arm/Makefile +++ b/arch/arm/Makefile | |||
@@ -175,10 +175,10 @@ else | |||
175 | endif | 175 | endif |
176 | @touch $@ | 176 | @touch $@ |
177 | 177 | ||
178 | archprepare: maketools include/asm-arm/.arch | 178 | archprepare: maketools |
179 | 179 | ||
180 | .PHONY: maketools FORCE | 180 | .PHONY: maketools FORCE |
181 | maketools: include/linux/version.h FORCE | 181 | maketools: include/linux/version.h include/asm-arm/.arch FORCE |
182 | $(Q)$(MAKE) $(build)=arch/arm/tools include/asm-arm/mach-types.h | 182 | $(Q)$(MAKE) $(build)=arch/arm/tools include/asm-arm/mach-types.h |
183 | 183 | ||
184 | # Convert bzImage to zImage | 184 | # Convert bzImage to zImage |
diff --git a/arch/arm/configs/ixp4xx_defconfig b/arch/arm/configs/ixp4xx_defconfig index 94aafec5fb46..c279e41ed10e 100644 --- a/arch/arm/configs/ixp4xx_defconfig +++ b/arch/arm/configs/ixp4xx_defconfig | |||
@@ -1,14 +1,13 @@ | |||
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-rc1-bk2 | 3 | # Linux kernel version: 2.6.14-rc1-git5 |
4 | # Sun Mar 27 22:53:40 2005 | 4 | # Tue Sep 20 17:26:28 2005 |
5 | # | 5 | # |
6 | CONFIG_ARM=y | 6 | CONFIG_ARM=y |
7 | CONFIG_MMU=y | 7 | CONFIG_MMU=y |
8 | CONFIG_UID16=y | 8 | CONFIG_UID16=y |
9 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 9 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
10 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 10 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
11 | CONFIG_GENERIC_IOMAP=y | ||
12 | 11 | ||
13 | # | 12 | # |
14 | # Code maturity level options | 13 | # Code maturity level options |
@@ -16,11 +15,13 @@ CONFIG_GENERIC_IOMAP=y | |||
16 | CONFIG_EXPERIMENTAL=y | 15 | CONFIG_EXPERIMENTAL=y |
17 | CONFIG_CLEAN_COMPILE=y | 16 | CONFIG_CLEAN_COMPILE=y |
18 | CONFIG_BROKEN_ON_SMP=y | 17 | CONFIG_BROKEN_ON_SMP=y |
18 | CONFIG_INIT_ENV_ARG_LIMIT=32 | ||
19 | 19 | ||
20 | # | 20 | # |
21 | # General setup | 21 | # General setup |
22 | # | 22 | # |
23 | CONFIG_LOCALVERSION="" | 23 | CONFIG_LOCALVERSION="" |
24 | CONFIG_LOCALVERSION_AUTO=y | ||
24 | CONFIG_SWAP=y | 25 | CONFIG_SWAP=y |
25 | CONFIG_SYSVIPC=y | 26 | CONFIG_SYSVIPC=y |
26 | # CONFIG_POSIX_MQUEUE is not set | 27 | # CONFIG_POSIX_MQUEUE is not set |
@@ -31,10 +32,13 @@ CONFIG_SYSCTL=y | |||
31 | # CONFIG_HOTPLUG is not set | 32 | # CONFIG_HOTPLUG is not set |
32 | CONFIG_KOBJECT_UEVENT=y | 33 | CONFIG_KOBJECT_UEVENT=y |
33 | # CONFIG_IKCONFIG is not set | 34 | # CONFIG_IKCONFIG is not set |
35 | CONFIG_INITRAMFS_SOURCE="" | ||
34 | CONFIG_EMBEDDED=y | 36 | CONFIG_EMBEDDED=y |
35 | CONFIG_KALLSYMS=y | 37 | CONFIG_KALLSYMS=y |
36 | # CONFIG_KALLSYMS_ALL is not set | 38 | # CONFIG_KALLSYMS_ALL is not set |
37 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | 39 | # CONFIG_KALLSYMS_EXTRA_PASS is not set |
40 | CONFIG_PRINTK=y | ||
41 | CONFIG_BUG=y | ||
38 | CONFIG_BASE_FULL=y | 42 | CONFIG_BASE_FULL=y |
39 | CONFIG_FUTEX=y | 43 | CONFIG_FUTEX=y |
40 | CONFIG_EPOLL=y | 44 | CONFIG_EPOLL=y |
@@ -81,6 +85,7 @@ CONFIG_ARCH_IXP4XX=y | |||
81 | # CONFIG_ARCH_VERSATILE is not set | 85 | # CONFIG_ARCH_VERSATILE is not set |
82 | # CONFIG_ARCH_IMX is not set | 86 | # CONFIG_ARCH_IMX is not set |
83 | # CONFIG_ARCH_H720X is not set | 87 | # CONFIG_ARCH_H720X is not set |
88 | # CONFIG_ARCH_AAEC2000 is not set | ||
84 | CONFIG_ARCH_SUPPORTS_BIG_ENDIAN=y | 89 | CONFIG_ARCH_SUPPORTS_BIG_ENDIAN=y |
85 | 90 | ||
86 | # | 91 | # |
@@ -90,15 +95,16 @@ CONFIG_ARCH_SUPPORTS_BIG_ENDIAN=y | |||
90 | # | 95 | # |
91 | # IXP4xx Platforms | 96 | # IXP4xx Platforms |
92 | # | 97 | # |
93 | # CONFIG_ARCH_AVILA is not set | 98 | CONFIG_ARCH_AVILA=y |
94 | CONFIG_ARCH_ADI_COYOTE=y | 99 | CONFIG_ARCH_ADI_COYOTE=y |
95 | CONFIG_ARCH_IXDP425=y | 100 | CONFIG_ARCH_IXDP425=y |
96 | # CONFIG_MACH_IXDPG425 is not set | 101 | CONFIG_MACH_IXDPG425=y |
97 | # CONFIG_MACH_IXDP465 is not set | 102 | CONFIG_MACH_IXDP465=y |
98 | CONFIG_ARCH_IXCDP1100=y | 103 | CONFIG_ARCH_IXCDP1100=y |
99 | CONFIG_ARCH_PRPMC1100=y | 104 | CONFIG_ARCH_PRPMC1100=y |
100 | CONFIG_ARCH_IXDP4XX=y | 105 | CONFIG_ARCH_IXDP4XX=y |
101 | # CONFIG_MACH_GTWX5715 is not set | 106 | CONFIG_CPU_IXP46X=y |
107 | CONFIG_MACH_GTWX5715=y | ||
102 | 108 | ||
103 | # | 109 | # |
104 | # IXP4xx Options | 110 | # IXP4xx Options |
@@ -114,7 +120,6 @@ CONFIG_CPU_32v5=y | |||
114 | CONFIG_CPU_ABRT_EV5T=y | 120 | CONFIG_CPU_ABRT_EV5T=y |
115 | CONFIG_CPU_CACHE_VIVT=y | 121 | CONFIG_CPU_CACHE_VIVT=y |
116 | CONFIG_CPU_TLB_V4WBI=y | 122 | CONFIG_CPU_TLB_V4WBI=y |
117 | CONFIG_CPU_MINICACHE=y | ||
118 | 123 | ||
119 | # | 124 | # |
120 | # Processor Features | 125 | # Processor Features |
@@ -127,9 +132,10 @@ CONFIG_DMABOUNCE=y | |||
127 | # | 132 | # |
128 | # Bus support | 133 | # Bus support |
129 | # | 134 | # |
135 | CONFIG_ISA_DMA_API=y | ||
130 | CONFIG_PCI=y | 136 | CONFIG_PCI=y |
131 | CONFIG_PCI_LEGACY_PROC=y | 137 | CONFIG_PCI_LEGACY_PROC=y |
132 | CONFIG_PCI_NAMES=y | 138 | # CONFIG_PCI_DEBUG is not set |
133 | 139 | ||
134 | # | 140 | # |
135 | # PCCARD (PCMCIA/CardBus) support | 141 | # PCCARD (PCMCIA/CardBus) support |
@@ -140,6 +146,15 @@ CONFIG_PCI_NAMES=y | |||
140 | # Kernel Features | 146 | # Kernel Features |
141 | # | 147 | # |
142 | # CONFIG_PREEMPT is not set | 148 | # CONFIG_PREEMPT is not set |
149 | # CONFIG_NO_IDLE_HZ is not set | ||
150 | # CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set | ||
151 | CONFIG_SELECT_MEMORY_MODEL=y | ||
152 | CONFIG_FLATMEM_MANUAL=y | ||
153 | # CONFIG_DISCONTIGMEM_MANUAL is not set | ||
154 | # CONFIG_SPARSEMEM_MANUAL is not set | ||
155 | CONFIG_FLATMEM=y | ||
156 | CONFIG_FLAT_NODE_MEM_MAP=y | ||
157 | # CONFIG_SPARSEMEM_STATIC is not set | ||
143 | CONFIG_ALIGNMENT_TRAP=y | 158 | CONFIG_ALIGNMENT_TRAP=y |
144 | 159 | ||
145 | # | 160 | # |
@@ -175,6 +190,241 @@ CONFIG_PM=y | |||
175 | CONFIG_APM=y | 190 | CONFIG_APM=y |
176 | 191 | ||
177 | # | 192 | # |
193 | # Networking | ||
194 | # | ||
195 | CONFIG_NET=y | ||
196 | |||
197 | # | ||
198 | # Networking options | ||
199 | # | ||
200 | CONFIG_PACKET=m | ||
201 | CONFIG_PACKET_MMAP=y | ||
202 | CONFIG_UNIX=y | ||
203 | CONFIG_XFRM=y | ||
204 | # CONFIG_XFRM_USER is not set | ||
205 | # CONFIG_NET_KEY is not set | ||
206 | CONFIG_INET=y | ||
207 | CONFIG_IP_MULTICAST=y | ||
208 | CONFIG_IP_ADVANCED_ROUTER=y | ||
209 | CONFIG_ASK_IP_FIB_HASH=y | ||
210 | # CONFIG_IP_FIB_TRIE is not set | ||
211 | CONFIG_IP_FIB_HASH=y | ||
212 | CONFIG_IP_MULTIPLE_TABLES=y | ||
213 | CONFIG_IP_ROUTE_FWMARK=y | ||
214 | CONFIG_IP_ROUTE_MULTIPATH=y | ||
215 | # CONFIG_IP_ROUTE_MULTIPATH_CACHED is not set | ||
216 | CONFIG_IP_ROUTE_VERBOSE=y | ||
217 | CONFIG_IP_PNP=y | ||
218 | CONFIG_IP_PNP_DHCP=y | ||
219 | CONFIG_IP_PNP_BOOTP=y | ||
220 | # CONFIG_IP_PNP_RARP is not set | ||
221 | # CONFIG_NET_IPIP is not set | ||
222 | CONFIG_NET_IPGRE=m | ||
223 | CONFIG_NET_IPGRE_BROADCAST=y | ||
224 | CONFIG_IP_MROUTE=y | ||
225 | CONFIG_IP_PIMSM_V1=y | ||
226 | CONFIG_IP_PIMSM_V2=y | ||
227 | # CONFIG_ARPD is not set | ||
228 | CONFIG_SYN_COOKIES=y | ||
229 | # CONFIG_INET_AH is not set | ||
230 | # CONFIG_INET_ESP is not set | ||
231 | # CONFIG_INET_IPCOMP is not set | ||
232 | CONFIG_INET_TUNNEL=m | ||
233 | CONFIG_INET_DIAG=y | ||
234 | CONFIG_INET_TCP_DIAG=y | ||
235 | # CONFIG_TCP_CONG_ADVANCED is not set | ||
236 | CONFIG_TCP_CONG_BIC=y | ||
237 | |||
238 | # | ||
239 | # IP: Virtual Server Configuration | ||
240 | # | ||
241 | CONFIG_IP_VS=m | ||
242 | CONFIG_IP_VS_DEBUG=y | ||
243 | CONFIG_IP_VS_TAB_BITS=12 | ||
244 | |||
245 | # | ||
246 | # IPVS transport protocol load balancing support | ||
247 | # | ||
248 | # CONFIG_IP_VS_PROTO_TCP is not set | ||
249 | # CONFIG_IP_VS_PROTO_UDP is not set | ||
250 | # CONFIG_IP_VS_PROTO_ESP is not set | ||
251 | # CONFIG_IP_VS_PROTO_AH is not set | ||
252 | |||
253 | # | ||
254 | # IPVS scheduler | ||
255 | # | ||
256 | CONFIG_IP_VS_RR=m | ||
257 | CONFIG_IP_VS_WRR=m | ||
258 | CONFIG_IP_VS_LC=m | ||
259 | CONFIG_IP_VS_WLC=m | ||
260 | CONFIG_IP_VS_LBLC=m | ||
261 | CONFIG_IP_VS_LBLCR=m | ||
262 | CONFIG_IP_VS_DH=m | ||
263 | CONFIG_IP_VS_SH=m | ||
264 | # CONFIG_IP_VS_SED is not set | ||
265 | # CONFIG_IP_VS_NQ is not set | ||
266 | |||
267 | # | ||
268 | # IPVS application helper | ||
269 | # | ||
270 | # CONFIG_IPV6 is not set | ||
271 | CONFIG_NETFILTER=y | ||
272 | # CONFIG_NETFILTER_DEBUG is not set | ||
273 | CONFIG_BRIDGE_NETFILTER=y | ||
274 | # CONFIG_NETFILTER_NETLINK is not set | ||
275 | |||
276 | # | ||
277 | # IP: Netfilter Configuration | ||
278 | # | ||
279 | CONFIG_IP_NF_CONNTRACK=m | ||
280 | # CONFIG_IP_NF_CT_ACCT is not set | ||
281 | # CONFIG_IP_NF_CONNTRACK_MARK is not set | ||
282 | # CONFIG_IP_NF_CONNTRACK_EVENTS is not set | ||
283 | # CONFIG_IP_NF_CT_PROTO_SCTP is not set | ||
284 | CONFIG_IP_NF_FTP=m | ||
285 | CONFIG_IP_NF_IRC=m | ||
286 | # CONFIG_IP_NF_NETBIOS_NS is not set | ||
287 | # CONFIG_IP_NF_TFTP is not set | ||
288 | # CONFIG_IP_NF_AMANDA is not set | ||
289 | CONFIG_IP_NF_QUEUE=m | ||
290 | CONFIG_IP_NF_IPTABLES=m | ||
291 | CONFIG_IP_NF_MATCH_LIMIT=m | ||
292 | # CONFIG_IP_NF_MATCH_IPRANGE is not set | ||
293 | CONFIG_IP_NF_MATCH_MAC=m | ||
294 | # CONFIG_IP_NF_MATCH_PKTTYPE is not set | ||
295 | CONFIG_IP_NF_MATCH_MARK=m | ||
296 | CONFIG_IP_NF_MATCH_MULTIPORT=m | ||
297 | CONFIG_IP_NF_MATCH_TOS=m | ||
298 | # CONFIG_IP_NF_MATCH_RECENT is not set | ||
299 | # CONFIG_IP_NF_MATCH_ECN is not set | ||
300 | # CONFIG_IP_NF_MATCH_DSCP is not set | ||
301 | CONFIG_IP_NF_MATCH_AH_ESP=m | ||
302 | CONFIG_IP_NF_MATCH_LENGTH=m | ||
303 | CONFIG_IP_NF_MATCH_TTL=m | ||
304 | CONFIG_IP_NF_MATCH_TCPMSS=m | ||
305 | # CONFIG_IP_NF_MATCH_HELPER is not set | ||
306 | CONFIG_IP_NF_MATCH_STATE=m | ||
307 | # CONFIG_IP_NF_MATCH_CONNTRACK is not set | ||
308 | CONFIG_IP_NF_MATCH_OWNER=m | ||
309 | # CONFIG_IP_NF_MATCH_PHYSDEV is not set | ||
310 | # CONFIG_IP_NF_MATCH_ADDRTYPE is not set | ||
311 | # CONFIG_IP_NF_MATCH_REALM is not set | ||
312 | # CONFIG_IP_NF_MATCH_SCTP is not set | ||
313 | # CONFIG_IP_NF_MATCH_DCCP is not set | ||
314 | # CONFIG_IP_NF_MATCH_COMMENT is not set | ||
315 | # CONFIG_IP_NF_MATCH_HASHLIMIT is not set | ||
316 | # CONFIG_IP_NF_MATCH_STRING is not set | ||
317 | CONFIG_IP_NF_FILTER=m | ||
318 | CONFIG_IP_NF_TARGET_REJECT=m | ||
319 | CONFIG_IP_NF_TARGET_LOG=m | ||
320 | CONFIG_IP_NF_TARGET_ULOG=m | ||
321 | CONFIG_IP_NF_TARGET_TCPMSS=m | ||
322 | CONFIG_IP_NF_NAT=m | ||
323 | CONFIG_IP_NF_NAT_NEEDED=y | ||
324 | CONFIG_IP_NF_TARGET_MASQUERADE=m | ||
325 | CONFIG_IP_NF_TARGET_REDIRECT=m | ||
326 | # CONFIG_IP_NF_TARGET_NETMAP is not set | ||
327 | # CONFIG_IP_NF_TARGET_SAME is not set | ||
328 | CONFIG_IP_NF_NAT_SNMP_BASIC=m | ||
329 | CONFIG_IP_NF_NAT_IRC=m | ||
330 | CONFIG_IP_NF_NAT_FTP=m | ||
331 | CONFIG_IP_NF_MANGLE=m | ||
332 | CONFIG_IP_NF_TARGET_TOS=m | ||
333 | # CONFIG_IP_NF_TARGET_ECN is not set | ||
334 | # CONFIG_IP_NF_TARGET_DSCP is not set | ||
335 | CONFIG_IP_NF_TARGET_MARK=m | ||
336 | # CONFIG_IP_NF_TARGET_CLASSIFY is not set | ||
337 | # CONFIG_IP_NF_TARGET_TTL is not set | ||
338 | # CONFIG_IP_NF_RAW is not set | ||
339 | CONFIG_IP_NF_ARPTABLES=m | ||
340 | CONFIG_IP_NF_ARPFILTER=m | ||
341 | # CONFIG_IP_NF_ARP_MANGLE is not set | ||
342 | |||
343 | # | ||
344 | # Bridge: Netfilter Configuration | ||
345 | # | ||
346 | # CONFIG_BRIDGE_NF_EBTABLES is not set | ||
347 | |||
348 | # | ||
349 | # DCCP Configuration (EXPERIMENTAL) | ||
350 | # | ||
351 | # CONFIG_IP_DCCP is not set | ||
352 | |||
353 | # | ||
354 | # SCTP Configuration (EXPERIMENTAL) | ||
355 | # | ||
356 | # CONFIG_IP_SCTP is not set | ||
357 | CONFIG_ATM=y | ||
358 | CONFIG_ATM_CLIP=y | ||
359 | # CONFIG_ATM_CLIP_NO_ICMP is not set | ||
360 | CONFIG_ATM_LANE=m | ||
361 | CONFIG_ATM_MPOA=m | ||
362 | CONFIG_ATM_BR2684=m | ||
363 | # CONFIG_ATM_BR2684_IPFILTER is not set | ||
364 | CONFIG_BRIDGE=m | ||
365 | CONFIG_VLAN_8021Q=m | ||
366 | # CONFIG_DECNET is not set | ||
367 | CONFIG_LLC=m | ||
368 | # CONFIG_LLC2 is not set | ||
369 | CONFIG_IPX=m | ||
370 | # CONFIG_IPX_INTERN is not set | ||
371 | CONFIG_ATALK=m | ||
372 | CONFIG_DEV_APPLETALK=y | ||
373 | CONFIG_IPDDP=m | ||
374 | CONFIG_IPDDP_ENCAP=y | ||
375 | CONFIG_IPDDP_DECAP=y | ||
376 | CONFIG_X25=m | ||
377 | CONFIG_LAPB=m | ||
378 | # CONFIG_NET_DIVERT is not set | ||
379 | CONFIG_ECONET=m | ||
380 | CONFIG_ECONET_AUNUDP=y | ||
381 | CONFIG_ECONET_NATIVE=y | ||
382 | CONFIG_WAN_ROUTER=m | ||
383 | CONFIG_NET_SCHED=y | ||
384 | CONFIG_NET_SCH_CLK_JIFFIES=y | ||
385 | # CONFIG_NET_SCH_CLK_GETTIMEOFDAY is not set | ||
386 | # CONFIG_NET_SCH_CLK_CPU is not set | ||
387 | CONFIG_NET_SCH_CBQ=m | ||
388 | CONFIG_NET_SCH_HTB=m | ||
389 | # CONFIG_NET_SCH_HFSC is not set | ||
390 | # CONFIG_NET_SCH_ATM is not set | ||
391 | CONFIG_NET_SCH_PRIO=m | ||
392 | CONFIG_NET_SCH_RED=m | ||
393 | CONFIG_NET_SCH_SFQ=m | ||
394 | CONFIG_NET_SCH_TEQL=m | ||
395 | CONFIG_NET_SCH_TBF=m | ||
396 | CONFIG_NET_SCH_GRED=m | ||
397 | CONFIG_NET_SCH_DSMARK=m | ||
398 | # CONFIG_NET_SCH_NETEM is not set | ||
399 | CONFIG_NET_SCH_INGRESS=m | ||
400 | CONFIG_NET_QOS=y | ||
401 | CONFIG_NET_ESTIMATOR=y | ||
402 | CONFIG_NET_CLS=y | ||
403 | # CONFIG_NET_CLS_BASIC is not set | ||
404 | CONFIG_NET_CLS_TCINDEX=m | ||
405 | CONFIG_NET_CLS_ROUTE4=m | ||
406 | CONFIG_NET_CLS_ROUTE=y | ||
407 | CONFIG_NET_CLS_FW=m | ||
408 | CONFIG_NET_CLS_U32=m | ||
409 | # CONFIG_CLS_U32_PERF is not set | ||
410 | # CONFIG_NET_CLS_IND is not set | ||
411 | # CONFIG_CLS_U32_MARK is not set | ||
412 | CONFIG_NET_CLS_RSVP=m | ||
413 | CONFIG_NET_CLS_RSVP6=m | ||
414 | # CONFIG_NET_EMATCH is not set | ||
415 | # CONFIG_NET_CLS_ACT is not set | ||
416 | CONFIG_NET_CLS_POLICE=y | ||
417 | |||
418 | # | ||
419 | # Network testing | ||
420 | # | ||
421 | CONFIG_NET_PKTGEN=m | ||
422 | # CONFIG_HAMRADIO is not set | ||
423 | # CONFIG_IRDA is not set | ||
424 | # CONFIG_BT is not set | ||
425 | # CONFIG_IEEE80211 is not set | ||
426 | |||
427 | # | ||
178 | # Device Drivers | 428 | # Device Drivers |
179 | # | 429 | # |
180 | 430 | ||
@@ -244,6 +494,7 @@ CONFIG_MTD_COMPLEX_MAPPINGS=y | |||
244 | CONFIG_MTD_IXP4XX=y | 494 | CONFIG_MTD_IXP4XX=y |
245 | # CONFIG_MTD_EDB7312 is not set | 495 | # CONFIG_MTD_EDB7312 is not set |
246 | # CONFIG_MTD_PCI is not set | 496 | # CONFIG_MTD_PCI is not set |
497 | # CONFIG_MTD_PLATRAM is not set | ||
247 | 498 | ||
248 | # | 499 | # |
249 | # Self-contained MTD device drivers | 500 | # Self-contained MTD device drivers |
@@ -283,7 +534,6 @@ CONFIG_MTD_NAND_IDS=m | |||
283 | # | 534 | # |
284 | # Block devices | 535 | # Block devices |
285 | # | 536 | # |
286 | # CONFIG_BLK_DEV_FD is not set | ||
287 | # CONFIG_BLK_CPQ_DA is not set | 537 | # CONFIG_BLK_CPQ_DA is not set |
288 | # CONFIG_BLK_CPQ_CISS_DA is not set | 538 | # CONFIG_BLK_CPQ_CISS_DA is not set |
289 | # CONFIG_BLK_DEV_DAC960 is not set | 539 | # CONFIG_BLK_DEV_DAC960 is not set |
@@ -297,7 +547,6 @@ CONFIG_BLK_DEV_RAM=y | |||
297 | CONFIG_BLK_DEV_RAM_COUNT=16 | 547 | CONFIG_BLK_DEV_RAM_COUNT=16 |
298 | CONFIG_BLK_DEV_RAM_SIZE=8192 | 548 | CONFIG_BLK_DEV_RAM_SIZE=8192 |
299 | CONFIG_BLK_DEV_INITRD=y | 549 | CONFIG_BLK_DEV_INITRD=y |
300 | CONFIG_INITRAMFS_SOURCE="" | ||
301 | # CONFIG_CDROM_PKTCDVD is not set | 550 | # CONFIG_CDROM_PKTCDVD is not set |
302 | 551 | ||
303 | # | 552 | # |
@@ -351,6 +600,7 @@ CONFIG_BLK_DEV_CMD64X=y | |||
351 | CONFIG_BLK_DEV_HPT366=y | 600 | CONFIG_BLK_DEV_HPT366=y |
352 | # CONFIG_BLK_DEV_SC1200 is not set | 601 | # CONFIG_BLK_DEV_SC1200 is not set |
353 | # CONFIG_BLK_DEV_PIIX is not set | 602 | # CONFIG_BLK_DEV_PIIX is not set |
603 | # CONFIG_BLK_DEV_IT821X is not set | ||
354 | # CONFIG_BLK_DEV_NS87415 is not set | 604 | # CONFIG_BLK_DEV_NS87415 is not set |
355 | # CONFIG_BLK_DEV_PDC202XX_OLD is not set | 605 | # CONFIG_BLK_DEV_PDC202XX_OLD is not set |
356 | CONFIG_BLK_DEV_PDC202XX_NEW=y | 606 | CONFIG_BLK_DEV_PDC202XX_NEW=y |
@@ -369,6 +619,7 @@ CONFIG_BLK_DEV_IDEDMA=y | |||
369 | # | 619 | # |
370 | # SCSI device support | 620 | # SCSI device support |
371 | # | 621 | # |
622 | # CONFIG_RAID_ATTRS is not set | ||
372 | # CONFIG_SCSI is not set | 623 | # CONFIG_SCSI is not set |
373 | 624 | ||
374 | # | 625 | # |
@@ -379,6 +630,7 @@ CONFIG_BLK_DEV_IDEDMA=y | |||
379 | # | 630 | # |
380 | # Fusion MPT device support | 631 | # Fusion MPT device support |
381 | # | 632 | # |
633 | # CONFIG_FUSION is not set | ||
382 | 634 | ||
383 | # | 635 | # |
384 | # IEEE 1394 (FireWire) support | 636 | # IEEE 1394 (FireWire) support |
@@ -391,235 +643,13 @@ CONFIG_BLK_DEV_IDEDMA=y | |||
391 | # CONFIG_I2O is not set | 643 | # CONFIG_I2O is not set |
392 | 644 | ||
393 | # | 645 | # |
394 | # Networking support | 646 | # Network device support |
395 | # | ||
396 | CONFIG_NET=y | ||
397 | |||
398 | # | ||
399 | # Networking options | ||
400 | # | ||
401 | CONFIG_PACKET=m | ||
402 | CONFIG_PACKET_MMAP=y | ||
403 | CONFIG_NETLINK_DEV=m | ||
404 | CONFIG_UNIX=y | ||
405 | # CONFIG_NET_KEY is not set | ||
406 | CONFIG_INET=y | ||
407 | CONFIG_IP_MULTICAST=y | ||
408 | CONFIG_IP_ADVANCED_ROUTER=y | ||
409 | CONFIG_IP_MULTIPLE_TABLES=y | ||
410 | CONFIG_IP_ROUTE_FWMARK=y | ||
411 | CONFIG_IP_ROUTE_MULTIPATH=y | ||
412 | # CONFIG_IP_ROUTE_MULTIPATH_CACHED is not set | ||
413 | CONFIG_IP_ROUTE_VERBOSE=y | ||
414 | CONFIG_IP_PNP=y | ||
415 | CONFIG_IP_PNP_DHCP=y | ||
416 | CONFIG_IP_PNP_BOOTP=y | ||
417 | # CONFIG_IP_PNP_RARP is not set | ||
418 | # CONFIG_NET_IPIP is not set | ||
419 | CONFIG_NET_IPGRE=m | ||
420 | CONFIG_NET_IPGRE_BROADCAST=y | ||
421 | CONFIG_IP_MROUTE=y | ||
422 | CONFIG_IP_PIMSM_V1=y | ||
423 | CONFIG_IP_PIMSM_V2=y | ||
424 | # CONFIG_ARPD is not set | ||
425 | CONFIG_SYN_COOKIES=y | ||
426 | # CONFIG_INET_AH is not set | ||
427 | # CONFIG_INET_ESP is not set | ||
428 | # CONFIG_INET_IPCOMP is not set | ||
429 | CONFIG_INET_TUNNEL=m | ||
430 | # CONFIG_IP_TCPDIAG is not set | ||
431 | # CONFIG_IP_TCPDIAG_IPV6 is not set | ||
432 | |||
433 | # | ||
434 | # IP: Virtual Server Configuration | ||
435 | # | ||
436 | CONFIG_IP_VS=m | ||
437 | CONFIG_IP_VS_DEBUG=y | ||
438 | CONFIG_IP_VS_TAB_BITS=12 | ||
439 | |||
440 | # | ||
441 | # IPVS transport protocol load balancing support | ||
442 | # | ||
443 | # CONFIG_IP_VS_PROTO_TCP is not set | ||
444 | # CONFIG_IP_VS_PROTO_UDP is not set | ||
445 | # CONFIG_IP_VS_PROTO_ESP is not set | ||
446 | # CONFIG_IP_VS_PROTO_AH is not set | ||
447 | |||
448 | # | ||
449 | # IPVS scheduler | ||
450 | # | ||
451 | CONFIG_IP_VS_RR=m | ||
452 | CONFIG_IP_VS_WRR=m | ||
453 | CONFIG_IP_VS_LC=m | ||
454 | CONFIG_IP_VS_WLC=m | ||
455 | CONFIG_IP_VS_LBLC=m | ||
456 | CONFIG_IP_VS_LBLCR=m | ||
457 | CONFIG_IP_VS_DH=m | ||
458 | CONFIG_IP_VS_SH=m | ||
459 | # CONFIG_IP_VS_SED is not set | ||
460 | # CONFIG_IP_VS_NQ is not set | ||
461 | |||
462 | # | ||
463 | # IPVS application helper | ||
464 | # | ||
465 | # CONFIG_IPV6 is not set | ||
466 | CONFIG_NETFILTER=y | ||
467 | # CONFIG_NETFILTER_DEBUG is not set | ||
468 | CONFIG_BRIDGE_NETFILTER=y | ||
469 | |||
470 | # | ||
471 | # IP: Netfilter Configuration | ||
472 | # | 647 | # |
473 | CONFIG_IP_NF_CONNTRACK=m | ||
474 | # CONFIG_IP_NF_CT_ACCT is not set | ||
475 | # CONFIG_IP_NF_CONNTRACK_MARK is not set | ||
476 | # CONFIG_IP_NF_CT_PROTO_SCTP is not set | ||
477 | CONFIG_IP_NF_FTP=m | ||
478 | CONFIG_IP_NF_IRC=m | ||
479 | # CONFIG_IP_NF_TFTP is not set | ||
480 | # CONFIG_IP_NF_AMANDA is not set | ||
481 | CONFIG_IP_NF_QUEUE=m | ||
482 | CONFIG_IP_NF_IPTABLES=m | ||
483 | CONFIG_IP_NF_MATCH_LIMIT=m | ||
484 | # CONFIG_IP_NF_MATCH_IPRANGE is not set | ||
485 | CONFIG_IP_NF_MATCH_MAC=m | ||
486 | # CONFIG_IP_NF_MATCH_PKTTYPE is not set | ||
487 | CONFIG_IP_NF_MATCH_MARK=m | ||
488 | CONFIG_IP_NF_MATCH_MULTIPORT=m | ||
489 | CONFIG_IP_NF_MATCH_TOS=m | ||
490 | # CONFIG_IP_NF_MATCH_RECENT is not set | ||
491 | # CONFIG_IP_NF_MATCH_ECN is not set | ||
492 | # CONFIG_IP_NF_MATCH_DSCP is not set | ||
493 | CONFIG_IP_NF_MATCH_AH_ESP=m | ||
494 | CONFIG_IP_NF_MATCH_LENGTH=m | ||
495 | CONFIG_IP_NF_MATCH_TTL=m | ||
496 | CONFIG_IP_NF_MATCH_TCPMSS=m | ||
497 | # CONFIG_IP_NF_MATCH_HELPER is not set | ||
498 | CONFIG_IP_NF_MATCH_STATE=m | ||
499 | # CONFIG_IP_NF_MATCH_CONNTRACK is not set | ||
500 | CONFIG_IP_NF_MATCH_OWNER=m | ||
501 | # CONFIG_IP_NF_MATCH_PHYSDEV is not set | ||
502 | # CONFIG_IP_NF_MATCH_ADDRTYPE is not set | ||
503 | # CONFIG_IP_NF_MATCH_REALM is not set | ||
504 | # CONFIG_IP_NF_MATCH_SCTP is not set | ||
505 | # CONFIG_IP_NF_MATCH_COMMENT is not set | ||
506 | # CONFIG_IP_NF_MATCH_HASHLIMIT is not set | ||
507 | CONFIG_IP_NF_FILTER=m | ||
508 | CONFIG_IP_NF_TARGET_REJECT=m | ||
509 | CONFIG_IP_NF_TARGET_LOG=m | ||
510 | CONFIG_IP_NF_TARGET_ULOG=m | ||
511 | CONFIG_IP_NF_TARGET_TCPMSS=m | ||
512 | CONFIG_IP_NF_NAT=m | ||
513 | CONFIG_IP_NF_NAT_NEEDED=y | ||
514 | CONFIG_IP_NF_TARGET_MASQUERADE=m | ||
515 | CONFIG_IP_NF_TARGET_REDIRECT=m | ||
516 | # CONFIG_IP_NF_TARGET_NETMAP is not set | ||
517 | # CONFIG_IP_NF_TARGET_SAME is not set | ||
518 | CONFIG_IP_NF_NAT_SNMP_BASIC=m | ||
519 | CONFIG_IP_NF_NAT_IRC=m | ||
520 | CONFIG_IP_NF_NAT_FTP=m | ||
521 | CONFIG_IP_NF_MANGLE=m | ||
522 | CONFIG_IP_NF_TARGET_TOS=m | ||
523 | # CONFIG_IP_NF_TARGET_ECN is not set | ||
524 | # CONFIG_IP_NF_TARGET_DSCP is not set | ||
525 | CONFIG_IP_NF_TARGET_MARK=m | ||
526 | # CONFIG_IP_NF_TARGET_CLASSIFY is not set | ||
527 | # CONFIG_IP_NF_RAW is not set | ||
528 | CONFIG_IP_NF_ARPTABLES=m | ||
529 | CONFIG_IP_NF_ARPFILTER=m | ||
530 | # CONFIG_IP_NF_ARP_MANGLE is not set | ||
531 | |||
532 | # | ||
533 | # Bridge: Netfilter Configuration | ||
534 | # | ||
535 | # CONFIG_BRIDGE_NF_EBTABLES is not set | ||
536 | CONFIG_XFRM=y | ||
537 | # CONFIG_XFRM_USER is not set | ||
538 | |||
539 | # | ||
540 | # SCTP Configuration (EXPERIMENTAL) | ||
541 | # | ||
542 | # CONFIG_IP_SCTP is not set | ||
543 | CONFIG_ATM=y | ||
544 | CONFIG_ATM_CLIP=y | ||
545 | # CONFIG_ATM_CLIP_NO_ICMP is not set | ||
546 | CONFIG_ATM_LANE=m | ||
547 | CONFIG_ATM_MPOA=m | ||
548 | CONFIG_ATM_BR2684=m | ||
549 | # CONFIG_ATM_BR2684_IPFILTER is not set | ||
550 | CONFIG_BRIDGE=m | ||
551 | CONFIG_VLAN_8021Q=m | ||
552 | # CONFIG_DECNET is not set | ||
553 | CONFIG_LLC=m | ||
554 | # CONFIG_LLC2 is not set | ||
555 | CONFIG_IPX=m | ||
556 | # CONFIG_IPX_INTERN is not set | ||
557 | CONFIG_ATALK=m | ||
558 | CONFIG_DEV_APPLETALK=y | ||
559 | CONFIG_IPDDP=m | ||
560 | CONFIG_IPDDP_ENCAP=y | ||
561 | CONFIG_IPDDP_DECAP=y | ||
562 | CONFIG_X25=m | ||
563 | CONFIG_LAPB=m | ||
564 | # CONFIG_NET_DIVERT is not set | ||
565 | CONFIG_ECONET=m | ||
566 | CONFIG_ECONET_AUNUDP=y | ||
567 | CONFIG_ECONET_NATIVE=y | ||
568 | CONFIG_WAN_ROUTER=m | ||
569 | |||
570 | # | ||
571 | # QoS and/or fair queueing | ||
572 | # | ||
573 | CONFIG_NET_SCHED=y | ||
574 | CONFIG_NET_SCH_CLK_JIFFIES=y | ||
575 | # CONFIG_NET_SCH_CLK_GETTIMEOFDAY is not set | ||
576 | # CONFIG_NET_SCH_CLK_CPU is not set | ||
577 | CONFIG_NET_SCH_CBQ=m | ||
578 | CONFIG_NET_SCH_HTB=m | ||
579 | # CONFIG_NET_SCH_HFSC is not set | ||
580 | # CONFIG_NET_SCH_ATM is not set | ||
581 | CONFIG_NET_SCH_PRIO=m | ||
582 | CONFIG_NET_SCH_RED=m | ||
583 | CONFIG_NET_SCH_SFQ=m | ||
584 | CONFIG_NET_SCH_TEQL=m | ||
585 | CONFIG_NET_SCH_TBF=m | ||
586 | CONFIG_NET_SCH_GRED=m | ||
587 | CONFIG_NET_SCH_DSMARK=m | ||
588 | # CONFIG_NET_SCH_NETEM is not set | ||
589 | CONFIG_NET_SCH_INGRESS=m | ||
590 | CONFIG_NET_QOS=y | ||
591 | CONFIG_NET_ESTIMATOR=y | ||
592 | CONFIG_NET_CLS=y | ||
593 | # CONFIG_NET_CLS_BASIC is not set | ||
594 | CONFIG_NET_CLS_TCINDEX=m | ||
595 | CONFIG_NET_CLS_ROUTE4=m | ||
596 | CONFIG_NET_CLS_ROUTE=y | ||
597 | CONFIG_NET_CLS_FW=m | ||
598 | CONFIG_NET_CLS_U32=m | ||
599 | # CONFIG_CLS_U32_PERF is not set | ||
600 | # CONFIG_NET_CLS_IND is not set | ||
601 | # CONFIG_CLS_U32_MARK is not set | ||
602 | CONFIG_NET_CLS_RSVP=m | ||
603 | CONFIG_NET_CLS_RSVP6=m | ||
604 | # CONFIG_NET_EMATCH is not set | ||
605 | # CONFIG_NET_CLS_ACT is not set | ||
606 | CONFIG_NET_CLS_POLICE=y | ||
607 | |||
608 | # | ||
609 | # Network testing | ||
610 | # | ||
611 | CONFIG_NET_PKTGEN=m | ||
612 | # CONFIG_NETPOLL is not set | ||
613 | # CONFIG_NET_POLL_CONTROLLER is not set | ||
614 | # CONFIG_HAMRADIO is not set | ||
615 | # CONFIG_IRDA is not set | ||
616 | # CONFIG_BT is not set | ||
617 | CONFIG_NETDEVICES=y | 648 | CONFIG_NETDEVICES=y |
618 | CONFIG_DUMMY=y | 649 | CONFIG_DUMMY=y |
619 | # CONFIG_BONDING is not set | 650 | # CONFIG_BONDING is not set |
620 | # CONFIG_EQUALIZER is not set | 651 | # CONFIG_EQUALIZER is not set |
621 | # CONFIG_TUN is not set | 652 | # CONFIG_TUN is not set |
622 | # CONFIG_ETHERTAP is not set | ||
623 | 653 | ||
624 | # | 654 | # |
625 | # ARCnet devices | 655 | # ARCnet devices |
@@ -627,6 +657,11 @@ CONFIG_DUMMY=y | |||
627 | # CONFIG_ARCNET is not set | 657 | # CONFIG_ARCNET is not set |
628 | 658 | ||
629 | # | 659 | # |
660 | # PHY device support | ||
661 | # | ||
662 | # CONFIG_PHYLIB is not set | ||
663 | |||
664 | # | ||
630 | # Ethernet (10 or 100Mbit) | 665 | # Ethernet (10 or 100Mbit) |
631 | # | 666 | # |
632 | CONFIG_NET_ETHERNET=y | 667 | CONFIG_NET_ETHERNET=y |
@@ -635,6 +670,7 @@ CONFIG_MII=y | |||
635 | # CONFIG_SUNGEM is not set | 670 | # CONFIG_SUNGEM is not set |
636 | # CONFIG_NET_VENDOR_3COM is not set | 671 | # CONFIG_NET_VENDOR_3COM is not set |
637 | # CONFIG_SMC91X is not set | 672 | # CONFIG_SMC91X is not set |
673 | # CONFIG_DM9000 is not set | ||
638 | 674 | ||
639 | # | 675 | # |
640 | # Tulip family network device support | 676 | # Tulip family network device support |
@@ -671,13 +707,17 @@ CONFIG_EEPRO100=y | |||
671 | # CONFIG_HAMACHI is not set | 707 | # CONFIG_HAMACHI is not set |
672 | # CONFIG_YELLOWFIN is not set | 708 | # CONFIG_YELLOWFIN is not set |
673 | # CONFIG_R8169 is not set | 709 | # CONFIG_R8169 is not set |
710 | # CONFIG_SIS190 is not set | ||
711 | # CONFIG_SKGE is not set | ||
674 | # CONFIG_SK98LIN is not set | 712 | # CONFIG_SK98LIN is not set |
675 | # CONFIG_VIA_VELOCITY is not set | 713 | # CONFIG_VIA_VELOCITY is not set |
676 | # CONFIG_TIGON3 is not set | 714 | # CONFIG_TIGON3 is not set |
715 | # CONFIG_BNX2 is not set | ||
677 | 716 | ||
678 | # | 717 | # |
679 | # Ethernet (10000 Mbit) | 718 | # Ethernet (10000 Mbit) |
680 | # | 719 | # |
720 | # CONFIG_CHELSIO_T1 is not set | ||
681 | # CONFIG_IXGB is not set | 721 | # CONFIG_IXGB is not set |
682 | # CONFIG_S2IO is not set | 722 | # CONFIG_S2IO is not set |
683 | 723 | ||
@@ -702,6 +742,7 @@ CONFIG_NET_RADIO=y | |||
702 | CONFIG_HERMES=y | 742 | CONFIG_HERMES=y |
703 | # CONFIG_PLX_HERMES is not set | 743 | # CONFIG_PLX_HERMES is not set |
704 | # CONFIG_TMD_HERMES is not set | 744 | # CONFIG_TMD_HERMES is not set |
745 | # CONFIG_NORTEL_HERMES is not set | ||
705 | CONFIG_PCI_HERMES=y | 746 | CONFIG_PCI_HERMES=y |
706 | # CONFIG_ATMEL is not set | 747 | # CONFIG_ATMEL is not set |
707 | 748 | ||
@@ -709,6 +750,7 @@ CONFIG_PCI_HERMES=y | |||
709 | # Prism GT/Duette 802.11(a/b/g) PCI/Cardbus support | 750 | # Prism GT/Duette 802.11(a/b/g) PCI/Cardbus support |
710 | # | 751 | # |
711 | # CONFIG_PRISM54 is not set | 752 | # CONFIG_PRISM54 is not set |
753 | # CONFIG_HOSTAP is not set | ||
712 | CONFIG_NET_WIRELESS=y | 754 | CONFIG_NET_WIRELESS=y |
713 | 755 | ||
714 | # | 756 | # |
@@ -758,6 +800,8 @@ CONFIG_ATM_TCP=m | |||
758 | # CONFIG_SLIP is not set | 800 | # CONFIG_SLIP is not set |
759 | # CONFIG_SHAPER is not set | 801 | # CONFIG_SHAPER is not set |
760 | # CONFIG_NETCONSOLE is not set | 802 | # CONFIG_NETCONSOLE is not set |
803 | # CONFIG_NETPOLL is not set | ||
804 | # CONFIG_NET_POLL_CONTROLLER is not set | ||
761 | 805 | ||
762 | # | 806 | # |
763 | # ISDN subsystem | 807 | # ISDN subsystem |
@@ -795,7 +839,6 @@ CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | |||
795 | # | 839 | # |
796 | # CONFIG_SERIO is not set | 840 | # CONFIG_SERIO is not set |
797 | # CONFIG_GAMEPORT is not set | 841 | # CONFIG_GAMEPORT is not set |
798 | CONFIG_SOUND_GAMEPORT=y | ||
799 | 842 | ||
800 | # | 843 | # |
801 | # Character devices | 844 | # Character devices |
@@ -816,6 +859,7 @@ CONFIG_SERIAL_8250_NR_UARTS=2 | |||
816 | # | 859 | # |
817 | CONFIG_SERIAL_CORE=y | 860 | CONFIG_SERIAL_CORE=y |
818 | CONFIG_SERIAL_CORE_CONSOLE=y | 861 | CONFIG_SERIAL_CORE_CONSOLE=y |
862 | # CONFIG_SERIAL_JSM is not set | ||
819 | CONFIG_UNIX98_PTYS=y | 863 | CONFIG_UNIX98_PTYS=y |
820 | CONFIG_LEGACY_PTYS=y | 864 | CONFIG_LEGACY_PTYS=y |
821 | CONFIG_LEGACY_PTY_COUNT=256 | 865 | CONFIG_LEGACY_PTY_COUNT=256 |
@@ -882,12 +926,11 @@ CONFIG_I2C_ALGOBIT=y | |||
882 | # CONFIG_I2C_AMD8111 is not set | 926 | # CONFIG_I2C_AMD8111 is not set |
883 | # CONFIG_I2C_I801 is not set | 927 | # CONFIG_I2C_I801 is not set |
884 | # CONFIG_I2C_I810 is not set | 928 | # CONFIG_I2C_I810 is not set |
929 | # CONFIG_I2C_PIIX4 is not set | ||
885 | # CONFIG_I2C_IOP3XX is not set | 930 | # CONFIG_I2C_IOP3XX is not set |
886 | # CONFIG_I2C_ISA is not set | ||
887 | CONFIG_I2C_IXP4XX=y | 931 | CONFIG_I2C_IXP4XX=y |
888 | # CONFIG_I2C_NFORCE2 is not set | 932 | # CONFIG_I2C_NFORCE2 is not set |
889 | # CONFIG_I2C_PARPORT_LIGHT is not set | 933 | # CONFIG_I2C_PARPORT_LIGHT is not set |
890 | # CONFIG_I2C_PIIX4 is not set | ||
891 | # CONFIG_I2C_PROSAVAGE is not set | 934 | # CONFIG_I2C_PROSAVAGE is not set |
892 | # CONFIG_I2C_SAVAGE4 is not set | 935 | # CONFIG_I2C_SAVAGE4 is not set |
893 | # CONFIG_SCx200_ACB is not set | 936 | # CONFIG_SCx200_ACB is not set |
@@ -901,14 +944,33 @@ CONFIG_I2C_IXP4XX=y | |||
901 | # CONFIG_I2C_PCA_ISA is not set | 944 | # CONFIG_I2C_PCA_ISA is not set |
902 | 945 | ||
903 | # | 946 | # |
904 | # Hardware Sensors Chip support | 947 | # Miscellaneous I2C Chip support |
905 | # | 948 | # |
906 | CONFIG_I2C_SENSOR=y | 949 | # CONFIG_SENSORS_DS1337 is not set |
950 | # CONFIG_SENSORS_DS1374 is not set | ||
951 | CONFIG_SENSORS_EEPROM=y | ||
952 | # CONFIG_SENSORS_PCF8574 is not set | ||
953 | # CONFIG_SENSORS_PCA9539 is not set | ||
954 | # CONFIG_SENSORS_PCF8591 is not set | ||
955 | # CONFIG_SENSORS_RTC8564 is not set | ||
956 | # CONFIG_SENSORS_MAX6875 is not set | ||
957 | # CONFIG_I2C_DEBUG_CORE is not set | ||
958 | # CONFIG_I2C_DEBUG_ALGO is not set | ||
959 | # CONFIG_I2C_DEBUG_BUS is not set | ||
960 | # CONFIG_I2C_DEBUG_CHIP is not set | ||
961 | |||
962 | # | ||
963 | # Hardware Monitoring support | ||
964 | # | ||
965 | CONFIG_HWMON=y | ||
966 | # CONFIG_HWMON_VID is not set | ||
907 | # CONFIG_SENSORS_ADM1021 is not set | 967 | # CONFIG_SENSORS_ADM1021 is not set |
908 | # CONFIG_SENSORS_ADM1025 is not set | 968 | # CONFIG_SENSORS_ADM1025 is not set |
909 | # CONFIG_SENSORS_ADM1026 is not set | 969 | # CONFIG_SENSORS_ADM1026 is not set |
910 | # CONFIG_SENSORS_ADM1031 is not set | 970 | # CONFIG_SENSORS_ADM1031 is not set |
971 | # CONFIG_SENSORS_ADM9240 is not set | ||
911 | # CONFIG_SENSORS_ASB100 is not set | 972 | # CONFIG_SENSORS_ASB100 is not set |
973 | # CONFIG_SENSORS_ATXP1 is not set | ||
912 | # CONFIG_SENSORS_DS1621 is not set | 974 | # CONFIG_SENSORS_DS1621 is not set |
913 | # CONFIG_SENSORS_FSCHER is not set | 975 | # CONFIG_SENSORS_FSCHER is not set |
914 | # CONFIG_SENSORS_FSCPOS is not set | 976 | # CONFIG_SENSORS_FSCPOS is not set |
@@ -924,30 +986,26 @@ CONFIG_I2C_SENSOR=y | |||
924 | # CONFIG_SENSORS_LM85 is not set | 986 | # CONFIG_SENSORS_LM85 is not set |
925 | # CONFIG_SENSORS_LM87 is not set | 987 | # CONFIG_SENSORS_LM87 is not set |
926 | # CONFIG_SENSORS_LM90 is not set | 988 | # CONFIG_SENSORS_LM90 is not set |
989 | # CONFIG_SENSORS_LM92 is not set | ||
927 | # CONFIG_SENSORS_MAX1619 is not set | 990 | # CONFIG_SENSORS_MAX1619 is not set |
928 | # CONFIG_SENSORS_PC87360 is not set | 991 | # CONFIG_SENSORS_PC87360 is not set |
929 | # CONFIG_SENSORS_SMSC47B397 is not set | ||
930 | # CONFIG_SENSORS_SIS5595 is not set | 992 | # CONFIG_SENSORS_SIS5595 is not set |
931 | # CONFIG_SENSORS_SMSC47M1 is not set | 993 | # CONFIG_SENSORS_SMSC47M1 is not set |
994 | # CONFIG_SENSORS_SMSC47B397 is not set | ||
932 | # CONFIG_SENSORS_VIA686A is not set | 995 | # CONFIG_SENSORS_VIA686A is not set |
933 | # CONFIG_SENSORS_W83781D is not set | 996 | # CONFIG_SENSORS_W83781D is not set |
997 | # CONFIG_SENSORS_W83792D is not set | ||
934 | # CONFIG_SENSORS_W83L785TS is not set | 998 | # CONFIG_SENSORS_W83L785TS is not set |
935 | # CONFIG_SENSORS_W83627HF is not set | 999 | # CONFIG_SENSORS_W83627HF is not set |
1000 | # CONFIG_SENSORS_W83627EHF is not set | ||
1001 | # CONFIG_HWMON_DEBUG_CHIP is not set | ||
936 | 1002 | ||
937 | # | 1003 | # |
938 | # Other I2C Chip support | 1004 | # Misc devices |
939 | # | 1005 | # |
940 | CONFIG_SENSORS_EEPROM=y | ||
941 | # CONFIG_SENSORS_PCF8574 is not set | ||
942 | # CONFIG_SENSORS_PCF8591 is not set | ||
943 | # CONFIG_SENSORS_RTC8564 is not set | ||
944 | # CONFIG_I2C_DEBUG_CORE is not set | ||
945 | # CONFIG_I2C_DEBUG_ALGO is not set | ||
946 | # CONFIG_I2C_DEBUG_BUS is not set | ||
947 | # CONFIG_I2C_DEBUG_CHIP is not set | ||
948 | 1006 | ||
949 | # | 1007 | # |
950 | # Misc devices | 1008 | # Multimedia Capabilities Port drivers |
951 | # | 1009 | # |
952 | 1010 | ||
953 | # | 1011 | # |
@@ -994,6 +1052,7 @@ CONFIG_EXT2_FS=y | |||
994 | CONFIG_EXT2_FS_XATTR=y | 1052 | CONFIG_EXT2_FS_XATTR=y |
995 | CONFIG_EXT2_FS_POSIX_ACL=y | 1053 | CONFIG_EXT2_FS_POSIX_ACL=y |
996 | # CONFIG_EXT2_FS_SECURITY is not set | 1054 | # CONFIG_EXT2_FS_SECURITY is not set |
1055 | # CONFIG_EXT2_FS_XIP is not set | ||
997 | CONFIG_EXT3_FS=y | 1056 | CONFIG_EXT3_FS=y |
998 | CONFIG_EXT3_FS_XATTR=y | 1057 | CONFIG_EXT3_FS_XATTR=y |
999 | CONFIG_EXT3_FS_POSIX_ACL=y | 1058 | CONFIG_EXT3_FS_POSIX_ACL=y |
@@ -1004,17 +1063,15 @@ CONFIG_FS_MBCACHE=y | |||
1004 | # CONFIG_REISERFS_FS is not set | 1063 | # CONFIG_REISERFS_FS is not set |
1005 | # CONFIG_JFS_FS is not set | 1064 | # CONFIG_JFS_FS is not set |
1006 | CONFIG_FS_POSIX_ACL=y | 1065 | CONFIG_FS_POSIX_ACL=y |
1007 | |||
1008 | # | ||
1009 | # XFS support | ||
1010 | # | ||
1011 | # CONFIG_XFS_FS is not set | 1066 | # CONFIG_XFS_FS is not set |
1012 | # CONFIG_MINIX_FS is not set | 1067 | # CONFIG_MINIX_FS is not set |
1013 | # CONFIG_ROMFS_FS is not set | 1068 | # CONFIG_ROMFS_FS is not set |
1069 | CONFIG_INOTIFY=y | ||
1014 | # CONFIG_QUOTA is not set | 1070 | # CONFIG_QUOTA is not set |
1015 | CONFIG_DNOTIFY=y | 1071 | CONFIG_DNOTIFY=y |
1016 | # CONFIG_AUTOFS_FS is not set | 1072 | # CONFIG_AUTOFS_FS is not set |
1017 | # CONFIG_AUTOFS4_FS is not set | 1073 | # CONFIG_AUTOFS4_FS is not set |
1074 | # CONFIG_FUSE_FS is not set | ||
1018 | 1075 | ||
1019 | # | 1076 | # |
1020 | # CD-ROM/DVD Filesystems | 1077 | # CD-ROM/DVD Filesystems |
@@ -1034,12 +1091,10 @@ CONFIG_DNOTIFY=y | |||
1034 | # | 1091 | # |
1035 | CONFIG_PROC_FS=y | 1092 | CONFIG_PROC_FS=y |
1036 | CONFIG_SYSFS=y | 1093 | CONFIG_SYSFS=y |
1037 | # CONFIG_DEVFS_FS is not set | ||
1038 | # CONFIG_DEVPTS_FS_XATTR is not set | ||
1039 | CONFIG_TMPFS=y | 1094 | CONFIG_TMPFS=y |
1040 | # CONFIG_TMPFS_XATTR is not set | ||
1041 | # CONFIG_HUGETLB_PAGE is not set | 1095 | # CONFIG_HUGETLB_PAGE is not set |
1042 | CONFIG_RAMFS=y | 1096 | CONFIG_RAMFS=y |
1097 | # CONFIG_RELAYFS_FS is not set | ||
1043 | 1098 | ||
1044 | # | 1099 | # |
1045 | # Miscellaneous filesystems | 1100 | # Miscellaneous filesystems |
@@ -1054,8 +1109,7 @@ CONFIG_RAMFS=y | |||
1054 | # CONFIG_JFFS_FS is not set | 1109 | # CONFIG_JFFS_FS is not set |
1055 | CONFIG_JFFS2_FS=y | 1110 | CONFIG_JFFS2_FS=y |
1056 | CONFIG_JFFS2_FS_DEBUG=0 | 1111 | CONFIG_JFFS2_FS_DEBUG=0 |
1057 | # CONFIG_JFFS2_FS_NAND is not set | 1112 | CONFIG_JFFS2_FS_WRITEBUFFER=y |
1058 | # CONFIG_JFFS2_FS_NOR_ECC is not set | ||
1059 | # CONFIG_JFFS2_COMPRESSION_OPTIONS is not set | 1113 | # CONFIG_JFFS2_COMPRESSION_OPTIONS is not set |
1060 | CONFIG_JFFS2_ZLIB=y | 1114 | CONFIG_JFFS2_ZLIB=y |
1061 | CONFIG_JFFS2_RTIME=y | 1115 | CONFIG_JFFS2_RTIME=y |
@@ -1072,12 +1126,14 @@ CONFIG_JFFS2_RTIME=y | |||
1072 | # | 1126 | # |
1073 | CONFIG_NFS_FS=y | 1127 | CONFIG_NFS_FS=y |
1074 | CONFIG_NFS_V3=y | 1128 | CONFIG_NFS_V3=y |
1129 | # CONFIG_NFS_V3_ACL is not set | ||
1075 | # CONFIG_NFS_V4 is not set | 1130 | # CONFIG_NFS_V4 is not set |
1076 | # CONFIG_NFS_DIRECTIO is not set | 1131 | # CONFIG_NFS_DIRECTIO is not set |
1077 | # CONFIG_NFSD is not set | 1132 | # CONFIG_NFSD is not set |
1078 | CONFIG_ROOT_NFS=y | 1133 | CONFIG_ROOT_NFS=y |
1079 | CONFIG_LOCKD=y | 1134 | CONFIG_LOCKD=y |
1080 | CONFIG_LOCKD_V4=y | 1135 | CONFIG_LOCKD_V4=y |
1136 | CONFIG_NFS_COMMON=y | ||
1081 | CONFIG_SUNRPC=y | 1137 | CONFIG_SUNRPC=y |
1082 | # CONFIG_RPCSEC_GSS_KRB5 is not set | 1138 | # CONFIG_RPCSEC_GSS_KRB5 is not set |
1083 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | 1139 | # CONFIG_RPCSEC_GSS_SPKM3 is not set |
@@ -1086,6 +1142,7 @@ CONFIG_SUNRPC=y | |||
1086 | # CONFIG_NCP_FS is not set | 1142 | # CONFIG_NCP_FS is not set |
1087 | # CONFIG_CODA_FS is not set | 1143 | # CONFIG_CODA_FS is not set |
1088 | # CONFIG_AFS_FS is not set | 1144 | # CONFIG_AFS_FS is not set |
1145 | # CONFIG_9P_FS is not set | ||
1089 | 1146 | ||
1090 | # | 1147 | # |
1091 | # Partition Types | 1148 | # Partition Types |
@@ -1124,6 +1181,7 @@ CONFIG_MSDOS_PARTITION=y | |||
1124 | CONFIG_DEBUG_KERNEL=y | 1181 | CONFIG_DEBUG_KERNEL=y |
1125 | CONFIG_MAGIC_SYSRQ=y | 1182 | CONFIG_MAGIC_SYSRQ=y |
1126 | CONFIG_LOG_BUF_SHIFT=14 | 1183 | CONFIG_LOG_BUF_SHIFT=14 |
1184 | CONFIG_DETECT_SOFTLOCKUP=y | ||
1127 | # CONFIG_SCHEDSTATS is not set | 1185 | # CONFIG_SCHEDSTATS is not set |
1128 | # CONFIG_DEBUG_SLAB is not set | 1186 | # CONFIG_DEBUG_SLAB is not set |
1129 | # CONFIG_DEBUG_SPINLOCK is not set | 1187 | # CONFIG_DEBUG_SPINLOCK is not set |
@@ -1158,6 +1216,7 @@ CONFIG_DEBUG_LL=y | |||
1158 | # Library routines | 1216 | # Library routines |
1159 | # | 1217 | # |
1160 | # CONFIG_CRC_CCITT is not set | 1218 | # CONFIG_CRC_CCITT is not set |
1219 | # CONFIG_CRC16 is not set | ||
1161 | CONFIG_CRC32=y | 1220 | CONFIG_CRC32=y |
1162 | # CONFIG_LIBCRC32C is not set | 1221 | # CONFIG_LIBCRC32C is not set |
1163 | CONFIG_ZLIB_INFLATE=y | 1222 | CONFIG_ZLIB_INFLATE=y |
diff --git a/arch/arm/kernel/entry-armv.S b/arch/arm/kernel/entry-armv.S index 7152bfbee581..93b5e8e5292e 100644 --- a/arch/arm/kernel/entry-armv.S +++ b/arch/arm/kernel/entry-armv.S | |||
@@ -537,7 +537,7 @@ ENTRY(__switch_to) | |||
537 | #ifdef CONFIG_CPU_MPCORE | 537 | #ifdef CONFIG_CPU_MPCORE |
538 | clrex | 538 | clrex |
539 | #else | 539 | #else |
540 | strex r3, r4, [ip] @ Clear exclusive monitor | 540 | strex r5, r4, [ip] @ Clear exclusive monitor |
541 | #endif | 541 | #endif |
542 | #endif | 542 | #endif |
543 | #if defined(CONFIG_CPU_XSCALE) && !defined(CONFIG_IWMMXT) | 543 | #if defined(CONFIG_CPU_XSCALE) && !defined(CONFIG_IWMMXT) |
diff --git a/arch/arm/kernel/io.c b/arch/arm/kernel/io.c index 6c20c1188b60..1f6822dfae74 100644 --- a/arch/arm/kernel/io.c +++ b/arch/arm/kernel/io.c | |||
@@ -7,7 +7,7 @@ | |||
7 | * Copy data from IO memory space to "real" memory space. | 7 | * Copy data from IO memory space to "real" memory space. |
8 | * This needs to be optimized. | 8 | * This needs to be optimized. |
9 | */ | 9 | */ |
10 | void _memcpy_fromio(void *to, void __iomem *from, size_t count) | 10 | void _memcpy_fromio(void *to, const volatile void __iomem *from, size_t count) |
11 | { | 11 | { |
12 | unsigned char *t = to; | 12 | unsigned char *t = to; |
13 | while (count) { | 13 | while (count) { |
@@ -22,7 +22,7 @@ void _memcpy_fromio(void *to, void __iomem *from, size_t count) | |||
22 | * Copy data from "real" memory space to IO memory space. | 22 | * Copy data from "real" memory space to IO memory space. |
23 | * This needs to be optimized. | 23 | * This needs to be optimized. |
24 | */ | 24 | */ |
25 | void _memcpy_toio(void __iomem *to, const void *from, size_t count) | 25 | void _memcpy_toio(volatile void __iomem *to, const void *from, size_t count) |
26 | { | 26 | { |
27 | const unsigned char *f = from; | 27 | const unsigned char *f = from; |
28 | while (count) { | 28 | while (count) { |
@@ -37,7 +37,7 @@ void _memcpy_toio(void __iomem *to, const void *from, size_t count) | |||
37 | * "memset" on IO memory space. | 37 | * "memset" on IO memory space. |
38 | * This needs to be optimized. | 38 | * This needs to be optimized. |
39 | */ | 39 | */ |
40 | void _memset_io(void __iomem *dst, int c, size_t count) | 40 | void _memset_io(volatile void __iomem *dst, int c, size_t count) |
41 | { | 41 | { |
42 | while (count) { | 42 | while (count) { |
43 | count--; | 43 | count--; |
diff --git a/arch/arm/mach-ixp4xx/common.c b/arch/arm/mach-ixp4xx/common.c index 52ad11328e96..36b6045213ee 100644 --- a/arch/arm/mach-ixp4xx/common.c +++ b/arch/arm/mach-ixp4xx/common.c | |||
@@ -125,7 +125,8 @@ static int ixp4xx_set_irq_type(unsigned int irq, unsigned int type) | |||
125 | } else if (type & IRQT_LOW) { | 125 | } else if (type & IRQT_LOW) { |
126 | int_style = IXP4XX_GPIO_STYLE_ACTIVE_LOW; | 126 | int_style = IXP4XX_GPIO_STYLE_ACTIVE_LOW; |
127 | irq_type = IXP4XX_IRQ_LEVEL; | 127 | irq_type = IXP4XX_IRQ_LEVEL; |
128 | } | 128 | } else |
129 | return -EINVAL; | ||
129 | 130 | ||
130 | ixp4xx_config_irq(irq, irq_type); | 131 | ixp4xx_config_irq(irq, irq_type); |
131 | 132 | ||
@@ -142,6 +143,8 @@ static int ixp4xx_set_irq_type(unsigned int irq, unsigned int type) | |||
142 | 143 | ||
143 | /* Set the new style */ | 144 | /* Set the new style */ |
144 | *int_reg |= (int_style << (line * IXP4XX_GPIO_STYLE_SIZE)); | 145 | *int_reg |= (int_style << (line * IXP4XX_GPIO_STYLE_SIZE)); |
146 | |||
147 | return 0; | ||
145 | } | 148 | } |
146 | 149 | ||
147 | static void ixp4xx_irq_mask(unsigned int irq) | 150 | static void ixp4xx_irq_mask(unsigned int irq) |
diff --git a/arch/i386/kernel/acpi/boot.c b/arch/i386/kernel/acpi/boot.c index a63351c085c6..838437b2d241 100644 --- a/arch/i386/kernel/acpi/boot.c +++ b/arch/i386/kernel/acpi/boot.c | |||
@@ -27,7 +27,6 @@ | |||
27 | #include <linux/config.h> | 27 | #include <linux/config.h> |
28 | #include <linux/acpi.h> | 28 | #include <linux/acpi.h> |
29 | #include <linux/efi.h> | 29 | #include <linux/efi.h> |
30 | #include <linux/irq.h> | ||
31 | #include <linux/module.h> | 30 | #include <linux/module.h> |
32 | #include <linux/dmi.h> | 31 | #include <linux/dmi.h> |
33 | 32 | ||
diff --git a/arch/i386/kernel/apic.c b/arch/i386/kernel/apic.c index a22a866de8f9..5546ddebec33 100644 --- a/arch/i386/kernel/apic.c +++ b/arch/i386/kernel/apic.c | |||
@@ -18,7 +18,6 @@ | |||
18 | #include <linux/init.h> | 18 | #include <linux/init.h> |
19 | 19 | ||
20 | #include <linux/mm.h> | 20 | #include <linux/mm.h> |
21 | #include <linux/irq.h> | ||
22 | #include <linux/delay.h> | 21 | #include <linux/delay.h> |
23 | #include <linux/bootmem.h> | 22 | #include <linux/bootmem.h> |
24 | #include <linux/smp_lock.h> | 23 | #include <linux/smp_lock.h> |
diff --git a/arch/i386/kernel/cpu/mcheck/k7.c b/arch/i386/kernel/cpu/mcheck/k7.c index c4abe7657397..7c6b9c73522f 100644 --- a/arch/i386/kernel/cpu/mcheck/k7.c +++ b/arch/i386/kernel/cpu/mcheck/k7.c | |||
@@ -7,7 +7,6 @@ | |||
7 | #include <linux/types.h> | 7 | #include <linux/types.h> |
8 | #include <linux/kernel.h> | 8 | #include <linux/kernel.h> |
9 | #include <linux/config.h> | 9 | #include <linux/config.h> |
10 | #include <linux/irq.h> | ||
11 | #include <linux/interrupt.h> | 10 | #include <linux/interrupt.h> |
12 | #include <linux/smp.h> | 11 | #include <linux/smp.h> |
13 | 12 | ||
diff --git a/arch/i386/kernel/cpu/mcheck/non-fatal.c b/arch/i386/kernel/cpu/mcheck/non-fatal.c index 7864ddfccf07..82dffe0d4954 100644 --- a/arch/i386/kernel/cpu/mcheck/non-fatal.c +++ b/arch/i386/kernel/cpu/mcheck/non-fatal.c | |||
@@ -12,7 +12,6 @@ | |||
12 | #include <linux/kernel.h> | 12 | #include <linux/kernel.h> |
13 | #include <linux/jiffies.h> | 13 | #include <linux/jiffies.h> |
14 | #include <linux/config.h> | 14 | #include <linux/config.h> |
15 | #include <linux/irq.h> | ||
16 | #include <linux/workqueue.h> | 15 | #include <linux/workqueue.h> |
17 | #include <linux/interrupt.h> | 16 | #include <linux/interrupt.h> |
18 | #include <linux/smp.h> | 17 | #include <linux/smp.h> |
diff --git a/arch/i386/kernel/cpu/mcheck/p4.c b/arch/i386/kernel/cpu/mcheck/p4.c index 0abccb6fdf9e..1d1e885f500a 100644 --- a/arch/i386/kernel/cpu/mcheck/p4.c +++ b/arch/i386/kernel/cpu/mcheck/p4.c | |||
@@ -6,7 +6,6 @@ | |||
6 | #include <linux/types.h> | 6 | #include <linux/types.h> |
7 | #include <linux/kernel.h> | 7 | #include <linux/kernel.h> |
8 | #include <linux/config.h> | 8 | #include <linux/config.h> |
9 | #include <linux/irq.h> | ||
10 | #include <linux/interrupt.h> | 9 | #include <linux/interrupt.h> |
11 | #include <linux/smp.h> | 10 | #include <linux/smp.h> |
12 | 11 | ||
diff --git a/arch/i386/kernel/cpu/mcheck/p5.c b/arch/i386/kernel/cpu/mcheck/p5.c index ec0614cd2925..3a2e24baddc7 100644 --- a/arch/i386/kernel/cpu/mcheck/p5.c +++ b/arch/i386/kernel/cpu/mcheck/p5.c | |||
@@ -6,7 +6,6 @@ | |||
6 | #include <linux/init.h> | 6 | #include <linux/init.h> |
7 | #include <linux/types.h> | 7 | #include <linux/types.h> |
8 | #include <linux/kernel.h> | 8 | #include <linux/kernel.h> |
9 | #include <linux/irq.h> | ||
10 | #include <linux/interrupt.h> | 9 | #include <linux/interrupt.h> |
11 | #include <linux/smp.h> | 10 | #include <linux/smp.h> |
12 | 11 | ||
diff --git a/arch/i386/kernel/cpu/mcheck/p6.c b/arch/i386/kernel/cpu/mcheck/p6.c index f01b73f947e1..3c035b8fa3d9 100644 --- a/arch/i386/kernel/cpu/mcheck/p6.c +++ b/arch/i386/kernel/cpu/mcheck/p6.c | |||
@@ -6,7 +6,6 @@ | |||
6 | #include <linux/init.h> | 6 | #include <linux/init.h> |
7 | #include <linux/types.h> | 7 | #include <linux/types.h> |
8 | #include <linux/kernel.h> | 8 | #include <linux/kernel.h> |
9 | #include <linux/irq.h> | ||
10 | #include <linux/interrupt.h> | 9 | #include <linux/interrupt.h> |
11 | #include <linux/smp.h> | 10 | #include <linux/smp.h> |
12 | 11 | ||
diff --git a/arch/i386/kernel/cpu/mcheck/winchip.c b/arch/i386/kernel/cpu/mcheck/winchip.c index 7bae68fa168f..5b9d2dd411d3 100644 --- a/arch/i386/kernel/cpu/mcheck/winchip.c +++ b/arch/i386/kernel/cpu/mcheck/winchip.c | |||
@@ -6,7 +6,6 @@ | |||
6 | #include <linux/init.h> | 6 | #include <linux/init.h> |
7 | #include <linux/types.h> | 7 | #include <linux/types.h> |
8 | #include <linux/kernel.h> | 8 | #include <linux/kernel.h> |
9 | #include <linux/irq.h> | ||
10 | #include <linux/interrupt.h> | 9 | #include <linux/interrupt.h> |
11 | 10 | ||
12 | #include <asm/processor.h> | 11 | #include <asm/processor.h> |
diff --git a/arch/i386/kernel/crash.c b/arch/i386/kernel/crash.c index 913be77bb844..0248e084017c 100644 --- a/arch/i386/kernel/crash.c +++ b/arch/i386/kernel/crash.c | |||
@@ -11,10 +11,8 @@ | |||
11 | #include <linux/types.h> | 11 | #include <linux/types.h> |
12 | #include <linux/kernel.h> | 12 | #include <linux/kernel.h> |
13 | #include <linux/smp.h> | 13 | #include <linux/smp.h> |
14 | #include <linux/irq.h> | ||
15 | #include <linux/reboot.h> | 14 | #include <linux/reboot.h> |
16 | #include <linux/kexec.h> | 15 | #include <linux/kexec.h> |
17 | #include <linux/irq.h> | ||
18 | #include <linux/delay.h> | 16 | #include <linux/delay.h> |
19 | #include <linux/elf.h> | 17 | #include <linux/elf.h> |
20 | #include <linux/elfcore.h> | 18 | #include <linux/elfcore.h> |
diff --git a/arch/i386/kernel/i8259.c b/arch/i386/kernel/i8259.c index 178f4e9bac9d..323ef8ab3244 100644 --- a/arch/i386/kernel/i8259.c +++ b/arch/i386/kernel/i8259.c | |||
@@ -16,7 +16,6 @@ | |||
16 | #include <asm/atomic.h> | 16 | #include <asm/atomic.h> |
17 | #include <asm/system.h> | 17 | #include <asm/system.h> |
18 | #include <asm/io.h> | 18 | #include <asm/io.h> |
19 | #include <asm/irq.h> | ||
20 | #include <asm/timer.h> | 19 | #include <asm/timer.h> |
21 | #include <asm/pgtable.h> | 20 | #include <asm/pgtable.h> |
22 | #include <asm/delay.h> | 21 | #include <asm/delay.h> |
@@ -25,8 +24,6 @@ | |||
25 | #include <asm/arch_hooks.h> | 24 | #include <asm/arch_hooks.h> |
26 | #include <asm/i8259.h> | 25 | #include <asm/i8259.h> |
27 | 26 | ||
28 | #include <linux/irq.h> | ||
29 | |||
30 | #include <io_ports.h> | 27 | #include <io_ports.h> |
31 | 28 | ||
32 | /* | 29 | /* |
diff --git a/arch/i386/kernel/io_apic.c b/arch/i386/kernel/io_apic.c index 378313b0cce9..fb3991e8229e 100644 --- a/arch/i386/kernel/io_apic.c +++ b/arch/i386/kernel/io_apic.c | |||
@@ -21,7 +21,6 @@ | |||
21 | */ | 21 | */ |
22 | 22 | ||
23 | #include <linux/mm.h> | 23 | #include <linux/mm.h> |
24 | #include <linux/irq.h> | ||
25 | #include <linux/interrupt.h> | 24 | #include <linux/interrupt.h> |
26 | #include <linux/init.h> | 25 | #include <linux/init.h> |
27 | #include <linux/delay.h> | 26 | #include <linux/delay.h> |
diff --git a/arch/i386/kernel/mpparse.c b/arch/i386/kernel/mpparse.c index 15949fd08109..27aabfceb67e 100644 --- a/arch/i386/kernel/mpparse.c +++ b/arch/i386/kernel/mpparse.c | |||
@@ -14,7 +14,6 @@ | |||
14 | */ | 14 | */ |
15 | 15 | ||
16 | #include <linux/mm.h> | 16 | #include <linux/mm.h> |
17 | #include <linux/irq.h> | ||
18 | #include <linux/init.h> | 17 | #include <linux/init.h> |
19 | #include <linux/acpi.h> | 18 | #include <linux/acpi.h> |
20 | #include <linux/delay.h> | 19 | #include <linux/delay.h> |
diff --git a/arch/i386/kernel/nmi.c b/arch/i386/kernel/nmi.c index 0178457db721..72515b8a1b12 100644 --- a/arch/i386/kernel/nmi.c +++ b/arch/i386/kernel/nmi.c | |||
@@ -15,7 +15,6 @@ | |||
15 | 15 | ||
16 | #include <linux/config.h> | 16 | #include <linux/config.h> |
17 | #include <linux/mm.h> | 17 | #include <linux/mm.h> |
18 | #include <linux/irq.h> | ||
19 | #include <linux/delay.h> | 18 | #include <linux/delay.h> |
20 | #include <linux/bootmem.h> | 19 | #include <linux/bootmem.h> |
21 | #include <linux/smp_lock.h> | 20 | #include <linux/smp_lock.h> |
diff --git a/arch/i386/kernel/process.c b/arch/i386/kernel/process.c index b45cbf93d439..7a14fdfd3af9 100644 --- a/arch/i386/kernel/process.c +++ b/arch/i386/kernel/process.c | |||
@@ -47,13 +47,11 @@ | |||
47 | #include <asm/ldt.h> | 47 | #include <asm/ldt.h> |
48 | #include <asm/processor.h> | 48 | #include <asm/processor.h> |
49 | #include <asm/i387.h> | 49 | #include <asm/i387.h> |
50 | #include <asm/irq.h> | ||
51 | #include <asm/desc.h> | 50 | #include <asm/desc.h> |
52 | #ifdef CONFIG_MATH_EMULATION | 51 | #ifdef CONFIG_MATH_EMULATION |
53 | #include <asm/math_emu.h> | 52 | #include <asm/math_emu.h> |
54 | #endif | 53 | #endif |
55 | 54 | ||
56 | #include <linux/irq.h> | ||
57 | #include <linux/err.h> | 55 | #include <linux/err.h> |
58 | 56 | ||
59 | #include <asm/tlbflush.h> | 57 | #include <asm/tlbflush.h> |
diff --git a/arch/i386/kernel/smp.c b/arch/i386/kernel/smp.c index 48b55db3680f..218d725a5a1e 100644 --- a/arch/i386/kernel/smp.c +++ b/arch/i386/kernel/smp.c | |||
@@ -11,7 +11,6 @@ | |||
11 | #include <linux/init.h> | 11 | #include <linux/init.h> |
12 | 12 | ||
13 | #include <linux/mm.h> | 13 | #include <linux/mm.h> |
14 | #include <linux/irq.h> | ||
15 | #include <linux/delay.h> | 14 | #include <linux/delay.h> |
16 | #include <linux/spinlock.h> | 15 | #include <linux/spinlock.h> |
17 | #include <linux/smp_lock.h> | 16 | #include <linux/smp_lock.h> |
diff --git a/arch/i386/kernel/smpboot.c b/arch/i386/kernel/smpboot.c index 5f0a95d76a4f..1fb26d0e30b6 100644 --- a/arch/i386/kernel/smpboot.c +++ b/arch/i386/kernel/smpboot.c | |||
@@ -42,7 +42,6 @@ | |||
42 | #include <linux/sched.h> | 42 | #include <linux/sched.h> |
43 | #include <linux/kernel_stat.h> | 43 | #include <linux/kernel_stat.h> |
44 | #include <linux/smp_lock.h> | 44 | #include <linux/smp_lock.h> |
45 | #include <linux/irq.h> | ||
46 | #include <linux/bootmem.h> | 45 | #include <linux/bootmem.h> |
47 | #include <linux/notifier.h> | 46 | #include <linux/notifier.h> |
48 | #include <linux/cpu.h> | 47 | #include <linux/cpu.h> |
diff --git a/arch/i386/kernel/timers/timer_pit.c b/arch/i386/kernel/timers/timer_pit.c index eddb64038234..e42e46d35159 100644 --- a/arch/i386/kernel/timers/timer_pit.c +++ b/arch/i386/kernel/timers/timer_pit.c | |||
@@ -6,7 +6,6 @@ | |||
6 | #include <linux/spinlock.h> | 6 | #include <linux/spinlock.h> |
7 | #include <linux/module.h> | 7 | #include <linux/module.h> |
8 | #include <linux/device.h> | 8 | #include <linux/device.h> |
9 | #include <linux/irq.h> | ||
10 | #include <linux/sysdev.h> | 9 | #include <linux/sysdev.h> |
11 | #include <linux/timex.h> | 10 | #include <linux/timex.h> |
12 | #include <asm/delay.h> | 11 | #include <asm/delay.h> |
diff --git a/arch/i386/kernel/traps.c b/arch/i386/kernel/traps.c index 431a551e46ea..19e90bdd84ea 100644 --- a/arch/i386/kernel/traps.c +++ b/arch/i386/kernel/traps.c | |||
@@ -52,7 +52,6 @@ | |||
52 | #include <asm/arch_hooks.h> | 52 | #include <asm/arch_hooks.h> |
53 | #include <asm/kdebug.h> | 53 | #include <asm/kdebug.h> |
54 | 54 | ||
55 | #include <linux/irq.h> | ||
56 | #include <linux/module.h> | 55 | #include <linux/module.h> |
57 | 56 | ||
58 | #include "mach_traps.h" | 57 | #include "mach_traps.h" |
diff --git a/arch/i386/mach-default/setup.c b/arch/i386/mach-default/setup.c index e5a1a83d09ef..b4a7455c6993 100644 --- a/arch/i386/mach-default/setup.c +++ b/arch/i386/mach-default/setup.c | |||
@@ -5,7 +5,6 @@ | |||
5 | #include <linux/config.h> | 5 | #include <linux/config.h> |
6 | #include <linux/smp.h> | 6 | #include <linux/smp.h> |
7 | #include <linux/init.h> | 7 | #include <linux/init.h> |
8 | #include <linux/irq.h> | ||
9 | #include <linux/interrupt.h> | 8 | #include <linux/interrupt.h> |
10 | #include <asm/acpi.h> | 9 | #include <asm/acpi.h> |
11 | #include <asm/arch_hooks.h> | 10 | #include <asm/arch_hooks.h> |
diff --git a/arch/i386/mach-visws/setup.c b/arch/i386/mach-visws/setup.c index 26ada6fc0d77..07fac7e749c7 100644 --- a/arch/i386/mach-visws/setup.c +++ b/arch/i386/mach-visws/setup.c | |||
@@ -5,7 +5,6 @@ | |||
5 | 5 | ||
6 | #include <linux/smp.h> | 6 | #include <linux/smp.h> |
7 | #include <linux/init.h> | 7 | #include <linux/init.h> |
8 | #include <linux/irq.h> | ||
9 | #include <linux/interrupt.h> | 8 | #include <linux/interrupt.h> |
10 | 9 | ||
11 | #include <asm/fixmap.h> | 10 | #include <asm/fixmap.h> |
diff --git a/arch/i386/mach-visws/visws_apic.c b/arch/i386/mach-visws/visws_apic.c index 04e6585849a2..3e64fb721291 100644 --- a/arch/i386/mach-visws/visws_apic.c +++ b/arch/i386/mach-visws/visws_apic.c | |||
@@ -19,7 +19,6 @@ | |||
19 | #include <linux/config.h> | 19 | #include <linux/config.h> |
20 | #include <linux/kernel_stat.h> | 20 | #include <linux/kernel_stat.h> |
21 | #include <linux/interrupt.h> | 21 | #include <linux/interrupt.h> |
22 | #include <linux/irq.h> | ||
23 | #include <linux/smp_lock.h> | 22 | #include <linux/smp_lock.h> |
24 | #include <linux/init.h> | 23 | #include <linux/init.h> |
25 | 24 | ||
diff --git a/arch/i386/mach-voyager/setup.c b/arch/i386/mach-voyager/setup.c index df123fc487bb..7d8a3acb9441 100644 --- a/arch/i386/mach-voyager/setup.c +++ b/arch/i386/mach-voyager/setup.c | |||
@@ -4,7 +4,6 @@ | |||
4 | 4 | ||
5 | #include <linux/config.h> | 5 | #include <linux/config.h> |
6 | #include <linux/init.h> | 6 | #include <linux/init.h> |
7 | #include <linux/irq.h> | ||
8 | #include <linux/interrupt.h> | 7 | #include <linux/interrupt.h> |
9 | #include <asm/acpi.h> | 8 | #include <asm/acpi.h> |
10 | #include <asm/arch_hooks.h> | 9 | #include <asm/arch_hooks.h> |
diff --git a/arch/i386/mach-voyager/voyager_basic.c b/arch/i386/mach-voyager/voyager_basic.c index cc69875d979b..aa49a33a572c 100644 --- a/arch/i386/mach-voyager/voyager_basic.c +++ b/arch/i386/mach-voyager/voyager_basic.c | |||
@@ -27,7 +27,6 @@ | |||
27 | #include <asm/voyager.h> | 27 | #include <asm/voyager.h> |
28 | #include <asm/vic.h> | 28 | #include <asm/vic.h> |
29 | #include <linux/pm.h> | 29 | #include <linux/pm.h> |
30 | #include <linux/irq.h> | ||
31 | #include <asm/tlbflush.h> | 30 | #include <asm/tlbflush.h> |
32 | #include <asm/arch_hooks.h> | 31 | #include <asm/arch_hooks.h> |
33 | #include <asm/i8253.h> | 32 | #include <asm/i8253.h> |
diff --git a/arch/i386/mach-voyager/voyager_smp.c b/arch/i386/mach-voyager/voyager_smp.c index 46b0cf4a31e0..72a1b9cae2e4 100644 --- a/arch/i386/mach-voyager/voyager_smp.c +++ b/arch/i386/mach-voyager/voyager_smp.c | |||
@@ -30,8 +30,6 @@ | |||
30 | #include <asm/tlbflush.h> | 30 | #include <asm/tlbflush.h> |
31 | #include <asm/arch_hooks.h> | 31 | #include <asm/arch_hooks.h> |
32 | 32 | ||
33 | #include <linux/irq.h> | ||
34 | |||
35 | /* TLB state -- visible externally, indexed physically */ | 33 | /* TLB state -- visible externally, indexed physically */ |
36 | DEFINE_PER_CPU(struct tlb_state, cpu_tlbstate) ____cacheline_aligned = { &init_mm, 0 }; | 34 | DEFINE_PER_CPU(struct tlb_state, cpu_tlbstate) ____cacheline_aligned = { &init_mm, 0 }; |
37 | 35 | ||
diff --git a/arch/i386/mach-voyager/voyager_thread.c b/arch/i386/mach-voyager/voyager_thread.c index a9341b0eebff..2b03884fdb2a 100644 --- a/arch/i386/mach-voyager/voyager_thread.c +++ b/arch/i386/mach-voyager/voyager_thread.c | |||
@@ -31,8 +31,6 @@ | |||
31 | #include <asm/mtrr.h> | 31 | #include <asm/mtrr.h> |
32 | #include <asm/msr.h> | 32 | #include <asm/msr.h> |
33 | 33 | ||
34 | #include <linux/irq.h> | ||
35 | |||
36 | #define THREAD_NAME "kvoyagerd" | 34 | #define THREAD_NAME "kvoyagerd" |
37 | 35 | ||
38 | /* external variables */ | 36 | /* external variables */ |
diff --git a/arch/i386/oprofile/nmi_timer_int.c b/arch/i386/oprofile/nmi_timer_int.c index ad93cdd55d63..930a1127bb30 100644 --- a/arch/i386/oprofile/nmi_timer_int.c +++ b/arch/i386/oprofile/nmi_timer_int.c | |||
@@ -9,7 +9,7 @@ | |||
9 | 9 | ||
10 | #include <linux/init.h> | 10 | #include <linux/init.h> |
11 | #include <linux/smp.h> | 11 | #include <linux/smp.h> |
12 | #include <linux/irq.h> | 12 | #include <linux/errno.h> |
13 | #include <linux/oprofile.h> | 13 | #include <linux/oprofile.h> |
14 | #include <linux/rcupdate.h> | 14 | #include <linux/rcupdate.h> |
15 | 15 | ||
diff --git a/arch/i386/pci/acpi.c b/arch/i386/pci/acpi.c index 2941674f35eb..7e7a202df3c8 100644 --- a/arch/i386/pci/acpi.c +++ b/arch/i386/pci/acpi.c | |||
@@ -1,7 +1,6 @@ | |||
1 | #include <linux/pci.h> | 1 | #include <linux/pci.h> |
2 | #include <linux/acpi.h> | 2 | #include <linux/acpi.h> |
3 | #include <linux/init.h> | 3 | #include <linux/init.h> |
4 | #include <linux/irq.h> | ||
5 | #include <asm/hw_irq.h> | 4 | #include <asm/hw_irq.h> |
6 | #include <asm/numa.h> | 5 | #include <asm/numa.h> |
7 | #include "pci.h" | 6 | #include "pci.h" |
diff --git a/arch/i386/pci/irq.c b/arch/i386/pci/irq.c index 326a2edc3834..281ed8ab347a 100644 --- a/arch/i386/pci/irq.c +++ b/arch/i386/pci/irq.c | |||
@@ -11,7 +11,6 @@ | |||
11 | #include <linux/init.h> | 11 | #include <linux/init.h> |
12 | #include <linux/slab.h> | 12 | #include <linux/slab.h> |
13 | #include <linux/interrupt.h> | 13 | #include <linux/interrupt.h> |
14 | #include <linux/irq.h> | ||
15 | #include <linux/dmi.h> | 14 | #include <linux/dmi.h> |
16 | #include <asm/io.h> | 15 | #include <asm/io.h> |
17 | #include <asm/smp.h> | 16 | #include <asm/smp.h> |
diff --git a/arch/i386/power/cpu.c b/arch/i386/power/cpu.c index 7b0b9ad848e5..b27c5acc79d0 100644 --- a/arch/i386/power/cpu.c +++ b/arch/i386/power/cpu.c | |||
@@ -8,25 +8,8 @@ | |||
8 | */ | 8 | */ |
9 | 9 | ||
10 | #include <linux/config.h> | 10 | #include <linux/config.h> |
11 | #include <linux/kernel.h> | ||
12 | #include <linux/module.h> | 11 | #include <linux/module.h> |
13 | #include <linux/init.h> | ||
14 | #include <linux/types.h> | ||
15 | #include <linux/spinlock.h> | ||
16 | #include <linux/poll.h> | ||
17 | #include <linux/delay.h> | ||
18 | #include <linux/sysrq.h> | ||
19 | #include <linux/proc_fs.h> | ||
20 | #include <linux/irq.h> | ||
21 | #include <linux/pm.h> | ||
22 | #include <linux/device.h> | ||
23 | #include <linux/suspend.h> | 12 | #include <linux/suspend.h> |
24 | #include <linux/acpi.h> | ||
25 | |||
26 | #include <asm/uaccess.h> | ||
27 | #include <asm/acpi.h> | ||
28 | #include <asm/tlbflush.h> | ||
29 | #include <asm/processor.h> | ||
30 | 13 | ||
31 | static struct saved_context saved_context; | 14 | static struct saved_context saved_context; |
32 | 15 | ||
diff --git a/arch/ia64/hp/sim/simscsi.c b/arch/ia64/hp/sim/simscsi.c index 56405dbfd739..a18983a3c934 100644 --- a/arch/ia64/hp/sim/simscsi.c +++ b/arch/ia64/hp/sim/simscsi.c | |||
@@ -233,6 +233,23 @@ simscsi_readwrite10 (struct scsi_cmnd *sc, int mode) | |||
233 | simscsi_readwrite(sc, mode, offset, ((sc->cmnd[7] << 8) | sc->cmnd[8])*512); | 233 | simscsi_readwrite(sc, mode, offset, ((sc->cmnd[7] << 8) | sc->cmnd[8])*512); |
234 | } | 234 | } |
235 | 235 | ||
236 | static void simscsi_fillresult(struct scsi_cmnd *sc, char *buf, unsigned len) | ||
237 | { | ||
238 | |||
239 | int scatterlen = sc->use_sg; | ||
240 | struct scatterlist *slp; | ||
241 | |||
242 | if (scatterlen == 0) | ||
243 | memcpy(sc->request_buffer, buf, len); | ||
244 | else for (slp = (struct scatterlist *)sc->buffer; scatterlen-- > 0 && len > 0; slp++) { | ||
245 | unsigned thislen = min(len, slp->length); | ||
246 | |||
247 | memcpy(page_address(slp->page) + slp->offset, buf, thislen); | ||
248 | slp++; | ||
249 | len -= thislen; | ||
250 | } | ||
251 | } | ||
252 | |||
236 | static int | 253 | static int |
237 | simscsi_queuecommand (struct scsi_cmnd *sc, void (*done)(struct scsi_cmnd *)) | 254 | simscsi_queuecommand (struct scsi_cmnd *sc, void (*done)(struct scsi_cmnd *)) |
238 | { | 255 | { |
@@ -240,6 +257,7 @@ simscsi_queuecommand (struct scsi_cmnd *sc, void (*done)(struct scsi_cmnd *)) | |||
240 | char fname[MAX_ROOT_LEN+16]; | 257 | char fname[MAX_ROOT_LEN+16]; |
241 | size_t disk_size; | 258 | size_t disk_size; |
242 | char *buf; | 259 | char *buf; |
260 | char localbuf[36]; | ||
243 | #if DEBUG_SIMSCSI | 261 | #if DEBUG_SIMSCSI |
244 | register long sp asm ("sp"); | 262 | register long sp asm ("sp"); |
245 | 263 | ||
@@ -263,7 +281,7 @@ simscsi_queuecommand (struct scsi_cmnd *sc, void (*done)(struct scsi_cmnd *)) | |||
263 | /* disk doesn't exist... */ | 281 | /* disk doesn't exist... */ |
264 | break; | 282 | break; |
265 | } | 283 | } |
266 | buf = sc->request_buffer; | 284 | buf = localbuf; |
267 | buf[0] = 0; /* magnetic disk */ | 285 | buf[0] = 0; /* magnetic disk */ |
268 | buf[1] = 0; /* not a removable medium */ | 286 | buf[1] = 0; /* not a removable medium */ |
269 | buf[2] = 2; /* SCSI-2 compliant device */ | 287 | buf[2] = 2; /* SCSI-2 compliant device */ |
@@ -273,6 +291,7 @@ simscsi_queuecommand (struct scsi_cmnd *sc, void (*done)(struct scsi_cmnd *)) | |||
273 | buf[6] = 0; /* reserved */ | 291 | buf[6] = 0; /* reserved */ |
274 | buf[7] = 0; /* various flags */ | 292 | buf[7] = 0; /* various flags */ |
275 | memcpy(buf + 8, "HP SIMULATED DISK 0.00", 28); | 293 | memcpy(buf + 8, "HP SIMULATED DISK 0.00", 28); |
294 | simscsi_fillresult(sc, buf, 36); | ||
276 | sc->result = GOOD; | 295 | sc->result = GOOD; |
277 | break; | 296 | break; |
278 | 297 | ||
@@ -304,16 +323,13 @@ simscsi_queuecommand (struct scsi_cmnd *sc, void (*done)(struct scsi_cmnd *)) | |||
304 | simscsi_readwrite10(sc, SSC_WRITE); | 323 | simscsi_readwrite10(sc, SSC_WRITE); |
305 | break; | 324 | break; |
306 | 325 | ||
307 | |||
308 | case READ_CAPACITY: | 326 | case READ_CAPACITY: |
309 | if (desc[target_id] < 0 || sc->request_bufflen < 8) { | 327 | if (desc[target_id] < 0 || sc->request_bufflen < 8) { |
310 | break; | 328 | break; |
311 | } | 329 | } |
312 | buf = sc->request_buffer; | 330 | buf = localbuf; |
313 | |||
314 | disk_size = simscsi_get_disk_size(desc[target_id]); | 331 | disk_size = simscsi_get_disk_size(desc[target_id]); |
315 | 332 | ||
316 | /* pretend to be a 1GB disk (partition table contains real stuff): */ | ||
317 | buf[0] = (disk_size >> 24) & 0xff; | 333 | buf[0] = (disk_size >> 24) & 0xff; |
318 | buf[1] = (disk_size >> 16) & 0xff; | 334 | buf[1] = (disk_size >> 16) & 0xff; |
319 | buf[2] = (disk_size >> 8) & 0xff; | 335 | buf[2] = (disk_size >> 8) & 0xff; |
@@ -323,13 +339,14 @@ simscsi_queuecommand (struct scsi_cmnd *sc, void (*done)(struct scsi_cmnd *)) | |||
323 | buf[5] = 0; | 339 | buf[5] = 0; |
324 | buf[6] = 2; | 340 | buf[6] = 2; |
325 | buf[7] = 0; | 341 | buf[7] = 0; |
342 | simscsi_fillresult(sc, buf, 8); | ||
326 | sc->result = GOOD; | 343 | sc->result = GOOD; |
327 | break; | 344 | break; |
328 | 345 | ||
329 | case MODE_SENSE: | 346 | case MODE_SENSE: |
330 | case MODE_SENSE_10: | 347 | case MODE_SENSE_10: |
331 | /* sd.c uses this to determine whether disk does write-caching. */ | 348 | /* sd.c uses this to determine whether disk does write-caching. */ |
332 | memset(sc->request_buffer, 0, 128); | 349 | simscsi_fillresult(sc, (char *)empty_zero_page, sc->request_bufflen); |
333 | sc->result = GOOD; | 350 | sc->result = GOOD; |
334 | break; | 351 | break; |
335 | 352 | ||
diff --git a/arch/ia64/kernel/mca_asm.S b/arch/ia64/kernel/mca_asm.S index 499a065f4e60..db32fc1d3935 100644 --- a/arch/ia64/kernel/mca_asm.S +++ b/arch/ia64/kernel/mca_asm.S | |||
@@ -489,24 +489,27 @@ ia64_state_save: | |||
489 | ;; | 489 | ;; |
490 | st8 [temp1]=r17,16 // pal_min_state | 490 | st8 [temp1]=r17,16 // pal_min_state |
491 | st8 [temp2]=r6,16 // prev_IA64_KR_CURRENT | 491 | st8 [temp2]=r6,16 // prev_IA64_KR_CURRENT |
492 | mov r6=IA64_KR(CURRENT_STACK) | ||
493 | ;; | ||
494 | st8 [temp1]=r6,16 // prev_IA64_KR_CURRENT_STACK | ||
495 | st8 [temp2]=r0,16 // prev_task, starts off as NULL | ||
492 | mov r6=cr.ifa | 496 | mov r6=cr.ifa |
493 | ;; | 497 | ;; |
494 | st8 [temp1]=r0,16 // prev_task, starts off as NULL | 498 | st8 [temp1]=r12,16 // cr.isr |
495 | st8 [temp2]=r12,16 // cr.isr | 499 | st8 [temp2]=r6,16 // cr.ifa |
496 | mov r12=cr.itir | 500 | mov r12=cr.itir |
497 | ;; | 501 | ;; |
498 | st8 [temp1]=r6,16 // cr.ifa | 502 | st8 [temp1]=r12,16 // cr.itir |
499 | st8 [temp2]=r12,16 // cr.itir | 503 | st8 [temp2]=r11,16 // cr.iipa |
500 | mov r12=cr.iim | 504 | mov r12=cr.iim |
501 | ;; | 505 | ;; |
502 | st8 [temp1]=r11,16 // cr.iipa | 506 | st8 [temp1]=r12,16 // cr.iim |
503 | st8 [temp2]=r12,16 // cr.iim | ||
504 | mov r6=cr.iha | ||
505 | (p1) mov r12=IA64_MCA_COLD_BOOT | 507 | (p1) mov r12=IA64_MCA_COLD_BOOT |
506 | (p2) mov r12=IA64_INIT_WARM_BOOT | 508 | (p2) mov r12=IA64_INIT_WARM_BOOT |
509 | mov r6=cr.iha | ||
507 | ;; | 510 | ;; |
508 | st8 [temp1]=r6,16 // cr.iha | 511 | st8 [temp2]=r6,16 // cr.iha |
509 | st8 [temp2]=r12 // os_status, default is cold boot | 512 | st8 [temp1]=r12 // os_status, default is cold boot |
510 | mov r6=IA64_MCA_SAME_CONTEXT | 513 | mov r6=IA64_MCA_SAME_CONTEXT |
511 | ;; | 514 | ;; |
512 | st8 [temp1]=r6 // context, default is same context | 515 | st8 [temp1]=r6 // context, default is same context |
@@ -823,9 +826,12 @@ ia64_state_restore: | |||
823 | ld8 r12=[temp1],16 // sal_ra | 826 | ld8 r12=[temp1],16 // sal_ra |
824 | ld8 r9=[temp2],16 // sal_gp | 827 | ld8 r9=[temp2],16 // sal_gp |
825 | ;; | 828 | ;; |
826 | ld8 r22=[temp1],24 // pal_min_state, virtual. skip prev_task | 829 | ld8 r22=[temp1],16 // pal_min_state, virtual |
827 | ld8 r21=[temp2],16 // prev_IA64_KR_CURRENT | 830 | ld8 r21=[temp2],16 // prev_IA64_KR_CURRENT |
828 | ;; | 831 | ;; |
832 | ld8 r16=[temp1],16 // prev_IA64_KR_CURRENT_STACK | ||
833 | ld8 r20=[temp2],16 // prev_task | ||
834 | ;; | ||
829 | ld8 temp3=[temp1],16 // cr.isr | 835 | ld8 temp3=[temp1],16 // cr.isr |
830 | ld8 temp4=[temp2],16 // cr.ifa | 836 | ld8 temp4=[temp2],16 // cr.ifa |
831 | ;; | 837 | ;; |
@@ -846,6 +852,45 @@ ia64_state_restore: | |||
846 | ld8 r8=[temp1] // os_status | 852 | ld8 r8=[temp1] // os_status |
847 | ld8 r10=[temp2] // context | 853 | ld8 r10=[temp2] // context |
848 | 854 | ||
855 | /* Wire IA64_TR_CURRENT_STACK to the stack that we are resuming to. To | ||
856 | * avoid any dependencies on the algorithm in ia64_switch_to(), just | ||
857 | * purge any existing CURRENT_STACK mapping and insert the new one. | ||
858 | * | ||
859 | * r16 contains prev_IA64_KR_CURRENT_STACK, r21 contains | ||
860 | * prev_IA64_KR_CURRENT, these values may have been changed by the C | ||
861 | * code. Do not use r8, r9, r10, r22, they contain values ready for | ||
862 | * the return to SAL. | ||
863 | */ | ||
864 | |||
865 | mov r15=IA64_KR(CURRENT_STACK) // physical granule mapped by IA64_TR_CURRENT_STACK | ||
866 | ;; | ||
867 | shl r15=r15,IA64_GRANULE_SHIFT | ||
868 | ;; | ||
869 | dep r15=-1,r15,61,3 // virtual granule | ||
870 | mov r18=IA64_GRANULE_SHIFT<<2 // for cr.itir.ps | ||
871 | ;; | ||
872 | ptr.d r15,r18 | ||
873 | ;; | ||
874 | srlz.d | ||
875 | |||
876 | extr.u r19=r21,61,3 // r21 = prev_IA64_KR_CURRENT | ||
877 | shl r20=r16,IA64_GRANULE_SHIFT // r16 = prev_IA64_KR_CURRENT_STACK | ||
878 | movl r21=PAGE_KERNEL // page properties | ||
879 | ;; | ||
880 | mov IA64_KR(CURRENT_STACK)=r16 | ||
881 | cmp.ne p6,p0=RGN_KERNEL,r19 // new stack is in the kernel region? | ||
882 | or r21=r20,r21 // construct PA | page properties | ||
883 | (p6) br.spnt 1f // the dreaded cpu 0 idle task in region 5:( | ||
884 | ;; | ||
885 | mov cr.itir=r18 | ||
886 | mov cr.ifa=r21 | ||
887 | mov r20=IA64_TR_CURRENT_STACK | ||
888 | ;; | ||
889 | itr.d dtr[r20]=r21 | ||
890 | ;; | ||
891 | srlz.d | ||
892 | 1: | ||
893 | |||
849 | br.sptk b0 | 894 | br.sptk b0 |
850 | 895 | ||
851 | //EndStub////////////////////////////////////////////////////////////////////// | 896 | //EndStub////////////////////////////////////////////////////////////////////// |
@@ -982,6 +1027,7 @@ ia64_set_kernel_registers: | |||
982 | add temp4=temp4, temp1 // &struct ia64_sal_os_state.os_gp | 1027 | add temp4=temp4, temp1 // &struct ia64_sal_os_state.os_gp |
983 | add r12=temp1, temp3 // kernel stack pointer on MCA/INIT stack | 1028 | add r12=temp1, temp3 // kernel stack pointer on MCA/INIT stack |
984 | add r13=temp1, r3 // set current to start of MCA/INIT stack | 1029 | add r13=temp1, r3 // set current to start of MCA/INIT stack |
1030 | add r20=temp1, r3 // physical start of MCA/INIT stack | ||
985 | ;; | 1031 | ;; |
986 | ld8 r1=[temp4] // OS GP from SAL OS state | 1032 | ld8 r1=[temp4] // OS GP from SAL OS state |
987 | ;; | 1033 | ;; |
@@ -991,7 +1037,35 @@ ia64_set_kernel_registers: | |||
991 | ;; | 1037 | ;; |
992 | mov IA64_KR(CURRENT)=r13 | 1038 | mov IA64_KR(CURRENT)=r13 |
993 | 1039 | ||
994 | // FIXME: do I need to wire IA64_KR_CURRENT_STACK and IA64_TR_CURRENT_STACK? | 1040 | /* Wire IA64_TR_CURRENT_STACK to the MCA/INIT handler stack. To avoid |
1041 | * any dependencies on the algorithm in ia64_switch_to(), just purge | ||
1042 | * any existing CURRENT_STACK mapping and insert the new one. | ||
1043 | */ | ||
1044 | |||
1045 | mov r16=IA64_KR(CURRENT_STACK) // physical granule mapped by IA64_TR_CURRENT_STACK | ||
1046 | ;; | ||
1047 | shl r16=r16,IA64_GRANULE_SHIFT | ||
1048 | ;; | ||
1049 | dep r16=-1,r16,61,3 // virtual granule | ||
1050 | mov r18=IA64_GRANULE_SHIFT<<2 // for cr.itir.ps | ||
1051 | ;; | ||
1052 | ptr.d r16,r18 | ||
1053 | ;; | ||
1054 | srlz.d | ||
1055 | |||
1056 | shr.u r16=r20,IA64_GRANULE_SHIFT // r20 = physical start of MCA/INIT stack | ||
1057 | movl r21=PAGE_KERNEL // page properties | ||
1058 | ;; | ||
1059 | mov IA64_KR(CURRENT_STACK)=r16 | ||
1060 | or r21=r20,r21 // construct PA | page properties | ||
1061 | ;; | ||
1062 | mov cr.itir=r18 | ||
1063 | mov cr.ifa=r13 | ||
1064 | mov r20=IA64_TR_CURRENT_STACK | ||
1065 | ;; | ||
1066 | itr.d dtr[r20]=r21 | ||
1067 | ;; | ||
1068 | srlz.d | ||
995 | 1069 | ||
996 | br.sptk b0 | 1070 | br.sptk b0 |
997 | 1071 | ||
diff --git a/arch/ia64/kernel/mca_drv.c b/arch/ia64/kernel/mca_drv.c index 80f83d6cdbfc..f081c60ab206 100644 --- a/arch/ia64/kernel/mca_drv.c +++ b/arch/ia64/kernel/mca_drv.c | |||
@@ -56,8 +56,9 @@ static struct page *page_isolate[MAX_PAGE_ISOLATE]; | |||
56 | static int num_page_isolate = 0; | 56 | static int num_page_isolate = 0; |
57 | 57 | ||
58 | typedef enum { | 58 | typedef enum { |
59 | ISOLATE_NG = 0, | 59 | ISOLATE_NG, |
60 | ISOLATE_OK = 1 | 60 | ISOLATE_OK, |
61 | ISOLATE_NONE | ||
61 | } isolate_status_t; | 62 | } isolate_status_t; |
62 | 63 | ||
63 | /* | 64 | /* |
@@ -74,7 +75,7 @@ static struct { | |||
74 | * @paddr: poisoned memory location | 75 | * @paddr: poisoned memory location |
75 | * | 76 | * |
76 | * Return value: | 77 | * Return value: |
77 | * ISOLATE_OK / ISOLATE_NG | 78 | * one of isolate_status_t, ISOLATE_OK/NG/NONE. |
78 | */ | 79 | */ |
79 | 80 | ||
80 | static isolate_status_t | 81 | static isolate_status_t |
@@ -85,7 +86,10 @@ mca_page_isolate(unsigned long paddr) | |||
85 | 86 | ||
86 | /* whether physical address is valid or not */ | 87 | /* whether physical address is valid or not */ |
87 | if (!ia64_phys_addr_valid(paddr)) | 88 | if (!ia64_phys_addr_valid(paddr)) |
88 | return ISOLATE_NG; | 89 | return ISOLATE_NONE; |
90 | |||
91 | if (!pfn_valid(paddr)) | ||
92 | return ISOLATE_NONE; | ||
89 | 93 | ||
90 | /* convert physical address to physical page number */ | 94 | /* convert physical address to physical page number */ |
91 | p = pfn_to_page(paddr>>PAGE_SHIFT); | 95 | p = pfn_to_page(paddr>>PAGE_SHIFT); |
@@ -122,10 +126,15 @@ mca_handler_bh(unsigned long paddr) | |||
122 | current->pid, current->comm); | 126 | current->pid, current->comm); |
123 | 127 | ||
124 | spin_lock(&mca_bh_lock); | 128 | spin_lock(&mca_bh_lock); |
125 | if (mca_page_isolate(paddr) == ISOLATE_OK) { | 129 | switch (mca_page_isolate(paddr)) { |
130 | case ISOLATE_OK: | ||
126 | printk(KERN_DEBUG "Page isolation: ( %lx ) success.\n", paddr); | 131 | printk(KERN_DEBUG "Page isolation: ( %lx ) success.\n", paddr); |
127 | } else { | 132 | break; |
133 | case ISOLATE_NG: | ||
128 | printk(KERN_DEBUG "Page isolation: ( %lx ) failure.\n", paddr); | 134 | printk(KERN_DEBUG "Page isolation: ( %lx ) failure.\n", paddr); |
135 | break; | ||
136 | default: | ||
137 | break; | ||
129 | } | 138 | } |
130 | spin_unlock(&mca_bh_lock); | 139 | spin_unlock(&mca_bh_lock); |
131 | 140 | ||
diff --git a/arch/m32r/Makefile b/arch/m32r/Makefile index dd4418d846e9..983d438b14b6 100644 --- a/arch/m32r/Makefile +++ b/arch/m32r/Makefile | |||
@@ -24,7 +24,7 @@ aflags-$(CONFIG_ISA_M32R) += -DNO_FPU -Wa,-no-bitinst | |||
24 | CFLAGS += $(cflags-y) | 24 | CFLAGS += $(cflags-y) |
25 | AFLAGS += $(aflags-y) | 25 | AFLAGS += $(aflags-y) |
26 | 26 | ||
27 | CHECKFLAGS := $(CHECK) -D__m32r__ | 27 | CHECKFLAGS += -D__m32r__ -D__BIG_ENDIAN__=1 |
28 | 28 | ||
29 | head-y := arch/m32r/kernel/head.o arch/m32r/kernel/init_task.o | 29 | head-y := arch/m32r/kernel/head.o arch/m32r/kernel/init_task.o |
30 | 30 | ||
diff --git a/arch/m32r/lib/usercopy.c b/arch/m32r/lib/usercopy.c index 6c6855f1aa05..ce16bbe26a52 100644 --- a/arch/m32r/lib/usercopy.c +++ b/arch/m32r/lib/usercopy.c | |||
@@ -13,7 +13,7 @@ | |||
13 | #include <asm/uaccess.h> | 13 | #include <asm/uaccess.h> |
14 | 14 | ||
15 | unsigned long | 15 | unsigned long |
16 | __generic_copy_to_user(void *to, const void *from, unsigned long n) | 16 | __generic_copy_to_user(void __user *to, const void *from, unsigned long n) |
17 | { | 17 | { |
18 | prefetch(from); | 18 | prefetch(from); |
19 | if (access_ok(VERIFY_WRITE, to, n)) | 19 | if (access_ok(VERIFY_WRITE, to, n)) |
@@ -22,7 +22,7 @@ __generic_copy_to_user(void *to, const void *from, unsigned long n) | |||
22 | } | 22 | } |
23 | 23 | ||
24 | unsigned long | 24 | unsigned long |
25 | __generic_copy_from_user(void *to, const void *from, unsigned long n) | 25 | __generic_copy_from_user(void *to, const void __user *from, unsigned long n) |
26 | { | 26 | { |
27 | prefetchw(to); | 27 | prefetchw(to); |
28 | if (access_ok(VERIFY_READ, from, n)) | 28 | if (access_ok(VERIFY_READ, from, n)) |
@@ -111,7 +111,7 @@ do { \ | |||
111 | #endif /* CONFIG_ISA_DUAL_ISSUE */ | 111 | #endif /* CONFIG_ISA_DUAL_ISSUE */ |
112 | 112 | ||
113 | long | 113 | long |
114 | __strncpy_from_user(char *dst, const char *src, long count) | 114 | __strncpy_from_user(char *dst, const char __user *src, long count) |
115 | { | 115 | { |
116 | long res; | 116 | long res; |
117 | __do_strncpy_from_user(dst, src, count, res); | 117 | __do_strncpy_from_user(dst, src, count, res); |
@@ -119,7 +119,7 @@ __strncpy_from_user(char *dst, const char *src, long count) | |||
119 | } | 119 | } |
120 | 120 | ||
121 | long | 121 | long |
122 | strncpy_from_user(char *dst, const char *src, long count) | 122 | strncpy_from_user(char *dst, const char __user *src, long count) |
123 | { | 123 | { |
124 | long res = -EFAULT; | 124 | long res = -EFAULT; |
125 | if (access_ok(VERIFY_READ, src, 1)) | 125 | if (access_ok(VERIFY_READ, src, 1)) |
@@ -222,7 +222,7 @@ do { \ | |||
222 | #endif /* not CONFIG_ISA_DUAL_ISSUE */ | 222 | #endif /* not CONFIG_ISA_DUAL_ISSUE */ |
223 | 223 | ||
224 | unsigned long | 224 | unsigned long |
225 | clear_user(void *to, unsigned long n) | 225 | clear_user(void __user *to, unsigned long n) |
226 | { | 226 | { |
227 | if (access_ok(VERIFY_WRITE, to, n)) | 227 | if (access_ok(VERIFY_WRITE, to, n)) |
228 | __do_clear_user(to, n); | 228 | __do_clear_user(to, n); |
@@ -230,7 +230,7 @@ clear_user(void *to, unsigned long n) | |||
230 | } | 230 | } |
231 | 231 | ||
232 | unsigned long | 232 | unsigned long |
233 | __clear_user(void *to, unsigned long n) | 233 | __clear_user(void __user *to, unsigned long n) |
234 | { | 234 | { |
235 | __do_clear_user(to, n); | 235 | __do_clear_user(to, n); |
236 | return n; | 236 | return n; |
@@ -244,7 +244,7 @@ __clear_user(void *to, unsigned long n) | |||
244 | 244 | ||
245 | #ifdef CONFIG_ISA_DUAL_ISSUE | 245 | #ifdef CONFIG_ISA_DUAL_ISSUE |
246 | 246 | ||
247 | long strnlen_user(const char *s, long n) | 247 | long strnlen_user(const char __user *s, long n) |
248 | { | 248 | { |
249 | unsigned long mask = -__addr_ok(s); | 249 | unsigned long mask = -__addr_ok(s); |
250 | unsigned long res; | 250 | unsigned long res; |
@@ -313,7 +313,7 @@ long strnlen_user(const char *s, long n) | |||
313 | 313 | ||
314 | #else /* not CONFIG_ISA_DUAL_ISSUE */ | 314 | #else /* not CONFIG_ISA_DUAL_ISSUE */ |
315 | 315 | ||
316 | long strnlen_user(const char *s, long n) | 316 | long strnlen_user(const char __user *s, long n) |
317 | { | 317 | { |
318 | unsigned long mask = -__addr_ok(s); | 318 | unsigned long mask = -__addr_ok(s); |
319 | unsigned long res; | 319 | unsigned long res; |
diff --git a/arch/ppc/kernel/Makefile b/arch/ppc/kernel/Makefile index 1fb92f16acd6..b1457a8a9c0f 100644 --- a/arch/ppc/kernel/Makefile +++ b/arch/ppc/kernel/Makefile | |||
@@ -15,9 +15,8 @@ extra-y += vmlinux.lds | |||
15 | obj-y := entry.o traps.o irq.o idle.o time.o misc.o \ | 15 | obj-y := entry.o traps.o irq.o idle.o time.o misc.o \ |
16 | process.o signal.o ptrace.o align.o \ | 16 | process.o signal.o ptrace.o align.o \ |
17 | semaphore.o syscalls.o setup.o \ | 17 | semaphore.o syscalls.o setup.o \ |
18 | cputable.o ppc_htab.o | 18 | cputable.o ppc_htab.o perfmon.o |
19 | obj-$(CONFIG_6xx) += l2cr.o cpu_setup_6xx.o | 19 | obj-$(CONFIG_6xx) += l2cr.o cpu_setup_6xx.o |
20 | obj-$(CONFIG_E500) += perfmon.o | ||
21 | obj-$(CONFIG_SOFTWARE_SUSPEND) += swsusp.o | 20 | obj-$(CONFIG_SOFTWARE_SUSPEND) += swsusp.o |
22 | obj-$(CONFIG_POWER4) += cpu_setup_power4.o | 21 | obj-$(CONFIG_POWER4) += cpu_setup_power4.o |
23 | obj-$(CONFIG_MODULES) += module.o ppc_ksyms.o | 22 | obj-$(CONFIG_MODULES) += module.o ppc_ksyms.o |
diff --git a/arch/ppc/kernel/perfmon.c b/arch/ppc/kernel/perfmon.c index fa1dad96b830..04c18788e85f 100644 --- a/arch/ppc/kernel/perfmon.c +++ b/arch/ppc/kernel/perfmon.c | |||
@@ -45,7 +45,7 @@ static void dummy_perf(struct pt_regs *regs) | |||
45 | mtpmr(PMRN_PMGC0, pmgc0); | 45 | mtpmr(PMRN_PMGC0, pmgc0); |
46 | } | 46 | } |
47 | 47 | ||
48 | #else | 48 | #elif CONFIG_6xx |
49 | /* Ensure exceptions are disabled */ | 49 | /* Ensure exceptions are disabled */ |
50 | 50 | ||
51 | static void dummy_perf(struct pt_regs *regs) | 51 | static void dummy_perf(struct pt_regs *regs) |
@@ -55,6 +55,10 @@ static void dummy_perf(struct pt_regs *regs) | |||
55 | mmcr0 &= ~MMCR0_PMXE; | 55 | mmcr0 &= ~MMCR0_PMXE; |
56 | mtspr(SPRN_MMCR0, mmcr0); | 56 | mtspr(SPRN_MMCR0, mmcr0); |
57 | } | 57 | } |
58 | #else | ||
59 | static void dummy_perf(struct pt_regs *regs) | ||
60 | { | ||
61 | } | ||
58 | #endif | 62 | #endif |
59 | 63 | ||
60 | void (*perf_irq)(struct pt_regs *) = dummy_perf; | 64 | void (*perf_irq)(struct pt_regs *) = dummy_perf; |
diff --git a/arch/ppc/platforms/pmac_setup.c b/arch/ppc/platforms/pmac_setup.c index b392b9a15987..4c56a4734aec 100644 --- a/arch/ppc/platforms/pmac_setup.c +++ b/arch/ppc/platforms/pmac_setup.c | |||
@@ -719,7 +719,8 @@ pmac_declare_of_platform_devices(void) | |||
719 | if (np) { | 719 | if (np) { |
720 | for (np = np->child; np != NULL; np = np->sibling) | 720 | for (np = np->child; np != NULL; np = np->sibling) |
721 | if (strncmp(np->name, "i2c", 3) == 0) { | 721 | if (strncmp(np->name, "i2c", 3) == 0) { |
722 | of_platform_device_create(np, "uni-n-i2c"); | 722 | of_platform_device_create(np, "uni-n-i2c", |
723 | NULL); | ||
723 | break; | 724 | break; |
724 | } | 725 | } |
725 | } | 726 | } |
@@ -727,17 +728,18 @@ pmac_declare_of_platform_devices(void) | |||
727 | if (np) { | 728 | if (np) { |
728 | for (np = np->child; np != NULL; np = np->sibling) | 729 | for (np = np->child; np != NULL; np = np->sibling) |
729 | if (strncmp(np->name, "i2c", 3) == 0) { | 730 | if (strncmp(np->name, "i2c", 3) == 0) { |
730 | of_platform_device_create(np, "u3-i2c"); | 731 | of_platform_device_create(np, "u3-i2c", |
732 | NULL); | ||
731 | break; | 733 | break; |
732 | } | 734 | } |
733 | } | 735 | } |
734 | 736 | ||
735 | np = find_devices("valkyrie"); | 737 | np = find_devices("valkyrie"); |
736 | if (np) | 738 | if (np) |
737 | of_platform_device_create(np, "valkyrie"); | 739 | of_platform_device_create(np, "valkyrie", NULL); |
738 | np = find_devices("platinum"); | 740 | np = find_devices("platinum"); |
739 | if (np) | 741 | if (np) |
740 | of_platform_device_create(np, "platinum"); | 742 | of_platform_device_create(np, "platinum", NULL); |
741 | 743 | ||
742 | return 0; | 744 | return 0; |
743 | } | 745 | } |
diff --git a/arch/ppc/syslib/of_device.c b/arch/ppc/syslib/of_device.c index da8a0f2128dc..93c7231ea709 100644 --- a/arch/ppc/syslib/of_device.c +++ b/arch/ppc/syslib/of_device.c | |||
@@ -234,7 +234,9 @@ void of_device_unregister(struct of_device *ofdev) | |||
234 | device_unregister(&ofdev->dev); | 234 | device_unregister(&ofdev->dev); |
235 | } | 235 | } |
236 | 236 | ||
237 | struct of_device* of_platform_device_create(struct device_node *np, const char *bus_id) | 237 | struct of_device* of_platform_device_create(struct device_node *np, |
238 | const char *bus_id, | ||
239 | struct device *parent) | ||
238 | { | 240 | { |
239 | struct of_device *dev; | 241 | struct of_device *dev; |
240 | u32 *reg; | 242 | u32 *reg; |
@@ -247,7 +249,7 @@ struct of_device* of_platform_device_create(struct device_node *np, const char * | |||
247 | dev->node = of_node_get(np); | 249 | dev->node = of_node_get(np); |
248 | dev->dma_mask = 0xffffffffUL; | 250 | dev->dma_mask = 0xffffffffUL; |
249 | dev->dev.dma_mask = &dev->dma_mask; | 251 | dev->dev.dma_mask = &dev->dma_mask; |
250 | dev->dev.parent = NULL; | 252 | dev->dev.parent = parent; |
251 | dev->dev.bus = &of_platform_bus_type; | 253 | dev->dev.bus = &of_platform_bus_type; |
252 | dev->dev.release = of_release_dev; | 254 | dev->dev.release = of_release_dev; |
253 | 255 | ||
diff --git a/arch/ppc/syslib/ppc85xx_setup.c b/arch/ppc/syslib/ppc85xx_setup.c index b7242f1bd931..832b8bf99ae7 100644 --- a/arch/ppc/syslib/ppc85xx_setup.c +++ b/arch/ppc/syslib/ppc85xx_setup.c | |||
@@ -184,8 +184,8 @@ mpc85xx_setup_pci1(struct pci_controller *hose) | |||
184 | pci->powar1 = 0x80044000 | | 184 | pci->powar1 = 0x80044000 | |
185 | (__ilog2(MPC85XX_PCI1_UPPER_MEM - MPC85XX_PCI1_LOWER_MEM + 1) - 1); | 185 | (__ilog2(MPC85XX_PCI1_UPPER_MEM - MPC85XX_PCI1_LOWER_MEM + 1) - 1); |
186 | 186 | ||
187 | /* Setup outboud IO windows @ MPC85XX_PCI1_IO_BASE */ | 187 | /* Setup outbound IO windows @ MPC85XX_PCI1_IO_BASE */ |
188 | pci->potar2 = 0x00000000; | 188 | pci->potar2 = (MPC85XX_PCI1_LOWER_IO >> 12) & 0x000fffff; |
189 | pci->potear2 = 0x00000000; | 189 | pci->potear2 = 0x00000000; |
190 | pci->powbar2 = (MPC85XX_PCI1_IO_BASE >> 12) & 0x000fffff; | 190 | pci->powbar2 = (MPC85XX_PCI1_IO_BASE >> 12) & 0x000fffff; |
191 | /* Enable, IO R/W */ | 191 | /* Enable, IO R/W */ |
@@ -235,8 +235,8 @@ mpc85xx_setup_pci2(struct pci_controller *hose) | |||
235 | pci->powar1 = 0x80044000 | | 235 | pci->powar1 = 0x80044000 | |
236 | (__ilog2(MPC85XX_PCI2_UPPER_MEM - MPC85XX_PCI2_LOWER_MEM + 1) - 1); | 236 | (__ilog2(MPC85XX_PCI2_UPPER_MEM - MPC85XX_PCI2_LOWER_MEM + 1) - 1); |
237 | 237 | ||
238 | /* Setup outboud IO windows @ MPC85XX_PCI2_IO_BASE */ | 238 | /* Setup outbound IO windows @ MPC85XX_PCI2_IO_BASE */ |
239 | pci->potar2 = 0x00000000; | 239 | pci->potar2 = (MPC85XX_PCI2_LOWER_IO >> 12) & 0x000fffff;; |
240 | pci->potear2 = 0x00000000; | 240 | pci->potear2 = 0x00000000; |
241 | pci->powbar2 = (MPC85XX_PCI2_IO_BASE >> 12) & 0x000fffff; | 241 | pci->powbar2 = (MPC85XX_PCI2_IO_BASE >> 12) & 0x000fffff; |
242 | /* Enable, IO R/W */ | 242 | /* Enable, IO R/W */ |
diff --git a/arch/ppc64/kernel/of_device.c b/arch/ppc64/kernel/of_device.c index da580812ddfe..9f200f0f2ad5 100644 --- a/arch/ppc64/kernel/of_device.c +++ b/arch/ppc64/kernel/of_device.c | |||
@@ -233,7 +233,9 @@ void of_device_unregister(struct of_device *ofdev) | |||
233 | device_unregister(&ofdev->dev); | 233 | device_unregister(&ofdev->dev); |
234 | } | 234 | } |
235 | 235 | ||
236 | struct of_device* of_platform_device_create(struct device_node *np, const char *bus_id) | 236 | struct of_device* of_platform_device_create(struct device_node *np, |
237 | const char *bus_id, | ||
238 | struct device *parent) | ||
237 | { | 239 | { |
238 | struct of_device *dev; | 240 | struct of_device *dev; |
239 | 241 | ||
@@ -245,7 +247,7 @@ struct of_device* of_platform_device_create(struct device_node *np, const char * | |||
245 | dev->node = np; | 247 | dev->node = np; |
246 | dev->dma_mask = 0xffffffffUL; | 248 | dev->dma_mask = 0xffffffffUL; |
247 | dev->dev.dma_mask = &dev->dma_mask; | 249 | dev->dev.dma_mask = &dev->dma_mask; |
248 | dev->dev.parent = NULL; | 250 | dev->dev.parent = parent; |
249 | dev->dev.bus = &of_platform_bus_type; | 251 | dev->dev.bus = &of_platform_bus_type; |
250 | dev->dev.release = of_release_dev; | 252 | dev->dev.release = of_release_dev; |
251 | 253 | ||
@@ -259,6 +261,7 @@ struct of_device* of_platform_device_create(struct device_node *np, const char * | |||
259 | return dev; | 261 | return dev; |
260 | } | 262 | } |
261 | 263 | ||
264 | |||
262 | EXPORT_SYMBOL(of_match_device); | 265 | EXPORT_SYMBOL(of_match_device); |
263 | EXPORT_SYMBOL(of_platform_bus_type); | 266 | EXPORT_SYMBOL(of_platform_bus_type); |
264 | EXPORT_SYMBOL(of_register_driver); | 267 | EXPORT_SYMBOL(of_register_driver); |
diff --git a/arch/ppc64/kernel/pSeries_iommu.c b/arch/ppc64/kernel/pSeries_iommu.c index 8c6313e7e145..d17f0108a032 100644 --- a/arch/ppc64/kernel/pSeries_iommu.c +++ b/arch/ppc64/kernel/pSeries_iommu.c | |||
@@ -364,7 +364,8 @@ static void iommu_bus_setup_pSeries(struct pci_bus *bus) | |||
364 | 364 | ||
365 | while (pci->phb->dma_window_size * children > 0x80000000ul) | 365 | while (pci->phb->dma_window_size * children > 0x80000000ul) |
366 | pci->phb->dma_window_size >>= 1; | 366 | pci->phb->dma_window_size >>= 1; |
367 | DBG("No ISA/IDE, window size is %x\n", pci->phb->dma_window_size); | 367 | DBG("No ISA/IDE, window size is 0x%lx\n", |
368 | pci->phb->dma_window_size); | ||
368 | pci->phb->dma_window_base_cur = 0; | 369 | pci->phb->dma_window_base_cur = 0; |
369 | 370 | ||
370 | return; | 371 | return; |
@@ -388,7 +389,7 @@ static void iommu_bus_setup_pSeries(struct pci_bus *bus) | |||
388 | while (pci->phb->dma_window_size * children > 0x70000000ul) | 389 | while (pci->phb->dma_window_size * children > 0x70000000ul) |
389 | pci->phb->dma_window_size >>= 1; | 390 | pci->phb->dma_window_size >>= 1; |
390 | 391 | ||
391 | DBG("ISA/IDE, window size is %x\n", pci->phb->dma_window_size); | 392 | DBG("ISA/IDE, window size is 0x%lx\n", pci->phb->dma_window_size); |
392 | 393 | ||
393 | } | 394 | } |
394 | 395 | ||
@@ -442,7 +443,7 @@ static void iommu_dev_setup_pSeries(struct pci_dev *dev) | |||
442 | struct device_node *dn, *mydn; | 443 | struct device_node *dn, *mydn; |
443 | struct iommu_table *tbl; | 444 | struct iommu_table *tbl; |
444 | 445 | ||
445 | DBG("iommu_dev_setup_pSeries, dev %p (%s)\n", dev, dev->pretty_name); | 446 | DBG("iommu_dev_setup_pSeries, dev %p (%s)\n", dev, pci_name(dev)); |
446 | 447 | ||
447 | mydn = dn = pci_device_to_OF_node(dev); | 448 | mydn = dn = pci_device_to_OF_node(dev); |
448 | 449 | ||
@@ -469,7 +470,7 @@ static void iommu_dev_setup_pSeries(struct pci_dev *dev) | |||
469 | if (dn && dn->data) { | 470 | if (dn && dn->data) { |
470 | PCI_DN(mydn)->iommu_table = PCI_DN(dn)->iommu_table; | 471 | PCI_DN(mydn)->iommu_table = PCI_DN(dn)->iommu_table; |
471 | } else { | 472 | } else { |
472 | DBG("iommu_dev_setup_pSeries, dev %p (%s) has no iommu table\n", dev, dev->pretty_name); | 473 | DBG("iommu_dev_setup_pSeries, dev %p (%s) has no iommu table\n", dev, pci_name(dev)); |
473 | } | 474 | } |
474 | } | 475 | } |
475 | 476 | ||
@@ -503,7 +504,7 @@ static void iommu_dev_setup_pSeriesLP(struct pci_dev *dev) | |||
503 | int *dma_window = NULL; | 504 | int *dma_window = NULL; |
504 | struct pci_dn *pci; | 505 | struct pci_dn *pci; |
505 | 506 | ||
506 | DBG("iommu_dev_setup_pSeriesLP, dev %p (%s)\n", dev, dev->pretty_name); | 507 | DBG("iommu_dev_setup_pSeriesLP, dev %p (%s)\n", dev, pci_name(dev)); |
507 | 508 | ||
508 | /* dev setup for LPAR is a little tricky, since the device tree might | 509 | /* dev setup for LPAR is a little tricky, since the device tree might |
509 | * contain the dma-window properties per-device and not neccesarily | 510 | * contain the dma-window properties per-device and not neccesarily |
@@ -525,9 +526,8 @@ static void iommu_dev_setup_pSeriesLP(struct pci_dev *dev) | |||
525 | * slots on POWER4 machines. | 526 | * slots on POWER4 machines. |
526 | */ | 527 | */ |
527 | if (dma_window == NULL || pdn->parent == NULL) { | 528 | if (dma_window == NULL || pdn->parent == NULL) { |
528 | /* Fall back to regular (non-LPAR) dev setup */ | 529 | DBG("No dma window for device, linking to parent\n"); |
529 | DBG("No dma window for device, falling back to regular setup\n"); | 530 | PCI_DN(dn)->iommu_table = PCI_DN(pdn)->iommu_table; |
530 | iommu_dev_setup_pSeries(dev); | ||
531 | return; | 531 | return; |
532 | } else { | 532 | } else { |
533 | DBG("Found DMA window, allocating table\n"); | 533 | DBG("Found DMA window, allocating table\n"); |
diff --git a/arch/ppc64/kernel/pmac_setup.c b/arch/ppc64/kernel/pmac_setup.c index 325426c7bed0..25755252067a 100644 --- a/arch/ppc64/kernel/pmac_setup.c +++ b/arch/ppc64/kernel/pmac_setup.c | |||
@@ -434,15 +434,23 @@ static int pmac_check_legacy_ioport(unsigned int baseport) | |||
434 | 434 | ||
435 | static int __init pmac_declare_of_platform_devices(void) | 435 | static int __init pmac_declare_of_platform_devices(void) |
436 | { | 436 | { |
437 | struct device_node *np; | 437 | struct device_node *np, *npp; |
438 | 438 | ||
439 | np = find_devices("u3"); | 439 | npp = of_find_node_by_name(NULL, "u3"); |
440 | if (np) { | 440 | if (npp) { |
441 | for (np = np->child; np != NULL; np = np->sibling) | 441 | for (np = NULL; (np = of_get_next_child(npp, np)) != NULL;) { |
442 | if (strncmp(np->name, "i2c", 3) == 0) { | 442 | if (strncmp(np->name, "i2c", 3) == 0) { |
443 | of_platform_device_create(np, "u3-i2c"); | 443 | of_platform_device_create(np, "u3-i2c", NULL); |
444 | of_node_put(np); | ||
444 | break; | 445 | break; |
445 | } | 446 | } |
447 | } | ||
448 | of_node_put(npp); | ||
449 | } | ||
450 | npp = of_find_node_by_type(NULL, "smu"); | ||
451 | if (npp) { | ||
452 | of_platform_device_create(npp, "smu", NULL); | ||
453 | of_node_put(npp); | ||
446 | } | 454 | } |
447 | 455 | ||
448 | return 0; | 456 | return 0; |
diff --git a/arch/ppc64/kernel/pmac_time.c b/arch/ppc64/kernel/pmac_time.c index 3059edb09cc8..41bbb8c59697 100644 --- a/arch/ppc64/kernel/pmac_time.c +++ b/arch/ppc64/kernel/pmac_time.c | |||
@@ -84,7 +84,7 @@ void __pmac pmac_get_rtc_time(struct rtc_time *tm) | |||
84 | 84 | ||
85 | #ifdef CONFIG_PMAC_SMU | 85 | #ifdef CONFIG_PMAC_SMU |
86 | case SYS_CTRLER_SMU: | 86 | case SYS_CTRLER_SMU: |
87 | smu_get_rtc_time(tm); | 87 | smu_get_rtc_time(tm, 1); |
88 | break; | 88 | break; |
89 | #endif /* CONFIG_PMAC_SMU */ | 89 | #endif /* CONFIG_PMAC_SMU */ |
90 | default: | 90 | default: |
@@ -128,7 +128,7 @@ int __pmac pmac_set_rtc_time(struct rtc_time *tm) | |||
128 | 128 | ||
129 | #ifdef CONFIG_PMAC_SMU | 129 | #ifdef CONFIG_PMAC_SMU |
130 | case SYS_CTRLER_SMU: | 130 | case SYS_CTRLER_SMU: |
131 | return smu_set_rtc_time(tm); | 131 | return smu_set_rtc_time(tm, 1); |
132 | #endif /* CONFIG_PMAC_SMU */ | 132 | #endif /* CONFIG_PMAC_SMU */ |
133 | default: | 133 | default: |
134 | return -ENODEV; | 134 | return -ENODEV; |
diff --git a/arch/ppc64/kernel/ptrace.c b/arch/ppc64/kernel/ptrace.c index 85ed3188a91d..b1c044ca5756 100644 --- a/arch/ppc64/kernel/ptrace.c +++ b/arch/ppc64/kernel/ptrace.c | |||
@@ -219,6 +219,7 @@ int sys_ptrace(long request, long pid, long addr, long data) | |||
219 | 219 | ||
220 | case PTRACE_SET_DEBUGREG: | 220 | case PTRACE_SET_DEBUGREG: |
221 | ret = ptrace_set_debugreg(child, addr, data); | 221 | ret = ptrace_set_debugreg(child, addr, data); |
222 | break; | ||
222 | 223 | ||
223 | case PTRACE_DETACH: | 224 | case PTRACE_DETACH: |
224 | ret = ptrace_detach(child, data); | 225 | ret = ptrace_detach(child, data); |
diff --git a/arch/ppc64/mm/hash_native.c b/arch/ppc64/mm/hash_native.c index 7626bb59954d..eb1bbb5b6c16 100644 --- a/arch/ppc64/mm/hash_native.c +++ b/arch/ppc64/mm/hash_native.c | |||
@@ -343,9 +343,7 @@ static void native_flush_hash_range(unsigned long context, | |||
343 | hpte_t *hptep; | 343 | hpte_t *hptep; |
344 | unsigned long hpte_v; | 344 | unsigned long hpte_v; |
345 | struct ppc64_tlb_batch *batch = &__get_cpu_var(ppc64_tlb_batch); | 345 | struct ppc64_tlb_batch *batch = &__get_cpu_var(ppc64_tlb_batch); |
346 | 346 | unsigned long large; | |
347 | /* XXX fix for large ptes */ | ||
348 | unsigned long large = 0; | ||
349 | 347 | ||
350 | local_irq_save(flags); | 348 | local_irq_save(flags); |
351 | 349 | ||
@@ -358,6 +356,7 @@ static void native_flush_hash_range(unsigned long context, | |||
358 | 356 | ||
359 | va = (vsid << 28) | (batch->addr[i] & 0x0fffffff); | 357 | va = (vsid << 28) | (batch->addr[i] & 0x0fffffff); |
360 | batch->vaddr[j] = va; | 358 | batch->vaddr[j] = va; |
359 | large = pte_huge(batch->pte[i]); | ||
361 | if (large) | 360 | if (large) |
362 | vpn = va >> HPAGE_SHIFT; | 361 | vpn = va >> HPAGE_SHIFT; |
363 | else | 362 | else |
diff --git a/arch/ppc64/mm/hugetlbpage.c b/arch/ppc64/mm/hugetlbpage.c index 338771ec70d7..0ea0994ed974 100644 --- a/arch/ppc64/mm/hugetlbpage.c +++ b/arch/ppc64/mm/hugetlbpage.c | |||
@@ -710,10 +710,13 @@ repeat: | |||
710 | hpte_group = ((~hash & htab_hash_mask) * | 710 | hpte_group = ((~hash & htab_hash_mask) * |
711 | HPTES_PER_GROUP) & ~0x7UL; | 711 | HPTES_PER_GROUP) & ~0x7UL; |
712 | slot = ppc_md.hpte_insert(hpte_group, va, prpn, | 712 | slot = ppc_md.hpte_insert(hpte_group, va, prpn, |
713 | HPTE_V_LARGE, rflags); | 713 | HPTE_V_LARGE | |
714 | HPTE_V_SECONDARY, | ||
715 | rflags); | ||
714 | if (slot == -1) { | 716 | if (slot == -1) { |
715 | if (mftb() & 0x1) | 717 | if (mftb() & 0x1) |
716 | hpte_group = ((hash & htab_hash_mask) * HPTES_PER_GROUP) & ~0x7UL; | 718 | hpte_group = ((hash & htab_hash_mask) * |
719 | HPTES_PER_GROUP)&~0x7UL; | ||
717 | 720 | ||
718 | ppc_md.hpte_remove(hpte_group); | 721 | ppc_md.hpte_remove(hpte_group); |
719 | goto repeat; | 722 | goto repeat; |
diff --git a/arch/um/drivers/chan_kern.c b/arch/um/drivers/chan_kern.c index 14a12d6b3df6..16e7dc89f61d 100644 --- a/arch/um/drivers/chan_kern.c +++ b/arch/um/drivers/chan_kern.c | |||
@@ -19,18 +19,44 @@ | |||
19 | #include "line.h" | 19 | #include "line.h" |
20 | #include "os.h" | 20 | #include "os.h" |
21 | 21 | ||
22 | #ifdef CONFIG_NOCONFIG_CHAN | 22 | /* XXX: could well be moved to somewhere else, if needed. */ |
23 | static int my_printf(const char * fmt, ...) | ||
24 | __attribute__ ((format (printf, 1, 2))); | ||
25 | |||
26 | static int my_printf(const char * fmt, ...) | ||
27 | { | ||
28 | /* Yes, can be called on atomic context.*/ | ||
29 | char *buf = kmalloc(4096, GFP_ATOMIC); | ||
30 | va_list args; | ||
31 | int r; | ||
32 | |||
33 | if (!buf) { | ||
34 | /* We print directly fmt. | ||
35 | * Yes, yes, yes, feel free to complain. */ | ||
36 | r = strlen(fmt); | ||
37 | } else { | ||
38 | va_start(args, fmt); | ||
39 | r = vsprintf(buf, fmt, args); | ||
40 | va_end(args); | ||
41 | fmt = buf; | ||
42 | } | ||
23 | 43 | ||
24 | /* The printk's here are wrong because we are complaining that there is no | 44 | if (r) |
25 | * output device, but printk is printing to that output device. The user will | 45 | r = os_write_file(1, fmt, r); |
26 | * never see the error. printf would be better, except it can't run on a | 46 | return r; |
27 | * kernel stack because it will overflow it. | 47 | |
28 | * Use printk for now since that will avoid crashing. | 48 | } |
29 | */ | 49 | |
50 | #ifdef CONFIG_NOCONFIG_CHAN | ||
51 | /* Despite its name, there's no added trailing newline. */ | ||
52 | static int my_puts(const char * buf) | ||
53 | { | ||
54 | return os_write_file(1, buf, strlen(buf)); | ||
55 | } | ||
30 | 56 | ||
31 | static void *not_configged_init(char *str, int device, struct chan_opts *opts) | 57 | static void *not_configged_init(char *str, int device, struct chan_opts *opts) |
32 | { | 58 | { |
33 | printk(KERN_ERR "Using a channel type which is configured out of " | 59 | my_puts("Using a channel type which is configured out of " |
34 | "UML\n"); | 60 | "UML\n"); |
35 | return(NULL); | 61 | return(NULL); |
36 | } | 62 | } |
@@ -38,27 +64,27 @@ static void *not_configged_init(char *str, int device, struct chan_opts *opts) | |||
38 | static int not_configged_open(int input, int output, int primary, void *data, | 64 | static int not_configged_open(int input, int output, int primary, void *data, |
39 | char **dev_out) | 65 | char **dev_out) |
40 | { | 66 | { |
41 | printk(KERN_ERR "Using a channel type which is configured out of " | 67 | my_puts("Using a channel type which is configured out of " |
42 | "UML\n"); | 68 | "UML\n"); |
43 | return(-ENODEV); | 69 | return(-ENODEV); |
44 | } | 70 | } |
45 | 71 | ||
46 | static void not_configged_close(int fd, void *data) | 72 | static void not_configged_close(int fd, void *data) |
47 | { | 73 | { |
48 | printk(KERN_ERR "Using a channel type which is configured out of " | 74 | my_puts("Using a channel type which is configured out of " |
49 | "UML\n"); | 75 | "UML\n"); |
50 | } | 76 | } |
51 | 77 | ||
52 | static int not_configged_read(int fd, char *c_out, void *data) | 78 | static int not_configged_read(int fd, char *c_out, void *data) |
53 | { | 79 | { |
54 | printk(KERN_ERR "Using a channel type which is configured out of " | 80 | my_puts("Using a channel type which is configured out of " |
55 | "UML\n"); | 81 | "UML\n"); |
56 | return(-EIO); | 82 | return(-EIO); |
57 | } | 83 | } |
58 | 84 | ||
59 | static int not_configged_write(int fd, const char *buf, int len, void *data) | 85 | static int not_configged_write(int fd, const char *buf, int len, void *data) |
60 | { | 86 | { |
61 | printk(KERN_ERR "Using a channel type which is configured out of " | 87 | my_puts("Using a channel type which is configured out of " |
62 | "UML\n"); | 88 | "UML\n"); |
63 | return(-EIO); | 89 | return(-EIO); |
64 | } | 90 | } |
@@ -66,7 +92,7 @@ static int not_configged_write(int fd, const char *buf, int len, void *data) | |||
66 | static int not_configged_console_write(int fd, const char *buf, int len, | 92 | static int not_configged_console_write(int fd, const char *buf, int len, |
67 | void *data) | 93 | void *data) |
68 | { | 94 | { |
69 | printk(KERN_ERR "Using a channel type which is configured out of " | 95 | my_puts("Using a channel type which is configured out of " |
70 | "UML\n"); | 96 | "UML\n"); |
71 | return(-EIO); | 97 | return(-EIO); |
72 | } | 98 | } |
@@ -74,14 +100,14 @@ static int not_configged_console_write(int fd, const char *buf, int len, | |||
74 | static int not_configged_window_size(int fd, void *data, unsigned short *rows, | 100 | static int not_configged_window_size(int fd, void *data, unsigned short *rows, |
75 | unsigned short *cols) | 101 | unsigned short *cols) |
76 | { | 102 | { |
77 | printk(KERN_ERR "Using a channel type which is configured out of " | 103 | my_puts("Using a channel type which is configured out of " |
78 | "UML\n"); | 104 | "UML\n"); |
79 | return(-ENODEV); | 105 | return(-ENODEV); |
80 | } | 106 | } |
81 | 107 | ||
82 | static void not_configged_free(void *data) | 108 | static void not_configged_free(void *data) |
83 | { | 109 | { |
84 | printf(KERN_ERR "Using a channel type which is configured out of " | 110 | my_puts("Using a channel type which is configured out of " |
85 | "UML\n"); | 111 | "UML\n"); |
86 | } | 112 | } |
87 | 113 | ||
@@ -457,7 +483,7 @@ static struct chan *parse_chan(char *str, int pri, int device, | |||
457 | } | 483 | } |
458 | } | 484 | } |
459 | if(ops == NULL){ | 485 | if(ops == NULL){ |
460 | printk(KERN_ERR "parse_chan couldn't parse \"%s\"\n", | 486 | my_printf("parse_chan couldn't parse \"%s\"\n", |
461 | str); | 487 | str); |
462 | return(NULL); | 488 | return(NULL); |
463 | } | 489 | } |
@@ -465,7 +491,7 @@ static struct chan *parse_chan(char *str, int pri, int device, | |||
465 | data = (*ops->init)(str, device, opts); | 491 | data = (*ops->init)(str, device, opts); |
466 | if(data == NULL) return(NULL); | 492 | if(data == NULL) return(NULL); |
467 | 493 | ||
468 | chan = kmalloc(sizeof(*chan), GFP_KERNEL); | 494 | chan = kmalloc(sizeof(*chan), GFP_ATOMIC); |
469 | if(chan == NULL) return(NULL); | 495 | if(chan == NULL) return(NULL); |
470 | *chan = ((struct chan) { .list = LIST_HEAD_INIT(chan->list), | 496 | *chan = ((struct chan) { .list = LIST_HEAD_INIT(chan->list), |
471 | .primary = 1, | 497 | .primary = 1, |
diff --git a/arch/um/drivers/mconsole_user.c b/arch/um/drivers/mconsole_user.c index 310c1f823f26..04383f98f4d5 100644 --- a/arch/um/drivers/mconsole_user.c +++ b/arch/um/drivers/mconsole_user.c | |||
@@ -23,7 +23,7 @@ static struct mconsole_command commands[] = { | |||
23 | { "reboot", mconsole_reboot, MCONSOLE_PROC }, | 23 | { "reboot", mconsole_reboot, MCONSOLE_PROC }, |
24 | { "config", mconsole_config, MCONSOLE_PROC }, | 24 | { "config", mconsole_config, MCONSOLE_PROC }, |
25 | { "remove", mconsole_remove, MCONSOLE_PROC }, | 25 | { "remove", mconsole_remove, MCONSOLE_PROC }, |
26 | { "sysrq", mconsole_sysrq, MCONSOLE_INTR }, | 26 | { "sysrq", mconsole_sysrq, MCONSOLE_PROC }, |
27 | { "help", mconsole_help, MCONSOLE_INTR }, | 27 | { "help", mconsole_help, MCONSOLE_INTR }, |
28 | { "cad", mconsole_cad, MCONSOLE_INTR }, | 28 | { "cad", mconsole_cad, MCONSOLE_INTR }, |
29 | { "stop", mconsole_stop, MCONSOLE_PROC }, | 29 | { "stop", mconsole_stop, MCONSOLE_PROC }, |
diff --git a/arch/um/include/user.h b/arch/um/include/user.h index 57ee9e261228..0f865ef46918 100644 --- a/arch/um/include/user.h +++ b/arch/um/include/user.h | |||
@@ -14,7 +14,9 @@ extern void *um_kmalloc_atomic(int size); | |||
14 | extern void kfree(void *ptr); | 14 | extern void kfree(void *ptr); |
15 | extern int in_aton(char *str); | 15 | extern int in_aton(char *str); |
16 | extern int open_gdb_chan(void); | 16 | extern int open_gdb_chan(void); |
17 | extern int strlcpy(char *, const char *, int); | 17 | /* These use size_t, however unsigned long is correct on both i386 and x86_64. */ |
18 | extern unsigned long strlcpy(char *, const char *, unsigned long); | ||
19 | extern unsigned long strlcat(char *, const char *, unsigned long); | ||
18 | extern void *um_vmalloc(int size); | 20 | extern void *um_vmalloc(int size); |
19 | extern void vfree(void *ptr); | 21 | extern void vfree(void *ptr); |
20 | 22 | ||
diff --git a/arch/um/kernel/process_kern.c b/arch/um/kernel/process_kern.c index 39cf568ccfaf..ea65db679e9c 100644 --- a/arch/um/kernel/process_kern.c +++ b/arch/um/kernel/process_kern.c | |||
@@ -82,7 +82,8 @@ unsigned long alloc_stack(int order, int atomic) | |||
82 | unsigned long page; | 82 | unsigned long page; |
83 | int flags = GFP_KERNEL; | 83 | int flags = GFP_KERNEL; |
84 | 84 | ||
85 | if(atomic) flags |= GFP_ATOMIC; | 85 | if (atomic) |
86 | flags = GFP_ATOMIC; | ||
86 | page = __get_free_pages(flags, order); | 87 | page = __get_free_pages(flags, order); |
87 | if(page == 0) | 88 | if(page == 0) |
88 | return(0); | 89 | return(0); |
diff --git a/arch/um/kernel/sigio_user.c b/arch/um/kernel/sigio_user.c index e89218958f38..a52751108aa1 100644 --- a/arch/um/kernel/sigio_user.c +++ b/arch/um/kernel/sigio_user.c | |||
@@ -340,7 +340,7 @@ static int setup_initial_poll(int fd) | |||
340 | { | 340 | { |
341 | struct pollfd *p; | 341 | struct pollfd *p; |
342 | 342 | ||
343 | p = um_kmalloc(sizeof(struct pollfd)); | 343 | p = um_kmalloc_atomic(sizeof(struct pollfd)); |
344 | if(p == NULL){ | 344 | if(p == NULL){ |
345 | printk("setup_initial_poll : failed to allocate poll\n"); | 345 | printk("setup_initial_poll : failed to allocate poll\n"); |
346 | return(-1); | 346 | return(-1); |
diff --git a/arch/um/kernel/tlb.c b/arch/um/kernel/tlb.c index 0a562c3c0fd8..f5b0636f9ad7 100644 --- a/arch/um/kernel/tlb.c +++ b/arch/um/kernel/tlb.c | |||
@@ -193,12 +193,12 @@ void fix_range_common(struct mm_struct *mm, unsigned long start_addr, | |||
193 | r = pte_read(*npte); | 193 | r = pte_read(*npte); |
194 | w = pte_write(*npte); | 194 | w = pte_write(*npte); |
195 | x = pte_exec(*npte); | 195 | x = pte_exec(*npte); |
196 | if(!pte_dirty(*npte)) | 196 | if (!pte_young(*npte)) { |
197 | w = 0; | 197 | r = 0; |
198 | if(!pte_young(*npte)){ | 198 | w = 0; |
199 | r = 0; | 199 | } else if (!pte_dirty(*npte)) { |
200 | w = 0; | 200 | w = 0; |
201 | } | 201 | } |
202 | if(force || pte_newpage(*npte)){ | 202 | if(force || pte_newpage(*npte)){ |
203 | if(pte_present(*npte)) | 203 | if(pte_present(*npte)) |
204 | ret = add_mmap(addr, | 204 | ret = add_mmap(addr, |
diff --git a/arch/um/kernel/trap_kern.c b/arch/um/kernel/trap_kern.c index 87cc6fd76ced..d297429ac360 100644 --- a/arch/um/kernel/trap_kern.c +++ b/arch/um/kernel/trap_kern.c | |||
@@ -18,6 +18,7 @@ | |||
18 | #include "asm/a.out.h" | 18 | #include "asm/a.out.h" |
19 | #include "asm/current.h" | 19 | #include "asm/current.h" |
20 | #include "asm/irq.h" | 20 | #include "asm/irq.h" |
21 | #include "sysdep/sigcontext.h" | ||
21 | #include "user_util.h" | 22 | #include "user_util.h" |
22 | #include "kern_util.h" | 23 | #include "kern_util.h" |
23 | #include "kern.h" | 24 | #include "kern.h" |
@@ -39,6 +40,12 @@ int handle_page_fault(unsigned long address, unsigned long ip, | |||
39 | int err = -EFAULT; | 40 | int err = -EFAULT; |
40 | 41 | ||
41 | *code_out = SEGV_MAPERR; | 42 | *code_out = SEGV_MAPERR; |
43 | |||
44 | /* If the fault was during atomic operation, don't take the fault, just | ||
45 | * fail. */ | ||
46 | if (in_atomic()) | ||
47 | goto out_nosemaphore; | ||
48 | |||
42 | down_read(&mm->mmap_sem); | 49 | down_read(&mm->mmap_sem); |
43 | vma = find_vma(mm, address); | 50 | vma = find_vma(mm, address); |
44 | if(!vma) | 51 | if(!vma) |
@@ -89,6 +96,7 @@ survive: | |||
89 | flush_tlb_page(vma, address); | 96 | flush_tlb_page(vma, address); |
90 | out: | 97 | out: |
91 | up_read(&mm->mmap_sem); | 98 | up_read(&mm->mmap_sem); |
99 | out_nosemaphore: | ||
92 | return(err); | 100 | return(err); |
93 | 101 | ||
94 | /* | 102 | /* |
@@ -125,7 +133,15 @@ unsigned long segv(struct faultinfo fi, unsigned long ip, int is_user, void *sc) | |||
125 | } | 133 | } |
126 | else if(current->mm == NULL) | 134 | else if(current->mm == NULL) |
127 | panic("Segfault with no mm"); | 135 | panic("Segfault with no mm"); |
128 | err = handle_page_fault(address, ip, is_write, is_user, &si.si_code); | 136 | |
137 | if (SEGV_IS_FIXABLE(&fi)) | ||
138 | err = handle_page_fault(address, ip, is_write, is_user, &si.si_code); | ||
139 | else { | ||
140 | err = -EFAULT; | ||
141 | /* A thread accessed NULL, we get a fault, but CR2 is invalid. | ||
142 | * This code is used in __do_copy_from_user() of TT mode. */ | ||
143 | address = 0; | ||
144 | } | ||
129 | 145 | ||
130 | catcher = current->thread.fault_catcher; | 146 | catcher = current->thread.fault_catcher; |
131 | if(!err) | 147 | if(!err) |
diff --git a/arch/um/kernel/tt/uaccess_user.c b/arch/um/kernel/tt/uaccess_user.c index f01475512ecb..8c220f054b61 100644 --- a/arch/um/kernel/tt/uaccess_user.c +++ b/arch/um/kernel/tt/uaccess_user.c | |||
@@ -22,8 +22,15 @@ int __do_copy_from_user(void *to, const void *from, int n, | |||
22 | __do_copy, &faulted); | 22 | __do_copy, &faulted); |
23 | TASK_REGS(get_current())->tt = save; | 23 | TASK_REGS(get_current())->tt = save; |
24 | 24 | ||
25 | if(!faulted) return(0); | 25 | if(!faulted) |
26 | else return(n - (fault - (unsigned long) from)); | 26 | return 0; |
27 | else if (fault) | ||
28 | return n - (fault - (unsigned long) from); | ||
29 | else | ||
30 | /* In case of a general protection fault, we don't have the | ||
31 | * fault address, so NULL is used instead. Pretend we didn't | ||
32 | * copy anything. */ | ||
33 | return n; | ||
27 | } | 34 | } |
28 | 35 | ||
29 | static void __do_strncpy(void *dst, const void *src, int count) | 36 | static void __do_strncpy(void *dst, const void *src, int count) |
diff --git a/arch/um/kernel/umid.c b/arch/um/kernel/umid.c index 186c28885016..0b21d59ba0cd 100644 --- a/arch/um/kernel/umid.c +++ b/arch/um/kernel/umid.c | |||
@@ -31,6 +31,8 @@ static char *uml_dir = UML_DIR; | |||
31 | /* Changed by set_umid */ | 31 | /* Changed by set_umid */ |
32 | static int umid_is_random = 1; | 32 | static int umid_is_random = 1; |
33 | static int umid_inited = 0; | 33 | static int umid_inited = 0; |
34 | /* Have we created the files? Should we remove them? */ | ||
35 | static int umid_owned = 0; | ||
34 | 36 | ||
35 | static int make_umid(int (*printer)(const char *fmt, ...)); | 37 | static int make_umid(int (*printer)(const char *fmt, ...)); |
36 | 38 | ||
@@ -82,20 +84,21 @@ int __init umid_file_name(char *name, char *buf, int len) | |||
82 | 84 | ||
83 | extern int tracing_pid; | 85 | extern int tracing_pid; |
84 | 86 | ||
85 | static int __init create_pid_file(void) | 87 | static void __init create_pid_file(void) |
86 | { | 88 | { |
87 | char file[strlen(uml_dir) + UMID_LEN + sizeof("/pid\0")]; | 89 | char file[strlen(uml_dir) + UMID_LEN + sizeof("/pid\0")]; |
88 | char pid[sizeof("nnnnn\0")]; | 90 | char pid[sizeof("nnnnn\0")]; |
89 | int fd, n; | 91 | int fd, n; |
90 | 92 | ||
91 | if(umid_file_name("pid", file, sizeof(file))) return 0; | 93 | if(umid_file_name("pid", file, sizeof(file))) |
94 | return; | ||
92 | 95 | ||
93 | fd = os_open_file(file, of_create(of_excl(of_rdwr(OPENFLAGS()))), | 96 | fd = os_open_file(file, of_create(of_excl(of_rdwr(OPENFLAGS()))), |
94 | 0644); | 97 | 0644); |
95 | if(fd < 0){ | 98 | if(fd < 0){ |
96 | printf("Open of machine pid file \"%s\" failed: %s\n", | 99 | printf("Open of machine pid file \"%s\" failed: %s\n", |
97 | file, strerror(-fd)); | 100 | file, strerror(-fd)); |
98 | return 0; | 101 | return; |
99 | } | 102 | } |
100 | 103 | ||
101 | sprintf(pid, "%d\n", os_getpid()); | 104 | sprintf(pid, "%d\n", os_getpid()); |
@@ -103,7 +106,6 @@ static int __init create_pid_file(void) | |||
103 | if(n != strlen(pid)) | 106 | if(n != strlen(pid)) |
104 | printf("Write of pid file failed - err = %d\n", -n); | 107 | printf("Write of pid file failed - err = %d\n", -n); |
105 | os_close_file(fd); | 108 | os_close_file(fd); |
106 | return 0; | ||
107 | } | 109 | } |
108 | 110 | ||
109 | static int actually_do_remove(char *dir) | 111 | static int actually_do_remove(char *dir) |
@@ -147,7 +149,8 @@ static int actually_do_remove(char *dir) | |||
147 | void remove_umid_dir(void) | 149 | void remove_umid_dir(void) |
148 | { | 150 | { |
149 | char dir[strlen(uml_dir) + UMID_LEN + 1]; | 151 | char dir[strlen(uml_dir) + UMID_LEN + 1]; |
150 | if(!umid_inited) return; | 152 | if (!umid_owned) |
153 | return; | ||
151 | 154 | ||
152 | sprintf(dir, "%s%s", uml_dir, umid); | 155 | sprintf(dir, "%s%s", uml_dir, umid); |
153 | actually_do_remove(dir); | 156 | actually_do_remove(dir); |
@@ -155,11 +158,12 @@ void remove_umid_dir(void) | |||
155 | 158 | ||
156 | char *get_umid(int only_if_set) | 159 | char *get_umid(int only_if_set) |
157 | { | 160 | { |
158 | if(only_if_set && umid_is_random) return(NULL); | 161 | if(only_if_set && umid_is_random) |
159 | return(umid); | 162 | return NULL; |
163 | return umid; | ||
160 | } | 164 | } |
161 | 165 | ||
162 | int not_dead_yet(char *dir) | 166 | static int not_dead_yet(char *dir) |
163 | { | 167 | { |
164 | char file[strlen(uml_dir) + UMID_LEN + sizeof("/pid\0")]; | 168 | char file[strlen(uml_dir) + UMID_LEN + sizeof("/pid\0")]; |
165 | char pid[sizeof("nnnnn\0")], *end; | 169 | char pid[sizeof("nnnnn\0")], *end; |
@@ -193,7 +197,8 @@ int not_dead_yet(char *dir) | |||
193 | (p == CHOOSE_MODE(tracing_pid, os_getpid()))) | 197 | (p == CHOOSE_MODE(tracing_pid, os_getpid()))) |
194 | dead = 1; | 198 | dead = 1; |
195 | } | 199 | } |
196 | if(!dead) return(1); | 200 | if(!dead) |
201 | return(1); | ||
197 | return(actually_do_remove(dir)); | 202 | return(actually_do_remove(dir)); |
198 | } | 203 | } |
199 | 204 | ||
@@ -232,16 +237,13 @@ static int __init make_uml_dir(void) | |||
232 | strlcpy(dir, home, sizeof(dir)); | 237 | strlcpy(dir, home, sizeof(dir)); |
233 | uml_dir++; | 238 | uml_dir++; |
234 | } | 239 | } |
240 | strlcat(dir, uml_dir, sizeof(dir)); | ||
235 | len = strlen(dir); | 241 | len = strlen(dir); |
236 | strncat(dir, uml_dir, sizeof(dir) - len); | 242 | if (len > 0 && dir[len - 1] != '/') |
237 | len = strlen(dir); | 243 | strlcat(dir, "/", sizeof(dir)); |
238 | if((len > 0) && (len < sizeof(dir) - 1) && (dir[len - 1] != '/')){ | ||
239 | dir[len] = '/'; | ||
240 | dir[len + 1] = '\0'; | ||
241 | } | ||
242 | 244 | ||
243 | uml_dir = malloc(strlen(dir) + 1); | 245 | uml_dir = malloc(strlen(dir) + 1); |
244 | if(uml_dir == NULL){ | 246 | if (uml_dir == NULL) { |
245 | printf("make_uml_dir : malloc failed, errno = %d\n", errno); | 247 | printf("make_uml_dir : malloc failed, errno = %d\n", errno); |
246 | exit(1); | 248 | exit(1); |
247 | } | 249 | } |
@@ -286,6 +288,7 @@ static int __init make_umid(int (*printer)(const char *fmt, ...)) | |||
286 | if(errno == EEXIST){ | 288 | if(errno == EEXIST){ |
287 | if(not_dead_yet(tmp)){ | 289 | if(not_dead_yet(tmp)){ |
288 | (*printer)("umid '%s' is in use\n", umid); | 290 | (*printer)("umid '%s' is in use\n", umid); |
291 | umid_owned = 0; | ||
289 | return(-1); | 292 | return(-1); |
290 | } | 293 | } |
291 | err = mkdir(tmp, 0777); | 294 | err = mkdir(tmp, 0777); |
@@ -296,7 +299,8 @@ static int __init make_umid(int (*printer)(const char *fmt, ...)) | |||
296 | return(-1); | 299 | return(-1); |
297 | } | 300 | } |
298 | 301 | ||
299 | return(0); | 302 | umid_owned = 1; |
303 | return 0; | ||
300 | } | 304 | } |
301 | 305 | ||
302 | __uml_setup("uml_dir=", set_uml_dir, | 306 | __uml_setup("uml_dir=", set_uml_dir, |
@@ -309,7 +313,8 @@ static int __init make_umid_setup(void) | |||
309 | /* one function with the ordering we need ... */ | 313 | /* one function with the ordering we need ... */ |
310 | make_uml_dir(); | 314 | make_uml_dir(); |
311 | make_umid(printf); | 315 | make_umid(printf); |
312 | return create_pid_file(); | 316 | create_pid_file(); |
317 | return 0; | ||
313 | } | 318 | } |
314 | __uml_postsetup(make_umid_setup); | 319 | __uml_postsetup(make_umid_setup); |
315 | 320 | ||
diff --git a/arch/xtensa/kernel/pci.c b/arch/xtensa/kernel/pci.c index 09887c96e9a1..de19501aa809 100644 --- a/arch/xtensa/kernel/pci.c +++ b/arch/xtensa/kernel/pci.c | |||
@@ -402,8 +402,8 @@ int pci_mmap_page_range(struct pci_dev *dev, struct vm_area_struct *vma, | |||
402 | __pci_mmap_set_flags(dev, vma, mmap_state); | 402 | __pci_mmap_set_flags(dev, vma, mmap_state); |
403 | __pci_mmap_set_pgprot(dev, vma, mmap_state, write_combine); | 403 | __pci_mmap_set_pgprot(dev, vma, mmap_state, write_combine); |
404 | 404 | ||
405 | ret = io_remap_page_range(vma, vma->vm_start, vma->vm_pgoff<<PAGE_SHIFT, | 405 | ret = io_remap_pfn_range(vma, vma->vm_start, vma->vm_pgoff, |
406 | vma->vm_end - vma->vm_start, vma->vm_page_prot); | 406 | vma->vm_end - vma->vm_start,vma->vm_page_prot); |
407 | 407 | ||
408 | return ret; | 408 | return ret; |
409 | } | 409 | } |
diff --git a/arch/xtensa/kernel/platform.c b/arch/xtensa/kernel/platform.c index cf1362784443..03674daabc66 100644 --- a/arch/xtensa/kernel/platform.c +++ b/arch/xtensa/kernel/platform.c | |||
@@ -39,7 +39,7 @@ _F(int, pcibios_fixup, (void), { return 0; }); | |||
39 | _F(int, get_rtc_time, (time_t* t), { return 0; }); | 39 | _F(int, get_rtc_time, (time_t* t), { return 0; }); |
40 | _F(int, set_rtc_time, (time_t t), { return 0; }); | 40 | _F(int, set_rtc_time, (time_t t), { return 0; }); |
41 | 41 | ||
42 | #if CONFIG_XTENSA_CALIBRATE_CCOUNT | 42 | #ifdef CONFIG_XTENSA_CALIBRATE_CCOUNT |
43 | _F(void, calibrate_ccount, (void), | 43 | _F(void, calibrate_ccount, (void), |
44 | { | 44 | { |
45 | printk ("ERROR: Cannot calibrate cpu frequency! Assuming 100MHz.\n"); | 45 | printk ("ERROR: Cannot calibrate cpu frequency! Assuming 100MHz.\n"); |
diff --git a/arch/xtensa/kernel/process.c b/arch/xtensa/kernel/process.c index c83bb0d41787..08ef6d82ee51 100644 --- a/arch/xtensa/kernel/process.c +++ b/arch/xtensa/kernel/process.c | |||
@@ -457,7 +457,7 @@ int | |||
457 | dump_task_fpu(struct pt_regs *regs, struct task_struct *task, elf_fpregset_t *r) | 457 | dump_task_fpu(struct pt_regs *regs, struct task_struct *task, elf_fpregset_t *r) |
458 | { | 458 | { |
459 | /* see asm/coprocessor.h for this magic number 16 */ | 459 | /* see asm/coprocessor.h for this magic number 16 */ |
460 | #if TOTAL_CPEXTRA_SIZE > 16 | 460 | #if XTENSA_CP_EXTRA_SIZE > 16 |
461 | do_save_fpregs (r, regs, task); | 461 | do_save_fpregs (r, regs, task); |
462 | 462 | ||
463 | /* For now, bit 16 means some extra state may be present: */ | 463 | /* For now, bit 16 means some extra state may be present: */ |
diff --git a/arch/xtensa/kernel/setup.c b/arch/xtensa/kernel/setup.c index 1f5bf5d624e4..513ed8d67766 100644 --- a/arch/xtensa/kernel/setup.c +++ b/arch/xtensa/kernel/setup.c | |||
@@ -304,7 +304,7 @@ void __init setup_arch(char **cmdline_p) | |||
304 | # endif | 304 | # endif |
305 | #endif | 305 | #endif |
306 | 306 | ||
307 | #if CONFIG_PCI | 307 | #ifdef CONFIG_PCI |
308 | platform_pcibios_init(); | 308 | platform_pcibios_init(); |
309 | #endif | 309 | #endif |
310 | } | 310 | } |
diff --git a/arch/xtensa/kernel/signal.c b/arch/xtensa/kernel/signal.c index dc42cede9394..e252b61e45a5 100644 --- a/arch/xtensa/kernel/signal.c +++ b/arch/xtensa/kernel/signal.c | |||
@@ -182,7 +182,7 @@ restore_cpextra (struct _cpstate *buf) | |||
182 | 182 | ||
183 | struct task_struct *tsk = current; | 183 | struct task_struct *tsk = current; |
184 | release_all_cp(tsk); | 184 | release_all_cp(tsk); |
185 | return __copy_from_user(tsk->thread.cpextra, buf, TOTAL_CPEXTRA_SIZE); | 185 | return __copy_from_user(tsk->thread.cpextra, buf, XTENSA_CP_EXTRA_SIZE); |
186 | #endif | 186 | #endif |
187 | return 0; | 187 | return 0; |
188 | } | 188 | } |
diff --git a/arch/xtensa/kernel/time.c b/arch/xtensa/kernel/time.c index 1ac7d5ce7456..8e423d1335ce 100644 --- a/arch/xtensa/kernel/time.c +++ b/arch/xtensa/kernel/time.c | |||
@@ -68,7 +68,7 @@ void __init time_init(void) | |||
68 | * speed for the CALIBRATE. | 68 | * speed for the CALIBRATE. |
69 | */ | 69 | */ |
70 | 70 | ||
71 | #if CONFIG_XTENSA_CALIBRATE_CCOUNT | 71 | #ifdef CONFIG_XTENSA_CALIBRATE_CCOUNT |
72 | printk("Calibrating CPU frequency "); | 72 | printk("Calibrating CPU frequency "); |
73 | platform_calibrate_ccount(); | 73 | platform_calibrate_ccount(); |
74 | printk("%d.%02d MHz\n", (int)ccount_per_jiffy/(1000000/HZ), | 74 | printk("%d.%02d MHz\n", (int)ccount_per_jiffy/(1000000/HZ), |
diff --git a/arch/xtensa/mm/init.c b/arch/xtensa/mm/init.c index 56aace84aaeb..5a91d6c9e66d 100644 --- a/arch/xtensa/mm/init.c +++ b/arch/xtensa/mm/init.c | |||
@@ -239,7 +239,7 @@ void __init mem_init(void) | |||
239 | high_memory = (void *) __va(max_mapnr << PAGE_SHIFT); | 239 | high_memory = (void *) __va(max_mapnr << PAGE_SHIFT); |
240 | highmemsize = 0; | 240 | highmemsize = 0; |
241 | 241 | ||
242 | #if CONFIG_HIGHMEM | 242 | #ifdef CONFIG_HIGHMEM |
243 | #error HIGHGMEM not implemented in init.c | 243 | #error HIGHGMEM not implemented in init.c |
244 | #endif | 244 | #endif |
245 | 245 | ||