Merge git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc-merge

* git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc-merge:
powerpc: Fix define_machine so machine_is() works from modules
powerpc/ppc: export strncasecmp
[PATCH] powerpc: fix oops in alsa powermac driver
[PATCH] powerpc: update {g5,iseries,pseries}_defconfigs
[PATCH] ppc: Fix powersave code on arch/ppc
[PATCH] powerpc/cell: remove BUILD_BUG_ON and add sys_tee to spu_syscall_table
[PATCH] powermac: Fix i2c on keywest based chips
[PATCH] powerpc: Lower threshold for DART enablement to 1GB
[PATCH] powerpc: IOMMU support for honoring dma_mask

+231 -169
+28 -30
arch/powerpc/configs/g5_defconfig
··· 1 1 # 2 2 # Automatically generated make config: don't edit 3 - # Linux kernel version: 2.6.16-rc2 4 - # Fri Feb 10 17:33:08 2006 3 + # Linux kernel version: 2.6.17-rc1 4 + # Wed Apr 19 13:24:37 2006 5 5 # 6 6 CONFIG_PPC64=y 7 7 CONFIG_64BIT=y ··· 9 9 CONFIG_MMU=y 10 10 CONFIG_GENERIC_HARDIRQS=y 11 11 CONFIG_RWSEM_XCHGADD_ALGORITHM=y 12 + CONFIG_GENERIC_HWEIGHT=y 12 13 CONFIG_GENERIC_CALIBRATE_DELAY=y 13 14 CONFIG_PPC=y 14 15 CONFIG_EARLY_PRINTK=y ··· 30 29 CONFIG_PPC_FPU=y 31 30 CONFIG_ALTIVEC=y 32 31 CONFIG_PPC_STD_MMU=y 32 + CONFIG_VIRT_CPU_ACCOUNTING=y 33 33 CONFIG_SMP=y 34 34 CONFIG_NR_CPUS=4 35 35 ··· 55 53 CONFIG_IKCONFIG=y 56 54 CONFIG_IKCONFIG_PROC=y 57 55 # CONFIG_CPUSETS is not set 56 + # CONFIG_RELAY is not set 58 57 CONFIG_INITRAMFS_SOURCE="" 59 58 CONFIG_CC_OPTIMIZE_FOR_SIZE=y 60 59 # CONFIG_EMBEDDED is not set ··· 70 67 CONFIG_FUTEX=y 71 68 CONFIG_EPOLL=y 72 69 CONFIG_SHMEM=y 73 - CONFIG_CC_ALIGN_FUNCTIONS=0 74 - CONFIG_CC_ALIGN_LABELS=0 75 - CONFIG_CC_ALIGN_LOOPS=0 76 - CONFIG_CC_ALIGN_JUMPS=0 77 70 CONFIG_SLAB=y 78 71 # CONFIG_TINY_SHMEM is not set 79 72 CONFIG_BASE_SMALL=0 ··· 81 82 CONFIG_MODULES=y 82 83 CONFIG_MODULE_UNLOAD=y 83 84 # CONFIG_MODULE_FORCE_UNLOAD is not set 84 - CONFIG_OBSOLETE_MODPARM=y 85 85 CONFIG_MODVERSIONS=y 86 86 CONFIG_MODULE_SRCVERSION_ALL=y 87 87 CONFIG_KMOD=y ··· 89 91 # 90 92 # Block layer 91 93 # 94 + # CONFIG_BLK_DEV_IO_TRACE is not set 92 95 93 96 # 94 97 # IO Schedulers ··· 184 185 # CONFIG_PPC_INDIRECT_PCI is not set 185 186 CONFIG_PCI=y 186 187 CONFIG_PCI_DOMAINS=y 187 - CONFIG_PCI_LEGACY_PROC=y 188 188 # CONFIG_PCI_DEBUG is not set 189 189 190 190 # ··· 225 227 CONFIG_INET_AH=m 226 228 CONFIG_INET_ESP=m 227 229 CONFIG_INET_IPCOMP=m 230 + CONFIG_INET_XFRM_TUNNEL=m 228 231 CONFIG_INET_TUNNEL=y 229 232 CONFIG_INET_DIAG=y 230 233 CONFIG_INET_TCP_DIAG=y ··· 237 238 # 238 239 # CONFIG_IP_VS is not set 239 240 # CONFIG_IPV6 is not set 241 + # CONFIG_INET6_XFRM_TUNNEL is not set 242 + # CONFIG_INET6_TUNNEL is not set 240 243 CONFIG_NETFILTER=y 241 244 # CONFIG_NETFILTER_DEBUG is not set 242 245 ··· 262 261 CONFIG_IP_NF_TFTP=m 263 262 CONFIG_IP_NF_AMANDA=m 264 263 # CONFIG_IP_NF_PPTP is not set 264 + # CONFIG_IP_NF_H323 is not set 265 265 CONFIG_IP_NF_QUEUE=m 266 266 267 267 # ··· 515 513 CONFIG_MD_RAID1=y 516 514 CONFIG_MD_RAID10=m 517 515 CONFIG_MD_RAID5=y 516 + # CONFIG_MD_RAID5_RESHAPE is not set 518 517 CONFIG_MD_RAID6=m 519 518 CONFIG_MD_MULTIPATH=m 520 519 CONFIG_MD_FAULTY=m ··· 764 761 # Watchdog Cards 765 762 # 766 763 # CONFIG_WATCHDOG is not set 767 - # CONFIG_RTC is not set 768 764 CONFIG_GEN_RTC=y 769 765 # CONFIG_GEN_RTC_X is not set 770 766 # CONFIG_DTLK is not set ··· 774 772 # Ftape, the floppy tape device driver 775 773 # 776 774 CONFIG_AGP=m 775 + # CONFIG_AGP_VIA is not set 777 776 CONFIG_AGP_UNINORTH=m 778 777 # CONFIG_DRM is not set 779 778 CONFIG_RAW_DRIVER=y ··· 816 813 # CONFIG_I2C_PARPORT_LIGHT is not set 817 814 # CONFIG_I2C_PROSAVAGE is not set 818 815 # CONFIG_I2C_SAVAGE4 is not set 819 - # CONFIG_SCx200_ACB is not set 820 816 # CONFIG_I2C_SIS5595 is not set 821 817 # CONFIG_I2C_SIS630 is not set 822 818 # CONFIG_I2C_SIS96X is not set ··· 834 832 # CONFIG_SENSORS_PCF8574 is not set 835 833 # CONFIG_SENSORS_PCA9539 is not set 836 834 # CONFIG_SENSORS_PCF8591 is not set 837 - # CONFIG_SENSORS_RTC8564 is not set 838 835 # CONFIG_SENSORS_MAX6875 is not set 839 - # CONFIG_RTC_X1205_I2C is not set 840 836 # CONFIG_I2C_DEBUG_CORE is not set 841 837 # CONFIG_I2C_DEBUG_ALGO is not set 842 838 # CONFIG_I2C_DEBUG_BUS is not set ··· 862 862 # 863 863 864 864 # 865 - # Multimedia Capabilities Port drivers 866 - # 867 - 868 - # 869 865 # Multimedia devices 870 866 # 871 867 # CONFIG_VIDEO_DEV is not set ··· 870 874 # Digital Video Broadcasting Devices 871 875 # 872 876 # CONFIG_DVB is not set 877 + # CONFIG_USB_DABUSB is not set 873 878 874 879 # 875 880 # Graphics support ··· 880 883 CONFIG_FB_CFB_COPYAREA=y 881 884 CONFIG_FB_CFB_IMAGEBLIT=y 882 885 CONFIG_FB_MACMODES=y 886 + CONFIG_FB_FIRMWARE_EDID=y 883 887 CONFIG_FB_MODE_HELPERS=y 884 888 CONFIG_FB_TILEBLITTING=y 885 889 # CONFIG_FB_CIRRUS is not set ··· 899 901 CONFIG_FB_NVIDIA_I2C=y 900 902 # CONFIG_FB_RIVA is not set 901 903 # CONFIG_FB_MATROX is not set 902 - # CONFIG_FB_RADEON_OLD is not set 903 904 CONFIG_FB_RADEON=y 904 905 CONFIG_FB_RADEON_I2C=y 905 906 # CONFIG_FB_RADEON_DEBUG is not set ··· 955 958 CONFIG_SND_OSSEMUL=y 956 959 CONFIG_SND_MIXER_OSS=m 957 960 CONFIG_SND_PCM_OSS=m 961 + CONFIG_SND_PCM_OSS_PLUGINS=y 958 962 CONFIG_SND_SEQUENCER_OSS=y 959 963 # CONFIG_SND_DYNAMIC_MINORS is not set 960 964 CONFIG_SND_SUPPORT_OLD_API=y 965 + CONFIG_SND_VERBOSE_PROCFS=y 961 966 # CONFIG_SND_VERBOSE_PRINTK is not set 962 967 # CONFIG_SND_DEBUG is not set 963 968 ··· 976 977 # PCI devices 977 978 # 978 979 # CONFIG_SND_AD1889 is not set 980 + # CONFIG_SND_ALS300 is not set 979 981 # CONFIG_SND_ALS4000 is not set 980 982 # CONFIG_SND_ALI5451 is not set 981 983 # CONFIG_SND_ATIIXP is not set ··· 1009 1009 # CONFIG_SND_MIXART is not set 1010 1010 # CONFIG_SND_NM256 is not set 1011 1011 # CONFIG_SND_PCXHR is not set 1012 + # CONFIG_SND_RIPTIDE is not set 1012 1013 # CONFIG_SND_RME32 is not set 1013 1014 # CONFIG_SND_RME96 is not set 1014 1015 # CONFIG_SND_RME9652 is not set ··· 1042 1041 # 1043 1042 CONFIG_USB_ARCH_HAS_HCD=y 1044 1043 CONFIG_USB_ARCH_HAS_OHCI=y 1044 + CONFIG_USB_ARCH_HAS_EHCI=y 1045 1045 CONFIG_USB=y 1046 1046 # CONFIG_USB_DEBUG is not set 1047 1047 ··· 1070 1068 # 1071 1069 # USB Device Class drivers 1072 1070 # 1073 - # CONFIG_OBSOLETE_OSS_USB_DRIVER is not set 1074 1071 CONFIG_USB_ACM=m 1075 1072 CONFIG_USB_PRINTER=y 1076 1073 ··· 1125 1124 # 1126 1125 # CONFIG_USB_MDC800 is not set 1127 1126 # CONFIG_USB_MICROTEK is not set 1128 - 1129 - # 1130 - # USB Multimedia devices 1131 - # 1132 - # CONFIG_USB_DABUSB is not set 1133 - 1134 - # 1135 - # Video4Linux support is needed for USB Multimedia device support 1136 - # 1137 1127 1138 1128 # 1139 1129 # USB Network Adapters ··· 1186 1194 CONFIG_USB_SERIAL_KLSI=m 1187 1195 CONFIG_USB_SERIAL_KOBIL_SCT=m 1188 1196 CONFIG_USB_SERIAL_MCT_U232=m 1197 + # CONFIG_USB_SERIAL_NAVMAN is not set 1189 1198 CONFIG_USB_SERIAL_PL2303=m 1190 1199 # CONFIG_USB_SERIAL_HP4X is not set 1191 1200 CONFIG_USB_SERIAL_SAFE=m ··· 1230 1237 # CONFIG_MMC is not set 1231 1238 1232 1239 # 1240 + # LED devices 1241 + # 1242 + # CONFIG_NEW_LEDS is not set 1243 + 1244 + # 1233 1245 # InfiniBand support 1234 1246 # 1235 1247 # CONFIG_INFINIBAND is not set 1236 1248 1237 1249 # 1238 - # SN Devices 1250 + # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) 1239 1251 # 1240 1252 1241 1253 # 1242 - # EDAC - error detection and reporting (RAS) 1254 + # Real Time Clock 1243 1255 # 1256 + # CONFIG_RTC_CLASS is not set 1244 1257 1245 1258 # 1246 1259 # File systems ··· 1318 1319 CONFIG_HUGETLBFS=y 1319 1320 CONFIG_HUGETLB_PAGE=y 1320 1321 CONFIG_RAMFS=y 1321 - # CONFIG_RELAYFS_FS is not set 1322 1322 # CONFIG_CONFIGFS_FS is not set 1323 1323 1324 1324 #
+26 -17
arch/powerpc/configs/iseries_defconfig
··· 1 1 # 2 2 # Automatically generated make config: don't edit 3 - # Linux kernel version: 2.6.16-rc6 4 - # Wed Mar 15 16:19:52 2006 3 + # Linux kernel version: 2.6.17-rc1 4 + # Wed Apr 19 11:46:44 2006 5 5 # 6 6 CONFIG_PPC64=y 7 7 CONFIG_64BIT=y ··· 9 9 CONFIG_MMU=y 10 10 CONFIG_GENERIC_HARDIRQS=y 11 11 CONFIG_RWSEM_XCHGADD_ALGORITHM=y 12 + CONFIG_GENERIC_HWEIGHT=y 12 13 CONFIG_GENERIC_CALIBRATE_DELAY=y 13 14 CONFIG_PPC=y 14 15 CONFIG_EARLY_PRINTK=y ··· 31 30 CONFIG_PPC_FPU=y 32 31 # CONFIG_ALTIVEC is not set 33 32 CONFIG_PPC_STD_MMU=y 33 + CONFIG_VIRT_CPU_ACCOUNTING=y 34 34 CONFIG_SMP=y 35 35 CONFIG_NR_CPUS=32 36 36 ··· 57 55 CONFIG_IKCONFIG=y 58 56 CONFIG_IKCONFIG_PROC=y 59 57 # CONFIG_CPUSETS is not set 58 + # CONFIG_RELAY is not set 60 59 CONFIG_INITRAMFS_SOURCE="" 61 60 CONFIG_CC_OPTIMIZE_FOR_SIZE=y 62 61 # CONFIG_EMBEDDED is not set ··· 72 69 CONFIG_FUTEX=y 73 70 CONFIG_EPOLL=y 74 71 CONFIG_SHMEM=y 75 - CONFIG_CC_ALIGN_FUNCTIONS=0 76 - CONFIG_CC_ALIGN_LABELS=0 77 - CONFIG_CC_ALIGN_LOOPS=0 78 - CONFIG_CC_ALIGN_JUMPS=0 79 72 CONFIG_SLAB=y 80 73 # CONFIG_TINY_SHMEM is not set 81 74 CONFIG_BASE_SMALL=0 ··· 83 84 CONFIG_MODULES=y 84 85 CONFIG_MODULE_UNLOAD=y 85 86 # CONFIG_MODULE_FORCE_UNLOAD is not set 86 - CONFIG_OBSOLETE_MODPARM=y 87 87 CONFIG_MODVERSIONS=y 88 88 CONFIG_MODULE_SRCVERSION_ALL=y 89 89 CONFIG_KMOD=y ··· 91 93 # 92 94 # Block layer 93 95 # 96 + # CONFIG_BLK_DEV_IO_TRACE is not set 94 97 95 98 # 96 99 # IO Schedulers ··· 164 165 # CONFIG_PPC_INDIRECT_PCI is not set 165 166 CONFIG_PCI=y 166 167 CONFIG_PCI_DOMAINS=y 167 - CONFIG_PCI_LEGACY_PROC=y 168 168 # CONFIG_PCI_DEBUG is not set 169 169 170 170 # ··· 205 207 CONFIG_INET_AH=m 206 208 CONFIG_INET_ESP=m 207 209 CONFIG_INET_IPCOMP=m 210 + CONFIG_INET_XFRM_TUNNEL=m 208 211 CONFIG_INET_TUNNEL=y 209 212 CONFIG_INET_DIAG=y 210 213 CONFIG_INET_TCP_DIAG=y ··· 217 218 # 218 219 # CONFIG_IP_VS is not set 219 220 # CONFIG_IPV6 is not set 221 + # CONFIG_INET6_XFRM_TUNNEL is not set 222 + # CONFIG_INET6_TUNNEL is not set 220 223 CONFIG_NETFILTER=y 221 224 # CONFIG_NETFILTER_DEBUG is not set 222 225 ··· 237 236 CONFIG_NETFILTER_XT_MATCH_CONNMARK=m 238 237 CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m 239 238 # CONFIG_NETFILTER_XT_MATCH_DCCP is not set 239 + # CONFIG_NETFILTER_XT_MATCH_ESP is not set 240 240 CONFIG_NETFILTER_XT_MATCH_HELPER=m 241 241 CONFIG_NETFILTER_XT_MATCH_LENGTH=m 242 242 CONFIG_NETFILTER_XT_MATCH_LIMIT=m 243 243 CONFIG_NETFILTER_XT_MATCH_MAC=m 244 244 CONFIG_NETFILTER_XT_MATCH_MARK=m 245 + # CONFIG_NETFILTER_XT_MATCH_POLICY is not set 246 + # CONFIG_NETFILTER_XT_MATCH_MULTIPORT is not set 245 247 CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m 246 248 CONFIG_NETFILTER_XT_MATCH_REALM=m 247 249 CONFIG_NETFILTER_XT_MATCH_SCTP=m ··· 266 262 CONFIG_IP_NF_TFTP=m 267 263 CONFIG_IP_NF_AMANDA=m 268 264 # CONFIG_IP_NF_PPTP is not set 265 + # CONFIG_IP_NF_H323 is not set 269 266 CONFIG_IP_NF_QUEUE=m 270 267 CONFIG_IP_NF_IPTABLES=m 271 268 CONFIG_IP_NF_MATCH_IPRANGE=m 272 - CONFIG_IP_NF_MATCH_MULTIPORT=m 273 269 CONFIG_IP_NF_MATCH_TOS=m 274 270 CONFIG_IP_NF_MATCH_RECENT=m 275 271 CONFIG_IP_NF_MATCH_ECN=m 276 272 CONFIG_IP_NF_MATCH_DSCP=m 277 - CONFIG_IP_NF_MATCH_AH_ESP=m 273 + # CONFIG_IP_NF_MATCH_AH is not set 278 274 CONFIG_IP_NF_MATCH_TTL=m 279 275 CONFIG_IP_NF_MATCH_OWNER=m 280 276 CONFIG_IP_NF_MATCH_ADDRTYPE=m 281 277 CONFIG_IP_NF_MATCH_HASHLIMIT=m 282 - CONFIG_IP_NF_MATCH_POLICY=m 283 278 CONFIG_IP_NF_FILTER=m 284 279 CONFIG_IP_NF_TARGET_REJECT=m 285 280 CONFIG_IP_NF_TARGET_LOG=m ··· 482 479 CONFIG_MD_RAID1=y 483 480 CONFIG_MD_RAID10=m 484 481 CONFIG_MD_RAID5=y 482 + # CONFIG_MD_RAID5_RESHAPE is not set 485 483 CONFIG_MD_RAID6=m 486 484 CONFIG_MD_MULTIPATH=m 487 485 CONFIG_MD_FAULTY=m ··· 706 702 # Watchdog Cards 707 703 # 708 704 # CONFIG_WATCHDOG is not set 709 - # CONFIG_RTC is not set 710 705 CONFIG_GEN_RTC=y 711 706 # CONFIG_GEN_RTC_X is not set 712 707 # CONFIG_DTLK is not set ··· 754 751 # 755 752 756 753 # 757 - # Multimedia Capabilities Port drivers 758 - # 759 - 760 - # 761 754 # Multimedia devices 762 755 # 763 756 # CONFIG_VIDEO_DEV is not set ··· 778 779 # 779 780 CONFIG_USB_ARCH_HAS_HCD=y 780 781 CONFIG_USB_ARCH_HAS_OHCI=y 782 + CONFIG_USB_ARCH_HAS_EHCI=y 781 783 # CONFIG_USB is not set 782 784 783 785 # ··· 796 796 # CONFIG_MMC is not set 797 797 798 798 # 799 + # LED devices 800 + # 801 + # CONFIG_NEW_LEDS is not set 802 + 803 + # 799 804 # InfiniBand support 800 805 # 801 806 # CONFIG_INFINIBAND is not set ··· 808 803 # 809 804 # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) 810 805 # 806 + 807 + # 808 + # Real Time Clock 809 + # 810 + # CONFIG_RTC_CLASS is not set 811 811 812 812 # 813 813 # File systems ··· 888 878 # CONFIG_HUGETLBFS is not set 889 879 # CONFIG_HUGETLB_PAGE is not set 890 880 CONFIG_RAMFS=y 891 - # CONFIG_RELAYFS_FS is not set 892 881 # CONFIG_CONFIGFS_FS is not set 893 882 894 883 #
+25 -29
arch/powerpc/configs/pseries_defconfig
··· 1 1 # 2 2 # Automatically generated make config: don't edit 3 - # Linux kernel version: 2.6.16-rc2 4 - # Fri Feb 10 17:33:32 2006 3 + # Linux kernel version: 2.6.17-rc1 4 + # Wed Apr 19 11:48:00 2006 5 5 # 6 6 CONFIG_PPC64=y 7 7 CONFIG_64BIT=y ··· 9 9 CONFIG_MMU=y 10 10 CONFIG_GENERIC_HARDIRQS=y 11 11 CONFIG_RWSEM_XCHGADD_ALGORITHM=y 12 + CONFIG_GENERIC_HWEIGHT=y 12 13 CONFIG_GENERIC_CALIBRATE_DELAY=y 13 14 CONFIG_PPC=y 14 15 CONFIG_EARLY_PRINTK=y ··· 31 30 CONFIG_PPC_FPU=y 32 31 CONFIG_ALTIVEC=y 33 32 CONFIG_PPC_STD_MMU=y 33 + CONFIG_VIRT_CPU_ACCOUNTING=y 34 34 CONFIG_SMP=y 35 35 CONFIG_NR_CPUS=128 36 36 ··· 57 55 CONFIG_IKCONFIG=y 58 56 CONFIG_IKCONFIG_PROC=y 59 57 CONFIG_CPUSETS=y 58 + # CONFIG_RELAY is not set 60 59 CONFIG_INITRAMFS_SOURCE="" 61 60 CONFIG_CC_OPTIMIZE_FOR_SIZE=y 62 61 # CONFIG_EMBEDDED is not set ··· 72 69 CONFIG_FUTEX=y 73 70 CONFIG_EPOLL=y 74 71 CONFIG_SHMEM=y 75 - CONFIG_CC_ALIGN_FUNCTIONS=0 76 - CONFIG_CC_ALIGN_LABELS=0 77 - CONFIG_CC_ALIGN_LOOPS=0 78 - CONFIG_CC_ALIGN_JUMPS=0 79 72 CONFIG_SLAB=y 80 73 # CONFIG_TINY_SHMEM is not set 81 74 CONFIG_BASE_SMALL=0 ··· 83 84 CONFIG_MODULES=y 84 85 CONFIG_MODULE_UNLOAD=y 85 86 # CONFIG_MODULE_FORCE_UNLOAD is not set 86 - CONFIG_OBSOLETE_MODPARM=y 87 87 CONFIG_MODVERSIONS=y 88 88 CONFIG_MODULE_SRCVERSION_ALL=y 89 89 CONFIG_KMOD=y ··· 91 93 # 92 94 # Block layer 93 95 # 96 + # CONFIG_BLK_DEV_IO_TRACE is not set 94 97 95 98 # 96 99 # IO Schedulers ··· 187 188 # CONFIG_PPC_INDIRECT_PCI is not set 188 189 CONFIG_PCI=y 189 190 CONFIG_PCI_DOMAINS=y 190 - CONFIG_PCI_LEGACY_PROC=y 191 191 # CONFIG_PCI_DEBUG is not set 192 192 193 193 # ··· 233 235 CONFIG_INET_AH=m 234 236 CONFIG_INET_ESP=m 235 237 CONFIG_INET_IPCOMP=m 238 + CONFIG_INET_XFRM_TUNNEL=m 236 239 CONFIG_INET_TUNNEL=y 237 240 CONFIG_INET_DIAG=y 238 241 CONFIG_INET_TCP_DIAG=y ··· 245 246 # 246 247 # CONFIG_IP_VS is not set 247 248 # CONFIG_IPV6 is not set 249 + # CONFIG_INET6_XFRM_TUNNEL is not set 250 + # CONFIG_INET6_TUNNEL is not set 248 251 CONFIG_NETFILTER=y 249 252 # CONFIG_NETFILTER_DEBUG is not set 250 253 ··· 273 272 CONFIG_IP_NF_TFTP=m 274 273 CONFIG_IP_NF_AMANDA=m 275 274 # CONFIG_IP_NF_PPTP is not set 275 + # CONFIG_IP_NF_H323 is not set 276 276 CONFIG_IP_NF_QUEUE=m 277 277 278 278 # ··· 521 519 CONFIG_MD_RAID1=y 522 520 CONFIG_MD_RAID10=m 523 521 CONFIG_MD_RAID5=y 522 + # CONFIG_MD_RAID5_RESHAPE is not set 524 523 CONFIG_MD_RAID6=m 525 524 CONFIG_MD_MULTIPATH=m 526 525 CONFIG_MD_FAULTY=m ··· 753 750 # 754 751 CONFIG_SERIAL_8250=y 755 752 CONFIG_SERIAL_8250_CONSOLE=y 753 + CONFIG_SERIAL_8250_PCI=y 756 754 CONFIG_SERIAL_8250_NR_UARTS=4 757 755 CONFIG_SERIAL_8250_RUNTIME_UARTS=4 758 756 # CONFIG_SERIAL_8250_EXTENDED is not set ··· 771 767 # CONFIG_PRINTER is not set 772 768 # CONFIG_PPDEV is not set 773 769 # CONFIG_TIPAR is not set 770 + CONFIG_HVC_DRIVER=y 774 771 CONFIG_HVC_CONSOLE=y 772 + # CONFIG_HVC_RTAS is not set 775 773 CONFIG_HVCS=m 776 774 777 775 # ··· 785 779 # Watchdog Cards 786 780 # 787 781 # CONFIG_WATCHDOG is not set 788 - # CONFIG_RTC is not set 789 782 CONFIG_GEN_RTC=y 790 783 # CONFIG_GEN_RTC_X is not set 791 784 # CONFIG_DTLK is not set ··· 835 830 # CONFIG_I2C_PARPORT_LIGHT is not set 836 831 # CONFIG_I2C_PROSAVAGE is not set 837 832 # CONFIG_I2C_SAVAGE4 is not set 838 - # CONFIG_SCx200_ACB is not set 839 833 # CONFIG_I2C_SIS5595 is not set 840 834 # CONFIG_I2C_SIS630 is not set 841 835 # CONFIG_I2C_SIS96X is not set ··· 853 849 # CONFIG_SENSORS_PCF8574 is not set 854 850 # CONFIG_SENSORS_PCA9539 is not set 855 851 # CONFIG_SENSORS_PCF8591 is not set 856 - # CONFIG_SENSORS_RTC8564 is not set 857 852 # CONFIG_SENSORS_MAX6875 is not set 858 - # CONFIG_RTC_X1205_I2C is not set 859 853 # CONFIG_I2C_DEBUG_CORE is not set 860 854 # CONFIG_I2C_DEBUG_ALGO is not set 861 855 # CONFIG_I2C_DEBUG_BUS is not set ··· 881 879 # 882 880 883 881 # 884 - # Multimedia Capabilities Port drivers 885 - # 886 - 887 - # 888 882 # Multimedia devices 889 883 # 890 884 # CONFIG_VIDEO_DEV is not set ··· 889 891 # Digital Video Broadcasting Devices 890 892 # 891 893 # CONFIG_DVB is not set 894 + # CONFIG_USB_DABUSB is not set 892 895 893 896 # 894 897 # Graphics support ··· 899 900 CONFIG_FB_CFB_COPYAREA=y 900 901 CONFIG_FB_CFB_IMAGEBLIT=y 901 902 CONFIG_FB_MACMODES=y 903 + CONFIG_FB_FIRMWARE_EDID=y 902 904 CONFIG_FB_MODE_HELPERS=y 903 905 CONFIG_FB_TILEBLITTING=y 904 906 # CONFIG_FB_CIRRUS is not set ··· 919 919 CONFIG_FB_MATROX_G=y 920 920 # CONFIG_FB_MATROX_I2C is not set 921 921 CONFIG_FB_MATROX_MULTIHEAD=y 922 - # CONFIG_FB_RADEON_OLD is not set 923 922 CONFIG_FB_RADEON=y 924 923 CONFIG_FB_RADEON_I2C=y 925 924 # CONFIG_FB_RADEON_DEBUG is not set ··· 967 968 # 968 969 CONFIG_USB_ARCH_HAS_HCD=y 969 970 CONFIG_USB_ARCH_HAS_OHCI=y 971 + CONFIG_USB_ARCH_HAS_EHCI=y 970 972 CONFIG_USB=y 971 973 # CONFIG_USB_DEBUG is not set 972 974 ··· 1048 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 1051 # USB Network Adapters 1061 1052 # 1062 1053 # CONFIG_USB_CATC is not set ··· 1100 1109 # CONFIG_MMC is not set 1101 1110 1102 1111 # 1112 + # LED devices 1113 + # 1114 + # CONFIG_NEW_LEDS is not set 1115 + 1116 + # 1103 1117 # InfiniBand support 1104 1118 # 1105 1119 CONFIG_INFINIBAND=m ··· 1117 1121 # CONFIG_INFINIBAND_SRP is not set 1118 1122 1119 1123 # 1120 - # SN Devices 1124 + # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) 1121 1125 # 1122 1126 1123 1127 # 1124 - # EDAC - error detection and reporting (RAS) 1128 + # Real Time Clock 1125 1129 # 1130 + # CONFIG_RTC_CLASS is not set 1126 1131 1127 1132 # 1128 1133 # File systems ··· 1199 1202 CONFIG_HUGETLBFS=y 1200 1203 CONFIG_HUGETLB_PAGE=y 1201 1204 CONFIG_RAMFS=y 1202 - # CONFIG_RELAYFS_FS is not set 1203 1205 # CONFIG_CONFIGFS_FS is not set 1204 1206 1205 1207 #
+26 -10
arch/powerpc/kernel/iommu.c
··· 61 61 static unsigned long iommu_range_alloc(struct iommu_table *tbl, 62 62 unsigned long npages, 63 63 unsigned long *handle, 64 + unsigned long mask, 64 65 unsigned int align_order) 65 66 { 66 67 unsigned long n, end, i, start; ··· 98 97 */ 99 98 if (start >= limit) 100 99 start = largealloc ? tbl->it_largehint : tbl->it_hint; 101 - 100 + 102 101 again: 102 + 103 + if (limit + tbl->it_offset > mask) { 104 + limit = mask - tbl->it_offset + 1; 105 + /* If we're constrained on address range, first try 106 + * at the masked hint to avoid O(n) search complexity, 107 + * but on second pass, start at 0. 108 + */ 109 + if ((start & mask) >= limit || pass > 0) 110 + start = 0; 111 + else 112 + start &= mask; 113 + } 103 114 104 115 n = find_next_zero_bit(tbl->it_map, limit, start); 105 116 ··· 163 150 164 151 static dma_addr_t iommu_alloc(struct iommu_table *tbl, void *page, 165 152 unsigned int npages, enum dma_data_direction direction, 166 - unsigned int align_order) 153 + unsigned long mask, unsigned int align_order) 167 154 { 168 155 unsigned long entry, flags; 169 156 dma_addr_t ret = DMA_ERROR_CODE; 170 - 157 + 171 158 spin_lock_irqsave(&(tbl->it_lock), flags); 172 159 173 - entry = iommu_range_alloc(tbl, npages, NULL, align_order); 160 + entry = iommu_range_alloc(tbl, npages, NULL, mask, align_order); 174 161 175 162 if (unlikely(entry == DMA_ERROR_CODE)) { 176 163 spin_unlock_irqrestore(&(tbl->it_lock), flags); ··· 249 236 250 237 int iommu_map_sg(struct device *dev, struct iommu_table *tbl, 251 238 struct scatterlist *sglist, int nelems, 252 - enum dma_data_direction direction) 239 + unsigned long mask, enum dma_data_direction direction) 253 240 { 254 241 dma_addr_t dma_next = 0, dma_addr; 255 242 unsigned long flags; ··· 287 274 vaddr = (unsigned long)page_address(s->page) + s->offset; 288 275 npages = PAGE_ALIGN(vaddr + slen) - (vaddr & PAGE_MASK); 289 276 npages >>= PAGE_SHIFT; 290 - entry = iommu_range_alloc(tbl, npages, &handle, 0); 277 + entry = iommu_range_alloc(tbl, npages, &handle, mask >> PAGE_SHIFT, 0); 291 278 292 279 DBG(" - vaddr: %lx, size: %lx\n", vaddr, slen); 293 280 ··· 492 479 * byte within the page as vaddr. 493 480 */ 494 481 dma_addr_t iommu_map_single(struct iommu_table *tbl, void *vaddr, 495 - size_t size, enum dma_data_direction direction) 482 + size_t size, unsigned long mask, 483 + enum dma_data_direction direction) 496 484 { 497 485 dma_addr_t dma_handle = DMA_ERROR_CODE; 498 486 unsigned long uaddr; ··· 506 492 npages >>= PAGE_SHIFT; 507 493 508 494 if (tbl) { 509 - dma_handle = iommu_alloc(tbl, vaddr, npages, direction, 0); 495 + dma_handle = iommu_alloc(tbl, vaddr, npages, direction, 496 + mask >> PAGE_SHIFT, 0); 510 497 if (dma_handle == DMA_ERROR_CODE) { 511 498 if (printk_ratelimit()) { 512 499 printk(KERN_INFO "iommu_alloc failed, " ··· 536 521 * to the dma address (mapping) of the first page. 537 522 */ 538 523 void *iommu_alloc_coherent(struct iommu_table *tbl, size_t size, 539 - dma_addr_t *dma_handle, gfp_t flag) 524 + dma_addr_t *dma_handle, unsigned long mask, gfp_t flag) 540 525 { 541 526 void *ret = NULL; 542 527 dma_addr_t mapping; ··· 566 551 memset(ret, 0, size); 567 552 568 553 /* Set up tces to cover the allocated range */ 569 - mapping = iommu_alloc(tbl, ret, npages, DMA_BIDIRECTIONAL, order); 554 + mapping = iommu_alloc(tbl, ret, npages, DMA_BIDIRECTIONAL, 555 + mask >> PAGE_SHIFT, order); 570 556 if (mapping == DMA_ERROR_CODE) { 571 557 free_pages((unsigned long)ret, order); 572 558 ret = NULL;
+36 -4
arch/powerpc/kernel/pci_iommu.c
··· 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 81 /* Allocates a contiguous real buffer and creates mappings over it. 63 82 * Returns the virtual address of the buffer and sets dma_handle 64 83 * to the dma address (mapping) of the first page. ··· 86 67 dma_addr_t *dma_handle, gfp_t flag) 87 68 { 88 69 return iommu_alloc_coherent(devnode_table(hwdev), size, dma_handle, 89 - flag); 70 + device_to_mask(hwdev), flag); 90 71 } 91 72 92 73 static void pci_iommu_free_coherent(struct device *hwdev, size_t size, ··· 104 85 static dma_addr_t pci_iommu_map_single(struct device *hwdev, void *vaddr, 105 86 size_t size, enum dma_data_direction direction) 106 87 { 107 - return iommu_map_single(devnode_table(hwdev), vaddr, size, direction); 88 + return iommu_map_single(devnode_table(hwdev), vaddr, size, 89 + device_to_mask(hwdev), direction); 108 90 } 109 91 110 92 ··· 120 100 int nelems, enum dma_data_direction direction) 121 101 { 122 102 return iommu_map_sg(pdev, devnode_table(pdev), sglist, 123 - nelems, direction); 103 + nelems, device_to_mask(pdev), direction); 124 104 } 125 105 126 106 static void pci_iommu_unmap_sg(struct device *pdev, struct scatterlist *sglist, ··· 132 112 /* We support DMA to/from any memory page via the iommu */ 133 113 static int pci_iommu_dma_supported(struct device *dev, u64 mask) 134 114 { 135 - return 1; 115 + struct iommu_table *tbl = devnode_table(dev); 116 + 117 + if (!tbl || tbl->it_offset > mask) { 118 + printk(KERN_INFO "Warning: IOMMU table offset too big for device mask\n"); 119 + if (tbl) 120 + printk(KERN_INFO "mask: 0x%08lx, table offset: 0x%08lx\n", 121 + mask, tbl->it_offset); 122 + else 123 + printk(KERN_INFO "mask: 0x%08lx, table unavailable\n", 124 + mask); 125 + return 0; 126 + } else 127 + return 1; 136 128 } 137 129 138 130 void pci_iommu_init(void)
+1
arch/powerpc/kernel/ppc_ksyms.c
··· 81 81 EXPORT_SYMBOL(strlen); 82 82 EXPORT_SYMBOL(strcmp); 83 83 EXPORT_SYMBOL(strcasecmp); 84 + EXPORT_SYMBOL(strncasecmp); 84 85 85 86 EXPORT_SYMBOL(csum_partial); 86 87 EXPORT_SYMBOL(csum_partial_copy_generic);
+1 -1
arch/powerpc/kernel/prom.c
··· 62 62 static int __initdata dt_root_size_cells; 63 63 64 64 #ifdef CONFIG_PPC64 65 - static int __initdata iommu_is_off; 65 + int __initdata iommu_is_off; 66 66 int __initdata iommu_force_on; 67 67 unsigned long tce_alloc_start, tce_alloc_end; 68 68 #endif
+5
arch/powerpc/kernel/systbl.S
··· 324 324 SYSCALL(unshare) 325 325 SYSCALL(splice) 326 326 SYSCALL(tee) 327 + 328 + /* 329 + * please add new calls to arch/powerpc/platforms/cell/spu_callbacks.c 330 + * as well when appropriate. 331 + */
+3 -3
arch/powerpc/kernel/vio.c
··· 202 202 size_t size, enum dma_data_direction direction) 203 203 { 204 204 return iommu_map_single(to_vio_dev(dev)->iommu_table, vaddr, size, 205 - direction); 205 + ~0ul, direction); 206 206 } 207 207 208 208 static void vio_unmap_single(struct device *dev, dma_addr_t dma_handle, ··· 216 216 int nelems, enum dma_data_direction direction) 217 217 { 218 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 222 static void vio_unmap_sg(struct device *dev, struct scatterlist *sglist, ··· 229 229 dma_addr_t *dma_handle, gfp_t flag) 230 230 { 231 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 235 static void vio_free_coherent(struct device *dev, size_t size,
+2 -3
arch/powerpc/platforms/cell/spu_callbacks.c
··· 317 317 [__NR_ppoll] sys_ni_syscall, /* sys_ppoll */ 318 318 [__NR_unshare] sys_unshare, 319 319 [__NR_splice] sys_splice, 320 + [__NR_tee] sys_tee, 320 321 }; 321 322 322 323 long spu_sys_callback(struct spu_syscall_block *s) 323 324 { 324 325 long (*syscall)(u64 a1, u64 a2, u64 a3, u64 a4, u64 a5, u64 a6); 325 326 326 - BUILD_BUG_ON(ARRAY_SIZE(spu_syscall_table) != __NR_syscalls); 327 - 328 327 syscall = spu_syscall_table[s->nr_ret]; 329 328 330 - if (s->nr_ret >= __NR_syscalls) { 329 + if (s->nr_ret >= ARRAY_SIZE(spu_syscall_table)) { 331 330 pr_debug("%s: invalid syscall #%ld", __FUNCTION__, s->nr_ret); 332 331 return -ENOSYS; 333 332 }
+35 -43
arch/powerpc/platforms/powermac/low_i2c.c
··· 231 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 242 static void kw_i2c_handle_interrupt(struct pmac_i2c_host_kw *host, u8 isr) 235 243 { 236 244 u8 ack; ··· 254 246 } 255 247 256 248 if (isr == 0) { 249 + printk(KERN_WARNING "low_i2c: Timeout in i2c transfer" 250 + " on keywest !\n"); 257 251 if (host->state != state_stop) { 258 - DBG_LOW("KW: Timeout !\n"); 259 - host->result = -EIO; 260 - goto stop; 252 + kw_i2c_do_stop(host, -EIO); 253 + return; 261 254 } 262 - if (host->state == state_stop) { 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); 270 - } 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); 271 262 return; 272 263 } 273 264 274 265 if (isr & KW_I2C_IRQ_ADDR) { 275 266 ack = kw_read_reg(reg_status); 276 267 if (host->state != state_addr) { 277 - kw_write_reg(reg_isr, KW_I2C_IRQ_ADDR); 278 268 WRONG_STATE("KW_I2C_IRQ_ADDR"); 279 - host->result = -EIO; 280 - goto stop; 269 + kw_i2c_do_stop(host, -EIO); 281 270 } 282 271 if ((ack & KW_I2C_STAT_LAST_AAK) == 0) { 283 - host->result = -ENODEV; 284 - DBG_LOW("KW: NAK on address\n"); 272 + host->result = -ENXIO; 285 273 host->state = state_stop; 286 - return; 274 + DBG_LOW("KW: NAK on address\n"); 287 275 } else { 288 - if (host->len == 0) { 289 - kw_write_reg(reg_isr, KW_I2C_IRQ_ADDR); 290 - goto stop; 291 - } 292 - if (host->rw) { 276 + if (host->len == 0) 277 + kw_i2c_do_stop(host, 0); 278 + else if (host->rw) { 293 279 host->state = state_read; 294 280 if (host->len > 1) 295 281 kw_write_reg(reg_control, ··· 310 308 ack = kw_read_reg(reg_status); 311 309 if ((ack & KW_I2C_STAT_LAST_AAK) == 0) { 312 310 DBG_LOW("KW: nack on data write\n"); 313 - host->result = -EIO; 314 - goto stop; 311 + host->result = -EFBIG; 312 + host->state = state_stop; 315 313 } else if (host->len) { 316 314 kw_write_reg(reg_data, *(host->data++)); 317 315 host->len--; 318 - } else { 319 - kw_write_reg(reg_control, KW_I2C_CTL_STOP); 320 - host->state = state_stop; 321 - host->result = 0; 322 - } 323 - kw_write_reg(reg_isr, KW_I2C_IRQ_DATA); 316 + } else 317 + kw_i2c_do_stop(host, 0); 324 318 } else { 325 - kw_write_reg(reg_isr, KW_I2C_IRQ_DATA); 326 319 WRONG_STATE("KW_I2C_IRQ_DATA"); 327 - if (host->state != state_stop) { 328 - host->result = -EIO; 329 - goto stop; 330 - } 320 + if (host->state != state_stop) 321 + kw_i2c_do_stop(host, -EIO); 331 322 } 323 + kw_write_reg(reg_isr, KW_I2C_IRQ_DATA); 332 324 } 333 325 334 326 if (isr & KW_I2C_IRQ_STOP) { ··· 336 340 complete(&host->complete); 337 341 } 338 342 343 + /* Below should only happen in manual mode which we don't use ... */ 339 344 if (isr & KW_I2C_IRQ_START) 340 345 kw_write_reg(reg_isr, KW_I2C_IRQ_START); 341 346 342 - return; 343 - stop: 344 - kw_write_reg(reg_control, KW_I2C_CTL_STOP); 345 - host->state = state_stop; 346 - return; 347 347 } 348 348 349 349 /* Interrupt handler */ ··· 536 544 return NULL; 537 545 } 538 546 539 - /* Make sure IRA is disabled */ 547 + /* Make sure IRQ is disabled */ 540 548 kw_write_reg(reg_ier, 0); 541 549 542 550 /* Request chip interrupt */ 543 - if (request_irq(host->irq, kw_i2c_irq, SA_SHIRQ, "keywest i2c", host)) 551 + if (request_irq(host->irq, kw_i2c_irq, 0, "keywest i2c", host)) 544 552 host->irq = NO_IRQ; 545 553 546 554 printk(KERN_INFO "KeyWest i2c @0x%08x irq %d %s\n",
+10 -2
arch/powerpc/sysdev/dart_iommu.c
··· 49 49 50 50 #include "dart.h" 51 51 52 + extern int iommu_is_off; 52 53 extern int iommu_force_on; 53 54 54 55 /* Physical base address and size of the DART table */ ··· 330 329 331 330 void __init alloc_dart_table(void) 332 331 { 333 - /* Only reserve DART space if machine has more than 2GB of RAM 332 + /* Only reserve DART space if machine has more than 1GB of RAM 334 333 * or if requested with iommu=on on cmdline. 334 + * 335 + * 1GB of RAM is picked as limit because some default devices 336 + * (i.e. Airport Extreme) have 30 bit address range limits. 335 337 */ 336 - if (lmb_end_of_DRAM() <= 0x80000000ull && !iommu_force_on) 338 + 339 + if (iommu_is_off) 340 + return; 341 + 342 + if (!iommu_force_on && lmb_end_of_DRAM() <= 0x40000000ull) 337 343 return; 338 344 339 345 /* 512 pages (2MB) is max DART tablesize. */
+1
arch/ppc/kernel/asm-offsets.c
··· 134 134 DEFINE(TI_TASK, offsetof(struct thread_info, task)); 135 135 DEFINE(TI_EXECDOMAIN, offsetof(struct thread_info, exec_domain)); 136 136 DEFINE(TI_FLAGS, offsetof(struct thread_info, flags)); 137 + DEFINE(TI_LOCAL_FLAGS, offsetof(struct thread_info, flags)); 137 138 DEFINE(TI_CPU, offsetof(struct thread_info, cpu)); 138 139 DEFINE(TI_PREEMPT, offsetof(struct thread_info, preempt_count)); 139 140
+16 -17
arch/ppc/kernel/entry.S
··· 128 128 stw r12,4(r11) 129 129 #endif 130 130 b 3f 131 + 131 132 2: /* if from kernel, check interrupted DOZE/NAP mode and 132 133 * check for stack overflow 133 134 */ 135 + lwz r9,THREAD_INFO-THREAD(r12) 136 + cmplw r1,r9 /* if r1 <= current->thread_info */ 137 + ble- stack_ovf /* then the kernel stack overflowed */ 138 + 5: 134 139 #ifdef CONFIG_6xx 135 - mfspr r11,SPRN_HID0 136 - mtcr r11 137 - BEGIN_FTR_SECTION 138 - bt- 8,4f /* Check DOZE */ 139 - END_FTR_SECTION_IFSET(CPU_FTR_CAN_DOZE) 140 - BEGIN_FTR_SECTION 141 - bt- 9,4f /* Check NAP */ 142 - END_FTR_SECTION_IFSET(CPU_FTR_CAN_NAP) 140 + tophys(r9,r9) /* check local flags */ 141 + lwz r12,TI_LOCAL_FLAGS(r9) 142 + mtcrf 0x01,r12 143 + bt- 31-TLF_NAPPING,4f 143 144 #endif /* CONFIG_6xx */ 144 145 .globl transfer_to_handler_cont 145 146 transfer_to_handler_cont: 146 - lwz r11,THREAD_INFO-THREAD(r12) 147 - cmplw r1,r11 /* if r1 <= current->thread_info */ 148 - ble- stack_ovf /* then the kernel stack overflowed */ 149 147 3: 150 148 mflr r9 151 149 lwz r11,0(r9) /* virtual address of handler */ 152 150 lwz r9,4(r9) /* where to go when done */ 153 - FIX_SRR1(r10,r12) 154 151 mtspr SPRN_SRR0,r11 155 152 mtspr SPRN_SRR1,r10 156 153 mtlr r9 ··· 155 158 RFI /* jump to handler, enable MMU */ 156 159 157 160 #ifdef CONFIG_6xx 158 - 4: b power_save_6xx_restore 161 + 4: rlwinm r12,r12,0,~_TLF_NAPPING 162 + stw r12,TI_LOCAL_FLAGS(r9) 163 + b power_save_6xx_restore 159 164 #endif 160 165 161 166 /* ··· 166 167 */ 167 168 stack_ovf: 168 169 /* sometimes we use a statically-allocated stack, which is OK. */ 169 - lis r11,_end@h 170 - ori r11,r11,_end@l 171 - cmplw r1,r11 172 - ble 3b /* r1 <= &_end is OK */ 170 + lis r12,_end@h 171 + ori r12,r12,_end@l 172 + cmplw r1,r12 173 + ble 5b /* r1 <= &_end is OK */ 173 174 SAVE_NVGPRS(r11) 174 175 addi r3,r1,STACK_FRAME_OVERHEAD 175 176 lis r1,init_thread_union@ha
+1
arch/ppc/kernel/ppc_ksyms.c
··· 94 94 EXPORT_SYMBOL(strlen); 95 95 EXPORT_SYMBOL(strcmp); 96 96 EXPORT_SYMBOL(strcasecmp); 97 + EXPORT_SYMBOL(strncasecmp); 97 98 EXPORT_SYMBOL(__div64_32); 98 99 99 100 EXPORT_SYMBOL(csum_partial);
+2 -2
drivers/macintosh/therm_adt746x.c
··· 627 627 if(therm_type == ADT7460) 628 628 device_create_file(&of_dev->dev, &dev_attr_sensor2_fan_speed); 629 629 630 - #ifndef CONFIG_I2C_KEYWEST 631 - request_module("i2c-keywest"); 630 + #ifndef CONFIG_I2C_POWERMAC 631 + request_module("i2c-powermac"); 632 632 #endif 633 633 634 634 return i2c_add_driver(&thermostat_driver);
+4 -3
include/asm-powerpc/iommu.h
··· 70 70 extern struct iommu_table *iommu_init_table(struct iommu_table * tbl); 71 71 72 72 extern int iommu_map_sg(struct device *dev, struct iommu_table *tbl, 73 - struct scatterlist *sglist, int nelems, 73 + struct scatterlist *sglist, int nelems, unsigned long mask, 74 74 enum dma_data_direction direction); 75 75 extern void iommu_unmap_sg(struct iommu_table *tbl, struct scatterlist *sglist, 76 76 int nelems, enum dma_data_direction direction); 77 77 78 78 extern void *iommu_alloc_coherent(struct iommu_table *tbl, size_t size, 79 - dma_addr_t *dma_handle, gfp_t flag); 79 + dma_addr_t *dma_handle, unsigned long mask, gfp_t flag); 80 80 extern void iommu_free_coherent(struct iommu_table *tbl, size_t size, 81 81 void *vaddr, dma_addr_t dma_handle); 82 82 extern dma_addr_t iommu_map_single(struct iommu_table *tbl, void *vaddr, 83 - size_t size, enum dma_data_direction direction); 83 + size_t size, unsigned long mask, 84 + enum dma_data_direction direction); 84 85 extern void iommu_unmap_single(struct iommu_table *tbl, dma_addr_t dma_handle, 85 86 size_t size, enum dma_data_direction direction); 86 87
+5 -1
include/asm-powerpc/machdep.h
··· 253 253 254 254 #define __machine_desc __attribute__ ((__section__ (".machine.desc"))) 255 255 256 - #define define_machine(name) struct machdep_calls mach_##name __machine_desc = 256 + #define define_machine(name) \ 257 + extern struct machdep_calls mach_##name; \ 258 + EXPORT_SYMBOL(mach_##name); \ 259 + struct machdep_calls mach_##name __machine_desc = 260 + 257 261 #define machine_is(name) \ 258 262 ({ \ 259 263 extern struct machdep_calls mach_##name \
+2 -2
sound/oss/dmasound/tas_common.c
··· 195 195 196 196 printk(KERN_INFO "tas driver [%s])\n", driver_name); 197 197 198 - #ifndef CONFIG_I2C_KEYWEST 199 - request_module("i2c-keywest"); 198 + #ifndef CONFIG_I2C_POWERMAC 199 + request_module("i2c-powermac"); 200 200 #endif 201 201 tas_node = find_devices("deq"); 202 202 if (tas_node == NULL)
+1 -1
sound/ppc/daca.c
··· 255 255 256 256 #ifdef CONFIG_KMOD 257 257 if (current->fs->root) 258 - request_module("i2c-keywest"); 258 + request_module("i2c-powermac"); 259 259 #endif /* CONFIG_KMOD */ 260 260 261 261 mix = kmalloc(sizeof(*mix), GFP_KERNEL);
+1 -1
sound/ppc/tumbler.c
··· 1313 1313 1314 1314 #ifdef CONFIG_KMOD 1315 1315 if (current->fs->root) 1316 - request_module("i2c-keywest"); 1316 + request_module("i2c-powermac"); 1317 1317 #endif /* CONFIG_KMOD */ 1318 1318 1319 1319 mix = kmalloc(sizeof(*mix), GFP_KERNEL);