diff options
author | Linus Torvalds <torvalds@woody.osdl.org> | 2006-12-21 02:59:36 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.osdl.org> | 2006-12-21 02:59:36 -0500 |
commit | 5576d187a0eef3bb3c47500eaab33fb5485bc352 (patch) | |
tree | 608ac1f1091eddf17b4930d59c3a61dad7994614 | |
parent | ee2fae03d68e702866a8661fbee7ff2f2f3754d7 (diff) | |
parent | 1c9bb1a01ac1bc92a0d98cf3e40a7922ee684dc0 (diff) |
Merge branch 'merge' of master.kernel.org:/pub/scm/linux/kernel/git/paulus/powerpc
* 'merge' of master.kernel.org:/pub/scm/linux/kernel/git/paulus/powerpc:
[POWERPC] Fix register save area alignment for swapcontext syscall
[POWERPC] Fix PCI device channel state initialization
[POWERPC] Update MTD OF documentation
[POWERPC] Probe Efika platform before CHRP.
[POWERPC] Fix build of cell zImage.initrd
[POWERPC] iSeries: fix CONFIG_VIOPATH dependency
[POWERPC] iSeries: fix viocons init
[POWERPC] iSeries: fix viocd init
[POWERPC] iSeries: fix iseries_veth init
[POWERPC] iSeries: fix viotape init
[POWERPC] iSeries: fix viodasd init
[POWERPC] Workaround oldworld OF bug with IRQs & P2P bridges
[POWERPC] powerpc: add scanning of ebc bus to of_platform
[POWERPC] spufs: fix assignment of node numbers
[POWERPC] cell: Fix spufs with "new style" device-tree
[POWERPC] cell: Enable spider workarounds on all PCI buses
[POWERPC] cell: add forward struct declarations to spu.h
[POWERPC] cell: update cell_defconfig
-rw-r--r-- | Documentation/powerpc/booting-without-of.txt | 19 | ||||
-rw-r--r-- | arch/powerpc/boot/Makefile | 3 | ||||
-rw-r--r-- | arch/powerpc/configs/cell_defconfig | 358 | ||||
-rw-r--r-- | arch/powerpc/kernel/of_platform.c | 1 | ||||
-rw-r--r-- | arch/powerpc/kernel/pci_64.c | 1 | ||||
-rw-r--r-- | arch/powerpc/kernel/prom_parse.c | 15 | ||||
-rw-r--r-- | arch/powerpc/kernel/signal_32.c | 16 | ||||
-rw-r--r-- | arch/powerpc/platforms/Makefile | 2 | ||||
-rw-r--r-- | arch/powerpc/platforms/cell/io-workarounds.c | 2 | ||||
-rw-r--r-- | arch/powerpc/platforms/cell/spu_priv1_mmio.c | 95 | ||||
-rw-r--r-- | arch/powerpc/platforms/iseries/Kconfig | 2 | ||||
-rw-r--r-- | drivers/block/viodasd.c | 6 | ||||
-rw-r--r-- | drivers/cdrom/viocd.c | 4 | ||||
-rw-r--r-- | drivers/char/viocons.c | 7 | ||||
-rw-r--r-- | drivers/char/viotape.c | 5 | ||||
-rw-r--r-- | drivers/net/iseries_veth.c | 9 | ||||
-rw-r--r-- | include/asm-powerpc/spu.h | 2 |
17 files changed, 441 insertions, 106 deletions
diff --git a/Documentation/powerpc/booting-without-of.txt b/Documentation/powerpc/booting-without-of.txt index b3bd36668db3..33994271cb3b 100644 --- a/Documentation/powerpc/booting-without-of.txt +++ b/Documentation/powerpc/booting-without-of.txt | |||
@@ -1703,29 +1703,32 @@ platforms are moved over to use the flattened-device-tree model. | |||
1703 | Required properties: | 1703 | Required properties: |
1704 | 1704 | ||
1705 | - device_type : has to be "rom" | 1705 | - device_type : has to be "rom" |
1706 | - compatible : Should specify what this ROM device is compatible with | 1706 | - compatible : Should specify what this flash device is compatible with. |
1707 | (i.e. "onenand"). Currently, this is most likely to be "direct-mapped" | 1707 | Currently, this is most likely to be "direct-mapped" (which |
1708 | (which corresponds to the MTD physmap mapping driver). | 1708 | corresponds to the MTD physmap mapping driver). |
1709 | - regs : Offset and length of the register set (or memory mapping) for | 1709 | - reg : Offset and length of the register set (or memory mapping) for |
1710 | the device. | 1710 | the device. |
1711 | - bank-width : Width of the flash data bus in bytes. Required | ||
1712 | for the NOR flashes (compatible == "direct-mapped" and others) ONLY. | ||
1711 | 1713 | ||
1712 | Recommended properties : | 1714 | Recommended properties : |
1713 | 1715 | ||
1714 | - bank-width : Width of the flash data bus in bytes. Required | ||
1715 | for the NOR flashes (compatible == "direct-mapped" and others) ONLY. | ||
1716 | - partitions : Several pairs of 32-bit values where the first value is | 1716 | - partitions : Several pairs of 32-bit values where the first value is |
1717 | partition's offset from the start of the device and the second one is | 1717 | partition's offset from the start of the device and the second one is |
1718 | partition size in bytes with LSB used to signify a read only | 1718 | partition size in bytes with LSB used to signify a read only |
1719 | partititon (so, the parition size should always be an even number). | 1719 | partition (so, the parition size should always be an even number). |
1720 | - partition-names : The list of concatenated zero terminated strings | 1720 | - partition-names : The list of concatenated zero terminated strings |
1721 | representing the partition names. | 1721 | representing the partition names. |
1722 | - probe-type : The type of probe which should be done for the chip | ||
1723 | (JEDEC vs CFI actually). Valid ONLY for NOR flashes. | ||
1722 | 1724 | ||
1723 | Example: | 1725 | Example: |
1724 | 1726 | ||
1725 | flash@ff000000 { | 1727 | flash@ff000000 { |
1726 | device_type = "rom"; | 1728 | device_type = "rom"; |
1727 | compatible = "direct-mapped"; | 1729 | compatible = "direct-mapped"; |
1728 | regs = <ff000000 01000000>; | 1730 | probe-type = "CFI"; |
1731 | reg = <ff000000 01000000>; | ||
1729 | bank-width = <4>; | 1732 | bank-width = <4>; |
1730 | partitions = <00000000 00f80000 | 1733 | partitions = <00000000 00f80000 |
1731 | 00f80000 00080001>; | 1734 | 00f80000 00080001>; |
diff --git a/arch/powerpc/boot/Makefile b/arch/powerpc/boot/Makefile index 343dbcfdf08a..98392fb5f581 100644 --- a/arch/powerpc/boot/Makefile +++ b/arch/powerpc/boot/Makefile | |||
@@ -152,6 +152,9 @@ $(obj)/zImage.initrd.miboot: vmlinux $(wrapperbits) | |||
152 | $(obj)/zImage.ps3: vmlinux | 152 | $(obj)/zImage.ps3: vmlinux |
153 | $(STRIP) -s -R .comment $< -o $@ | 153 | $(STRIP) -s -R .comment $< -o $@ |
154 | 154 | ||
155 | $(obj)/zImage.initrd.ps3: vmlinux | ||
156 | @echo " WARNING zImage.initrd.ps3 not supported (yet)" | ||
157 | |||
155 | $(obj)/uImage: vmlinux $(wrapperbits) | 158 | $(obj)/uImage: vmlinux $(wrapperbits) |
156 | $(call cmd,wrap,uboot) | 159 | $(call cmd,wrap,uboot) |
157 | 160 | ||
diff --git a/arch/powerpc/configs/cell_defconfig b/arch/powerpc/configs/cell_defconfig index a98c982c73ad..d1d25152f74f 100644 --- a/arch/powerpc/configs/cell_defconfig +++ b/arch/powerpc/configs/cell_defconfig | |||
@@ -1,7 +1,7 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.19-rc6 | 3 | # Linux kernel version: 2.6.20-rc1 |
4 | # Wed Nov 22 15:33:04 2006 | 4 | # Tue Dec 19 14:59:53 2006 |
5 | # | 5 | # |
6 | CONFIG_PPC64=y | 6 | CONFIG_PPC64=y |
7 | CONFIG_64BIT=y | 7 | CONFIG_64BIT=y |
@@ -10,6 +10,8 @@ CONFIG_MMU=y | |||
10 | CONFIG_GENERIC_HARDIRQS=y | 10 | CONFIG_GENERIC_HARDIRQS=y |
11 | CONFIG_IRQ_PER_CPU=y | 11 | CONFIG_IRQ_PER_CPU=y |
12 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y | 12 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y |
13 | CONFIG_ARCH_HAS_ILOG2_U32=y | ||
14 | CONFIG_ARCH_HAS_ILOG2_U64=y | ||
13 | CONFIG_GENERIC_HWEIGHT=y | 15 | CONFIG_GENERIC_HWEIGHT=y |
14 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 16 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
15 | CONFIG_GENERIC_FIND_NEXT_BIT=y | 17 | CONFIG_GENERIC_FIND_NEXT_BIT=y |
@@ -23,6 +25,7 @@ CONFIG_PPC_OF=y | |||
23 | CONFIG_PPC_UDBG_16550=y | 25 | CONFIG_PPC_UDBG_16550=y |
24 | # CONFIG_GENERIC_TBSYNC is not set | 26 | # CONFIG_GENERIC_TBSYNC is not set |
25 | CONFIG_AUDIT_ARCH=y | 27 | CONFIG_AUDIT_ARCH=y |
28 | CONFIG_GENERIC_BUG=y | ||
26 | # CONFIG_DEFAULT_UIMAGE is not set | 29 | # CONFIG_DEFAULT_UIMAGE is not set |
27 | 30 | ||
28 | # | 31 | # |
@@ -66,6 +69,7 @@ CONFIG_SYSVIPC=y | |||
66 | CONFIG_IKCONFIG=y | 69 | CONFIG_IKCONFIG=y |
67 | CONFIG_IKCONFIG_PROC=y | 70 | CONFIG_IKCONFIG_PROC=y |
68 | CONFIG_CPUSETS=y | 71 | CONFIG_CPUSETS=y |
72 | CONFIG_SYSFS_DEPRECATED=y | ||
69 | # CONFIG_RELAY is not set | 73 | # CONFIG_RELAY is not set |
70 | CONFIG_INITRAMFS_SOURCE="" | 74 | CONFIG_INITRAMFS_SOURCE="" |
71 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | 75 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y |
@@ -128,14 +132,16 @@ CONFIG_PPC_MULTIPLATFORM=y | |||
128 | # CONFIG_APUS is not set | 132 | # CONFIG_APUS is not set |
129 | # CONFIG_PPC_PSERIES is not set | 133 | # CONFIG_PPC_PSERIES is not set |
130 | # CONFIG_PPC_ISERIES is not set | 134 | # CONFIG_PPC_ISERIES is not set |
135 | # CONFIG_PPC_MPC52xx is not set | ||
131 | # CONFIG_PPC_PMAC is not set | 136 | # CONFIG_PPC_PMAC is not set |
132 | # CONFIG_PPC_MAPLE is not set | 137 | # CONFIG_PPC_MAPLE is not set |
133 | # CONFIG_PPC_PASEMI is not set | 138 | # CONFIG_PPC_PASEMI is not set |
134 | CONFIG_PPC_CELL=y | 139 | CONFIG_PPC_CELL=y |
135 | CONFIG_PPC_CELL_NATIVE=y | 140 | CONFIG_PPC_CELL_NATIVE=y |
136 | CONFIG_PPC_IBM_CELL_BLADE=y | 141 | CONFIG_PPC_IBM_CELL_BLADE=y |
137 | CONFIG_UDBG_RTAS_CONSOLE=y | ||
138 | CONFIG_PPC_PS3=y | 142 | CONFIG_PPC_PS3=y |
143 | CONFIG_PPC_NATIVE=y | ||
144 | CONFIG_UDBG_RTAS_CONSOLE=y | ||
139 | # CONFIG_U3_DART is not set | 145 | # CONFIG_U3_DART is not set |
140 | CONFIG_PPC_RTAS=y | 146 | CONFIG_PPC_RTAS=y |
141 | # CONFIG_RTAS_ERROR_LOGGING is not set | 147 | # CONFIG_RTAS_ERROR_LOGGING is not set |
@@ -177,12 +183,14 @@ CONFIG_CBE_CPUFREQ=m | |||
177 | CONFIG_PS3_HTAB_SIZE=20 | 183 | CONFIG_PS3_HTAB_SIZE=20 |
178 | # CONFIG_PS3_DYNAMIC_DMA is not set | 184 | # CONFIG_PS3_DYNAMIC_DMA is not set |
179 | CONFIG_PS3_USE_LPAR_ADDR=y | 185 | CONFIG_PS3_USE_LPAR_ADDR=y |
186 | CONFIG_PS3_VUART=y | ||
180 | 187 | ||
181 | # | 188 | # |
182 | # Kernel options | 189 | # Kernel options |
183 | # | 190 | # |
184 | # CONFIG_HZ_100 is not set | 191 | # CONFIG_HZ_100 is not set |
185 | CONFIG_HZ_250=y | 192 | CONFIG_HZ_250=y |
193 | # CONFIG_HZ_300 is not set | ||
186 | # CONFIG_HZ_1000 is not set | 194 | # CONFIG_HZ_1000 is not set |
187 | CONFIG_HZ=250 | 195 | CONFIG_HZ=250 |
188 | CONFIG_PREEMPT_NONE=y | 196 | CONFIG_PREEMPT_NONE=y |
@@ -237,6 +245,7 @@ CONFIG_GENERIC_ISA_DMA=y | |||
237 | CONFIG_PCI=y | 245 | CONFIG_PCI=y |
238 | CONFIG_PCI_DOMAINS=y | 246 | CONFIG_PCI_DOMAINS=y |
239 | CONFIG_PCIEPORTBUS=y | 247 | CONFIG_PCIEPORTBUS=y |
248 | # CONFIG_PCI_MULTITHREAD_PROBE is not set | ||
240 | # CONFIG_PCI_DEBUG is not set | 249 | # CONFIG_PCI_DEBUG is not set |
241 | 250 | ||
242 | # | 251 | # |
@@ -270,7 +279,10 @@ CONFIG_INET=y | |||
270 | CONFIG_IP_MULTICAST=y | 279 | CONFIG_IP_MULTICAST=y |
271 | # CONFIG_IP_ADVANCED_ROUTER is not set | 280 | # CONFIG_IP_ADVANCED_ROUTER is not set |
272 | CONFIG_IP_FIB_HASH=y | 281 | CONFIG_IP_FIB_HASH=y |
273 | # CONFIG_IP_PNP is not set | 282 | CONFIG_IP_PNP=y |
283 | CONFIG_IP_PNP_DHCP=y | ||
284 | CONFIG_IP_PNP_BOOTP=y | ||
285 | CONFIG_IP_PNP_RARP=y | ||
274 | CONFIG_NET_IPIP=y | 286 | CONFIG_NET_IPIP=y |
275 | # CONFIG_NET_IPGRE is not set | 287 | # CONFIG_NET_IPGRE is not set |
276 | # CONFIG_IP_MROUTE is not set | 288 | # CONFIG_IP_MROUTE is not set |
@@ -289,6 +301,7 @@ CONFIG_INET_TCP_DIAG=y | |||
289 | # CONFIG_TCP_CONG_ADVANCED is not set | 301 | # CONFIG_TCP_CONG_ADVANCED is not set |
290 | CONFIG_TCP_CONG_CUBIC=y | 302 | CONFIG_TCP_CONG_CUBIC=y |
291 | CONFIG_DEFAULT_TCP_CONG="cubic" | 303 | CONFIG_DEFAULT_TCP_CONG="cubic" |
304 | # CONFIG_TCP_MD5SIG is not set | ||
292 | 305 | ||
293 | # | 306 | # |
294 | # IP: Virtual Server Configuration | 307 | # IP: Virtual Server Configuration |
@@ -317,31 +330,67 @@ CONFIG_NETFILTER=y | |||
317 | # | 330 | # |
318 | # Core Netfilter Configuration | 331 | # Core Netfilter Configuration |
319 | # | 332 | # |
320 | # CONFIG_NETFILTER_NETLINK is not set | 333 | CONFIG_NETFILTER_NETLINK=m |
321 | # CONFIG_NETFILTER_XTABLES is not set | 334 | CONFIG_NETFILTER_NETLINK_QUEUE=m |
335 | CONFIG_NETFILTER_NETLINK_LOG=m | ||
336 | # CONFIG_NF_CONNTRACK_ENABLED is not set | ||
337 | CONFIG_NETFILTER_XTABLES=m | ||
338 | CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m | ||
339 | CONFIG_NETFILTER_XT_TARGET_DSCP=m | ||
340 | CONFIG_NETFILTER_XT_TARGET_MARK=m | ||
341 | CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m | ||
342 | CONFIG_NETFILTER_XT_TARGET_NFLOG=m | ||
343 | CONFIG_NETFILTER_XT_MATCH_COMMENT=m | ||
344 | CONFIG_NETFILTER_XT_MATCH_DCCP=m | ||
345 | CONFIG_NETFILTER_XT_MATCH_DSCP=m | ||
346 | CONFIG_NETFILTER_XT_MATCH_ESP=m | ||
347 | CONFIG_NETFILTER_XT_MATCH_LENGTH=m | ||
348 | CONFIG_NETFILTER_XT_MATCH_LIMIT=m | ||
349 | CONFIG_NETFILTER_XT_MATCH_MAC=m | ||
350 | CONFIG_NETFILTER_XT_MATCH_MARK=m | ||
351 | CONFIG_NETFILTER_XT_MATCH_POLICY=m | ||
352 | CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m | ||
353 | CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m | ||
354 | CONFIG_NETFILTER_XT_MATCH_QUOTA=m | ||
355 | CONFIG_NETFILTER_XT_MATCH_REALM=m | ||
356 | CONFIG_NETFILTER_XT_MATCH_SCTP=m | ||
357 | CONFIG_NETFILTER_XT_MATCH_STATISTIC=m | ||
358 | CONFIG_NETFILTER_XT_MATCH_STRING=m | ||
359 | CONFIG_NETFILTER_XT_MATCH_TCPMSS=m | ||
360 | CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m | ||
322 | 361 | ||
323 | # | 362 | # |
324 | # IP: Netfilter Configuration | 363 | # IP: Netfilter Configuration |
325 | # | 364 | # |
326 | CONFIG_IP_NF_CONNTRACK=y | ||
327 | # CONFIG_IP_NF_CT_ACCT is not set | ||
328 | # CONFIG_IP_NF_CONNTRACK_MARK is not set | ||
329 | # CONFIG_IP_NF_CONNTRACK_EVENTS is not set | ||
330 | CONFIG_IP_NF_CT_PROTO_SCTP=y | ||
331 | CONFIG_IP_NF_FTP=m | ||
332 | CONFIG_IP_NF_IRC=m | ||
333 | # CONFIG_IP_NF_NETBIOS_NS is not set | ||
334 | CONFIG_IP_NF_TFTP=m | ||
335 | CONFIG_IP_NF_AMANDA=m | ||
336 | # CONFIG_IP_NF_PPTP is not set | ||
337 | # CONFIG_IP_NF_H323 is not set | ||
338 | # CONFIG_IP_NF_SIP is not set | ||
339 | CONFIG_IP_NF_QUEUE=m | 365 | CONFIG_IP_NF_QUEUE=m |
366 | CONFIG_IP_NF_IPTABLES=m | ||
367 | CONFIG_IP_NF_MATCH_IPRANGE=m | ||
368 | CONFIG_IP_NF_MATCH_TOS=m | ||
369 | CONFIG_IP_NF_MATCH_RECENT=m | ||
370 | CONFIG_IP_NF_MATCH_ECN=m | ||
371 | CONFIG_IP_NF_MATCH_AH=m | ||
372 | CONFIG_IP_NF_MATCH_TTL=m | ||
373 | CONFIG_IP_NF_MATCH_OWNER=m | ||
374 | CONFIG_IP_NF_MATCH_ADDRTYPE=m | ||
375 | CONFIG_IP_NF_FILTER=m | ||
376 | CONFIG_IP_NF_TARGET_REJECT=m | ||
377 | CONFIG_IP_NF_TARGET_LOG=m | ||
378 | CONFIG_IP_NF_TARGET_ULOG=m | ||
379 | CONFIG_IP_NF_TARGET_TCPMSS=m | ||
380 | CONFIG_IP_NF_MANGLE=m | ||
381 | CONFIG_IP_NF_TARGET_TOS=m | ||
382 | CONFIG_IP_NF_TARGET_ECN=m | ||
383 | CONFIG_IP_NF_TARGET_TTL=m | ||
384 | CONFIG_IP_NF_RAW=m | ||
385 | CONFIG_IP_NF_ARPTABLES=m | ||
386 | CONFIG_IP_NF_ARPFILTER=m | ||
387 | CONFIG_IP_NF_ARP_MANGLE=m | ||
340 | 388 | ||
341 | # | 389 | # |
342 | # IPv6: Netfilter Configuration (EXPERIMENTAL) | 390 | # IPv6: Netfilter Configuration (EXPERIMENTAL) |
343 | # | 391 | # |
344 | # CONFIG_IP6_NF_QUEUE is not set | 392 | # CONFIG_IP6_NF_QUEUE is not set |
393 | # CONFIG_IP6_NF_IPTABLES is not set | ||
345 | 394 | ||
346 | # | 395 | # |
347 | # DCCP Configuration (EXPERIMENTAL) | 396 | # DCCP Configuration (EXPERIMENTAL) |
@@ -373,6 +422,7 @@ CONFIG_IP_NF_QUEUE=m | |||
373 | # QoS and/or fair queueing | 422 | # QoS and/or fair queueing |
374 | # | 423 | # |
375 | # CONFIG_NET_SCHED is not set | 424 | # CONFIG_NET_SCHED is not set |
425 | CONFIG_NET_CLS_ROUTE=y | ||
376 | 426 | ||
377 | # | 427 | # |
378 | # Network testing | 428 | # Network testing |
@@ -428,6 +478,7 @@ CONFIG_BLK_DEV_LOOP=y | |||
428 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set | 478 | # CONFIG_BLK_DEV_CRYPTOLOOP is not set |
429 | # CONFIG_BLK_DEV_NBD is not set | 479 | # CONFIG_BLK_DEV_NBD is not set |
430 | # CONFIG_BLK_DEV_SX8 is not set | 480 | # CONFIG_BLK_DEV_SX8 is not set |
481 | # CONFIG_BLK_DEV_UB is not set | ||
431 | CONFIG_BLK_DEV_RAM=y | 482 | CONFIG_BLK_DEV_RAM=y |
432 | CONFIG_BLK_DEV_RAM_COUNT=16 | 483 | CONFIG_BLK_DEV_RAM_COUNT=16 |
433 | CONFIG_BLK_DEV_RAM_SIZE=131072 | 484 | CONFIG_BLK_DEV_RAM_SIZE=131072 |
@@ -457,6 +508,7 @@ CONFIG_IDEDISK_MULTI_MODE=y | |||
457 | # CONFIG_BLK_DEV_IDECD is not set | 508 | # CONFIG_BLK_DEV_IDECD is not set |
458 | # CONFIG_BLK_DEV_IDETAPE is not set | 509 | # CONFIG_BLK_DEV_IDETAPE is not set |
459 | # CONFIG_BLK_DEV_IDEFLOPPY is not set | 510 | # CONFIG_BLK_DEV_IDEFLOPPY is not set |
511 | # CONFIG_BLK_DEV_IDESCSI is not set | ||
460 | # CONFIG_IDE_TASK_IOCTL is not set | 512 | # CONFIG_IDE_TASK_IOCTL is not set |
461 | 513 | ||
462 | # | 514 | # |
@@ -468,7 +520,6 @@ CONFIG_IDEPCI_SHARE_IRQ=y | |||
468 | # CONFIG_BLK_DEV_OFFBOARD is not set | 520 | # CONFIG_BLK_DEV_OFFBOARD is not set |
469 | CONFIG_BLK_DEV_GENERIC=y | 521 | CONFIG_BLK_DEV_GENERIC=y |
470 | # CONFIG_BLK_DEV_OPTI621 is not set | 522 | # CONFIG_BLK_DEV_OPTI621 is not set |
471 | # CONFIG_BLK_DEV_SL82C105 is not set | ||
472 | CONFIG_BLK_DEV_IDEDMA_PCI=y | 523 | CONFIG_BLK_DEV_IDEDMA_PCI=y |
473 | # CONFIG_BLK_DEV_IDEDMA_FORCED is not set | 524 | # CONFIG_BLK_DEV_IDEDMA_FORCED is not set |
474 | CONFIG_IDEDMA_PCI_AUTO=y | 525 | CONFIG_IDEDMA_PCI_AUTO=y |
@@ -492,6 +543,7 @@ CONFIG_BLK_DEV_AEC62XX=y | |||
492 | # CONFIG_BLK_DEV_PDC202XX_NEW is not set | 543 | # CONFIG_BLK_DEV_PDC202XX_NEW is not set |
493 | # CONFIG_BLK_DEV_SVWKS is not set | 544 | # CONFIG_BLK_DEV_SVWKS is not set |
494 | CONFIG_BLK_DEV_SIIMAGE=y | 545 | CONFIG_BLK_DEV_SIIMAGE=y |
546 | # CONFIG_BLK_DEV_SL82C105 is not set | ||
495 | # CONFIG_BLK_DEV_SLC90E66 is not set | 547 | # CONFIG_BLK_DEV_SLC90E66 is not set |
496 | # CONFIG_BLK_DEV_TRM290 is not set | 548 | # CONFIG_BLK_DEV_TRM290 is not set |
497 | # CONFIG_BLK_DEV_VIA82CXXX is not set | 549 | # CONFIG_BLK_DEV_VIA82CXXX is not set |
@@ -505,8 +557,74 @@ CONFIG_IDEDMA_AUTO=y | |||
505 | # SCSI device support | 557 | # SCSI device support |
506 | # | 558 | # |
507 | # CONFIG_RAID_ATTRS is not set | 559 | # CONFIG_RAID_ATTRS is not set |
508 | # CONFIG_SCSI is not set | 560 | CONFIG_SCSI=m |
561 | # CONFIG_SCSI_TGT is not set | ||
509 | # CONFIG_SCSI_NETLINK is not set | 562 | # CONFIG_SCSI_NETLINK is not set |
563 | CONFIG_SCSI_PROC_FS=y | ||
564 | |||
565 | # | ||
566 | # SCSI support type (disk, tape, CD-ROM) | ||
567 | # | ||
568 | CONFIG_BLK_DEV_SD=m | ||
569 | # CONFIG_CHR_DEV_ST is not set | ||
570 | # CONFIG_CHR_DEV_OSST is not set | ||
571 | CONFIG_BLK_DEV_SR=m | ||
572 | # CONFIG_BLK_DEV_SR_VENDOR is not set | ||
573 | CONFIG_CHR_DEV_SG=m | ||
574 | # CONFIG_CHR_DEV_SCH is not set | ||
575 | |||
576 | # | ||
577 | # Some SCSI devices (e.g. CD jukebox) support multiple LUNs | ||
578 | # | ||
579 | # CONFIG_SCSI_MULTI_LUN is not set | ||
580 | # CONFIG_SCSI_CONSTANTS is not set | ||
581 | # CONFIG_SCSI_LOGGING is not set | ||
582 | # CONFIG_SCSI_SCAN_ASYNC is not set | ||
583 | |||
584 | # | ||
585 | # SCSI Transports | ||
586 | # | ||
587 | # CONFIG_SCSI_SPI_ATTRS is not set | ||
588 | # CONFIG_SCSI_FC_ATTRS is not set | ||
589 | # CONFIG_SCSI_ISCSI_ATTRS is not set | ||
590 | # CONFIG_SCSI_SAS_ATTRS is not set | ||
591 | # CONFIG_SCSI_SAS_LIBSAS is not set | ||
592 | |||
593 | # | ||
594 | # SCSI low-level drivers | ||
595 | # | ||
596 | # CONFIG_ISCSI_TCP is not set | ||
597 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set | ||
598 | # CONFIG_SCSI_3W_9XXX is not set | ||
599 | # CONFIG_SCSI_ACARD is not set | ||
600 | # CONFIG_SCSI_AACRAID is not set | ||
601 | # CONFIG_SCSI_AIC7XXX is not set | ||
602 | # CONFIG_SCSI_AIC7XXX_OLD is not set | ||
603 | # CONFIG_SCSI_AIC79XX is not set | ||
604 | # CONFIG_SCSI_AIC94XX is not set | ||
605 | # CONFIG_SCSI_ARCMSR is not set | ||
606 | # CONFIG_MEGARAID_NEWGEN is not set | ||
607 | # CONFIG_MEGARAID_LEGACY is not set | ||
608 | # CONFIG_MEGARAID_SAS is not set | ||
609 | # CONFIG_SCSI_HPTIOP is not set | ||
610 | # CONFIG_SCSI_BUSLOGIC is not set | ||
611 | # CONFIG_SCSI_DMX3191D is not set | ||
612 | # CONFIG_SCSI_EATA is not set | ||
613 | # CONFIG_SCSI_FUTURE_DOMAIN is not set | ||
614 | # CONFIG_SCSI_GDTH is not set | ||
615 | # CONFIG_SCSI_IPS is not set | ||
616 | # CONFIG_SCSI_INITIO is not set | ||
617 | # CONFIG_SCSI_INIA100 is not set | ||
618 | # CONFIG_SCSI_STEX is not set | ||
619 | # CONFIG_SCSI_SYM53C8XX_2 is not set | ||
620 | # CONFIG_SCSI_QLOGIC_1280 is not set | ||
621 | # CONFIG_SCSI_QLA_FC is not set | ||
622 | # CONFIG_SCSI_QLA_ISCSI is not set | ||
623 | # CONFIG_SCSI_LPFC is not set | ||
624 | # CONFIG_SCSI_DC395x is not set | ||
625 | # CONFIG_SCSI_DC390T is not set | ||
626 | # CONFIG_SCSI_DEBUG is not set | ||
627 | # CONFIG_SCSI_SRP is not set | ||
510 | 628 | ||
511 | # | 629 | # |
512 | # Serial ATA (prod) and Parallel ATA (experimental) drivers | 630 | # Serial ATA (prod) and Parallel ATA (experimental) drivers |
@@ -538,6 +656,9 @@ CONFIG_DM_MULTIPATH=m | |||
538 | # Fusion MPT device support | 656 | # Fusion MPT device support |
539 | # | 657 | # |
540 | # CONFIG_FUSION is not set | 658 | # CONFIG_FUSION is not set |
659 | # CONFIG_FUSION_SPI is not set | ||
660 | # CONFIG_FUSION_FC is not set | ||
661 | # CONFIG_FUSION_SAS is not set | ||
541 | 662 | ||
542 | # | 663 | # |
543 | # IEEE 1394 (FireWire) support | 664 | # IEEE 1394 (FireWire) support |
@@ -552,6 +673,7 @@ CONFIG_DM_MULTIPATH=m | |||
552 | # | 673 | # |
553 | # Macintosh device drivers | 674 | # Macintosh device drivers |
554 | # | 675 | # |
676 | # CONFIG_MAC_EMUMOUSEBTN is not set | ||
555 | # CONFIG_WINDFARM is not set | 677 | # CONFIG_WINDFARM is not set |
556 | 678 | ||
557 | # | 679 | # |
@@ -559,7 +681,7 @@ CONFIG_DM_MULTIPATH=m | |||
559 | # | 681 | # |
560 | CONFIG_NETDEVICES=y | 682 | CONFIG_NETDEVICES=y |
561 | # CONFIG_DUMMY is not set | 683 | # CONFIG_DUMMY is not set |
562 | CONFIG_BONDING=y | 684 | CONFIG_BONDING=m |
563 | # CONFIG_EQUALIZER is not set | 685 | # CONFIG_EQUALIZER is not set |
564 | CONFIG_TUN=y | 686 | CONFIG_TUN=y |
565 | 687 | ||
@@ -604,11 +726,11 @@ CONFIG_E1000_NAPI=y | |||
604 | # CONFIG_R8169 is not set | 726 | # CONFIG_R8169 is not set |
605 | # CONFIG_SIS190 is not set | 727 | # CONFIG_SIS190 is not set |
606 | CONFIG_SKGE=m | 728 | CONFIG_SKGE=m |
607 | # CONFIG_SKY2 is not set | 729 | CONFIG_SKY2=m |
608 | # CONFIG_SK98LIN is not set | 730 | # CONFIG_SK98LIN is not set |
609 | # CONFIG_TIGON3 is not set | 731 | CONFIG_TIGON3=y |
610 | # CONFIG_BNX2 is not set | 732 | # CONFIG_BNX2 is not set |
611 | CONFIG_SPIDER_NET=m | 733 | CONFIG_SPIDER_NET=y |
612 | # CONFIG_QLA3XXX is not set | 734 | # CONFIG_QLA3XXX is not set |
613 | 735 | ||
614 | # | 736 | # |
@@ -618,6 +740,7 @@ CONFIG_SPIDER_NET=m | |||
618 | # CONFIG_IXGB is not set | 740 | # CONFIG_IXGB is not set |
619 | # CONFIG_S2IO is not set | 741 | # CONFIG_S2IO is not set |
620 | # CONFIG_MYRI10GE is not set | 742 | # CONFIG_MYRI10GE is not set |
743 | # CONFIG_NETXEN_NIC is not set | ||
621 | 744 | ||
622 | # | 745 | # |
623 | # Token Ring devices | 746 | # Token Ring devices |
@@ -637,6 +760,7 @@ CONFIG_SPIDER_NET=m | |||
637 | # CONFIG_HIPPI is not set | 760 | # CONFIG_HIPPI is not set |
638 | # CONFIG_PPP is not set | 761 | # CONFIG_PPP is not set |
639 | # CONFIG_SLIP is not set | 762 | # CONFIG_SLIP is not set |
763 | # CONFIG_NET_FC is not set | ||
640 | # CONFIG_SHAPER is not set | 764 | # CONFIG_SHAPER is not set |
641 | # CONFIG_NETCONSOLE is not set | 765 | # CONFIG_NETCONSOLE is not set |
642 | # CONFIG_NETPOLL is not set | 766 | # CONFIG_NETPOLL is not set |
@@ -703,6 +827,7 @@ CONFIG_SERIAL_NONSTANDARD=y | |||
703 | # CONFIG_DIGIEPCA is not set | 827 | # CONFIG_DIGIEPCA is not set |
704 | # CONFIG_MOXA_INTELLIO is not set | 828 | # CONFIG_MOXA_INTELLIO is not set |
705 | # CONFIG_MOXA_SMARTIO is not set | 829 | # CONFIG_MOXA_SMARTIO is not set |
830 | # CONFIG_MOXA_SMARTIO_NEW is not set | ||
706 | # CONFIG_ISI is not set | 831 | # CONFIG_ISI is not set |
707 | # CONFIG_SYNCLINK is not set | 832 | # CONFIG_SYNCLINK is not set |
708 | # CONFIG_SYNCLINKMP is not set | 833 | # CONFIG_SYNCLINKMP is not set |
@@ -729,6 +854,7 @@ CONFIG_SERIAL_8250_RUNTIME_UARTS=4 | |||
729 | CONFIG_SERIAL_CORE=y | 854 | CONFIG_SERIAL_CORE=y |
730 | CONFIG_SERIAL_CORE_CONSOLE=y | 855 | CONFIG_SERIAL_CORE_CONSOLE=y |
731 | # CONFIG_SERIAL_JSM is not set | 856 | # CONFIG_SERIAL_JSM is not set |
857 | CONFIG_SERIAL_OF_PLATFORM=y | ||
732 | CONFIG_UNIX98_PTYS=y | 858 | CONFIG_UNIX98_PTYS=y |
733 | # CONFIG_LEGACY_PTYS is not set | 859 | # CONFIG_LEGACY_PTYS is not set |
734 | CONFIG_HVC_DRIVER=y | 860 | CONFIG_HVC_DRIVER=y |
@@ -756,16 +882,17 @@ CONFIG_WATCHDOG_RTAS=y | |||
756 | # | 882 | # |
757 | # CONFIG_PCIPCWATCHDOG is not set | 883 | # CONFIG_PCIPCWATCHDOG is not set |
758 | # CONFIG_WDTPCI is not set | 884 | # CONFIG_WDTPCI is not set |
885 | |||
886 | # | ||
887 | # USB-based Watchdog Cards | ||
888 | # | ||
889 | # CONFIG_USBPCWATCHDOG is not set | ||
759 | # CONFIG_HW_RANDOM is not set | 890 | # CONFIG_HW_RANDOM is not set |
760 | CONFIG_GEN_RTC=y | 891 | CONFIG_GEN_RTC=y |
761 | # CONFIG_GEN_RTC_X is not set | 892 | # CONFIG_GEN_RTC_X is not set |
762 | # CONFIG_DTLK is not set | 893 | # CONFIG_DTLK is not set |
763 | # CONFIG_R3964 is not set | 894 | # CONFIG_R3964 is not set |
764 | # CONFIG_APPLICOM is not set | 895 | # CONFIG_APPLICOM is not set |
765 | |||
766 | # | ||
767 | # Ftape, the floppy tape device driver | ||
768 | # | ||
769 | # CONFIG_AGP is not set | 896 | # CONFIG_AGP is not set |
770 | # CONFIG_DRM is not set | 897 | # CONFIG_DRM is not set |
771 | # CONFIG_RAW_DRIVER is not set | 898 | # CONFIG_RAW_DRIVER is not set |
@@ -855,12 +982,14 @@ CONFIG_I2C_ALGOBIT=y | |||
855 | # Digital Video Broadcasting Devices | 982 | # Digital Video Broadcasting Devices |
856 | # | 983 | # |
857 | # CONFIG_DVB is not set | 984 | # CONFIG_DVB is not set |
985 | # CONFIG_USB_DABUSB is not set | ||
858 | 986 | ||
859 | # | 987 | # |
860 | # Graphics support | 988 | # Graphics support |
861 | # | 989 | # |
862 | CONFIG_FIRMWARE_EDID=y | 990 | CONFIG_FIRMWARE_EDID=y |
863 | # CONFIG_FB is not set | 991 | # CONFIG_FB is not set |
992 | # CONFIG_FB_IBM_GXT4500 is not set | ||
864 | 993 | ||
865 | # | 994 | # |
866 | # Console display driver support | 995 | # Console display driver support |
@@ -875,18 +1004,145 @@ CONFIG_DUMMY_CONSOLE=y | |||
875 | # CONFIG_SOUND is not set | 1004 | # CONFIG_SOUND is not set |
876 | 1005 | ||
877 | # | 1006 | # |
1007 | # HID Devices | ||
1008 | # | ||
1009 | CONFIG_HID=m | ||
1010 | |||
1011 | # | ||
878 | # USB support | 1012 | # USB support |
879 | # | 1013 | # |
880 | CONFIG_USB_ARCH_HAS_HCD=y | 1014 | CONFIG_USB_ARCH_HAS_HCD=y |
881 | CONFIG_USB_ARCH_HAS_OHCI=y | 1015 | CONFIG_USB_ARCH_HAS_OHCI=y |
882 | CONFIG_USB_ARCH_HAS_EHCI=y | 1016 | CONFIG_USB_ARCH_HAS_EHCI=y |
883 | # CONFIG_USB is not set | 1017 | CONFIG_USB=m |
1018 | # CONFIG_USB_DEBUG is not set | ||
1019 | |||
1020 | # | ||
1021 | # Miscellaneous USB options | ||
1022 | # | ||
1023 | CONFIG_USB_DEVICEFS=y | ||
1024 | # CONFIG_USB_BANDWIDTH is not set | ||
1025 | # CONFIG_USB_DYNAMIC_MINORS is not set | ||
1026 | # CONFIG_USB_MULTITHREAD_PROBE is not set | ||
1027 | # CONFIG_USB_OTG is not set | ||
1028 | |||
1029 | # | ||
1030 | # USB Host Controller Drivers | ||
1031 | # | ||
1032 | CONFIG_USB_EHCI_HCD=m | ||
1033 | # CONFIG_USB_EHCI_SPLIT_ISO is not set | ||
1034 | # CONFIG_USB_EHCI_ROOT_HUB_TT is not set | ||
1035 | # CONFIG_USB_EHCI_TT_NEWSCHED is not set | ||
1036 | # CONFIG_USB_ISP116X_HCD is not set | ||
1037 | CONFIG_USB_OHCI_HCD=m | ||
1038 | # CONFIG_USB_OHCI_BIG_ENDIAN is not set | ||
1039 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y | ||
1040 | # CONFIG_USB_UHCI_HCD is not set | ||
1041 | # CONFIG_USB_SL811_HCD is not set | ||
1042 | |||
1043 | # | ||
1044 | # USB Device Class drivers | ||
1045 | # | ||
1046 | # CONFIG_USB_ACM is not set | ||
1047 | # CONFIG_USB_PRINTER is not set | ||
884 | 1048 | ||
885 | # | 1049 | # |
886 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | 1050 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' |
887 | # | 1051 | # |
888 | 1052 | ||
889 | # | 1053 | # |
1054 | # may also be needed; see USB_STORAGE Help for more information | ||
1055 | # | ||
1056 | CONFIG_USB_STORAGE=m | ||
1057 | # CONFIG_USB_STORAGE_DEBUG is not set | ||
1058 | # CONFIG_USB_STORAGE_DATAFAB is not set | ||
1059 | # CONFIG_USB_STORAGE_FREECOM is not set | ||
1060 | # CONFIG_USB_STORAGE_ISD200 is not set | ||
1061 | # CONFIG_USB_STORAGE_DPCM is not set | ||
1062 | # CONFIG_USB_STORAGE_USBAT is not set | ||
1063 | # CONFIG_USB_STORAGE_SDDR09 is not set | ||
1064 | # CONFIG_USB_STORAGE_SDDR55 is not set | ||
1065 | # CONFIG_USB_STORAGE_JUMPSHOT is not set | ||
1066 | # CONFIG_USB_STORAGE_ALAUDA is not set | ||
1067 | # CONFIG_USB_STORAGE_KARMA is not set | ||
1068 | # CONFIG_USB_LIBUSUAL is not set | ||
1069 | |||
1070 | # | ||
1071 | # USB Input Devices | ||
1072 | # | ||
1073 | # CONFIG_USB_HID is not set | ||
1074 | |||
1075 | # | ||
1076 | # USB HID Boot Protocol drivers | ||
1077 | # | ||
1078 | # CONFIG_USB_KBD is not set | ||
1079 | # CONFIG_USB_MOUSE is not set | ||
1080 | # CONFIG_USB_AIPTEK is not set | ||
1081 | # CONFIG_USB_WACOM is not set | ||
1082 | # CONFIG_USB_ACECAD is not set | ||
1083 | # CONFIG_USB_KBTAB is not set | ||
1084 | # CONFIG_USB_POWERMATE is not set | ||
1085 | # CONFIG_USB_TOUCHSCREEN is not set | ||
1086 | # CONFIG_USB_YEALINK is not set | ||
1087 | # CONFIG_USB_XPAD is not set | ||
1088 | # CONFIG_USB_ATI_REMOTE is not set | ||
1089 | # CONFIG_USB_ATI_REMOTE2 is not set | ||
1090 | # CONFIG_USB_KEYSPAN_REMOTE is not set | ||
1091 | # CONFIG_USB_APPLETOUCH is not set | ||
1092 | |||
1093 | # | ||
1094 | # USB Imaging devices | ||
1095 | # | ||
1096 | # CONFIG_USB_MDC800 is not set | ||
1097 | # CONFIG_USB_MICROTEK is not set | ||
1098 | |||
1099 | # | ||
1100 | # USB Network Adapters | ||
1101 | # | ||
1102 | # CONFIG_USB_CATC is not set | ||
1103 | # CONFIG_USB_KAWETH is not set | ||
1104 | # CONFIG_USB_PEGASUS is not set | ||
1105 | # CONFIG_USB_RTL8150 is not set | ||
1106 | # CONFIG_USB_USBNET_MII is not set | ||
1107 | # CONFIG_USB_USBNET is not set | ||
1108 | CONFIG_USB_MON=y | ||
1109 | |||
1110 | # | ||
1111 | # USB port drivers | ||
1112 | # | ||
1113 | |||
1114 | # | ||
1115 | # USB Serial Converter support | ||
1116 | # | ||
1117 | # CONFIG_USB_SERIAL is not set | ||
1118 | |||
1119 | # | ||
1120 | # USB Miscellaneous drivers | ||
1121 | # | ||
1122 | # CONFIG_USB_EMI62 is not set | ||
1123 | # CONFIG_USB_EMI26 is not set | ||
1124 | # CONFIG_USB_ADUTUX is not set | ||
1125 | # CONFIG_USB_AUERSWALD is not set | ||
1126 | # CONFIG_USB_RIO500 is not set | ||
1127 | # CONFIG_USB_LEGOTOWER is not set | ||
1128 | # CONFIG_USB_LCD is not set | ||
1129 | # CONFIG_USB_LED is not set | ||
1130 | # CONFIG_USB_CYPRESS_CY7C63 is not set | ||
1131 | # CONFIG_USB_CYTHERM is not set | ||
1132 | # CONFIG_USB_PHIDGET is not set | ||
1133 | # CONFIG_USB_IDMOUSE is not set | ||
1134 | # CONFIG_USB_FTDI_ELAN is not set | ||
1135 | # CONFIG_USB_APPLEDISPLAY is not set | ||
1136 | # CONFIG_USB_SISUSBVGA is not set | ||
1137 | # CONFIG_USB_LD is not set | ||
1138 | # CONFIG_USB_TRANCEVIBRATOR is not set | ||
1139 | # CONFIG_USB_TEST is not set | ||
1140 | |||
1141 | # | ||
1142 | # USB DSL modem support | ||
1143 | # | ||
1144 | |||
1145 | # | ||
890 | # USB Gadget Support | 1146 | # USB Gadget Support |
891 | # | 1147 | # |
892 | # CONFIG_USB_GADGET is not set | 1148 | # CONFIG_USB_GADGET is not set |
@@ -912,7 +1168,7 @@ CONFIG_USB_ARCH_HAS_EHCI=y | |||
912 | # | 1168 | # |
913 | # InfiniBand support | 1169 | # InfiniBand support |
914 | # | 1170 | # |
915 | CONFIG_INFINIBAND=y | 1171 | CONFIG_INFINIBAND=m |
916 | CONFIG_INFINIBAND_USER_MAD=m | 1172 | CONFIG_INFINIBAND_USER_MAD=m |
917 | CONFIG_INFINIBAND_USER_ACCESS=m | 1173 | CONFIG_INFINIBAND_USER_ACCESS=m |
918 | CONFIG_INFINIBAND_ADDR_TRANS=y | 1174 | CONFIG_INFINIBAND_ADDR_TRANS=y |
@@ -922,6 +1178,8 @@ CONFIG_INFINIBAND_MTHCA_DEBUG=y | |||
922 | CONFIG_INFINIBAND_IPOIB=m | 1178 | CONFIG_INFINIBAND_IPOIB=m |
923 | CONFIG_INFINIBAND_IPOIB_DEBUG=y | 1179 | CONFIG_INFINIBAND_IPOIB_DEBUG=y |
924 | CONFIG_INFINIBAND_IPOIB_DEBUG_DATA=y | 1180 | CONFIG_INFINIBAND_IPOIB_DEBUG_DATA=y |
1181 | # CONFIG_INFINIBAND_SRP is not set | ||
1182 | # CONFIG_INFINIBAND_ISER is not set | ||
925 | 1183 | ||
926 | # | 1184 | # |
927 | # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) | 1185 | # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) |
@@ -946,6 +1204,10 @@ CONFIG_INFINIBAND_IPOIB_DEBUG_DATA=y | |||
946 | # | 1204 | # |
947 | 1205 | ||
948 | # | 1206 | # |
1207 | # Virtualization | ||
1208 | # | ||
1209 | |||
1210 | # | ||
949 | # File systems | 1211 | # File systems |
950 | # | 1212 | # |
951 | CONFIG_EXT2_FS=y | 1213 | CONFIG_EXT2_FS=y |
@@ -1028,23 +1290,18 @@ CONFIG_RAMFS=y | |||
1028 | # | 1290 | # |
1029 | # Network File Systems | 1291 | # Network File Systems |
1030 | # | 1292 | # |
1031 | CONFIG_NFS_FS=m | 1293 | CONFIG_NFS_FS=y |
1032 | CONFIG_NFS_V3=y | 1294 | CONFIG_NFS_V3=y |
1033 | CONFIG_NFS_V3_ACL=y | 1295 | CONFIG_NFS_V3_ACL=y |
1034 | # CONFIG_NFS_V4 is not set | 1296 | # CONFIG_NFS_V4 is not set |
1035 | # CONFIG_NFS_DIRECTIO is not set | 1297 | # CONFIG_NFS_DIRECTIO is not set |
1036 | CONFIG_NFSD=m | 1298 | # CONFIG_NFSD is not set |
1037 | CONFIG_NFSD_V2_ACL=y | 1299 | CONFIG_ROOT_NFS=y |
1038 | CONFIG_NFSD_V3=y | 1300 | CONFIG_LOCKD=y |
1039 | CONFIG_NFSD_V3_ACL=y | ||
1040 | # CONFIG_NFSD_V4 is not set | ||
1041 | CONFIG_NFSD_TCP=y | ||
1042 | CONFIG_LOCKD=m | ||
1043 | CONFIG_LOCKD_V4=y | 1301 | CONFIG_LOCKD_V4=y |
1044 | CONFIG_EXPORTFS=m | 1302 | CONFIG_NFS_ACL_SUPPORT=y |
1045 | CONFIG_NFS_ACL_SUPPORT=m | ||
1046 | CONFIG_NFS_COMMON=y | 1303 | CONFIG_NFS_COMMON=y |
1047 | CONFIG_SUNRPC=m | 1304 | CONFIG_SUNRPC=y |
1048 | # CONFIG_RPCSEC_GSS_KRB5 is not set | 1305 | # CONFIG_RPCSEC_GSS_KRB5 is not set |
1049 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | 1306 | # CONFIG_RPCSEC_GSS_SPKM3 is not set |
1050 | # CONFIG_SMB_FS is not set | 1307 | # CONFIG_SMB_FS is not set |
@@ -1120,8 +1377,14 @@ CONFIG_NLS_ISO8859_15=m | |||
1120 | # CONFIG_NLS_UTF8 is not set | 1377 | # CONFIG_NLS_UTF8 is not set |
1121 | 1378 | ||
1122 | # | 1379 | # |
1380 | # Distributed Lock Manager | ||
1381 | # | ||
1382 | # CONFIG_DLM is not set | ||
1383 | |||
1384 | # | ||
1123 | # Library routines | 1385 | # Library routines |
1124 | # | 1386 | # |
1387 | CONFIG_BITREVERSE=y | ||
1125 | # CONFIG_CRC_CCITT is not set | 1388 | # CONFIG_CRC_CCITT is not set |
1126 | # CONFIG_CRC16 is not set | 1389 | # CONFIG_CRC16 is not set |
1127 | CONFIG_CRC32=y | 1390 | CONFIG_CRC32=y |
@@ -1130,7 +1393,10 @@ CONFIG_ZLIB_INFLATE=m | |||
1130 | CONFIG_ZLIB_DEFLATE=m | 1393 | CONFIG_ZLIB_DEFLATE=m |
1131 | CONFIG_TEXTSEARCH=y | 1394 | CONFIG_TEXTSEARCH=y |
1132 | CONFIG_TEXTSEARCH_KMP=m | 1395 | CONFIG_TEXTSEARCH_KMP=m |
1396 | CONFIG_TEXTSEARCH_BM=m | ||
1397 | CONFIG_TEXTSEARCH_FSM=m | ||
1133 | CONFIG_PLIST=y | 1398 | CONFIG_PLIST=y |
1399 | CONFIG_IOMAP_COPY=y | ||
1134 | 1400 | ||
1135 | # | 1401 | # |
1136 | # Instrumentation Support | 1402 | # Instrumentation Support |
@@ -1146,6 +1412,8 @@ CONFIG_OPROFILE=y | |||
1146 | # CONFIG_ENABLE_MUST_CHECK is not set | 1412 | # CONFIG_ENABLE_MUST_CHECK is not set |
1147 | CONFIG_MAGIC_SYSRQ=y | 1413 | CONFIG_MAGIC_SYSRQ=y |
1148 | # CONFIG_UNUSED_SYMBOLS is not set | 1414 | # CONFIG_UNUSED_SYMBOLS is not set |
1415 | CONFIG_DEBUG_FS=y | ||
1416 | # CONFIG_HEADERS_CHECK is not set | ||
1149 | CONFIG_DEBUG_KERNEL=y | 1417 | CONFIG_DEBUG_KERNEL=y |
1150 | CONFIG_LOG_BUF_SHIFT=15 | 1418 | CONFIG_LOG_BUF_SHIFT=15 |
1151 | CONFIG_DETECT_SOFTLOCKUP=y | 1419 | CONFIG_DETECT_SOFTLOCKUP=y |
@@ -1159,12 +1427,11 @@ CONFIG_DEBUG_MUTEXES=y | |||
1159 | CONFIG_DEBUG_SPINLOCK_SLEEP=y | 1427 | CONFIG_DEBUG_SPINLOCK_SLEEP=y |
1160 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set | 1428 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set |
1161 | # CONFIG_DEBUG_KOBJECT is not set | 1429 | # CONFIG_DEBUG_KOBJECT is not set |
1430 | CONFIG_DEBUG_BUGVERBOSE=y | ||
1162 | # CONFIG_DEBUG_INFO is not set | 1431 | # CONFIG_DEBUG_INFO is not set |
1163 | CONFIG_DEBUG_FS=y | ||
1164 | # CONFIG_DEBUG_VM is not set | 1432 | # CONFIG_DEBUG_VM is not set |
1165 | # CONFIG_DEBUG_LIST is not set | 1433 | # CONFIG_DEBUG_LIST is not set |
1166 | # CONFIG_FORCED_INLINING is not set | 1434 | # CONFIG_FORCED_INLINING is not set |
1167 | # CONFIG_HEADERS_CHECK is not set | ||
1168 | # CONFIG_RCU_TORTURE_TEST is not set | 1435 | # CONFIG_RCU_TORTURE_TEST is not set |
1169 | # CONFIG_DEBUG_STACKOVERFLOW is not set | 1436 | # CONFIG_DEBUG_STACKOVERFLOW is not set |
1170 | # CONFIG_DEBUG_STACK_USAGE is not set | 1437 | # CONFIG_DEBUG_STACK_USAGE is not set |
@@ -1191,6 +1458,7 @@ CONFIG_CRYPTO_BLKCIPHER=m | |||
1191 | CONFIG_CRYPTO_HASH=y | 1458 | CONFIG_CRYPTO_HASH=y |
1192 | CONFIG_CRYPTO_MANAGER=y | 1459 | CONFIG_CRYPTO_MANAGER=y |
1193 | CONFIG_CRYPTO_HMAC=y | 1460 | CONFIG_CRYPTO_HMAC=y |
1461 | # CONFIG_CRYPTO_XCBC is not set | ||
1194 | # CONFIG_CRYPTO_NULL is not set | 1462 | # CONFIG_CRYPTO_NULL is not set |
1195 | # CONFIG_CRYPTO_MD4 is not set | 1463 | # CONFIG_CRYPTO_MD4 is not set |
1196 | CONFIG_CRYPTO_MD5=m | 1464 | CONFIG_CRYPTO_MD5=m |
@@ -1199,8 +1467,10 @@ CONFIG_CRYPTO_SHA1=m | |||
1199 | # CONFIG_CRYPTO_SHA512 is not set | 1467 | # CONFIG_CRYPTO_SHA512 is not set |
1200 | # CONFIG_CRYPTO_WP512 is not set | 1468 | # CONFIG_CRYPTO_WP512 is not set |
1201 | # CONFIG_CRYPTO_TGR192 is not set | 1469 | # CONFIG_CRYPTO_TGR192 is not set |
1470 | # CONFIG_CRYPTO_GF128MUL is not set | ||
1202 | CONFIG_CRYPTO_ECB=m | 1471 | CONFIG_CRYPTO_ECB=m |
1203 | CONFIG_CRYPTO_CBC=m | 1472 | CONFIG_CRYPTO_CBC=m |
1473 | # CONFIG_CRYPTO_LRW is not set | ||
1204 | CONFIG_CRYPTO_DES=m | 1474 | CONFIG_CRYPTO_DES=m |
1205 | # CONFIG_CRYPTO_BLOWFISH is not set | 1475 | # CONFIG_CRYPTO_BLOWFISH is not set |
1206 | # CONFIG_CRYPTO_TWOFISH is not set | 1476 | # CONFIG_CRYPTO_TWOFISH is not set |
diff --git a/arch/powerpc/kernel/of_platform.c b/arch/powerpc/kernel/of_platform.c index 3002ea3a61a2..b7345176b399 100644 --- a/arch/powerpc/kernel/of_platform.c +++ b/arch/powerpc/kernel/of_platform.c | |||
@@ -50,6 +50,7 @@ static struct of_device_id of_default_bus_ids[] = { | |||
50 | { .type = "plb5", }, | 50 | { .type = "plb5", }, |
51 | { .type = "plb4", }, | 51 | { .type = "plb4", }, |
52 | { .type = "opb", }, | 52 | { .type = "opb", }, |
53 | { .type = "ebc", }, | ||
53 | {}, | 54 | {}, |
54 | }; | 55 | }; |
55 | 56 | ||
diff --git a/arch/powerpc/kernel/pci_64.c b/arch/powerpc/kernel/pci_64.c index a6b7692c7269..73c59ec49120 100644 --- a/arch/powerpc/kernel/pci_64.c +++ b/arch/powerpc/kernel/pci_64.c | |||
@@ -360,6 +360,7 @@ struct pci_dev *of_create_pci_dev(struct device_node *node, | |||
360 | DBG(" class: 0x%x\n", dev->class); | 360 | DBG(" class: 0x%x\n", dev->class); |
361 | 361 | ||
362 | dev->current_state = 4; /* unknown power state */ | 362 | dev->current_state = 4; /* unknown power state */ |
363 | dev->error_state = pci_channel_io_normal; | ||
363 | 364 | ||
364 | if (!strcmp(type, "pci") || !strcmp(type, "pciex")) { | 365 | if (!strcmp(type, "pci") || !strcmp(type, "pciex")) { |
365 | /* a PCI-PCI bridge */ | 366 | /* a PCI-PCI bridge */ |
diff --git a/arch/powerpc/kernel/prom_parse.c b/arch/powerpc/kernel/prom_parse.c index 0dfbe1cd28eb..12c51e4ad2b4 100644 --- a/arch/powerpc/kernel/prom_parse.c +++ b/arch/powerpc/kernel/prom_parse.c | |||
@@ -920,9 +920,20 @@ static int of_irq_map_oldworld(struct device_node *device, int index, | |||
920 | 920 | ||
921 | /* | 921 | /* |
922 | * Old machines just have a list of interrupt numbers | 922 | * Old machines just have a list of interrupt numbers |
923 | * and no interrupt-controller nodes. | 923 | * and no interrupt-controller nodes. We also have dodgy |
924 | * cases where the APPL,interrupts property is completely | ||
925 | * missing behind pci-pci bridges and we have to get it | ||
926 | * from the parent (the bridge itself, as apple just wired | ||
927 | * everything together on these) | ||
924 | */ | 928 | */ |
925 | ints = get_property(device, "AAPL,interrupts", &intlen); | 929 | while (device) { |
930 | ints = get_property(device, "AAPL,interrupts", &intlen); | ||
931 | if (ints != NULL) | ||
932 | break; | ||
933 | device = device->parent; | ||
934 | if (device && strcmp(device->type, "pci") != 0) | ||
935 | break; | ||
936 | } | ||
926 | if (ints == NULL) | 937 | if (ints == NULL) |
927 | return -EINVAL; | 938 | return -EINVAL; |
928 | intlen /= sizeof(u32); | 939 | intlen /= sizeof(u32); |
diff --git a/arch/powerpc/kernel/signal_32.c b/arch/powerpc/kernel/signal_32.c index e4ebe1a6228e..6b405a3f43f9 100644 --- a/arch/powerpc/kernel/signal_32.c +++ b/arch/powerpc/kernel/signal_32.c | |||
@@ -835,11 +835,21 @@ long sys_swapcontext(struct ucontext __user *old_ctx, | |||
835 | return -EINVAL; | 835 | return -EINVAL; |
836 | 836 | ||
837 | if (old_ctx != NULL) { | 837 | if (old_ctx != NULL) { |
838 | struct mcontext __user *mctx; | ||
839 | |||
840 | /* | ||
841 | * old_ctx might not be 16-byte aligned, in which | ||
842 | * case old_ctx->uc_mcontext won't be either. | ||
843 | * Because we have the old_ctx->uc_pad2 field | ||
844 | * before old_ctx->uc_mcontext, we need to round down | ||
845 | * from &old_ctx->uc_mcontext to a 16-byte boundary. | ||
846 | */ | ||
847 | mctx = (struct mcontext __user *) | ||
848 | ((unsigned long) &old_ctx->uc_mcontext & ~0xfUL); | ||
838 | if (!access_ok(VERIFY_WRITE, old_ctx, sizeof(*old_ctx)) | 849 | if (!access_ok(VERIFY_WRITE, old_ctx, sizeof(*old_ctx)) |
839 | || save_user_regs(regs, &old_ctx->uc_mcontext, 0) | 850 | || save_user_regs(regs, mctx, 0) |
840 | || put_sigset_t(&old_ctx->uc_sigmask, ¤t->blocked) | 851 | || put_sigset_t(&old_ctx->uc_sigmask, ¤t->blocked) |
841 | || __put_user(to_user_ptr(&old_ctx->uc_mcontext), | 852 | || __put_user(to_user_ptr(mctx), &old_ctx->uc_regs)) |
842 | &old_ctx->uc_regs)) | ||
843 | return -EFAULT; | 853 | return -EFAULT; |
844 | } | 854 | } |
845 | if (new_ctx == NULL) | 855 | if (new_ctx == NULL) |
diff --git a/arch/powerpc/platforms/Makefile b/arch/powerpc/platforms/Makefile index 44d95eaf22e6..507d1b98f270 100644 --- a/arch/powerpc/platforms/Makefile +++ b/arch/powerpc/platforms/Makefile | |||
@@ -5,9 +5,9 @@ ifeq ($(CONFIG_PPC64),y) | |||
5 | obj-$(CONFIG_PPC_PMAC) += powermac/ | 5 | obj-$(CONFIG_PPC_PMAC) += powermac/ |
6 | endif | 6 | endif |
7 | endif | 7 | endif |
8 | obj-$(CONFIG_PPC_MPC52xx) += 52xx/ | ||
8 | obj-$(CONFIG_PPC_CHRP) += chrp/ | 9 | obj-$(CONFIG_PPC_CHRP) += chrp/ |
9 | obj-$(CONFIG_4xx) += 4xx/ | 10 | obj-$(CONFIG_4xx) += 4xx/ |
10 | obj-$(CONFIG_PPC_MPC52xx) += 52xx/ | ||
11 | obj-$(CONFIG_PPC_83xx) += 83xx/ | 11 | obj-$(CONFIG_PPC_83xx) += 83xx/ |
12 | obj-$(CONFIG_PPC_85xx) += 85xx/ | 12 | obj-$(CONFIG_PPC_85xx) += 85xx/ |
13 | obj-$(CONFIG_PPC_86xx) += 86xx/ | 13 | obj-$(CONFIG_PPC_86xx) += 86xx/ |
diff --git a/arch/powerpc/platforms/cell/io-workarounds.c b/arch/powerpc/platforms/cell/io-workarounds.c index 580d42595912..7c73128305ec 100644 --- a/arch/powerpc/platforms/cell/io-workarounds.c +++ b/arch/powerpc/platforms/cell/io-workarounds.c | |||
@@ -37,7 +37,7 @@ | |||
37 | */ | 37 | */ |
38 | #define SPIDER_DISABLE_PREFETCH | 38 | #define SPIDER_DISABLE_PREFETCH |
39 | 39 | ||
40 | #define MAX_SPIDERS 2 | 40 | #define MAX_SPIDERS 3 |
41 | 41 | ||
42 | static struct spider_pci_bus { | 42 | static struct spider_pci_bus { |
43 | void __iomem *regs; | 43 | void __iomem *regs; |
diff --git a/arch/powerpc/platforms/cell/spu_priv1_mmio.c b/arch/powerpc/platforms/cell/spu_priv1_mmio.c index a5de0430c56d..910a926b61a2 100644 --- a/arch/powerpc/platforms/cell/spu_priv1_mmio.c +++ b/arch/powerpc/platforms/cell/spu_priv1_mmio.c | |||
@@ -37,8 +37,9 @@ | |||
37 | #include "interrupt.h" | 37 | #include "interrupt.h" |
38 | #include "spu_priv1_mmio.h" | 38 | #include "spu_priv1_mmio.h" |
39 | 39 | ||
40 | static DEFINE_MUTEX(add_spumem_mutex); | ||
41 | |||
40 | struct spu_pdata { | 42 | struct spu_pdata { |
41 | int nid; | ||
42 | struct device_node *devnode; | 43 | struct device_node *devnode; |
43 | struct spu_priv1 __iomem *priv1; | 44 | struct spu_priv1 __iomem *priv1; |
44 | }; | 45 | }; |
@@ -56,20 +57,9 @@ struct device_node *spu_devnode(struct spu *spu) | |||
56 | 57 | ||
57 | EXPORT_SYMBOL_GPL(spu_devnode); | 58 | EXPORT_SYMBOL_GPL(spu_devnode); |
58 | 59 | ||
59 | static int __init find_spu_node_id(struct device_node *spe) | ||
60 | { | ||
61 | const unsigned int *id; | ||
62 | struct device_node *cpu; | ||
63 | cpu = spe->parent->parent; | ||
64 | id = get_property(cpu, "node-id", NULL); | ||
65 | return id ? *id : 0; | ||
66 | } | ||
67 | |||
68 | static int __init cell_spuprop_present(struct spu *spu, struct device_node *spe, | 60 | static int __init cell_spuprop_present(struct spu *spu, struct device_node *spe, |
69 | const char *prop) | 61 | const char *prop) |
70 | { | 62 | { |
71 | static DEFINE_MUTEX(add_spumem_mutex); | ||
72 | |||
73 | const struct address_prop { | 63 | const struct address_prop { |
74 | unsigned long address; | 64 | unsigned long address; |
75 | unsigned int len; | 65 | unsigned int len; |
@@ -87,7 +77,7 @@ static int __init cell_spuprop_present(struct spu *spu, struct device_node *spe, | |||
87 | start_pfn = p->address >> PAGE_SHIFT; | 77 | start_pfn = p->address >> PAGE_SHIFT; |
88 | nr_pages = ((unsigned long)p->len + PAGE_SIZE - 1) >> PAGE_SHIFT; | 78 | nr_pages = ((unsigned long)p->len + PAGE_SIZE - 1) >> PAGE_SHIFT; |
89 | 79 | ||
90 | pgdata = NODE_DATA(spu_get_pdata(spu)->nid); | 80 | pgdata = NODE_DATA(spu->node); |
91 | zone = pgdata->node_zones; | 81 | zone = pgdata->node_zones; |
92 | 82 | ||
93 | /* XXX rethink locking here */ | 83 | /* XXX rethink locking here */ |
@@ -140,6 +130,7 @@ static int __init spu_map_interrupts_old(struct spu *spu, | |||
140 | { | 130 | { |
141 | unsigned int isrc; | 131 | unsigned int isrc; |
142 | const u32 *tmp; | 132 | const u32 *tmp; |
133 | int nid; | ||
143 | 134 | ||
144 | /* Get the interrupt source unit from the device-tree */ | 135 | /* Get the interrupt source unit from the device-tree */ |
145 | tmp = get_property(np, "isrc", NULL); | 136 | tmp = get_property(np, "isrc", NULL); |
@@ -147,8 +138,15 @@ static int __init spu_map_interrupts_old(struct spu *spu, | |||
147 | return -ENODEV; | 138 | return -ENODEV; |
148 | isrc = tmp[0]; | 139 | isrc = tmp[0]; |
149 | 140 | ||
141 | tmp = get_property(np->parent->parent, "node-id", NULL); | ||
142 | if (!tmp) { | ||
143 | printk(KERN_WARNING "%s: can't find node-id\n", __FUNCTION__); | ||
144 | nid = spu->node; | ||
145 | } else | ||
146 | nid = tmp[0]; | ||
147 | |||
150 | /* Add the node number */ | 148 | /* Add the node number */ |
151 | isrc |= spu->node << IIC_IRQ_NODE_SHIFT; | 149 | isrc |= nid << IIC_IRQ_NODE_SHIFT; |
152 | 150 | ||
153 | /* Now map interrupts of all 3 classes */ | 151 | /* Now map interrupts of all 3 classes */ |
154 | spu->irqs[0] = irq_create_mapping(NULL, IIC_IRQ_CLASS_0 | isrc); | 152 | spu->irqs[0] = irq_create_mapping(NULL, IIC_IRQ_CLASS_0 | isrc); |
@@ -237,70 +235,88 @@ err: | |||
237 | return ret; | 235 | return ret; |
238 | } | 236 | } |
239 | 237 | ||
240 | static int spu_map_resource(struct device_node *node, int nr, | 238 | static int spu_map_resource(struct spu *spu, int nr, |
241 | void __iomem** virt, unsigned long *phys) | 239 | void __iomem** virt, unsigned long *phys) |
242 | { | 240 | { |
241 | struct device_node *np = spu_get_pdata(spu)->devnode; | ||
242 | unsigned long start_pfn, nr_pages; | ||
243 | struct pglist_data *pgdata; | ||
244 | struct zone *zone; | ||
243 | struct resource resource = { }; | 245 | struct resource resource = { }; |
246 | unsigned long len; | ||
244 | int ret; | 247 | int ret; |
245 | 248 | ||
246 | ret = of_address_to_resource(node, nr, &resource); | 249 | ret = of_address_to_resource(np, nr, &resource); |
247 | if (ret) | 250 | if (ret) |
248 | goto out; | 251 | goto out; |
249 | 252 | ||
250 | if (phys) | 253 | if (phys) |
251 | *phys = resource.start; | 254 | *phys = resource.start; |
252 | *virt = ioremap(resource.start, resource.end - resource.start); | 255 | len = resource.end - resource.start + 1; |
256 | *virt = ioremap(resource.start, len); | ||
253 | if (!*virt) | 257 | if (!*virt) |
254 | ret = -EINVAL; | 258 | ret = -EINVAL; |
255 | 259 | ||
260 | start_pfn = resource.start >> PAGE_SHIFT; | ||
261 | nr_pages = (len + PAGE_SIZE - 1) >> PAGE_SHIFT; | ||
262 | |||
263 | pgdata = NODE_DATA(spu->node); | ||
264 | zone = pgdata->node_zones; | ||
265 | |||
266 | /* XXX rethink locking here */ | ||
267 | mutex_lock(&add_spumem_mutex); | ||
268 | ret = __add_pages(zone, start_pfn, nr_pages); | ||
269 | mutex_unlock(&add_spumem_mutex); | ||
270 | |||
256 | out: | 271 | out: |
257 | return ret; | 272 | return ret; |
258 | } | 273 | } |
259 | 274 | ||
260 | static int __init spu_map_device(struct spu *spu, struct device_node *node) | 275 | static int __init spu_map_device(struct spu *spu) |
261 | { | 276 | { |
277 | struct device_node *np = spu_get_pdata(spu)->devnode; | ||
262 | int ret = -ENODEV; | 278 | int ret = -ENODEV; |
263 | spu->name = get_property(node, "name", NULL); | 279 | |
280 | spu->name = get_property(np, "name", NULL); | ||
264 | if (!spu->name) | 281 | if (!spu->name) |
265 | goto out; | 282 | goto out; |
266 | 283 | ||
267 | ret = spu_map_resource(node, 0, (void __iomem**)&spu->local_store, | 284 | ret = spu_map_resource(spu, 0, (void __iomem**)&spu->local_store, |
268 | &spu->local_store_phys); | 285 | &spu->local_store_phys); |
269 | if (ret) { | 286 | if (ret) { |
270 | pr_debug("spu_new: failed to map %s resource 0\n", | 287 | pr_debug("spu_new: failed to map %s resource 0\n", |
271 | node->full_name); | 288 | np->full_name); |
272 | goto out; | 289 | goto out; |
273 | } | 290 | } |
274 | ret = spu_map_resource(node, 1, (void __iomem**)&spu->problem, | 291 | ret = spu_map_resource(spu, 1, (void __iomem**)&spu->problem, |
275 | &spu->problem_phys); | 292 | &spu->problem_phys); |
276 | if (ret) { | 293 | if (ret) { |
277 | pr_debug("spu_new: failed to map %s resource 1\n", | 294 | pr_debug("spu_new: failed to map %s resource 1\n", |
278 | node->full_name); | 295 | np->full_name); |
279 | goto out_unmap; | 296 | goto out_unmap; |
280 | } | 297 | } |
281 | ret = spu_map_resource(node, 2, (void __iomem**)&spu->priv2, | 298 | ret = spu_map_resource(spu, 2, (void __iomem**)&spu->priv2, NULL); |
282 | NULL); | ||
283 | if (ret) { | 299 | if (ret) { |
284 | pr_debug("spu_new: failed to map %s resource 2\n", | 300 | pr_debug("spu_new: failed to map %s resource 2\n", |
285 | node->full_name); | 301 | np->full_name); |
286 | goto out_unmap; | 302 | goto out_unmap; |
287 | } | 303 | } |
288 | if (!firmware_has_feature(FW_FEATURE_LPAR)) | 304 | if (!firmware_has_feature(FW_FEATURE_LPAR)) |
289 | ret = spu_map_resource(node, 3, | 305 | ret = spu_map_resource(spu, 3, |
290 | (void __iomem**)&spu_get_pdata(spu)->priv1, NULL); | 306 | (void __iomem**)&spu_get_pdata(spu)->priv1, NULL); |
291 | if (ret) { | 307 | if (ret) { |
292 | pr_debug("spu_new: failed to map %s resource 3\n", | 308 | pr_debug("spu_new: failed to map %s resource 3\n", |
293 | node->full_name); | 309 | np->full_name); |
294 | goto out_unmap; | 310 | goto out_unmap; |
295 | } | 311 | } |
296 | pr_debug("spu_new: %s maps:\n", node->full_name); | 312 | pr_debug("spu_new: %s maps:\n", np->full_name); |
297 | pr_debug(" local store : 0x%016lx -> 0x%p\n", | 313 | pr_debug(" local store : 0x%016lx -> 0x%p\n", |
298 | spu->local_store_phys, spu->local_store); | 314 | spu->local_store_phys, spu->local_store); |
299 | pr_debug(" problem state : 0x%016lx -> 0x%p\n", | 315 | pr_debug(" problem state : 0x%016lx -> 0x%p\n", |
300 | spu->problem_phys, spu->problem); | 316 | spu->problem_phys, spu->problem); |
301 | pr_debug(" priv2 : 0x%p\n", spu->priv2); | 317 | pr_debug(" priv2 : 0x%p\n", spu->priv2); |
302 | pr_debug(" priv1 : 0x%p\n", | 318 | pr_debug(" priv1 : 0x%p\n", |
303 | spu_get_pdata(spu)->priv1); | 319 | spu_get_pdata(spu)->priv1); |
304 | 320 | ||
305 | return 0; | 321 | return 0; |
306 | 322 | ||
@@ -340,8 +356,9 @@ static int __init of_create_spu(struct spu *spu, void *data) | |||
340 | ret = -ENOMEM; | 356 | ret = -ENOMEM; |
341 | goto out; | 357 | goto out; |
342 | } | 358 | } |
359 | spu_get_pdata(spu)->devnode = of_node_get(spe); | ||
343 | 360 | ||
344 | spu->node = find_spu_node_id(spe); | 361 | spu->node = of_node_to_nid(spe); |
345 | if (spu->node >= MAX_NUMNODES) { | 362 | if (spu->node >= MAX_NUMNODES) { |
346 | printk(KERN_WARNING "SPE %s on node %d ignored," | 363 | printk(KERN_WARNING "SPE %s on node %d ignored," |
347 | " node number too big\n", spe->full_name, spu->node); | 364 | " node number too big\n", spe->full_name, spu->node); |
@@ -350,11 +367,7 @@ static int __init of_create_spu(struct spu *spu, void *data) | |||
350 | goto out_free; | 367 | goto out_free; |
351 | } | 368 | } |
352 | 369 | ||
353 | spu_get_pdata(spu)->nid = of_node_to_nid(spe); | 370 | ret = spu_map_device(spu); |
354 | if (spu_get_pdata(spu)->nid == -1) | ||
355 | spu_get_pdata(spu)->nid = 0; | ||
356 | |||
357 | ret = spu_map_device(spu, spe); | ||
358 | /* try old method */ | 371 | /* try old method */ |
359 | if (ret) | 372 | if (ret) |
360 | ret = spu_map_device_old(spu, spe); | 373 | ret = spu_map_device_old(spu, spe); |
@@ -367,8 +380,6 @@ static int __init of_create_spu(struct spu *spu, void *data) | |||
367 | if (ret) | 380 | if (ret) |
368 | goto out_unmap; | 381 | goto out_unmap; |
369 | 382 | ||
370 | spu_get_pdata(spu)->devnode = of_node_get(spe); | ||
371 | |||
372 | pr_debug(KERN_DEBUG "Using SPE %s %p %p %p %p %d\n", spu->name, | 383 | pr_debug(KERN_DEBUG "Using SPE %s %p %p %p %p %d\n", spu->name, |
373 | spu->local_store, spu->problem, spu_get_pdata(spu)->priv1, | 384 | spu->local_store, spu->problem, spu_get_pdata(spu)->priv1, |
374 | spu->priv2, spu->number); | 385 | spu->priv2, spu->number); |
diff --git a/arch/powerpc/platforms/iseries/Kconfig b/arch/powerpc/platforms/iseries/Kconfig index 887b68804e6d..54e6b3b6f261 100644 --- a/arch/powerpc/platforms/iseries/Kconfig +++ b/arch/powerpc/platforms/iseries/Kconfig | |||
@@ -31,5 +31,5 @@ endmenu | |||
31 | 31 | ||
32 | config VIOPATH | 32 | config VIOPATH |
33 | bool | 33 | bool |
34 | depends on VIOCONS || VIODASD || VIOCD || VIOTAPE || VETH | 34 | depends on VIOCONS || VIODASD || VIOCD || VIOTAPE || ISERIES_VETH |
35 | default y | 35 | default y |
diff --git a/drivers/block/viodasd.c b/drivers/block/viodasd.c index e19ba4ebcd4e..68592c336011 100644 --- a/drivers/block/viodasd.c +++ b/drivers/block/viodasd.c | |||
@@ -49,6 +49,7 @@ | |||
49 | #include <asm/iseries/hv_lp_event.h> | 49 | #include <asm/iseries/hv_lp_event.h> |
50 | #include <asm/iseries/hv_lp_config.h> | 50 | #include <asm/iseries/hv_lp_config.h> |
51 | #include <asm/iseries/vio.h> | 51 | #include <asm/iseries/vio.h> |
52 | #include <asm/firmware.h> | ||
52 | 53 | ||
53 | MODULE_DESCRIPTION("iSeries Virtual DASD"); | 54 | MODULE_DESCRIPTION("iSeries Virtual DASD"); |
54 | MODULE_AUTHOR("Dave Boutcher"); | 55 | MODULE_AUTHOR("Dave Boutcher"); |
@@ -769,6 +770,11 @@ static int __init viodasd_init(void) | |||
769 | { | 770 | { |
770 | int rc; | 771 | int rc; |
771 | 772 | ||
773 | if (!firmware_has_feature(FW_FEATURE_ISERIES)) { | ||
774 | rc = -ENODEV; | ||
775 | goto early_fail; | ||
776 | } | ||
777 | |||
772 | /* Try to open to our host lp */ | 778 | /* Try to open to our host lp */ |
773 | if (viopath_hostLp == HvLpIndexInvalid) | 779 | if (viopath_hostLp == HvLpIndexInvalid) |
774 | vio_set_hostlp(); | 780 | vio_set_hostlp(); |
diff --git a/drivers/cdrom/viocd.c b/drivers/cdrom/viocd.c index 54ca931e19ea..93fbf84dcc4a 100644 --- a/drivers/cdrom/viocd.c +++ b/drivers/cdrom/viocd.c | |||
@@ -47,6 +47,7 @@ | |||
47 | #include <asm/iseries/hv_types.h> | 47 | #include <asm/iseries/hv_types.h> |
48 | #include <asm/iseries/hv_lp_event.h> | 48 | #include <asm/iseries/hv_lp_event.h> |
49 | #include <asm/iseries/vio.h> | 49 | #include <asm/iseries/vio.h> |
50 | #include <asm/firmware.h> | ||
50 | 51 | ||
51 | #define VIOCD_DEVICE "iseries/vcd" | 52 | #define VIOCD_DEVICE "iseries/vcd" |
52 | 53 | ||
@@ -748,6 +749,9 @@ static int __init viocd_init(void) | |||
748 | struct proc_dir_entry *e; | 749 | struct proc_dir_entry *e; |
749 | int ret = 0; | 750 | int ret = 0; |
750 | 751 | ||
752 | if (!firmware_has_feature(FW_FEATURE_ISERIES)) | ||
753 | return -ENODEV; | ||
754 | |||
751 | if (viopath_hostLp == HvLpIndexInvalid) { | 755 | if (viopath_hostLp == HvLpIndexInvalid) { |
752 | vio_set_hostlp(); | 756 | vio_set_hostlp(); |
753 | /* If we don't have a host, bail out */ | 757 | /* If we don't have a host, bail out */ |
diff --git a/drivers/char/viocons.c b/drivers/char/viocons.c index 0e0da443cbd5..8de6b95aeb84 100644 --- a/drivers/char/viocons.c +++ b/drivers/char/viocons.c | |||
@@ -42,6 +42,7 @@ | |||
42 | #include <linux/tty_flip.h> | 42 | #include <linux/tty_flip.h> |
43 | #include <linux/sysrq.h> | 43 | #include <linux/sysrq.h> |
44 | 44 | ||
45 | #include <asm/firmware.h> | ||
45 | #include <asm/iseries/vio.h> | 46 | #include <asm/iseries/vio.h> |
46 | #include <asm/iseries/hv_lp_event.h> | 47 | #include <asm/iseries/hv_lp_event.h> |
47 | #include <asm/iseries/hv_call_event.h> | 48 | #include <asm/iseries/hv_call_event.h> |
@@ -1060,6 +1061,9 @@ static int __init viocons_init2(void) | |||
1060 | atomic_t wait_flag; | 1061 | atomic_t wait_flag; |
1061 | int rc; | 1062 | int rc; |
1062 | 1063 | ||
1064 | if (!firmware_has_feature(FW_FEATURE_ISERIES)) | ||
1065 | return -ENODEV; | ||
1066 | |||
1063 | /* +2 for fudge */ | 1067 | /* +2 for fudge */ |
1064 | rc = viopath_open(HvLpConfig_getPrimaryLpIndex(), | 1068 | rc = viopath_open(HvLpConfig_getPrimaryLpIndex(), |
1065 | viomajorsubtype_chario, VIOCHAR_WINDOW + 2); | 1069 | viomajorsubtype_chario, VIOCHAR_WINDOW + 2); |
@@ -1145,6 +1149,9 @@ static int __init viocons_init(void) | |||
1145 | { | 1149 | { |
1146 | int i; | 1150 | int i; |
1147 | 1151 | ||
1152 | if (!firmware_has_feature(FW_FEATURE_ISERIES)) | ||
1153 | return -ENODEV; | ||
1154 | |||
1148 | printk(VIOCONS_KERN_INFO "registering console\n"); | 1155 | printk(VIOCONS_KERN_INFO "registering console\n"); |
1149 | for (i = 0; i < VTTY_PORTS; i++) { | 1156 | for (i = 0; i < VTTY_PORTS; i++) { |
1150 | port_info[i].lp = HvLpIndexInvalid; | 1157 | port_info[i].lp = HvLpIndexInvalid; |
diff --git a/drivers/char/viotape.c b/drivers/char/viotape.c index 94d79cb8ce8d..9438512b17f1 100644 --- a/drivers/char/viotape.c +++ b/drivers/char/viotape.c | |||
@@ -49,7 +49,7 @@ | |||
49 | 49 | ||
50 | #include <asm/uaccess.h> | 50 | #include <asm/uaccess.h> |
51 | #include <asm/ioctls.h> | 51 | #include <asm/ioctls.h> |
52 | 52 | #include <asm/firmware.h> | |
53 | #include <asm/vio.h> | 53 | #include <asm/vio.h> |
54 | #include <asm/iseries/vio.h> | 54 | #include <asm/iseries/vio.h> |
55 | #include <asm/iseries/hv_lp_event.h> | 55 | #include <asm/iseries/hv_lp_event.h> |
@@ -997,6 +997,9 @@ int __init viotap_init(void) | |||
997 | int ret; | 997 | int ret; |
998 | struct proc_dir_entry *e; | 998 | struct proc_dir_entry *e; |
999 | 999 | ||
1000 | if (!firmware_has_feature(FW_FEATURE_ISERIES)) | ||
1001 | return -ENODEV; | ||
1002 | |||
1000 | op_struct_list = NULL; | 1003 | op_struct_list = NULL; |
1001 | if ((ret = add_op_structs(VIOTAPE_MAXREQ)) < 0) { | 1004 | if ((ret = add_op_structs(VIOTAPE_MAXREQ)) < 0) { |
1002 | printk(VIOTAPE_KERN_WARN "couldn't allocate op structs\n"); | 1005 | printk(VIOTAPE_KERN_WARN "couldn't allocate op structs\n"); |
diff --git a/drivers/net/iseries_veth.c b/drivers/net/iseries_veth.c index d6f4f185bf37..2194b567239f 100644 --- a/drivers/net/iseries_veth.c +++ b/drivers/net/iseries_veth.c | |||
@@ -73,7 +73,7 @@ | |||
73 | #include <asm/abs_addr.h> | 73 | #include <asm/abs_addr.h> |
74 | #include <asm/iseries/mf.h> | 74 | #include <asm/iseries/mf.h> |
75 | #include <asm/uaccess.h> | 75 | #include <asm/uaccess.h> |
76 | 76 | #include <asm/firmware.h> | |
77 | #include <asm/iseries/hv_lp_config.h> | 77 | #include <asm/iseries/hv_lp_config.h> |
78 | #include <asm/iseries/hv_types.h> | 78 | #include <asm/iseries/hv_types.h> |
79 | #include <asm/iseries/hv_lp_event.h> | 79 | #include <asm/iseries/hv_lp_event.h> |
@@ -1668,7 +1668,7 @@ static struct vio_driver veth_driver = { | |||
1668 | * Module initialization/cleanup | 1668 | * Module initialization/cleanup |
1669 | */ | 1669 | */ |
1670 | 1670 | ||
1671 | void __exit veth_module_cleanup(void) | 1671 | static void __exit veth_module_cleanup(void) |
1672 | { | 1672 | { |
1673 | int i; | 1673 | int i; |
1674 | struct veth_lpar_connection *cnx; | 1674 | struct veth_lpar_connection *cnx; |
@@ -1697,11 +1697,14 @@ void __exit veth_module_cleanup(void) | |||
1697 | } | 1697 | } |
1698 | module_exit(veth_module_cleanup); | 1698 | module_exit(veth_module_cleanup); |
1699 | 1699 | ||
1700 | int __init veth_module_init(void) | 1700 | static int __init veth_module_init(void) |
1701 | { | 1701 | { |
1702 | int i; | 1702 | int i; |
1703 | int rc; | 1703 | int rc; |
1704 | 1704 | ||
1705 | if (!firmware_has_feature(FW_FEATURE_ISERIES)) | ||
1706 | return -ENODEV; | ||
1707 | |||
1705 | this_lp = HvLpConfig_getLpIndex_outline(); | 1708 | this_lp = HvLpConfig_getLpIndex_outline(); |
1706 | 1709 | ||
1707 | for (i = 0; i < HVMAXARCHITECTEDLPS; ++i) { | 1710 | for (i = 0; i < HVMAXARCHITECTEDLPS; ++i) { |
diff --git a/include/asm-powerpc/spu.h b/include/asm-powerpc/spu.h index fdad4267b447..3d90264e9d36 100644 --- a/include/asm-powerpc/spu.h +++ b/include/asm-powerpc/spu.h | |||
@@ -161,6 +161,7 @@ struct spu_syscall_block { | |||
161 | extern long spu_sys_callback(struct spu_syscall_block *s); | 161 | extern long spu_sys_callback(struct spu_syscall_block *s); |
162 | 162 | ||
163 | /* syscalls implemented in spufs */ | 163 | /* syscalls implemented in spufs */ |
164 | struct file; | ||
164 | extern struct spufs_calls { | 165 | extern struct spufs_calls { |
165 | asmlinkage long (*create_thread)(const char __user *name, | 166 | asmlinkage long (*create_thread)(const char __user *name, |
166 | unsigned int flags, mode_t mode); | 167 | unsigned int flags, mode_t mode); |
@@ -232,6 +233,7 @@ void spu_remove_sysdev_attr_group(struct attribute_group *attrs); | |||
232 | * to object-id spufs file from user space and the notifer | 233 | * to object-id spufs file from user space and the notifer |
233 | * function can assume that spu->ctx is valid. | 234 | * function can assume that spu->ctx is valid. |
234 | */ | 235 | */ |
236 | struct notifier_block; | ||
235 | int spu_switch_event_register(struct notifier_block * n); | 237 | int spu_switch_event_register(struct notifier_block * n); |
236 | int spu_switch_event_unregister(struct notifier_block * n); | 238 | int spu_switch_event_unregister(struct notifier_block * n); |
237 | 239 | ||