diff options
Diffstat (limited to 'arch/powerpc')
-rw-r--r-- | arch/powerpc/configs/g5_defconfig | 58 | ||||
-rw-r--r-- | arch/powerpc/configs/iseries_defconfig | 43 | ||||
-rw-r--r-- | arch/powerpc/configs/pseries_defconfig | 54 | ||||
-rw-r--r-- | arch/powerpc/kernel/iommu.c | 36 | ||||
-rw-r--r-- | arch/powerpc/kernel/pci_iommu.c | 40 | ||||
-rw-r--r-- | arch/powerpc/kernel/ppc_ksyms.c | 1 | ||||
-rw-r--r-- | arch/powerpc/kernel/prom.c | 2 | ||||
-rw-r--r-- | arch/powerpc/kernel/sysfs.c | 4 | ||||
-rw-r--r-- | arch/powerpc/kernel/systbl.S | 6 | ||||
-rw-r--r-- | arch/powerpc/kernel/vio.c | 6 | ||||
-rw-r--r-- | arch/powerpc/platforms/cell/spu_callbacks.c | 6 | ||||
-rw-r--r-- | arch/powerpc/platforms/powermac/low_i2c.c | 78 | ||||
-rw-r--r-- | arch/powerpc/sysdev/dart_iommu.c | 12 |
13 files changed, 202 insertions, 144 deletions
diff --git a/arch/powerpc/configs/g5_defconfig b/arch/powerpc/configs/g5_defconfig index 2c3fd2007676..a45627547d03 100644 --- a/arch/powerpc/configs/g5_defconfig +++ b/arch/powerpc/configs/g5_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.16-rc2 | 3 | # Linux kernel version: 2.6.17-rc1 |
4 | # Fri Feb 10 17:33:08 2006 | 4 | # Wed Apr 19 13:24:37 2006 |
5 | # | 5 | # |
6 | CONFIG_PPC64=y | 6 | CONFIG_PPC64=y |
7 | CONFIG_64BIT=y | 7 | CONFIG_64BIT=y |
@@ -9,6 +9,7 @@ CONFIG_PPC_MERGE=y | |||
9 | CONFIG_MMU=y | 9 | CONFIG_MMU=y |
10 | CONFIG_GENERIC_HARDIRQS=y | 10 | CONFIG_GENERIC_HARDIRQS=y |
11 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y | 11 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y |
12 | CONFIG_GENERIC_HWEIGHT=y | ||
12 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 13 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
13 | CONFIG_PPC=y | 14 | CONFIG_PPC=y |
14 | CONFIG_EARLY_PRINTK=y | 15 | CONFIG_EARLY_PRINTK=y |
@@ -29,6 +30,7 @@ CONFIG_POWER4=y | |||
29 | CONFIG_PPC_FPU=y | 30 | CONFIG_PPC_FPU=y |
30 | CONFIG_ALTIVEC=y | 31 | CONFIG_ALTIVEC=y |
31 | CONFIG_PPC_STD_MMU=y | 32 | CONFIG_PPC_STD_MMU=y |
33 | CONFIG_VIRT_CPU_ACCOUNTING=y | ||
32 | CONFIG_SMP=y | 34 | CONFIG_SMP=y |
33 | CONFIG_NR_CPUS=4 | 35 | CONFIG_NR_CPUS=4 |
34 | 36 | ||
@@ -53,6 +55,7 @@ CONFIG_SYSCTL=y | |||
53 | CONFIG_IKCONFIG=y | 55 | CONFIG_IKCONFIG=y |
54 | CONFIG_IKCONFIG_PROC=y | 56 | CONFIG_IKCONFIG_PROC=y |
55 | # CONFIG_CPUSETS is not set | 57 | # CONFIG_CPUSETS is not set |
58 | # CONFIG_RELAY is not set | ||
56 | CONFIG_INITRAMFS_SOURCE="" | 59 | CONFIG_INITRAMFS_SOURCE="" |
57 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | 60 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y |
58 | # CONFIG_EMBEDDED is not set | 61 | # CONFIG_EMBEDDED is not set |
@@ -67,10 +70,6 @@ CONFIG_BASE_FULL=y | |||
67 | CONFIG_FUTEX=y | 70 | CONFIG_FUTEX=y |
68 | CONFIG_EPOLL=y | 71 | CONFIG_EPOLL=y |
69 | CONFIG_SHMEM=y | 72 | CONFIG_SHMEM=y |
70 | CONFIG_CC_ALIGN_FUNCTIONS=0 | ||
71 | CONFIG_CC_ALIGN_LABELS=0 | ||
72 | CONFIG_CC_ALIGN_LOOPS=0 | ||
73 | CONFIG_CC_ALIGN_JUMPS=0 | ||
74 | CONFIG_SLAB=y | 73 | CONFIG_SLAB=y |
75 | # CONFIG_TINY_SHMEM is not set | 74 | # CONFIG_TINY_SHMEM is not set |
76 | CONFIG_BASE_SMALL=0 | 75 | CONFIG_BASE_SMALL=0 |
@@ -82,7 +81,6 @@ CONFIG_BASE_SMALL=0 | |||
82 | CONFIG_MODULES=y | 81 | CONFIG_MODULES=y |
83 | CONFIG_MODULE_UNLOAD=y | 82 | CONFIG_MODULE_UNLOAD=y |
84 | # CONFIG_MODULE_FORCE_UNLOAD is not set | 83 | # CONFIG_MODULE_FORCE_UNLOAD is not set |
85 | CONFIG_OBSOLETE_MODPARM=y | ||
86 | CONFIG_MODVERSIONS=y | 84 | CONFIG_MODVERSIONS=y |
87 | CONFIG_MODULE_SRCVERSION_ALL=y | 85 | CONFIG_MODULE_SRCVERSION_ALL=y |
88 | CONFIG_KMOD=y | 86 | CONFIG_KMOD=y |
@@ -91,6 +89,7 @@ CONFIG_STOP_MACHINE=y | |||
91 | # | 89 | # |
92 | # Block layer | 90 | # Block layer |
93 | # | 91 | # |
92 | # CONFIG_BLK_DEV_IO_TRACE is not set | ||
94 | 93 | ||
95 | # | 94 | # |
96 | # IO Schedulers | 95 | # IO Schedulers |
@@ -185,7 +184,6 @@ CONFIG_GENERIC_ISA_DMA=y | |||
185 | # CONFIG_PPC_INDIRECT_PCI is not set | 184 | # CONFIG_PPC_INDIRECT_PCI is not set |
186 | CONFIG_PCI=y | 185 | CONFIG_PCI=y |
187 | CONFIG_PCI_DOMAINS=y | 186 | CONFIG_PCI_DOMAINS=y |
188 | CONFIG_PCI_LEGACY_PROC=y | ||
189 | # CONFIG_PCI_DEBUG is not set | 187 | # CONFIG_PCI_DEBUG is not set |
190 | 188 | ||
191 | # | 189 | # |
@@ -227,6 +225,7 @@ CONFIG_SYN_COOKIES=y | |||
227 | CONFIG_INET_AH=m | 225 | CONFIG_INET_AH=m |
228 | CONFIG_INET_ESP=m | 226 | CONFIG_INET_ESP=m |
229 | CONFIG_INET_IPCOMP=m | 227 | CONFIG_INET_IPCOMP=m |
228 | CONFIG_INET_XFRM_TUNNEL=m | ||
230 | CONFIG_INET_TUNNEL=y | 229 | CONFIG_INET_TUNNEL=y |
231 | CONFIG_INET_DIAG=y | 230 | CONFIG_INET_DIAG=y |
232 | CONFIG_INET_TCP_DIAG=y | 231 | CONFIG_INET_TCP_DIAG=y |
@@ -238,6 +237,8 @@ CONFIG_TCP_CONG_BIC=y | |||
238 | # | 237 | # |
239 | # CONFIG_IP_VS is not set | 238 | # CONFIG_IP_VS is not set |
240 | # CONFIG_IPV6 is not set | 239 | # CONFIG_IPV6 is not set |
240 | # CONFIG_INET6_XFRM_TUNNEL is not set | ||
241 | # CONFIG_INET6_TUNNEL is not set | ||
241 | CONFIG_NETFILTER=y | 242 | CONFIG_NETFILTER=y |
242 | # CONFIG_NETFILTER_DEBUG is not set | 243 | # CONFIG_NETFILTER_DEBUG is not set |
243 | 244 | ||
@@ -261,6 +262,7 @@ CONFIG_IP_NF_IRC=m | |||
261 | CONFIG_IP_NF_TFTP=m | 262 | CONFIG_IP_NF_TFTP=m |
262 | CONFIG_IP_NF_AMANDA=m | 263 | CONFIG_IP_NF_AMANDA=m |
263 | # CONFIG_IP_NF_PPTP is not set | 264 | # CONFIG_IP_NF_PPTP is not set |
265 | # CONFIG_IP_NF_H323 is not set | ||
264 | CONFIG_IP_NF_QUEUE=m | 266 | CONFIG_IP_NF_QUEUE=m |
265 | 267 | ||
266 | # | 268 | # |
@@ -513,6 +515,7 @@ CONFIG_MD_RAID0=y | |||
513 | CONFIG_MD_RAID1=y | 515 | CONFIG_MD_RAID1=y |
514 | CONFIG_MD_RAID10=m | 516 | CONFIG_MD_RAID10=m |
515 | CONFIG_MD_RAID5=y | 517 | CONFIG_MD_RAID5=y |
518 | # CONFIG_MD_RAID5_RESHAPE is not set | ||
516 | CONFIG_MD_RAID6=m | 519 | CONFIG_MD_RAID6=m |
517 | CONFIG_MD_MULTIPATH=m | 520 | CONFIG_MD_MULTIPATH=m |
518 | CONFIG_MD_FAULTY=m | 521 | CONFIG_MD_FAULTY=m |
@@ -761,7 +764,6 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
761 | # Watchdog Cards | 764 | # Watchdog Cards |
762 | # | 765 | # |
763 | # CONFIG_WATCHDOG is not set | 766 | # CONFIG_WATCHDOG is not set |
764 | # CONFIG_RTC is not set | ||
765 | CONFIG_GEN_RTC=y | 767 | CONFIG_GEN_RTC=y |
766 | # CONFIG_GEN_RTC_X is not set | 768 | # CONFIG_GEN_RTC_X is not set |
767 | # CONFIG_DTLK is not set | 769 | # CONFIG_DTLK is not set |
@@ -772,6 +774,7 @@ CONFIG_GEN_RTC=y | |||
772 | # Ftape, the floppy tape device driver | 774 | # Ftape, the floppy tape device driver |
773 | # | 775 | # |
774 | CONFIG_AGP=m | 776 | CONFIG_AGP=m |
777 | # CONFIG_AGP_VIA is not set | ||
775 | CONFIG_AGP_UNINORTH=m | 778 | CONFIG_AGP_UNINORTH=m |
776 | # CONFIG_DRM is not set | 779 | # CONFIG_DRM is not set |
777 | CONFIG_RAW_DRIVER=y | 780 | CONFIG_RAW_DRIVER=y |
@@ -813,7 +816,6 @@ CONFIG_I2C_POWERMAC=y | |||
813 | # CONFIG_I2C_PARPORT_LIGHT is not set | 816 | # CONFIG_I2C_PARPORT_LIGHT is not set |
814 | # CONFIG_I2C_PROSAVAGE is not set | 817 | # CONFIG_I2C_PROSAVAGE is not set |
815 | # CONFIG_I2C_SAVAGE4 is not set | 818 | # CONFIG_I2C_SAVAGE4 is not set |
816 | # CONFIG_SCx200_ACB is not set | ||
817 | # CONFIG_I2C_SIS5595 is not set | 819 | # CONFIG_I2C_SIS5595 is not set |
818 | # CONFIG_I2C_SIS630 is not set | 820 | # CONFIG_I2C_SIS630 is not set |
819 | # CONFIG_I2C_SIS96X is not set | 821 | # CONFIG_I2C_SIS96X is not set |
@@ -832,9 +834,7 @@ CONFIG_I2C_POWERMAC=y | |||
832 | # CONFIG_SENSORS_PCF8574 is not set | 834 | # CONFIG_SENSORS_PCF8574 is not set |
833 | # CONFIG_SENSORS_PCA9539 is not set | 835 | # CONFIG_SENSORS_PCA9539 is not set |
834 | # CONFIG_SENSORS_PCF8591 is not set | 836 | # CONFIG_SENSORS_PCF8591 is not set |
835 | # CONFIG_SENSORS_RTC8564 is not set | ||
836 | # CONFIG_SENSORS_MAX6875 is not set | 837 | # CONFIG_SENSORS_MAX6875 is not set |
837 | # CONFIG_RTC_X1205_I2C is not set | ||
838 | # CONFIG_I2C_DEBUG_CORE is not set | 838 | # CONFIG_I2C_DEBUG_CORE is not set |
839 | # CONFIG_I2C_DEBUG_ALGO is not set | 839 | # CONFIG_I2C_DEBUG_ALGO is not set |
840 | # CONFIG_I2C_DEBUG_BUS is not set | 840 | # CONFIG_I2C_DEBUG_BUS is not set |
@@ -862,10 +862,6 @@ CONFIG_I2C_POWERMAC=y | |||
862 | # | 862 | # |
863 | 863 | ||
864 | # | 864 | # |
865 | # Multimedia Capabilities Port drivers | ||
866 | # | ||
867 | |||
868 | # | ||
869 | # Multimedia devices | 865 | # Multimedia devices |
870 | # | 866 | # |
871 | # CONFIG_VIDEO_DEV is not set | 867 | # CONFIG_VIDEO_DEV is not set |
@@ -874,6 +870,7 @@ CONFIG_I2C_POWERMAC=y | |||
874 | # Digital Video Broadcasting Devices | 870 | # Digital Video Broadcasting Devices |
875 | # | 871 | # |
876 | # CONFIG_DVB is not set | 872 | # CONFIG_DVB is not set |
873 | # CONFIG_USB_DABUSB is not set | ||
877 | 874 | ||
878 | # | 875 | # |
879 | # Graphics support | 876 | # Graphics support |
@@ -883,6 +880,7 @@ CONFIG_FB_CFB_FILLRECT=y | |||
883 | CONFIG_FB_CFB_COPYAREA=y | 880 | CONFIG_FB_CFB_COPYAREA=y |
884 | CONFIG_FB_CFB_IMAGEBLIT=y | 881 | CONFIG_FB_CFB_IMAGEBLIT=y |
885 | CONFIG_FB_MACMODES=y | 882 | CONFIG_FB_MACMODES=y |
883 | CONFIG_FB_FIRMWARE_EDID=y | ||
886 | CONFIG_FB_MODE_HELPERS=y | 884 | CONFIG_FB_MODE_HELPERS=y |
887 | CONFIG_FB_TILEBLITTING=y | 885 | CONFIG_FB_TILEBLITTING=y |
888 | # CONFIG_FB_CIRRUS is not set | 886 | # CONFIG_FB_CIRRUS is not set |
@@ -901,7 +899,6 @@ CONFIG_FB_NVIDIA=y | |||
901 | CONFIG_FB_NVIDIA_I2C=y | 899 | CONFIG_FB_NVIDIA_I2C=y |
902 | # CONFIG_FB_RIVA is not set | 900 | # CONFIG_FB_RIVA is not set |
903 | # CONFIG_FB_MATROX is not set | 901 | # CONFIG_FB_MATROX is not set |
904 | # CONFIG_FB_RADEON_OLD is not set | ||
905 | CONFIG_FB_RADEON=y | 902 | CONFIG_FB_RADEON=y |
906 | CONFIG_FB_RADEON_I2C=y | 903 | CONFIG_FB_RADEON_I2C=y |
907 | # CONFIG_FB_RADEON_DEBUG is not set | 904 | # CONFIG_FB_RADEON_DEBUG is not set |
@@ -958,9 +955,11 @@ CONFIG_SND_SEQUENCER=m | |||
958 | CONFIG_SND_OSSEMUL=y | 955 | CONFIG_SND_OSSEMUL=y |
959 | CONFIG_SND_MIXER_OSS=m | 956 | CONFIG_SND_MIXER_OSS=m |
960 | CONFIG_SND_PCM_OSS=m | 957 | CONFIG_SND_PCM_OSS=m |
958 | CONFIG_SND_PCM_OSS_PLUGINS=y | ||
961 | CONFIG_SND_SEQUENCER_OSS=y | 959 | CONFIG_SND_SEQUENCER_OSS=y |
962 | # CONFIG_SND_DYNAMIC_MINORS is not set | 960 | # CONFIG_SND_DYNAMIC_MINORS is not set |
963 | CONFIG_SND_SUPPORT_OLD_API=y | 961 | CONFIG_SND_SUPPORT_OLD_API=y |
962 | CONFIG_SND_VERBOSE_PROCFS=y | ||
964 | # CONFIG_SND_VERBOSE_PRINTK is not set | 963 | # CONFIG_SND_VERBOSE_PRINTK is not set |
965 | # CONFIG_SND_DEBUG is not set | 964 | # CONFIG_SND_DEBUG is not set |
966 | 965 | ||
@@ -977,6 +976,7 @@ CONFIG_SND_SUPPORT_OLD_API=y | |||
977 | # PCI devices | 976 | # PCI devices |
978 | # | 977 | # |
979 | # CONFIG_SND_AD1889 is not set | 978 | # CONFIG_SND_AD1889 is not set |
979 | # CONFIG_SND_ALS300 is not set | ||
980 | # CONFIG_SND_ALS4000 is not set | 980 | # CONFIG_SND_ALS4000 is not set |
981 | # CONFIG_SND_ALI5451 is not set | 981 | # CONFIG_SND_ALI5451 is not set |
982 | # CONFIG_SND_ATIIXP is not set | 982 | # CONFIG_SND_ATIIXP is not set |
@@ -1009,6 +1009,7 @@ CONFIG_SND_SUPPORT_OLD_API=y | |||
1009 | # CONFIG_SND_MIXART is not set | 1009 | # CONFIG_SND_MIXART is not set |
1010 | # CONFIG_SND_NM256 is not set | 1010 | # CONFIG_SND_NM256 is not set |
1011 | # CONFIG_SND_PCXHR is not set | 1011 | # CONFIG_SND_PCXHR is not set |
1012 | # CONFIG_SND_RIPTIDE is not set | ||
1012 | # CONFIG_SND_RME32 is not set | 1013 | # CONFIG_SND_RME32 is not set |
1013 | # CONFIG_SND_RME96 is not set | 1014 | # CONFIG_SND_RME96 is not set |
1014 | # CONFIG_SND_RME9652 is not set | 1015 | # CONFIG_SND_RME9652 is not set |
@@ -1041,6 +1042,7 @@ CONFIG_SND_USB_AUDIO=m | |||
1041 | # | 1042 | # |
1042 | CONFIG_USB_ARCH_HAS_HCD=y | 1043 | CONFIG_USB_ARCH_HAS_HCD=y |
1043 | CONFIG_USB_ARCH_HAS_OHCI=y | 1044 | CONFIG_USB_ARCH_HAS_OHCI=y |
1045 | CONFIG_USB_ARCH_HAS_EHCI=y | ||
1044 | CONFIG_USB=y | 1046 | CONFIG_USB=y |
1045 | # CONFIG_USB_DEBUG is not set | 1047 | # CONFIG_USB_DEBUG is not set |
1046 | 1048 | ||
@@ -1068,7 +1070,6 @@ CONFIG_USB_OHCI_LITTLE_ENDIAN=y | |||
1068 | # | 1070 | # |
1069 | # USB Device Class drivers | 1071 | # USB Device Class drivers |
1070 | # | 1072 | # |
1071 | # CONFIG_OBSOLETE_OSS_USB_DRIVER is not set | ||
1072 | CONFIG_USB_ACM=m | 1073 | CONFIG_USB_ACM=m |
1073 | CONFIG_USB_PRINTER=y | 1074 | CONFIG_USB_PRINTER=y |
1074 | 1075 | ||
@@ -1126,15 +1127,6 @@ CONFIG_USB_HIDDEV=y | |||
1126 | # CONFIG_USB_MICROTEK is not set | 1127 | # CONFIG_USB_MICROTEK is not set |
1127 | 1128 | ||
1128 | # | 1129 | # |
1129 | # USB Multimedia devices | ||
1130 | # | ||
1131 | # CONFIG_USB_DABUSB is not set | ||
1132 | |||
1133 | # | ||
1134 | # Video4Linux support is needed for USB Multimedia device support | ||
1135 | # | ||
1136 | |||
1137 | # | ||
1138 | # USB Network Adapters | 1130 | # USB Network Adapters |
1139 | # | 1131 | # |
1140 | CONFIG_USB_CATC=m | 1132 | CONFIG_USB_CATC=m |
@@ -1194,6 +1186,7 @@ CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y | |||
1194 | CONFIG_USB_SERIAL_KLSI=m | 1186 | CONFIG_USB_SERIAL_KLSI=m |
1195 | CONFIG_USB_SERIAL_KOBIL_SCT=m | 1187 | CONFIG_USB_SERIAL_KOBIL_SCT=m |
1196 | CONFIG_USB_SERIAL_MCT_U232=m | 1188 | CONFIG_USB_SERIAL_MCT_U232=m |
1189 | # CONFIG_USB_SERIAL_NAVMAN is not set | ||
1197 | CONFIG_USB_SERIAL_PL2303=m | 1190 | CONFIG_USB_SERIAL_PL2303=m |
1198 | # CONFIG_USB_SERIAL_HP4X is not set | 1191 | # CONFIG_USB_SERIAL_HP4X is not set |
1199 | CONFIG_USB_SERIAL_SAFE=m | 1192 | CONFIG_USB_SERIAL_SAFE=m |
@@ -1237,17 +1230,23 @@ CONFIG_USB_EZUSB=y | |||
1237 | # CONFIG_MMC is not set | 1230 | # CONFIG_MMC is not set |
1238 | 1231 | ||
1239 | # | 1232 | # |
1233 | # LED devices | ||
1234 | # | ||
1235 | # CONFIG_NEW_LEDS is not set | ||
1236 | |||
1237 | # | ||
1240 | # InfiniBand support | 1238 | # InfiniBand support |
1241 | # | 1239 | # |
1242 | # CONFIG_INFINIBAND is not set | 1240 | # CONFIG_INFINIBAND is not set |
1243 | 1241 | ||
1244 | # | 1242 | # |
1245 | # SN Devices | 1243 | # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) |
1246 | # | 1244 | # |
1247 | 1245 | ||
1248 | # | 1246 | # |
1249 | # EDAC - error detection and reporting (RAS) | 1247 | # Real Time Clock |
1250 | # | 1248 | # |
1249 | # CONFIG_RTC_CLASS is not set | ||
1251 | 1250 | ||
1252 | # | 1251 | # |
1253 | # File systems | 1252 | # File systems |
@@ -1319,7 +1318,6 @@ CONFIG_TMPFS=y | |||
1319 | CONFIG_HUGETLBFS=y | 1318 | CONFIG_HUGETLBFS=y |
1320 | CONFIG_HUGETLB_PAGE=y | 1319 | CONFIG_HUGETLB_PAGE=y |
1321 | CONFIG_RAMFS=y | 1320 | CONFIG_RAMFS=y |
1322 | # CONFIG_RELAYFS_FS is not set | ||
1323 | # CONFIG_CONFIGFS_FS is not set | 1321 | # CONFIG_CONFIGFS_FS is not set |
1324 | 1322 | ||
1325 | # | 1323 | # |
diff --git a/arch/powerpc/configs/iseries_defconfig b/arch/powerpc/configs/iseries_defconfig index 1816a46742f6..a95e455a1944 100644 --- a/arch/powerpc/configs/iseries_defconfig +++ b/arch/powerpc/configs/iseries_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.16-rc6 | 3 | # Linux kernel version: 2.6.17-rc1 |
4 | # Wed Mar 15 16:19:52 2006 | 4 | # Wed Apr 19 11:46:44 2006 |
5 | # | 5 | # |
6 | CONFIG_PPC64=y | 6 | CONFIG_PPC64=y |
7 | CONFIG_64BIT=y | 7 | CONFIG_64BIT=y |
@@ -9,6 +9,7 @@ CONFIG_PPC_MERGE=y | |||
9 | CONFIG_MMU=y | 9 | CONFIG_MMU=y |
10 | CONFIG_GENERIC_HARDIRQS=y | 10 | CONFIG_GENERIC_HARDIRQS=y |
11 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y | 11 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y |
12 | CONFIG_GENERIC_HWEIGHT=y | ||
12 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 13 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
13 | CONFIG_PPC=y | 14 | CONFIG_PPC=y |
14 | CONFIG_EARLY_PRINTK=y | 15 | CONFIG_EARLY_PRINTK=y |
@@ -30,6 +31,7 @@ CONFIG_POWER4=y | |||
30 | CONFIG_PPC_FPU=y | 31 | CONFIG_PPC_FPU=y |
31 | # CONFIG_ALTIVEC is not set | 32 | # CONFIG_ALTIVEC is not set |
32 | CONFIG_PPC_STD_MMU=y | 33 | CONFIG_PPC_STD_MMU=y |
34 | CONFIG_VIRT_CPU_ACCOUNTING=y | ||
33 | CONFIG_SMP=y | 35 | CONFIG_SMP=y |
34 | CONFIG_NR_CPUS=32 | 36 | CONFIG_NR_CPUS=32 |
35 | 37 | ||
@@ -55,6 +57,7 @@ CONFIG_AUDITSYSCALL=y | |||
55 | CONFIG_IKCONFIG=y | 57 | CONFIG_IKCONFIG=y |
56 | CONFIG_IKCONFIG_PROC=y | 58 | CONFIG_IKCONFIG_PROC=y |
57 | # CONFIG_CPUSETS is not set | 59 | # CONFIG_CPUSETS is not set |
60 | # CONFIG_RELAY is not set | ||
58 | CONFIG_INITRAMFS_SOURCE="" | 61 | CONFIG_INITRAMFS_SOURCE="" |
59 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | 62 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y |
60 | # CONFIG_EMBEDDED is not set | 63 | # CONFIG_EMBEDDED is not set |
@@ -69,10 +72,6 @@ CONFIG_BASE_FULL=y | |||
69 | CONFIG_FUTEX=y | 72 | CONFIG_FUTEX=y |
70 | CONFIG_EPOLL=y | 73 | CONFIG_EPOLL=y |
71 | CONFIG_SHMEM=y | 74 | CONFIG_SHMEM=y |
72 | CONFIG_CC_ALIGN_FUNCTIONS=0 | ||
73 | CONFIG_CC_ALIGN_LABELS=0 | ||
74 | CONFIG_CC_ALIGN_LOOPS=0 | ||
75 | CONFIG_CC_ALIGN_JUMPS=0 | ||
76 | CONFIG_SLAB=y | 75 | CONFIG_SLAB=y |
77 | # CONFIG_TINY_SHMEM is not set | 76 | # CONFIG_TINY_SHMEM is not set |
78 | CONFIG_BASE_SMALL=0 | 77 | CONFIG_BASE_SMALL=0 |
@@ -84,7 +83,6 @@ CONFIG_BASE_SMALL=0 | |||
84 | CONFIG_MODULES=y | 83 | CONFIG_MODULES=y |
85 | CONFIG_MODULE_UNLOAD=y | 84 | CONFIG_MODULE_UNLOAD=y |
86 | # CONFIG_MODULE_FORCE_UNLOAD is not set | 85 | # CONFIG_MODULE_FORCE_UNLOAD is not set |
87 | CONFIG_OBSOLETE_MODPARM=y | ||
88 | CONFIG_MODVERSIONS=y | 86 | CONFIG_MODVERSIONS=y |
89 | CONFIG_MODULE_SRCVERSION_ALL=y | 87 | CONFIG_MODULE_SRCVERSION_ALL=y |
90 | CONFIG_KMOD=y | 88 | CONFIG_KMOD=y |
@@ -93,6 +91,7 @@ CONFIG_STOP_MACHINE=y | |||
93 | # | 91 | # |
94 | # Block layer | 92 | # Block layer |
95 | # | 93 | # |
94 | # CONFIG_BLK_DEV_IO_TRACE is not set | ||
96 | 95 | ||
97 | # | 96 | # |
98 | # IO Schedulers | 97 | # IO Schedulers |
@@ -165,7 +164,6 @@ CONFIG_GENERIC_ISA_DMA=y | |||
165 | # CONFIG_PPC_INDIRECT_PCI is not set | 164 | # CONFIG_PPC_INDIRECT_PCI is not set |
166 | CONFIG_PCI=y | 165 | CONFIG_PCI=y |
167 | CONFIG_PCI_DOMAINS=y | 166 | CONFIG_PCI_DOMAINS=y |
168 | CONFIG_PCI_LEGACY_PROC=y | ||
169 | # CONFIG_PCI_DEBUG is not set | 167 | # CONFIG_PCI_DEBUG is not set |
170 | 168 | ||
171 | # | 169 | # |
@@ -207,6 +205,7 @@ CONFIG_SYN_COOKIES=y | |||
207 | CONFIG_INET_AH=m | 205 | CONFIG_INET_AH=m |
208 | CONFIG_INET_ESP=m | 206 | CONFIG_INET_ESP=m |
209 | CONFIG_INET_IPCOMP=m | 207 | CONFIG_INET_IPCOMP=m |
208 | CONFIG_INET_XFRM_TUNNEL=m | ||
210 | CONFIG_INET_TUNNEL=y | 209 | CONFIG_INET_TUNNEL=y |
211 | CONFIG_INET_DIAG=y | 210 | CONFIG_INET_DIAG=y |
212 | CONFIG_INET_TCP_DIAG=y | 211 | CONFIG_INET_TCP_DIAG=y |
@@ -218,6 +217,8 @@ CONFIG_TCP_CONG_BIC=y | |||
218 | # | 217 | # |
219 | # CONFIG_IP_VS is not set | 218 | # CONFIG_IP_VS is not set |
220 | # CONFIG_IPV6 is not set | 219 | # CONFIG_IPV6 is not set |
220 | # CONFIG_INET6_XFRM_TUNNEL is not set | ||
221 | # CONFIG_INET6_TUNNEL is not set | ||
221 | CONFIG_NETFILTER=y | 222 | CONFIG_NETFILTER=y |
222 | # CONFIG_NETFILTER_DEBUG is not set | 223 | # CONFIG_NETFILTER_DEBUG is not set |
223 | 224 | ||
@@ -236,11 +237,14 @@ CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m | |||
236 | CONFIG_NETFILTER_XT_MATCH_CONNMARK=m | 237 | CONFIG_NETFILTER_XT_MATCH_CONNMARK=m |
237 | CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m | 238 | CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m |
238 | # CONFIG_NETFILTER_XT_MATCH_DCCP is not set | 239 | # CONFIG_NETFILTER_XT_MATCH_DCCP is not set |
240 | # CONFIG_NETFILTER_XT_MATCH_ESP is not set | ||
239 | CONFIG_NETFILTER_XT_MATCH_HELPER=m | 241 | CONFIG_NETFILTER_XT_MATCH_HELPER=m |
240 | CONFIG_NETFILTER_XT_MATCH_LENGTH=m | 242 | CONFIG_NETFILTER_XT_MATCH_LENGTH=m |
241 | CONFIG_NETFILTER_XT_MATCH_LIMIT=m | 243 | CONFIG_NETFILTER_XT_MATCH_LIMIT=m |
242 | CONFIG_NETFILTER_XT_MATCH_MAC=m | 244 | CONFIG_NETFILTER_XT_MATCH_MAC=m |
243 | CONFIG_NETFILTER_XT_MATCH_MARK=m | 245 | CONFIG_NETFILTER_XT_MATCH_MARK=m |
246 | # CONFIG_NETFILTER_XT_MATCH_POLICY is not set | ||
247 | # CONFIG_NETFILTER_XT_MATCH_MULTIPORT is not set | ||
244 | CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m | 248 | CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m |
245 | CONFIG_NETFILTER_XT_MATCH_REALM=m | 249 | CONFIG_NETFILTER_XT_MATCH_REALM=m |
246 | CONFIG_NETFILTER_XT_MATCH_SCTP=m | 250 | CONFIG_NETFILTER_XT_MATCH_SCTP=m |
@@ -262,20 +266,19 @@ CONFIG_IP_NF_IRC=m | |||
262 | CONFIG_IP_NF_TFTP=m | 266 | CONFIG_IP_NF_TFTP=m |
263 | CONFIG_IP_NF_AMANDA=m | 267 | CONFIG_IP_NF_AMANDA=m |
264 | # CONFIG_IP_NF_PPTP is not set | 268 | # CONFIG_IP_NF_PPTP is not set |
269 | # CONFIG_IP_NF_H323 is not set | ||
265 | CONFIG_IP_NF_QUEUE=m | 270 | CONFIG_IP_NF_QUEUE=m |
266 | CONFIG_IP_NF_IPTABLES=m | 271 | CONFIG_IP_NF_IPTABLES=m |
267 | CONFIG_IP_NF_MATCH_IPRANGE=m | 272 | CONFIG_IP_NF_MATCH_IPRANGE=m |
268 | CONFIG_IP_NF_MATCH_MULTIPORT=m | ||
269 | CONFIG_IP_NF_MATCH_TOS=m | 273 | CONFIG_IP_NF_MATCH_TOS=m |
270 | CONFIG_IP_NF_MATCH_RECENT=m | 274 | CONFIG_IP_NF_MATCH_RECENT=m |
271 | CONFIG_IP_NF_MATCH_ECN=m | 275 | CONFIG_IP_NF_MATCH_ECN=m |
272 | CONFIG_IP_NF_MATCH_DSCP=m | 276 | CONFIG_IP_NF_MATCH_DSCP=m |
273 | CONFIG_IP_NF_MATCH_AH_ESP=m | 277 | # CONFIG_IP_NF_MATCH_AH is not set |
274 | CONFIG_IP_NF_MATCH_TTL=m | 278 | CONFIG_IP_NF_MATCH_TTL=m |
275 | CONFIG_IP_NF_MATCH_OWNER=m | 279 | CONFIG_IP_NF_MATCH_OWNER=m |
276 | CONFIG_IP_NF_MATCH_ADDRTYPE=m | 280 | CONFIG_IP_NF_MATCH_ADDRTYPE=m |
277 | CONFIG_IP_NF_MATCH_HASHLIMIT=m | 281 | CONFIG_IP_NF_MATCH_HASHLIMIT=m |
278 | CONFIG_IP_NF_MATCH_POLICY=m | ||
279 | CONFIG_IP_NF_FILTER=m | 282 | CONFIG_IP_NF_FILTER=m |
280 | CONFIG_IP_NF_TARGET_REJECT=m | 283 | CONFIG_IP_NF_TARGET_REJECT=m |
281 | CONFIG_IP_NF_TARGET_LOG=m | 284 | CONFIG_IP_NF_TARGET_LOG=m |
@@ -479,6 +482,7 @@ CONFIG_MD_RAID0=y | |||
479 | CONFIG_MD_RAID1=y | 482 | CONFIG_MD_RAID1=y |
480 | CONFIG_MD_RAID10=m | 483 | CONFIG_MD_RAID10=m |
481 | CONFIG_MD_RAID5=y | 484 | CONFIG_MD_RAID5=y |
485 | # CONFIG_MD_RAID5_RESHAPE is not set | ||
482 | CONFIG_MD_RAID6=m | 486 | CONFIG_MD_RAID6=m |
483 | CONFIG_MD_MULTIPATH=m | 487 | CONFIG_MD_MULTIPATH=m |
484 | CONFIG_MD_FAULTY=m | 488 | CONFIG_MD_FAULTY=m |
@@ -702,7 +706,6 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
702 | # Watchdog Cards | 706 | # Watchdog Cards |
703 | # | 707 | # |
704 | # CONFIG_WATCHDOG is not set | 708 | # CONFIG_WATCHDOG is not set |
705 | # CONFIG_RTC is not set | ||
706 | CONFIG_GEN_RTC=y | 709 | CONFIG_GEN_RTC=y |
707 | # CONFIG_GEN_RTC_X is not set | 710 | # CONFIG_GEN_RTC_X is not set |
708 | # CONFIG_DTLK is not set | 711 | # CONFIG_DTLK is not set |
@@ -751,10 +754,6 @@ CONFIG_MAX_RAW_DEVS=256 | |||
751 | # | 754 | # |
752 | 755 | ||
753 | # | 756 | # |
754 | # Multimedia Capabilities Port drivers | ||
755 | # | ||
756 | |||
757 | # | ||
758 | # Multimedia devices | 757 | # Multimedia devices |
759 | # | 758 | # |
760 | # CONFIG_VIDEO_DEV is not set | 759 | # CONFIG_VIDEO_DEV is not set |
@@ -779,6 +778,7 @@ CONFIG_MAX_RAW_DEVS=256 | |||
779 | # | 778 | # |
780 | CONFIG_USB_ARCH_HAS_HCD=y | 779 | CONFIG_USB_ARCH_HAS_HCD=y |
781 | CONFIG_USB_ARCH_HAS_OHCI=y | 780 | CONFIG_USB_ARCH_HAS_OHCI=y |
781 | CONFIG_USB_ARCH_HAS_EHCI=y | ||
782 | # CONFIG_USB is not set | 782 | # CONFIG_USB is not set |
783 | 783 | ||
784 | # | 784 | # |
@@ -796,6 +796,11 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
796 | # CONFIG_MMC is not set | 796 | # CONFIG_MMC is not set |
797 | 797 | ||
798 | # | 798 | # |
799 | # LED devices | ||
800 | # | ||
801 | # CONFIG_NEW_LEDS is not set | ||
802 | |||
803 | # | ||
799 | # InfiniBand support | 804 | # InfiniBand support |
800 | # | 805 | # |
801 | # CONFIG_INFINIBAND is not set | 806 | # CONFIG_INFINIBAND is not set |
@@ -805,6 +810,11 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
805 | # | 810 | # |
806 | 811 | ||
807 | # | 812 | # |
813 | # Real Time Clock | ||
814 | # | ||
815 | # CONFIG_RTC_CLASS is not set | ||
816 | |||
817 | # | ||
808 | # File systems | 818 | # File systems |
809 | # | 819 | # |
810 | CONFIG_EXT2_FS=y | 820 | CONFIG_EXT2_FS=y |
@@ -878,7 +888,6 @@ CONFIG_TMPFS=y | |||
878 | # CONFIG_HUGETLBFS is not set | 888 | # CONFIG_HUGETLBFS is not set |
879 | # CONFIG_HUGETLB_PAGE is not set | 889 | # CONFIG_HUGETLB_PAGE is not set |
880 | CONFIG_RAMFS=y | 890 | CONFIG_RAMFS=y |
881 | # CONFIG_RELAYFS_FS is not set | ||
882 | # CONFIG_CONFIGFS_FS is not set | 891 | # CONFIG_CONFIGFS_FS is not set |
883 | 892 | ||
884 | # | 893 | # |
diff --git a/arch/powerpc/configs/pseries_defconfig b/arch/powerpc/configs/pseries_defconfig index daaf038a1faa..58e68ce09b0f 100644 --- a/arch/powerpc/configs/pseries_defconfig +++ b/arch/powerpc/configs/pseries_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.16-rc2 | 3 | # Linux kernel version: 2.6.17-rc1 |
4 | # Fri Feb 10 17:33:32 2006 | 4 | # Wed Apr 19 11:48:00 2006 |
5 | # | 5 | # |
6 | CONFIG_PPC64=y | 6 | CONFIG_PPC64=y |
7 | CONFIG_64BIT=y | 7 | CONFIG_64BIT=y |
@@ -9,6 +9,7 @@ CONFIG_PPC_MERGE=y | |||
9 | CONFIG_MMU=y | 9 | CONFIG_MMU=y |
10 | CONFIG_GENERIC_HARDIRQS=y | 10 | CONFIG_GENERIC_HARDIRQS=y |
11 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y | 11 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y |
12 | CONFIG_GENERIC_HWEIGHT=y | ||
12 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 13 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
13 | CONFIG_PPC=y | 14 | CONFIG_PPC=y |
14 | CONFIG_EARLY_PRINTK=y | 15 | CONFIG_EARLY_PRINTK=y |
@@ -30,6 +31,7 @@ CONFIG_POWER4=y | |||
30 | CONFIG_PPC_FPU=y | 31 | CONFIG_PPC_FPU=y |
31 | CONFIG_ALTIVEC=y | 32 | CONFIG_ALTIVEC=y |
32 | CONFIG_PPC_STD_MMU=y | 33 | CONFIG_PPC_STD_MMU=y |
34 | CONFIG_VIRT_CPU_ACCOUNTING=y | ||
33 | CONFIG_SMP=y | 35 | CONFIG_SMP=y |
34 | CONFIG_NR_CPUS=128 | 36 | CONFIG_NR_CPUS=128 |
35 | 37 | ||
@@ -55,6 +57,7 @@ CONFIG_AUDITSYSCALL=y | |||
55 | CONFIG_IKCONFIG=y | 57 | CONFIG_IKCONFIG=y |
56 | CONFIG_IKCONFIG_PROC=y | 58 | CONFIG_IKCONFIG_PROC=y |
57 | CONFIG_CPUSETS=y | 59 | CONFIG_CPUSETS=y |
60 | # CONFIG_RELAY is not set | ||
58 | CONFIG_INITRAMFS_SOURCE="" | 61 | CONFIG_INITRAMFS_SOURCE="" |
59 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | 62 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y |
60 | # CONFIG_EMBEDDED is not set | 63 | # CONFIG_EMBEDDED is not set |
@@ -69,10 +72,6 @@ CONFIG_BASE_FULL=y | |||
69 | CONFIG_FUTEX=y | 72 | CONFIG_FUTEX=y |
70 | CONFIG_EPOLL=y | 73 | CONFIG_EPOLL=y |
71 | CONFIG_SHMEM=y | 74 | CONFIG_SHMEM=y |
72 | CONFIG_CC_ALIGN_FUNCTIONS=0 | ||
73 | CONFIG_CC_ALIGN_LABELS=0 | ||
74 | CONFIG_CC_ALIGN_LOOPS=0 | ||
75 | CONFIG_CC_ALIGN_JUMPS=0 | ||
76 | CONFIG_SLAB=y | 75 | CONFIG_SLAB=y |
77 | # CONFIG_TINY_SHMEM is not set | 76 | # CONFIG_TINY_SHMEM is not set |
78 | CONFIG_BASE_SMALL=0 | 77 | CONFIG_BASE_SMALL=0 |
@@ -84,7 +83,6 @@ CONFIG_BASE_SMALL=0 | |||
84 | CONFIG_MODULES=y | 83 | CONFIG_MODULES=y |
85 | CONFIG_MODULE_UNLOAD=y | 84 | CONFIG_MODULE_UNLOAD=y |
86 | # CONFIG_MODULE_FORCE_UNLOAD is not set | 85 | # CONFIG_MODULE_FORCE_UNLOAD is not set |
87 | CONFIG_OBSOLETE_MODPARM=y | ||
88 | CONFIG_MODVERSIONS=y | 86 | CONFIG_MODVERSIONS=y |
89 | CONFIG_MODULE_SRCVERSION_ALL=y | 87 | CONFIG_MODULE_SRCVERSION_ALL=y |
90 | CONFIG_KMOD=y | 88 | CONFIG_KMOD=y |
@@ -93,6 +91,7 @@ CONFIG_STOP_MACHINE=y | |||
93 | # | 91 | # |
94 | # Block layer | 92 | # Block layer |
95 | # | 93 | # |
94 | # CONFIG_BLK_DEV_IO_TRACE is not set | ||
96 | 95 | ||
97 | # | 96 | # |
98 | # IO Schedulers | 97 | # IO Schedulers |
@@ -188,7 +187,6 @@ CONFIG_PPC_I8259=y | |||
188 | # CONFIG_PPC_INDIRECT_PCI is not set | 187 | # CONFIG_PPC_INDIRECT_PCI is not set |
189 | CONFIG_PCI=y | 188 | CONFIG_PCI=y |
190 | CONFIG_PCI_DOMAINS=y | 189 | CONFIG_PCI_DOMAINS=y |
191 | CONFIG_PCI_LEGACY_PROC=y | ||
192 | # CONFIG_PCI_DEBUG is not set | 190 | # CONFIG_PCI_DEBUG is not set |
193 | 191 | ||
194 | # | 192 | # |
@@ -235,6 +233,7 @@ CONFIG_SYN_COOKIES=y | |||
235 | CONFIG_INET_AH=m | 233 | CONFIG_INET_AH=m |
236 | CONFIG_INET_ESP=m | 234 | CONFIG_INET_ESP=m |
237 | CONFIG_INET_IPCOMP=m | 235 | CONFIG_INET_IPCOMP=m |
236 | CONFIG_INET_XFRM_TUNNEL=m | ||
238 | CONFIG_INET_TUNNEL=y | 237 | CONFIG_INET_TUNNEL=y |
239 | CONFIG_INET_DIAG=y | 238 | CONFIG_INET_DIAG=y |
240 | CONFIG_INET_TCP_DIAG=y | 239 | CONFIG_INET_TCP_DIAG=y |
@@ -246,6 +245,8 @@ CONFIG_TCP_CONG_BIC=y | |||
246 | # | 245 | # |
247 | # CONFIG_IP_VS is not set | 246 | # CONFIG_IP_VS is not set |
248 | # CONFIG_IPV6 is not set | 247 | # CONFIG_IPV6 is not set |
248 | # CONFIG_INET6_XFRM_TUNNEL is not set | ||
249 | # CONFIG_INET6_TUNNEL is not set | ||
249 | CONFIG_NETFILTER=y | 250 | CONFIG_NETFILTER=y |
250 | # CONFIG_NETFILTER_DEBUG is not set | 251 | # CONFIG_NETFILTER_DEBUG is not set |
251 | 252 | ||
@@ -272,6 +273,7 @@ CONFIG_IP_NF_IRC=m | |||
272 | CONFIG_IP_NF_TFTP=m | 273 | CONFIG_IP_NF_TFTP=m |
273 | CONFIG_IP_NF_AMANDA=m | 274 | CONFIG_IP_NF_AMANDA=m |
274 | # CONFIG_IP_NF_PPTP is not set | 275 | # CONFIG_IP_NF_PPTP is not set |
276 | # CONFIG_IP_NF_H323 is not set | ||
275 | CONFIG_IP_NF_QUEUE=m | 277 | CONFIG_IP_NF_QUEUE=m |
276 | 278 | ||
277 | # | 279 | # |
@@ -519,6 +521,7 @@ CONFIG_MD_RAID0=y | |||
519 | CONFIG_MD_RAID1=y | 521 | CONFIG_MD_RAID1=y |
520 | CONFIG_MD_RAID10=m | 522 | CONFIG_MD_RAID10=m |
521 | CONFIG_MD_RAID5=y | 523 | CONFIG_MD_RAID5=y |
524 | # CONFIG_MD_RAID5_RESHAPE is not set | ||
522 | CONFIG_MD_RAID6=m | 525 | CONFIG_MD_RAID6=m |
523 | CONFIG_MD_MULTIPATH=m | 526 | CONFIG_MD_MULTIPATH=m |
524 | CONFIG_MD_FAULTY=m | 527 | CONFIG_MD_FAULTY=m |
@@ -750,6 +753,7 @@ CONFIG_HW_CONSOLE=y | |||
750 | # | 753 | # |
751 | CONFIG_SERIAL_8250=y | 754 | CONFIG_SERIAL_8250=y |
752 | CONFIG_SERIAL_8250_CONSOLE=y | 755 | CONFIG_SERIAL_8250_CONSOLE=y |
756 | CONFIG_SERIAL_8250_PCI=y | ||
753 | CONFIG_SERIAL_8250_NR_UARTS=4 | 757 | CONFIG_SERIAL_8250_NR_UARTS=4 |
754 | CONFIG_SERIAL_8250_RUNTIME_UARTS=4 | 758 | CONFIG_SERIAL_8250_RUNTIME_UARTS=4 |
755 | # CONFIG_SERIAL_8250_EXTENDED is not set | 759 | # CONFIG_SERIAL_8250_EXTENDED is not set |
@@ -767,7 +771,9 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
767 | # CONFIG_PRINTER is not set | 771 | # CONFIG_PRINTER is not set |
768 | # CONFIG_PPDEV is not set | 772 | # CONFIG_PPDEV is not set |
769 | # CONFIG_TIPAR is not set | 773 | # CONFIG_TIPAR is not set |
774 | CONFIG_HVC_DRIVER=y | ||
770 | CONFIG_HVC_CONSOLE=y | 775 | CONFIG_HVC_CONSOLE=y |
776 | # CONFIG_HVC_RTAS is not set | ||
771 | CONFIG_HVCS=m | 777 | CONFIG_HVCS=m |
772 | 778 | ||
773 | # | 779 | # |
@@ -779,7 +785,6 @@ CONFIG_HVCS=m | |||
779 | # Watchdog Cards | 785 | # Watchdog Cards |
780 | # | 786 | # |
781 | # CONFIG_WATCHDOG is not set | 787 | # CONFIG_WATCHDOG is not set |
782 | # CONFIG_RTC is not set | ||
783 | CONFIG_GEN_RTC=y | 788 | CONFIG_GEN_RTC=y |
784 | # CONFIG_GEN_RTC_X is not set | 789 | # CONFIG_GEN_RTC_X is not set |
785 | # CONFIG_DTLK is not set | 790 | # CONFIG_DTLK is not set |
@@ -830,7 +835,6 @@ CONFIG_I2C_ALGOBIT=y | |||
830 | # CONFIG_I2C_PARPORT_LIGHT is not set | 835 | # CONFIG_I2C_PARPORT_LIGHT is not set |
831 | # CONFIG_I2C_PROSAVAGE is not set | 836 | # CONFIG_I2C_PROSAVAGE is not set |
832 | # CONFIG_I2C_SAVAGE4 is not set | 837 | # CONFIG_I2C_SAVAGE4 is not set |
833 | # CONFIG_SCx200_ACB is not set | ||
834 | # CONFIG_I2C_SIS5595 is not set | 838 | # CONFIG_I2C_SIS5595 is not set |
835 | # CONFIG_I2C_SIS630 is not set | 839 | # CONFIG_I2C_SIS630 is not set |
836 | # CONFIG_I2C_SIS96X is not set | 840 | # CONFIG_I2C_SIS96X is not set |
@@ -849,9 +853,7 @@ CONFIG_I2C_ALGOBIT=y | |||
849 | # CONFIG_SENSORS_PCF8574 is not set | 853 | # CONFIG_SENSORS_PCF8574 is not set |
850 | # CONFIG_SENSORS_PCA9539 is not set | 854 | # CONFIG_SENSORS_PCA9539 is not set |
851 | # CONFIG_SENSORS_PCF8591 is not set | 855 | # CONFIG_SENSORS_PCF8591 is not set |
852 | # CONFIG_SENSORS_RTC8564 is not set | ||
853 | # CONFIG_SENSORS_MAX6875 is not set | 856 | # CONFIG_SENSORS_MAX6875 is not set |
854 | # CONFIG_RTC_X1205_I2C is not set | ||
855 | # CONFIG_I2C_DEBUG_CORE is not set | 857 | # CONFIG_I2C_DEBUG_CORE is not set |
856 | # CONFIG_I2C_DEBUG_ALGO is not set | 858 | # CONFIG_I2C_DEBUG_ALGO is not set |
857 | # CONFIG_I2C_DEBUG_BUS is not set | 859 | # CONFIG_I2C_DEBUG_BUS is not set |
@@ -879,10 +881,6 @@ CONFIG_I2C_ALGOBIT=y | |||
879 | # | 881 | # |
880 | 882 | ||
881 | # | 883 | # |
882 | # Multimedia Capabilities Port drivers | ||
883 | # | ||
884 | |||
885 | # | ||
886 | # Multimedia devices | 884 | # Multimedia devices |
887 | # | 885 | # |
888 | # CONFIG_VIDEO_DEV is not set | 886 | # CONFIG_VIDEO_DEV is not set |
@@ -891,6 +889,7 @@ CONFIG_I2C_ALGOBIT=y | |||
891 | # Digital Video Broadcasting Devices | 889 | # Digital Video Broadcasting Devices |
892 | # | 890 | # |
893 | # CONFIG_DVB is not set | 891 | # CONFIG_DVB is not set |
892 | # CONFIG_USB_DABUSB is not set | ||
894 | 893 | ||
895 | # | 894 | # |
896 | # Graphics support | 895 | # Graphics support |
@@ -900,6 +899,7 @@ CONFIG_FB_CFB_FILLRECT=y | |||
900 | CONFIG_FB_CFB_COPYAREA=y | 899 | CONFIG_FB_CFB_COPYAREA=y |
901 | CONFIG_FB_CFB_IMAGEBLIT=y | 900 | CONFIG_FB_CFB_IMAGEBLIT=y |
902 | CONFIG_FB_MACMODES=y | 901 | CONFIG_FB_MACMODES=y |
902 | CONFIG_FB_FIRMWARE_EDID=y | ||
903 | CONFIG_FB_MODE_HELPERS=y | 903 | CONFIG_FB_MODE_HELPERS=y |
904 | CONFIG_FB_TILEBLITTING=y | 904 | CONFIG_FB_TILEBLITTING=y |
905 | # CONFIG_FB_CIRRUS is not set | 905 | # CONFIG_FB_CIRRUS is not set |
@@ -919,7 +919,6 @@ CONFIG_FB_MATROX_MYSTIQUE=y | |||
919 | CONFIG_FB_MATROX_G=y | 919 | CONFIG_FB_MATROX_G=y |
920 | # CONFIG_FB_MATROX_I2C is not set | 920 | # CONFIG_FB_MATROX_I2C is not set |
921 | CONFIG_FB_MATROX_MULTIHEAD=y | 921 | CONFIG_FB_MATROX_MULTIHEAD=y |
922 | # CONFIG_FB_RADEON_OLD is not set | ||
923 | CONFIG_FB_RADEON=y | 922 | CONFIG_FB_RADEON=y |
924 | CONFIG_FB_RADEON_I2C=y | 923 | CONFIG_FB_RADEON_I2C=y |
925 | # CONFIG_FB_RADEON_DEBUG is not set | 924 | # CONFIG_FB_RADEON_DEBUG is not set |
@@ -968,6 +967,7 @@ CONFIG_LCD_DEVICE=y | |||
968 | # | 967 | # |
969 | CONFIG_USB_ARCH_HAS_HCD=y | 968 | CONFIG_USB_ARCH_HAS_HCD=y |
970 | CONFIG_USB_ARCH_HAS_OHCI=y | 969 | CONFIG_USB_ARCH_HAS_OHCI=y |
970 | CONFIG_USB_ARCH_HAS_EHCI=y | ||
971 | CONFIG_USB=y | 971 | CONFIG_USB=y |
972 | # CONFIG_USB_DEBUG is not set | 972 | # CONFIG_USB_DEBUG is not set |
973 | 973 | ||
@@ -1048,15 +1048,6 @@ CONFIG_USB_HIDDEV=y | |||
1048 | # CONFIG_USB_MICROTEK is not set | 1048 | # CONFIG_USB_MICROTEK is not set |
1049 | 1049 | ||
1050 | # | 1050 | # |
1051 | # USB Multimedia devices | ||
1052 | # | ||
1053 | # CONFIG_USB_DABUSB is not set | ||
1054 | |||
1055 | # | ||
1056 | # Video4Linux support is needed for USB Multimedia device support | ||
1057 | # | ||
1058 | |||
1059 | # | ||
1060 | # USB Network Adapters | 1051 | # USB Network Adapters |
1061 | # | 1052 | # |
1062 | # CONFIG_USB_CATC is not set | 1053 | # CONFIG_USB_CATC is not set |
@@ -1109,6 +1100,11 @@ CONFIG_USB_MON=y | |||
1109 | # CONFIG_MMC is not set | 1100 | # CONFIG_MMC is not set |
1110 | 1101 | ||
1111 | # | 1102 | # |
1103 | # LED devices | ||
1104 | # | ||
1105 | # CONFIG_NEW_LEDS is not set | ||
1106 | |||
1107 | # | ||
1112 | # InfiniBand support | 1108 | # InfiniBand support |
1113 | # | 1109 | # |
1114 | CONFIG_INFINIBAND=m | 1110 | CONFIG_INFINIBAND=m |
@@ -1121,12 +1117,13 @@ CONFIG_INFINIBAND_IPOIB=m | |||
1121 | # CONFIG_INFINIBAND_SRP is not set | 1117 | # CONFIG_INFINIBAND_SRP is not set |
1122 | 1118 | ||
1123 | # | 1119 | # |
1124 | # SN Devices | 1120 | # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) |
1125 | # | 1121 | # |
1126 | 1122 | ||
1127 | # | 1123 | # |
1128 | # EDAC - error detection and reporting (RAS) | 1124 | # Real Time Clock |
1129 | # | 1125 | # |
1126 | # CONFIG_RTC_CLASS is not set | ||
1130 | 1127 | ||
1131 | # | 1128 | # |
1132 | # File systems | 1129 | # File systems |
@@ -1202,7 +1199,6 @@ CONFIG_TMPFS=y | |||
1202 | CONFIG_HUGETLBFS=y | 1199 | CONFIG_HUGETLBFS=y |
1203 | CONFIG_HUGETLB_PAGE=y | 1200 | CONFIG_HUGETLB_PAGE=y |
1204 | CONFIG_RAMFS=y | 1201 | CONFIG_RAMFS=y |
1205 | # CONFIG_RELAYFS_FS is not set | ||
1206 | # CONFIG_CONFIGFS_FS is not set | 1202 | # CONFIG_CONFIGFS_FS is not set |
1207 | 1203 | ||
1208 | # | 1204 | # |
diff --git a/arch/powerpc/kernel/iommu.c b/arch/powerpc/kernel/iommu.c index d9a7fdef59b9..4eba60a32890 100644 --- a/arch/powerpc/kernel/iommu.c +++ b/arch/powerpc/kernel/iommu.c | |||
@@ -61,6 +61,7 @@ __setup("iommu=", setup_iommu); | |||
61 | static unsigned long iommu_range_alloc(struct iommu_table *tbl, | 61 | static unsigned long iommu_range_alloc(struct iommu_table *tbl, |
62 | unsigned long npages, | 62 | unsigned long npages, |
63 | unsigned long *handle, | 63 | unsigned long *handle, |
64 | unsigned long mask, | ||
64 | unsigned int align_order) | 65 | unsigned int align_order) |
65 | { | 66 | { |
66 | unsigned long n, end, i, start; | 67 | unsigned long n, end, i, start; |
@@ -97,9 +98,21 @@ static unsigned long iommu_range_alloc(struct iommu_table *tbl, | |||
97 | */ | 98 | */ |
98 | if (start >= limit) | 99 | if (start >= limit) |
99 | start = largealloc ? tbl->it_largehint : tbl->it_hint; | 100 | start = largealloc ? tbl->it_largehint : tbl->it_hint; |
100 | 101 | ||
101 | again: | 102 | again: |
102 | 103 | ||
104 | if (limit + tbl->it_offset > mask) { | ||
105 | limit = mask - tbl->it_offset + 1; | ||
106 | /* If we're constrained on address range, first try | ||
107 | * at the masked hint to avoid O(n) search complexity, | ||
108 | * but on second pass, start at 0. | ||
109 | */ | ||
110 | if ((start & mask) >= limit || pass > 0) | ||
111 | start = 0; | ||
112 | else | ||
113 | start &= mask; | ||
114 | } | ||
115 | |||
103 | n = find_next_zero_bit(tbl->it_map, limit, start); | 116 | n = find_next_zero_bit(tbl->it_map, limit, start); |
104 | 117 | ||
105 | /* Align allocation */ | 118 | /* Align allocation */ |
@@ -150,14 +163,14 @@ static unsigned long iommu_range_alloc(struct iommu_table *tbl, | |||
150 | 163 | ||
151 | static dma_addr_t iommu_alloc(struct iommu_table *tbl, void *page, | 164 | static dma_addr_t iommu_alloc(struct iommu_table *tbl, void *page, |
152 | unsigned int npages, enum dma_data_direction direction, | 165 | unsigned int npages, enum dma_data_direction direction, |
153 | unsigned int align_order) | 166 | unsigned long mask, unsigned int align_order) |
154 | { | 167 | { |
155 | unsigned long entry, flags; | 168 | unsigned long entry, flags; |
156 | dma_addr_t ret = DMA_ERROR_CODE; | 169 | dma_addr_t ret = DMA_ERROR_CODE; |
157 | 170 | ||
158 | spin_lock_irqsave(&(tbl->it_lock), flags); | 171 | spin_lock_irqsave(&(tbl->it_lock), flags); |
159 | 172 | ||
160 | entry = iommu_range_alloc(tbl, npages, NULL, align_order); | 173 | entry = iommu_range_alloc(tbl, npages, NULL, mask, align_order); |
161 | 174 | ||
162 | if (unlikely(entry == DMA_ERROR_CODE)) { | 175 | if (unlikely(entry == DMA_ERROR_CODE)) { |
163 | spin_unlock_irqrestore(&(tbl->it_lock), flags); | 176 | spin_unlock_irqrestore(&(tbl->it_lock), flags); |
@@ -236,7 +249,7 @@ static void iommu_free(struct iommu_table *tbl, dma_addr_t dma_addr, | |||
236 | 249 | ||
237 | int iommu_map_sg(struct device *dev, struct iommu_table *tbl, | 250 | int iommu_map_sg(struct device *dev, struct iommu_table *tbl, |
238 | struct scatterlist *sglist, int nelems, | 251 | struct scatterlist *sglist, int nelems, |
239 | enum dma_data_direction direction) | 252 | unsigned long mask, enum dma_data_direction direction) |
240 | { | 253 | { |
241 | dma_addr_t dma_next = 0, dma_addr; | 254 | dma_addr_t dma_next = 0, dma_addr; |
242 | unsigned long flags; | 255 | unsigned long flags; |
@@ -274,7 +287,7 @@ int iommu_map_sg(struct device *dev, struct iommu_table *tbl, | |||
274 | vaddr = (unsigned long)page_address(s->page) + s->offset; | 287 | vaddr = (unsigned long)page_address(s->page) + s->offset; |
275 | npages = PAGE_ALIGN(vaddr + slen) - (vaddr & PAGE_MASK); | 288 | npages = PAGE_ALIGN(vaddr + slen) - (vaddr & PAGE_MASK); |
276 | npages >>= PAGE_SHIFT; | 289 | npages >>= PAGE_SHIFT; |
277 | entry = iommu_range_alloc(tbl, npages, &handle, 0); | 290 | entry = iommu_range_alloc(tbl, npages, &handle, mask >> PAGE_SHIFT, 0); |
278 | 291 | ||
279 | DBG(" - vaddr: %lx, size: %lx\n", vaddr, slen); | 292 | DBG(" - vaddr: %lx, size: %lx\n", vaddr, slen); |
280 | 293 | ||
@@ -479,7 +492,8 @@ void iommu_free_table(struct device_node *dn) | |||
479 | * byte within the page as vaddr. | 492 | * byte within the page as vaddr. |
480 | */ | 493 | */ |
481 | dma_addr_t iommu_map_single(struct iommu_table *tbl, void *vaddr, | 494 | dma_addr_t iommu_map_single(struct iommu_table *tbl, void *vaddr, |
482 | size_t size, enum dma_data_direction direction) | 495 | size_t size, unsigned long mask, |
496 | enum dma_data_direction direction) | ||
483 | { | 497 | { |
484 | dma_addr_t dma_handle = DMA_ERROR_CODE; | 498 | dma_addr_t dma_handle = DMA_ERROR_CODE; |
485 | unsigned long uaddr; | 499 | unsigned long uaddr; |
@@ -492,7 +506,8 @@ dma_addr_t iommu_map_single(struct iommu_table *tbl, void *vaddr, | |||
492 | npages >>= PAGE_SHIFT; | 506 | npages >>= PAGE_SHIFT; |
493 | 507 | ||
494 | if (tbl) { | 508 | if (tbl) { |
495 | dma_handle = iommu_alloc(tbl, vaddr, npages, direction, 0); | 509 | dma_handle = iommu_alloc(tbl, vaddr, npages, direction, |
510 | mask >> PAGE_SHIFT, 0); | ||
496 | if (dma_handle == DMA_ERROR_CODE) { | 511 | if (dma_handle == DMA_ERROR_CODE) { |
497 | if (printk_ratelimit()) { | 512 | if (printk_ratelimit()) { |
498 | printk(KERN_INFO "iommu_alloc failed, " | 513 | printk(KERN_INFO "iommu_alloc failed, " |
@@ -521,7 +536,7 @@ void iommu_unmap_single(struct iommu_table *tbl, dma_addr_t dma_handle, | |||
521 | * to the dma address (mapping) of the first page. | 536 | * to the dma address (mapping) of the first page. |
522 | */ | 537 | */ |
523 | void *iommu_alloc_coherent(struct iommu_table *tbl, size_t size, | 538 | void *iommu_alloc_coherent(struct iommu_table *tbl, size_t size, |
524 | dma_addr_t *dma_handle, gfp_t flag) | 539 | dma_addr_t *dma_handle, unsigned long mask, gfp_t flag) |
525 | { | 540 | { |
526 | void *ret = NULL; | 541 | void *ret = NULL; |
527 | dma_addr_t mapping; | 542 | dma_addr_t mapping; |
@@ -551,7 +566,8 @@ void *iommu_alloc_coherent(struct iommu_table *tbl, size_t size, | |||
551 | memset(ret, 0, size); | 566 | memset(ret, 0, size); |
552 | 567 | ||
553 | /* Set up tces to cover the allocated range */ | 568 | /* Set up tces to cover the allocated range */ |
554 | mapping = iommu_alloc(tbl, ret, npages, DMA_BIDIRECTIONAL, order); | 569 | mapping = iommu_alloc(tbl, ret, npages, DMA_BIDIRECTIONAL, |
570 | mask >> PAGE_SHIFT, order); | ||
555 | if (mapping == DMA_ERROR_CODE) { | 571 | if (mapping == DMA_ERROR_CODE) { |
556 | free_pages((unsigned long)ret, order); | 572 | free_pages((unsigned long)ret, order); |
557 | ret = NULL; | 573 | ret = NULL; |
diff --git a/arch/powerpc/kernel/pci_iommu.c b/arch/powerpc/kernel/pci_iommu.c index c336f3e31cff..c1d95e14bbed 100644 --- a/arch/powerpc/kernel/pci_iommu.c +++ b/arch/powerpc/kernel/pci_iommu.c | |||
@@ -59,6 +59,25 @@ static inline struct iommu_table *devnode_table(struct device *dev) | |||
59 | } | 59 | } |
60 | 60 | ||
61 | 61 | ||
62 | static inline unsigned long device_to_mask(struct device *hwdev) | ||
63 | { | ||
64 | struct pci_dev *pdev; | ||
65 | |||
66 | if (!hwdev) { | ||
67 | pdev = ppc64_isabridge_dev; | ||
68 | if (!pdev) /* This is the best guess we can do */ | ||
69 | return 0xfffffffful; | ||
70 | } else | ||
71 | pdev = to_pci_dev(hwdev); | ||
72 | |||
73 | if (pdev->dma_mask) | ||
74 | return pdev->dma_mask; | ||
75 | |||
76 | /* Assume devices without mask can take 32 bit addresses */ | ||
77 | return 0xfffffffful; | ||
78 | } | ||
79 | |||
80 | |||
62 | /* Allocates a contiguous real buffer and creates mappings over it. | 81 | /* Allocates a contiguous real buffer and creates mappings over it. |
63 | * Returns the virtual address of the buffer and sets dma_handle | 82 | * Returns the virtual address of the buffer and sets dma_handle |
64 | * to the dma address (mapping) of the first page. | 83 | * to the dma address (mapping) of the first page. |
@@ -67,7 +86,7 @@ static void *pci_iommu_alloc_coherent(struct device *hwdev, size_t size, | |||
67 | dma_addr_t *dma_handle, gfp_t flag) | 86 | dma_addr_t *dma_handle, gfp_t flag) |
68 | { | 87 | { |
69 | return iommu_alloc_coherent(devnode_table(hwdev), size, dma_handle, | 88 | return iommu_alloc_coherent(devnode_table(hwdev), size, dma_handle, |
70 | flag); | 89 | device_to_mask(hwdev), flag); |
71 | } | 90 | } |
72 | 91 | ||
73 | static void pci_iommu_free_coherent(struct device *hwdev, size_t size, | 92 | static void pci_iommu_free_coherent(struct device *hwdev, size_t size, |
@@ -85,7 +104,8 @@ static void pci_iommu_free_coherent(struct device *hwdev, size_t size, | |||
85 | static dma_addr_t pci_iommu_map_single(struct device *hwdev, void *vaddr, | 104 | static dma_addr_t pci_iommu_map_single(struct device *hwdev, void *vaddr, |
86 | size_t size, enum dma_data_direction direction) | 105 | size_t size, enum dma_data_direction direction) |
87 | { | 106 | { |
88 | return iommu_map_single(devnode_table(hwdev), vaddr, size, direction); | 107 | return iommu_map_single(devnode_table(hwdev), vaddr, size, |
108 | device_to_mask(hwdev), direction); | ||
89 | } | 109 | } |
90 | 110 | ||
91 | 111 | ||
@@ -100,7 +120,7 @@ static int pci_iommu_map_sg(struct device *pdev, struct scatterlist *sglist, | |||
100 | int nelems, enum dma_data_direction direction) | 120 | int nelems, enum dma_data_direction direction) |
101 | { | 121 | { |
102 | return iommu_map_sg(pdev, devnode_table(pdev), sglist, | 122 | return iommu_map_sg(pdev, devnode_table(pdev), sglist, |
103 | nelems, direction); | 123 | nelems, device_to_mask(pdev), direction); |
104 | } | 124 | } |
105 | 125 | ||
106 | static void pci_iommu_unmap_sg(struct device *pdev, struct scatterlist *sglist, | 126 | static void pci_iommu_unmap_sg(struct device *pdev, struct scatterlist *sglist, |
@@ -112,7 +132,19 @@ static void pci_iommu_unmap_sg(struct device *pdev, struct scatterlist *sglist, | |||
112 | /* We support DMA to/from any memory page via the iommu */ | 132 | /* We support DMA to/from any memory page via the iommu */ |
113 | static int pci_iommu_dma_supported(struct device *dev, u64 mask) | 133 | static int pci_iommu_dma_supported(struct device *dev, u64 mask) |
114 | { | 134 | { |
115 | return 1; | 135 | struct iommu_table *tbl = devnode_table(dev); |
136 | |||
137 | if (!tbl || tbl->it_offset > mask) { | ||
138 | printk(KERN_INFO "Warning: IOMMU table offset too big for device mask\n"); | ||
139 | if (tbl) | ||
140 | printk(KERN_INFO "mask: 0x%08lx, table offset: 0x%08lx\n", | ||
141 | mask, tbl->it_offset); | ||
142 | else | ||
143 | printk(KERN_INFO "mask: 0x%08lx, table unavailable\n", | ||
144 | mask); | ||
145 | return 0; | ||
146 | } else | ||
147 | return 1; | ||
116 | } | 148 | } |
117 | 149 | ||
118 | void pci_iommu_init(void) | 150 | void pci_iommu_init(void) |
diff --git a/arch/powerpc/kernel/ppc_ksyms.c b/arch/powerpc/kernel/ppc_ksyms.c index dfa5398ab3c8..4b052ae5dc34 100644 --- a/arch/powerpc/kernel/ppc_ksyms.c +++ b/arch/powerpc/kernel/ppc_ksyms.c | |||
@@ -81,6 +81,7 @@ EXPORT_SYMBOL(strcat); | |||
81 | EXPORT_SYMBOL(strlen); | 81 | EXPORT_SYMBOL(strlen); |
82 | EXPORT_SYMBOL(strcmp); | 82 | EXPORT_SYMBOL(strcmp); |
83 | EXPORT_SYMBOL(strcasecmp); | 83 | EXPORT_SYMBOL(strcasecmp); |
84 | EXPORT_SYMBOL(strncasecmp); | ||
84 | 85 | ||
85 | EXPORT_SYMBOL(csum_partial); | 86 | EXPORT_SYMBOL(csum_partial); |
86 | EXPORT_SYMBOL(csum_partial_copy_generic); | 87 | EXPORT_SYMBOL(csum_partial_copy_generic); |
diff --git a/arch/powerpc/kernel/prom.c b/arch/powerpc/kernel/prom.c index 4336390bcf34..1cb69e8fb0b1 100644 --- a/arch/powerpc/kernel/prom.c +++ b/arch/powerpc/kernel/prom.c | |||
@@ -62,7 +62,7 @@ static int __initdata dt_root_addr_cells; | |||
62 | static int __initdata dt_root_size_cells; | 62 | static int __initdata dt_root_size_cells; |
63 | 63 | ||
64 | #ifdef CONFIG_PPC64 | 64 | #ifdef CONFIG_PPC64 |
65 | static int __initdata iommu_is_off; | 65 | int __initdata iommu_is_off; |
66 | int __initdata iommu_force_on; | 66 | int __initdata iommu_force_on; |
67 | unsigned long tce_alloc_start, tce_alloc_end; | 67 | unsigned long tce_alloc_start, tce_alloc_end; |
68 | #endif | 68 | #endif |
diff --git a/arch/powerpc/kernel/sysfs.c b/arch/powerpc/kernel/sysfs.c index 73560ef6f802..ed737cacf92d 100644 --- a/arch/powerpc/kernel/sysfs.c +++ b/arch/powerpc/kernel/sysfs.c | |||
@@ -279,7 +279,7 @@ static void unregister_cpu_online(unsigned int cpu) | |||
279 | } | 279 | } |
280 | #endif /* CONFIG_HOTPLUG_CPU */ | 280 | #endif /* CONFIG_HOTPLUG_CPU */ |
281 | 281 | ||
282 | static int __devinit sysfs_cpu_notify(struct notifier_block *self, | 282 | static int sysfs_cpu_notify(struct notifier_block *self, |
283 | unsigned long action, void *hcpu) | 283 | unsigned long action, void *hcpu) |
284 | { | 284 | { |
285 | unsigned int cpu = (unsigned int)(long)hcpu; | 285 | unsigned int cpu = (unsigned int)(long)hcpu; |
@@ -297,7 +297,7 @@ static int __devinit sysfs_cpu_notify(struct notifier_block *self, | |||
297 | return NOTIFY_OK; | 297 | return NOTIFY_OK; |
298 | } | 298 | } |
299 | 299 | ||
300 | static struct notifier_block __devinitdata sysfs_cpu_nb = { | 300 | static struct notifier_block sysfs_cpu_nb = { |
301 | .notifier_call = sysfs_cpu_notify, | 301 | .notifier_call = sysfs_cpu_notify, |
302 | }; | 302 | }; |
303 | 303 | ||
diff --git a/arch/powerpc/kernel/systbl.S b/arch/powerpc/kernel/systbl.S index a14c96403840..0b98eea73c5e 100644 --- a/arch/powerpc/kernel/systbl.S +++ b/arch/powerpc/kernel/systbl.S | |||
@@ -324,3 +324,9 @@ COMPAT_SYS(ppoll) | |||
324 | SYSCALL(unshare) | 324 | SYSCALL(unshare) |
325 | SYSCALL(splice) | 325 | SYSCALL(splice) |
326 | SYSCALL(tee) | 326 | SYSCALL(tee) |
327 | SYSCALL(vmsplice) | ||
328 | |||
329 | /* | ||
330 | * please add new calls to arch/powerpc/platforms/cell/spu_callbacks.c | ||
331 | * as well when appropriate. | ||
332 | */ | ||
diff --git a/arch/powerpc/kernel/vio.c b/arch/powerpc/kernel/vio.c index 13c655ba2841..971020cf3f7d 100644 --- a/arch/powerpc/kernel/vio.c +++ b/arch/powerpc/kernel/vio.c | |||
@@ -202,7 +202,7 @@ static dma_addr_t vio_map_single(struct device *dev, void *vaddr, | |||
202 | size_t size, enum dma_data_direction direction) | 202 | size_t size, enum dma_data_direction direction) |
203 | { | 203 | { |
204 | return iommu_map_single(to_vio_dev(dev)->iommu_table, vaddr, size, | 204 | return iommu_map_single(to_vio_dev(dev)->iommu_table, vaddr, size, |
205 | direction); | 205 | ~0ul, direction); |
206 | } | 206 | } |
207 | 207 | ||
208 | static void vio_unmap_single(struct device *dev, dma_addr_t dma_handle, | 208 | static void vio_unmap_single(struct device *dev, dma_addr_t dma_handle, |
@@ -216,7 +216,7 @@ static int vio_map_sg(struct device *dev, struct scatterlist *sglist, | |||
216 | int nelems, enum dma_data_direction direction) | 216 | int nelems, enum dma_data_direction direction) |
217 | { | 217 | { |
218 | return iommu_map_sg(dev, to_vio_dev(dev)->iommu_table, sglist, | 218 | return iommu_map_sg(dev, to_vio_dev(dev)->iommu_table, sglist, |
219 | nelems, direction); | 219 | nelems, ~0ul, direction); |
220 | } | 220 | } |
221 | 221 | ||
222 | static void vio_unmap_sg(struct device *dev, struct scatterlist *sglist, | 222 | static void vio_unmap_sg(struct device *dev, struct scatterlist *sglist, |
@@ -229,7 +229,7 @@ static void *vio_alloc_coherent(struct device *dev, size_t size, | |||
229 | dma_addr_t *dma_handle, gfp_t flag) | 229 | dma_addr_t *dma_handle, gfp_t flag) |
230 | { | 230 | { |
231 | return iommu_alloc_coherent(to_vio_dev(dev)->iommu_table, size, | 231 | return iommu_alloc_coherent(to_vio_dev(dev)->iommu_table, size, |
232 | dma_handle, flag); | 232 | dma_handle, ~0ul, flag); |
233 | } | 233 | } |
234 | 234 | ||
235 | static void vio_free_coherent(struct device *dev, size_t size, | 235 | static void vio_free_coherent(struct device *dev, size_t size, |
diff --git a/arch/powerpc/platforms/cell/spu_callbacks.c b/arch/powerpc/platforms/cell/spu_callbacks.c index 6594bec73882..b283380a2a18 100644 --- a/arch/powerpc/platforms/cell/spu_callbacks.c +++ b/arch/powerpc/platforms/cell/spu_callbacks.c | |||
@@ -317,17 +317,17 @@ void *spu_syscall_table[] = { | |||
317 | [__NR_ppoll] sys_ni_syscall, /* sys_ppoll */ | 317 | [__NR_ppoll] sys_ni_syscall, /* sys_ppoll */ |
318 | [__NR_unshare] sys_unshare, | 318 | [__NR_unshare] sys_unshare, |
319 | [__NR_splice] sys_splice, | 319 | [__NR_splice] sys_splice, |
320 | [__NR_tee] sys_tee, | ||
321 | [__NR_vmsplice] sys_vmsplice, | ||
320 | }; | 322 | }; |
321 | 323 | ||
322 | long spu_sys_callback(struct spu_syscall_block *s) | 324 | long spu_sys_callback(struct spu_syscall_block *s) |
323 | { | 325 | { |
324 | long (*syscall)(u64 a1, u64 a2, u64 a3, u64 a4, u64 a5, u64 a6); | 326 | long (*syscall)(u64 a1, u64 a2, u64 a3, u64 a4, u64 a5, u64 a6); |
325 | 327 | ||
326 | BUILD_BUG_ON(ARRAY_SIZE(spu_syscall_table) != __NR_syscalls); | ||
327 | |||
328 | syscall = spu_syscall_table[s->nr_ret]; | 328 | syscall = spu_syscall_table[s->nr_ret]; |
329 | 329 | ||
330 | if (s->nr_ret >= __NR_syscalls) { | 330 | if (s->nr_ret >= ARRAY_SIZE(spu_syscall_table)) { |
331 | pr_debug("%s: invalid syscall #%ld", __FUNCTION__, s->nr_ret); | 331 | pr_debug("%s: invalid syscall #%ld", __FUNCTION__, s->nr_ret); |
332 | return -ENOSYS; | 332 | return -ENOSYS; |
333 | } | 333 | } |
diff --git a/arch/powerpc/platforms/powermac/low_i2c.c b/arch/powerpc/platforms/powermac/low_i2c.c index e14f9ac55cf4..df2343e1956b 100644 --- a/arch/powerpc/platforms/powermac/low_i2c.c +++ b/arch/powerpc/platforms/powermac/low_i2c.c | |||
@@ -231,6 +231,14 @@ static u8 kw_i2c_wait_interrupt(struct pmac_i2c_host_kw *host) | |||
231 | return isr; | 231 | return isr; |
232 | } | 232 | } |
233 | 233 | ||
234 | static void kw_i2c_do_stop(struct pmac_i2c_host_kw *host, int result) | ||
235 | { | ||
236 | kw_write_reg(reg_control, KW_I2C_CTL_STOP); | ||
237 | host->state = state_stop; | ||
238 | host->result = result; | ||
239 | } | ||
240 | |||
241 | |||
234 | static void kw_i2c_handle_interrupt(struct pmac_i2c_host_kw *host, u8 isr) | 242 | static void kw_i2c_handle_interrupt(struct pmac_i2c_host_kw *host, u8 isr) |
235 | { | 243 | { |
236 | u8 ack; | 244 | u8 ack; |
@@ -246,42 +254,36 @@ static void kw_i2c_handle_interrupt(struct pmac_i2c_host_kw *host, u8 isr) | |||
246 | } | 254 | } |
247 | 255 | ||
248 | if (isr == 0) { | 256 | if (isr == 0) { |
257 | printk(KERN_WARNING "low_i2c: Timeout in i2c transfer" | ||
258 | " on keywest !\n"); | ||
249 | if (host->state != state_stop) { | 259 | if (host->state != state_stop) { |
250 | DBG_LOW("KW: Timeout !\n"); | 260 | kw_i2c_do_stop(host, -EIO); |
251 | host->result = -EIO; | 261 | return; |
252 | goto stop; | ||
253 | } | ||
254 | if (host->state == state_stop) { | ||
255 | ack = kw_read_reg(reg_status); | ||
256 | if (ack & KW_I2C_STAT_BUSY) | ||
257 | kw_write_reg(reg_status, 0); | ||
258 | host->state = state_idle; | ||
259 | kw_write_reg(reg_ier, 0x00); | ||
260 | if (!host->polled) | ||
261 | complete(&host->complete); | ||
262 | } | 262 | } |
263 | ack = kw_read_reg(reg_status); | ||
264 | if (ack & KW_I2C_STAT_BUSY) | ||
265 | kw_write_reg(reg_status, 0); | ||
266 | host->state = state_idle; | ||
267 | kw_write_reg(reg_ier, 0x00); | ||
268 | if (!host->polled) | ||
269 | complete(&host->complete); | ||
263 | return; | 270 | return; |
264 | } | 271 | } |
265 | 272 | ||
266 | if (isr & KW_I2C_IRQ_ADDR) { | 273 | if (isr & KW_I2C_IRQ_ADDR) { |
267 | ack = kw_read_reg(reg_status); | 274 | ack = kw_read_reg(reg_status); |
268 | if (host->state != state_addr) { | 275 | if (host->state != state_addr) { |
269 | kw_write_reg(reg_isr, KW_I2C_IRQ_ADDR); | ||
270 | WRONG_STATE("KW_I2C_IRQ_ADDR"); | 276 | WRONG_STATE("KW_I2C_IRQ_ADDR"); |
271 | host->result = -EIO; | 277 | kw_i2c_do_stop(host, -EIO); |
272 | goto stop; | ||
273 | } | 278 | } |
274 | if ((ack & KW_I2C_STAT_LAST_AAK) == 0) { | 279 | if ((ack & KW_I2C_STAT_LAST_AAK) == 0) { |
275 | host->result = -ENODEV; | 280 | host->result = -ENXIO; |
276 | DBG_LOW("KW: NAK on address\n"); | ||
277 | host->state = state_stop; | 281 | host->state = state_stop; |
278 | return; | 282 | DBG_LOW("KW: NAK on address\n"); |
279 | } else { | 283 | } else { |
280 | if (host->len == 0) { | 284 | if (host->len == 0) |
281 | kw_write_reg(reg_isr, KW_I2C_IRQ_ADDR); | 285 | kw_i2c_do_stop(host, 0); |
282 | goto stop; | 286 | else if (host->rw) { |
283 | } | ||
284 | if (host->rw) { | ||
285 | host->state = state_read; | 287 | host->state = state_read; |
286 | if (host->len > 1) | 288 | if (host->len > 1) |
287 | kw_write_reg(reg_control, | 289 | kw_write_reg(reg_control, |
@@ -308,25 +310,19 @@ static void kw_i2c_handle_interrupt(struct pmac_i2c_host_kw *host, u8 isr) | |||
308 | ack = kw_read_reg(reg_status); | 310 | ack = kw_read_reg(reg_status); |
309 | if ((ack & KW_I2C_STAT_LAST_AAK) == 0) { | 311 | if ((ack & KW_I2C_STAT_LAST_AAK) == 0) { |
310 | DBG_LOW("KW: nack on data write\n"); | 312 | DBG_LOW("KW: nack on data write\n"); |
311 | host->result = -EIO; | 313 | host->result = -EFBIG; |
312 | goto stop; | 314 | host->state = state_stop; |
313 | } else if (host->len) { | 315 | } else if (host->len) { |
314 | kw_write_reg(reg_data, *(host->data++)); | 316 | kw_write_reg(reg_data, *(host->data++)); |
315 | host->len--; | 317 | host->len--; |
316 | } else { | 318 | } else |
317 | kw_write_reg(reg_control, KW_I2C_CTL_STOP); | 319 | kw_i2c_do_stop(host, 0); |
318 | host->state = state_stop; | ||
319 | host->result = 0; | ||
320 | } | ||
321 | kw_write_reg(reg_isr, KW_I2C_IRQ_DATA); | ||
322 | } else { | 320 | } else { |
323 | kw_write_reg(reg_isr, KW_I2C_IRQ_DATA); | ||
324 | WRONG_STATE("KW_I2C_IRQ_DATA"); | 321 | WRONG_STATE("KW_I2C_IRQ_DATA"); |
325 | if (host->state != state_stop) { | 322 | if (host->state != state_stop) |
326 | host->result = -EIO; | 323 | kw_i2c_do_stop(host, -EIO); |
327 | goto stop; | ||
328 | } | ||
329 | } | 324 | } |
325 | kw_write_reg(reg_isr, KW_I2C_IRQ_DATA); | ||
330 | } | 326 | } |
331 | 327 | ||
332 | if (isr & KW_I2C_IRQ_STOP) { | 328 | if (isr & KW_I2C_IRQ_STOP) { |
@@ -340,14 +336,10 @@ static void kw_i2c_handle_interrupt(struct pmac_i2c_host_kw *host, u8 isr) | |||
340 | complete(&host->complete); | 336 | complete(&host->complete); |
341 | } | 337 | } |
342 | 338 | ||
339 | /* Below should only happen in manual mode which we don't use ... */ | ||
343 | if (isr & KW_I2C_IRQ_START) | 340 | if (isr & KW_I2C_IRQ_START) |
344 | kw_write_reg(reg_isr, KW_I2C_IRQ_START); | 341 | kw_write_reg(reg_isr, KW_I2C_IRQ_START); |
345 | 342 | ||
346 | return; | ||
347 | stop: | ||
348 | kw_write_reg(reg_control, KW_I2C_CTL_STOP); | ||
349 | host->state = state_stop; | ||
350 | return; | ||
351 | } | 343 | } |
352 | 344 | ||
353 | /* Interrupt handler */ | 345 | /* Interrupt handler */ |
@@ -544,11 +536,11 @@ static struct pmac_i2c_host_kw *__init kw_i2c_host_init(struct device_node *np) | |||
544 | return NULL; | 536 | return NULL; |
545 | } | 537 | } |
546 | 538 | ||
547 | /* Make sure IRA is disabled */ | 539 | /* Make sure IRQ is disabled */ |
548 | kw_write_reg(reg_ier, 0); | 540 | kw_write_reg(reg_ier, 0); |
549 | 541 | ||
550 | /* Request chip interrupt */ | 542 | /* Request chip interrupt */ |
551 | if (request_irq(host->irq, kw_i2c_irq, SA_SHIRQ, "keywest i2c", host)) | 543 | if (request_irq(host->irq, kw_i2c_irq, 0, "keywest i2c", host)) |
552 | host->irq = NO_IRQ; | 544 | host->irq = NO_IRQ; |
553 | 545 | ||
554 | printk(KERN_INFO "KeyWest i2c @0x%08x irq %d %s\n", | 546 | printk(KERN_INFO "KeyWest i2c @0x%08x irq %d %s\n", |
diff --git a/arch/powerpc/sysdev/dart_iommu.c b/arch/powerpc/sysdev/dart_iommu.c index 61d317428610..38087bd6e3cf 100644 --- a/arch/powerpc/sysdev/dart_iommu.c +++ b/arch/powerpc/sysdev/dart_iommu.c | |||
@@ -49,6 +49,7 @@ | |||
49 | 49 | ||
50 | #include "dart.h" | 50 | #include "dart.h" |
51 | 51 | ||
52 | extern int iommu_is_off; | ||
52 | extern int iommu_force_on; | 53 | extern int iommu_force_on; |
53 | 54 | ||
54 | /* Physical base address and size of the DART table */ | 55 | /* Physical base address and size of the DART table */ |
@@ -329,10 +330,17 @@ void iommu_init_early_dart(void) | |||
329 | 330 | ||
330 | void __init alloc_dart_table(void) | 331 | void __init alloc_dart_table(void) |
331 | { | 332 | { |
332 | /* Only reserve DART space if machine has more than 2GB of RAM | 333 | /* Only reserve DART space if machine has more than 1GB of RAM |
333 | * or if requested with iommu=on on cmdline. | 334 | * or if requested with iommu=on on cmdline. |
335 | * | ||
336 | * 1GB of RAM is picked as limit because some default devices | ||
337 | * (i.e. Airport Extreme) have 30 bit address range limits. | ||
334 | */ | 338 | */ |
335 | if (lmb_end_of_DRAM() <= 0x80000000ull && !iommu_force_on) | 339 | |
340 | if (iommu_is_off) | ||
341 | return; | ||
342 | |||
343 | if (!iommu_force_on && lmb_end_of_DRAM() <= 0x40000000ull) | ||
336 | return; | 344 | return; |
337 | 345 | ||
338 | /* 512 pages (2MB) is max DART tablesize. */ | 346 | /* 512 pages (2MB) is max DART tablesize. */ |