diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-07-27 11:35:26 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-07-27 11:35:26 -0400 |
| commit | b387e41e523c1aa347cff055455d0dd129357df4 (patch) | |
| tree | 736b8f4ff0c683031d2f642c182fd01ed73be5d1 | |
| parent | 43a1141b9f4fd9453b43ba5e8f136e7d47220dde (diff) | |
| parent | bac821a6e3404330d509fd3a245bf7701f210c7c (diff) | |
Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc
Pull powerpc fixes from Benjamin Herrenschmidt:
"Here's a handful of powerpc patches, a couple of regression fixes for
problems introduced in the main batch in this merge window, a couple
of defconfig updates, and some trivials.
The radeonfb one is something that was long standing in SLES which I
forgot to pickup earlier."
* 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:
powerpc/ftrace: Trace function graph entry before updating index
radeonfb: Add quirk for the graphics adapter in some JSxx
powerpc: Lack of firmware flash support is not an error
powerpc: Enable pseries hardware RNG and crypto modules
powerpc: Update g5_defconfig
powerpc/kvm/bookehv: Fix build regression
powerpc: Set stack limit properly in crit_transfer_to_handler
| -rw-r--r-- | arch/powerpc/configs/g5_defconfig | 103 | ||||
| -rw-r--r-- | arch/powerpc/configs/ppc64_defconfig | 6 | ||||
| -rw-r--r-- | arch/powerpc/configs/pseries_defconfig | 6 | ||||
| -rw-r--r-- | arch/powerpc/kernel/entry_32.S | 12 | ||||
| -rw-r--r-- | arch/powerpc/kernel/ftrace.c | 11 | ||||
| -rw-r--r-- | arch/powerpc/kernel/rtas_flash.c | 2 | ||||
| -rw-r--r-- | arch/powerpc/kvm/bookehv_interrupts.S | 77 | ||||
| -rw-r--r-- | drivers/video/aty/radeon_monitor.c | 35 |
8 files changed, 128 insertions, 124 deletions
diff --git a/arch/powerpc/configs/g5_defconfig b/arch/powerpc/configs/g5_defconfig index 07b7f2af2dca..15130066e5e2 100644 --- a/arch/powerpc/configs/g5_defconfig +++ b/arch/powerpc/configs/g5_defconfig | |||
| @@ -1,10 +1,8 @@ | |||
| 1 | CONFIG_PPC64=y | ||
| 2 | CONFIG_ALTIVEC=y | ||
| 3 | CONFIG_SMP=y | ||
| 4 | CONFIG_NR_CPUS=4 | ||
| 5 | CONFIG_EXPERIMENTAL=y | 1 | CONFIG_EXPERIMENTAL=y |
| 6 | CONFIG_SYSVIPC=y | 2 | CONFIG_SYSVIPC=y |
| 7 | CONFIG_POSIX_MQUEUE=y | 3 | CONFIG_POSIX_MQUEUE=y |
| 4 | CONFIG_NO_HZ=y | ||
| 5 | CONFIG_HIGH_RES_TIMERS=y | ||
| 8 | CONFIG_IKCONFIG=y | 6 | CONFIG_IKCONFIG=y |
| 9 | CONFIG_IKCONFIG_PROC=y | 7 | CONFIG_IKCONFIG_PROC=y |
| 10 | CONFIG_BLK_DEV_INITRD=y | 8 | CONFIG_BLK_DEV_INITRD=y |
| @@ -15,16 +13,15 @@ CONFIG_MODULES=y | |||
| 15 | CONFIG_MODULE_UNLOAD=y | 13 | CONFIG_MODULE_UNLOAD=y |
| 16 | CONFIG_MODVERSIONS=y | 14 | CONFIG_MODVERSIONS=y |
| 17 | CONFIG_MODULE_SRCVERSION_ALL=y | 15 | CONFIG_MODULE_SRCVERSION_ALL=y |
| 18 | # CONFIG_PPC_PSERIES is not set | 16 | CONFIG_PARTITION_ADVANCED=y |
| 17 | CONFIG_MAC_PARTITION=y | ||
| 18 | CONFIG_SMP=y | ||
| 19 | CONFIG_NR_CPUS=4 | ||
| 20 | CONFIG_KEXEC=y | ||
| 21 | # CONFIG_RELOCATABLE is not set | ||
| 19 | CONFIG_CPU_FREQ=y | 22 | CONFIG_CPU_FREQ=y |
| 20 | CONFIG_CPU_FREQ_GOV_POWERSAVE=y | 23 | CONFIG_CPU_FREQ_GOV_POWERSAVE=y |
| 21 | CONFIG_CPU_FREQ_GOV_USERSPACE=y | 24 | CONFIG_CPU_FREQ_GOV_USERSPACE=y |
| 22 | CONFIG_CPU_FREQ_PMAC64=y | ||
| 23 | CONFIG_NO_HZ=y | ||
| 24 | CONFIG_HIGH_RES_TIMERS=y | ||
| 25 | CONFIG_KEXEC=y | ||
| 26 | CONFIG_IRQ_ALL_CPUS=y | ||
| 27 | # CONFIG_MIGRATION is not set | ||
| 28 | CONFIG_PCI_MSI=y | 25 | CONFIG_PCI_MSI=y |
| 29 | CONFIG_NET=y | 26 | CONFIG_NET=y |
| 30 | CONFIG_PACKET=y | 27 | CONFIG_PACKET=y |
| @@ -52,7 +49,6 @@ CONFIG_NF_CT_NETLINK=m | |||
| 52 | CONFIG_NF_CONNTRACK_IPV4=m | 49 | CONFIG_NF_CONNTRACK_IPV4=m |
| 53 | CONFIG_IP_NF_QUEUE=m | 50 | CONFIG_IP_NF_QUEUE=m |
| 54 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | 51 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" |
| 55 | CONFIG_PROC_DEVICETREE=y | ||
| 56 | CONFIG_BLK_DEV_LOOP=y | 52 | CONFIG_BLK_DEV_LOOP=y |
| 57 | CONFIG_BLK_DEV_NBD=m | 53 | CONFIG_BLK_DEV_NBD=m |
| 58 | CONFIG_BLK_DEV_RAM=y | 54 | CONFIG_BLK_DEV_RAM=y |
| @@ -60,8 +56,6 @@ CONFIG_BLK_DEV_RAM_SIZE=65536 | |||
| 60 | CONFIG_CDROM_PKTCDVD=m | 56 | CONFIG_CDROM_PKTCDVD=m |
| 61 | CONFIG_IDE=y | 57 | CONFIG_IDE=y |
| 62 | CONFIG_BLK_DEV_IDECD=y | 58 | CONFIG_BLK_DEV_IDECD=y |
| 63 | CONFIG_BLK_DEV_IDE_PMAC=y | ||
| 64 | CONFIG_BLK_DEV_IDE_PMAC_ATA100FIRST=y | ||
| 65 | CONFIG_BLK_DEV_SD=y | 59 | CONFIG_BLK_DEV_SD=y |
| 66 | CONFIG_CHR_DEV_ST=y | 60 | CONFIG_CHR_DEV_ST=y |
| 67 | CONFIG_BLK_DEV_SR=y | 61 | CONFIG_BLK_DEV_SR=y |
| @@ -85,33 +79,24 @@ CONFIG_DM_CRYPT=m | |||
| 85 | CONFIG_DM_SNAPSHOT=m | 79 | CONFIG_DM_SNAPSHOT=m |
| 86 | CONFIG_DM_MIRROR=m | 80 | CONFIG_DM_MIRROR=m |
| 87 | CONFIG_DM_ZERO=m | 81 | CONFIG_DM_ZERO=m |
| 88 | CONFIG_IEEE1394=y | 82 | CONFIG_MACINTOSH_DRIVERS=y |
| 89 | CONFIG_IEEE1394_OHCI1394=y | ||
| 90 | CONFIG_IEEE1394_SBP2=m | ||
| 91 | CONFIG_IEEE1394_ETH1394=m | ||
| 92 | CONFIG_IEEE1394_RAWIO=y | ||
| 93 | CONFIG_IEEE1394_VIDEO1394=m | ||
| 94 | CONFIG_IEEE1394_DV1394=m | ||
| 95 | CONFIG_ADB_PMU=y | ||
| 96 | CONFIG_PMAC_SMU=y | ||
| 97 | CONFIG_MAC_EMUMOUSEBTN=y | 83 | CONFIG_MAC_EMUMOUSEBTN=y |
| 98 | CONFIG_THERM_PM72=y | ||
| 99 | CONFIG_WINDFARM=y | ||
| 100 | CONFIG_WINDFARM_PM81=y | ||
| 101 | CONFIG_WINDFARM_PM91=y | ||
| 102 | CONFIG_WINDFARM_PM112=y | ||
| 103 | CONFIG_WINDFARM_PM121=y | ||
| 104 | CONFIG_NETDEVICES=y | 84 | CONFIG_NETDEVICES=y |
| 105 | CONFIG_DUMMY=m | ||
| 106 | CONFIG_BONDING=m | 85 | CONFIG_BONDING=m |
| 107 | CONFIG_TUN=m | 86 | CONFIG_DUMMY=m |
| 108 | CONFIG_NET_ETHERNET=y | ||
| 109 | CONFIG_MII=y | 87 | CONFIG_MII=y |
| 110 | CONFIG_SUNGEM=y | 88 | CONFIG_TUN=m |
| 111 | CONFIG_ACENIC=m | 89 | CONFIG_ACENIC=m |
| 112 | CONFIG_ACENIC_OMIT_TIGON_I=y | 90 | CONFIG_ACENIC_OMIT_TIGON_I=y |
| 113 | CONFIG_E1000=y | ||
| 114 | CONFIG_TIGON3=y | 91 | CONFIG_TIGON3=y |
| 92 | CONFIG_E1000=y | ||
| 93 | CONFIG_SUNGEM=y | ||
| 94 | CONFIG_PPP=m | ||
| 95 | CONFIG_PPP_BSDCOMP=m | ||
| 96 | CONFIG_PPP_DEFLATE=m | ||
| 97 | CONFIG_PPPOE=m | ||
| 98 | CONFIG_PPP_ASYNC=m | ||
| 99 | CONFIG_PPP_SYNC_TTY=m | ||
| 115 | CONFIG_USB_CATC=m | 100 | CONFIG_USB_CATC=m |
| 116 | CONFIG_USB_KAWETH=m | 101 | CONFIG_USB_KAWETH=m |
| 117 | CONFIG_USB_PEGASUS=m | 102 | CONFIG_USB_PEGASUS=m |
| @@ -121,36 +106,24 @@ CONFIG_USB_USBNET=m | |||
| 121 | # CONFIG_USB_NET_NET1080 is not set | 106 | # CONFIG_USB_NET_NET1080 is not set |
| 122 | # CONFIG_USB_NET_CDC_SUBSET is not set | 107 | # CONFIG_USB_NET_CDC_SUBSET is not set |
| 123 | # CONFIG_USB_NET_ZAURUS is not set | 108 | # CONFIG_USB_NET_ZAURUS is not set |
| 124 | CONFIG_PPP=m | ||
| 125 | CONFIG_PPP_ASYNC=m | ||
| 126 | CONFIG_PPP_SYNC_TTY=m | ||
| 127 | CONFIG_PPP_DEFLATE=m | ||
| 128 | CONFIG_PPP_BSDCOMP=m | ||
| 129 | CONFIG_PPPOE=m | ||
| 130 | # CONFIG_INPUT_MOUSEDEV_PSAUX is not set | 109 | # CONFIG_INPUT_MOUSEDEV_PSAUX is not set |
| 131 | CONFIG_INPUT_JOYDEV=m | 110 | CONFIG_INPUT_JOYDEV=m |
| 132 | CONFIG_INPUT_EVDEV=y | 111 | CONFIG_INPUT_EVDEV=y |
| 133 | # CONFIG_KEYBOARD_ATKBD is not set | ||
| 134 | # CONFIG_MOUSE_PS2 is not set | 112 | # CONFIG_MOUSE_PS2 is not set |
| 135 | # CONFIG_SERIO_I8042 is not set | ||
| 136 | # CONFIG_SERIO_SERPORT is not set | 113 | # CONFIG_SERIO_SERPORT is not set |
| 114 | CONFIG_VT_HW_CONSOLE_BINDING=y | ||
| 137 | # CONFIG_HW_RANDOM is not set | 115 | # CONFIG_HW_RANDOM is not set |
| 138 | CONFIG_GEN_RTC=y | 116 | CONFIG_GEN_RTC=y |
| 139 | CONFIG_RAW_DRIVER=y | 117 | CONFIG_RAW_DRIVER=y |
| 140 | CONFIG_I2C_CHARDEV=y | 118 | CONFIG_I2C_CHARDEV=y |
| 141 | # CONFIG_HWMON is not set | 119 | # CONFIG_HWMON is not set |
| 142 | CONFIG_AGP=m | 120 | CONFIG_AGP=y |
| 143 | CONFIG_AGP_UNINORTH=m | 121 | CONFIG_DRM=y |
| 122 | CONFIG_DRM_NOUVEAU=y | ||
| 144 | CONFIG_VIDEO_OUTPUT_CONTROL=m | 123 | CONFIG_VIDEO_OUTPUT_CONTROL=m |
| 145 | CONFIG_FB=y | ||
| 146 | CONFIG_FIRMWARE_EDID=y | 124 | CONFIG_FIRMWARE_EDID=y |
| 147 | CONFIG_FB_TILEBLITTING=y | 125 | CONFIG_FB_TILEBLITTING=y |
| 148 | CONFIG_FB_OF=y | ||
| 149 | CONFIG_FB_NVIDIA=y | ||
| 150 | CONFIG_FB_NVIDIA_I2C=y | ||
| 151 | CONFIG_FB_RADEON=y | 126 | CONFIG_FB_RADEON=y |
| 152 | # CONFIG_VGA_CONSOLE is not set | ||
| 153 | CONFIG_FRAMEBUFFER_CONSOLE=y | ||
| 154 | CONFIG_LOGO=y | 127 | CONFIG_LOGO=y |
| 155 | CONFIG_SOUND=m | 128 | CONFIG_SOUND=m |
| 156 | CONFIG_SND=m | 129 | CONFIG_SND=m |
| @@ -158,15 +131,7 @@ CONFIG_SND_SEQUENCER=m | |||
| 158 | CONFIG_SND_MIXER_OSS=m | 131 | CONFIG_SND_MIXER_OSS=m |
| 159 | CONFIG_SND_PCM_OSS=m | 132 | CONFIG_SND_PCM_OSS=m |
| 160 | CONFIG_SND_SEQUENCER_OSS=y | 133 | CONFIG_SND_SEQUENCER_OSS=y |
| 161 | CONFIG_SND_POWERMAC=m | ||
| 162 | CONFIG_SND_AOA=m | ||
| 163 | CONFIG_SND_AOA_FABRIC_LAYOUT=m | ||
| 164 | CONFIG_SND_AOA_ONYX=m | ||
| 165 | CONFIG_SND_AOA_TAS=m | ||
| 166 | CONFIG_SND_AOA_TOONIE=m | ||
| 167 | CONFIG_SND_USB_AUDIO=m | 134 | CONFIG_SND_USB_AUDIO=m |
| 168 | CONFIG_HID_PID=y | ||
| 169 | CONFIG_USB_HIDDEV=y | ||
| 170 | CONFIG_HID_GYRATION=y | 135 | CONFIG_HID_GYRATION=y |
| 171 | CONFIG_LOGITECH_FF=y | 136 | CONFIG_LOGITECH_FF=y |
| 172 | CONFIG_HID_PANTHERLORD=y | 137 | CONFIG_HID_PANTHERLORD=y |
| @@ -174,13 +139,12 @@ CONFIG_HID_PETALYNX=y | |||
| 174 | CONFIG_HID_SAMSUNG=y | 139 | CONFIG_HID_SAMSUNG=y |
| 175 | CONFIG_HID_SONY=y | 140 | CONFIG_HID_SONY=y |
| 176 | CONFIG_HID_SUNPLUS=y | 141 | CONFIG_HID_SUNPLUS=y |
| 142 | CONFIG_HID_PID=y | ||
| 143 | CONFIG_USB_HIDDEV=y | ||
| 177 | CONFIG_USB=y | 144 | CONFIG_USB=y |
| 178 | CONFIG_USB_DEVICEFS=y | ||
| 179 | CONFIG_USB_MON=y | 145 | CONFIG_USB_MON=y |
| 180 | CONFIG_USB_EHCI_HCD=y | 146 | CONFIG_USB_EHCI_HCD=y |
| 181 | # CONFIG_USB_EHCI_HCD_PPC_OF is not set | ||
| 182 | CONFIG_USB_OHCI_HCD=y | 147 | CONFIG_USB_OHCI_HCD=y |
| 183 | CONFIG_USB_OHCI_HCD_PPC_OF_BE=y | ||
| 184 | CONFIG_USB_ACM=m | 148 | CONFIG_USB_ACM=m |
| 185 | CONFIG_USB_PRINTER=y | 149 | CONFIG_USB_PRINTER=y |
| 186 | CONFIG_USB_STORAGE=y | 150 | CONFIG_USB_STORAGE=y |
| @@ -244,8 +208,6 @@ CONFIG_REISERFS_FS_POSIX_ACL=y | |||
| 244 | CONFIG_REISERFS_FS_SECURITY=y | 208 | CONFIG_REISERFS_FS_SECURITY=y |
| 245 | CONFIG_XFS_FS=m | 209 | CONFIG_XFS_FS=m |
| 246 | CONFIG_XFS_POSIX_ACL=y | 210 | CONFIG_XFS_POSIX_ACL=y |
| 247 | CONFIG_INOTIFY=y | ||
| 248 | CONFIG_AUTOFS_FS=m | ||
| 249 | CONFIG_ISO9660_FS=y | 211 | CONFIG_ISO9660_FS=y |
| 250 | CONFIG_JOLIET=y | 212 | CONFIG_JOLIET=y |
| 251 | CONFIG_ZISOFS=y | 213 | CONFIG_ZISOFS=y |
| @@ -259,14 +221,12 @@ CONFIG_HFS_FS=m | |||
| 259 | CONFIG_HFSPLUS_FS=m | 221 | CONFIG_HFSPLUS_FS=m |
| 260 | CONFIG_CRAMFS=y | 222 | CONFIG_CRAMFS=y |
| 261 | CONFIG_NFS_FS=y | 223 | CONFIG_NFS_FS=y |
| 262 | CONFIG_NFS_V3=y | ||
| 263 | CONFIG_NFS_V3_ACL=y | 224 | CONFIG_NFS_V3_ACL=y |
| 264 | CONFIG_NFS_V4=y | 225 | CONFIG_NFS_V4=y |
| 265 | CONFIG_NFSD=y | 226 | CONFIG_NFSD=y |
| 266 | CONFIG_NFSD_V3_ACL=y | 227 | CONFIG_NFSD_V3_ACL=y |
| 267 | CONFIG_NFSD_V4=y | 228 | CONFIG_NFSD_V4=y |
| 268 | CONFIG_CIFS=m | 229 | CONFIG_CIFS=m |
| 269 | CONFIG_PARTITION_ADVANCED=y | ||
| 270 | CONFIG_NLS_CODEPAGE_437=y | 230 | CONFIG_NLS_CODEPAGE_437=y |
| 271 | CONFIG_NLS_CODEPAGE_1250=y | 231 | CONFIG_NLS_CODEPAGE_1250=y |
| 272 | CONFIG_NLS_CODEPAGE_1251=y | 232 | CONFIG_NLS_CODEPAGE_1251=y |
| @@ -274,29 +234,23 @@ CONFIG_NLS_ASCII=y | |||
| 274 | CONFIG_NLS_ISO8859_1=y | 234 | CONFIG_NLS_ISO8859_1=y |
| 275 | CONFIG_NLS_ISO8859_15=y | 235 | CONFIG_NLS_ISO8859_15=y |
| 276 | CONFIG_NLS_UTF8=y | 236 | CONFIG_NLS_UTF8=y |
| 277 | CONFIG_CRC_T10DIF=y | ||
| 278 | CONFIG_LIBCRC32C=m | ||
| 279 | CONFIG_MAGIC_SYSRQ=y | 237 | CONFIG_MAGIC_SYSRQ=y |
| 238 | # CONFIG_UNUSED_SYMBOLS is not set | ||
| 280 | CONFIG_DEBUG_FS=y | 239 | CONFIG_DEBUG_FS=y |
| 281 | CONFIG_DEBUG_KERNEL=y | 240 | CONFIG_DEBUG_KERNEL=y |
| 282 | CONFIG_DEBUG_MUTEXES=y | 241 | CONFIG_DEBUG_MUTEXES=y |
| 283 | # CONFIG_RCU_CPU_STALL_DETECTOR is not set | ||
| 284 | CONFIG_LATENCYTOP=y | 242 | CONFIG_LATENCYTOP=y |
| 285 | CONFIG_SYSCTL_SYSCALL_CHECK=y | 243 | CONFIG_STRICT_DEVMEM=y |
| 286 | CONFIG_BOOTX_TEXT=y | ||
| 287 | CONFIG_CRYPTO_NULL=m | 244 | CONFIG_CRYPTO_NULL=m |
| 288 | CONFIG_CRYPTO_TEST=m | 245 | CONFIG_CRYPTO_TEST=m |
| 289 | CONFIG_CRYPTO_ECB=m | ||
| 290 | CONFIG_CRYPTO_PCBC=m | 246 | CONFIG_CRYPTO_PCBC=m |
| 291 | CONFIG_CRYPTO_HMAC=y | 247 | CONFIG_CRYPTO_HMAC=y |
| 292 | CONFIG_CRYPTO_MD4=m | ||
| 293 | CONFIG_CRYPTO_MICHAEL_MIC=m | 248 | CONFIG_CRYPTO_MICHAEL_MIC=m |
| 294 | CONFIG_CRYPTO_SHA256=m | 249 | CONFIG_CRYPTO_SHA256=m |
| 295 | CONFIG_CRYPTO_SHA512=m | 250 | CONFIG_CRYPTO_SHA512=m |
| 296 | CONFIG_CRYPTO_WP512=m | 251 | CONFIG_CRYPTO_WP512=m |
| 297 | CONFIG_CRYPTO_AES=m | 252 | CONFIG_CRYPTO_AES=m |
| 298 | CONFIG_CRYPTO_ANUBIS=m | 253 | CONFIG_CRYPTO_ANUBIS=m |
| 299 | CONFIG_CRYPTO_ARC4=m | ||
| 300 | CONFIG_CRYPTO_BLOWFISH=m | 254 | CONFIG_CRYPTO_BLOWFISH=m |
| 301 | CONFIG_CRYPTO_CAST5=m | 255 | CONFIG_CRYPTO_CAST5=m |
| 302 | CONFIG_CRYPTO_CAST6=m | 256 | CONFIG_CRYPTO_CAST6=m |
| @@ -306,3 +260,6 @@ CONFIG_CRYPTO_TEA=m | |||
| 306 | CONFIG_CRYPTO_TWOFISH=m | 260 | CONFIG_CRYPTO_TWOFISH=m |
| 307 | # CONFIG_CRYPTO_ANSI_CPRNG is not set | 261 | # CONFIG_CRYPTO_ANSI_CPRNG is not set |
| 308 | # CONFIG_CRYPTO_HW is not set | 262 | # CONFIG_CRYPTO_HW is not set |
| 263 | # CONFIG_VIRTUALIZATION is not set | ||
| 264 | CONFIG_CRC_T10DIF=y | ||
| 265 | CONFIG_LIBCRC32C=m | ||
diff --git a/arch/powerpc/configs/ppc64_defconfig b/arch/powerpc/configs/ppc64_defconfig index f2fe0c2b41e4..db27c82e0542 100644 --- a/arch/powerpc/configs/ppc64_defconfig +++ b/arch/powerpc/configs/ppc64_defconfig | |||
| @@ -279,7 +279,8 @@ CONFIG_HVC_RTAS=y | |||
| 279 | CONFIG_HVC_BEAT=y | 279 | CONFIG_HVC_BEAT=y |
| 280 | CONFIG_HVCS=m | 280 | CONFIG_HVCS=m |
| 281 | CONFIG_IBM_BSR=m | 281 | CONFIG_IBM_BSR=m |
| 282 | # CONFIG_HW_RANDOM is not set | 282 | CONFIG_HW_RANDOM=m |
| 283 | CONFIG_HW_RANDOM_PSERIES=m | ||
| 283 | CONFIG_RAW_DRIVER=y | 284 | CONFIG_RAW_DRIVER=y |
| 284 | CONFIG_I2C_CHARDEV=y | 285 | CONFIG_I2C_CHARDEV=y |
| 285 | CONFIG_I2C_AMD8111=y | 286 | CONFIG_I2C_AMD8111=y |
| @@ -485,7 +486,8 @@ CONFIG_CRYPTO_TEA=m | |||
| 485 | CONFIG_CRYPTO_TWOFISH=m | 486 | CONFIG_CRYPTO_TWOFISH=m |
| 486 | CONFIG_CRYPTO_LZO=m | 487 | CONFIG_CRYPTO_LZO=m |
| 487 | # CONFIG_CRYPTO_ANSI_CPRNG is not set | 488 | # CONFIG_CRYPTO_ANSI_CPRNG is not set |
| 488 | # CONFIG_CRYPTO_HW is not set | 489 | CONFIG_CRYPTO_HW=y |
| 490 | CONFIG_CRYPTO_DEV_NX=m | ||
| 489 | CONFIG_VIRTUALIZATION=y | 491 | CONFIG_VIRTUALIZATION=y |
| 490 | CONFIG_KVM_BOOK3S_64=m | 492 | CONFIG_KVM_BOOK3S_64=m |
| 491 | CONFIG_KVM_BOOK3S_64_HV=y | 493 | CONFIG_KVM_BOOK3S_64_HV=y |
diff --git a/arch/powerpc/configs/pseries_defconfig b/arch/powerpc/configs/pseries_defconfig index 187fb8d53605..1f65b3c9b59a 100644 --- a/arch/powerpc/configs/pseries_defconfig +++ b/arch/powerpc/configs/pseries_defconfig | |||
| @@ -226,7 +226,8 @@ CONFIG_HVC_CONSOLE=y | |||
| 226 | CONFIG_HVC_RTAS=y | 226 | CONFIG_HVC_RTAS=y |
| 227 | CONFIG_HVCS=m | 227 | CONFIG_HVCS=m |
| 228 | CONFIG_IBM_BSR=m | 228 | CONFIG_IBM_BSR=m |
| 229 | # CONFIG_HW_RANDOM is not set | 229 | CONFIG_HW_RANDOM=m |
| 230 | CONFIG_HW_RANDOM_PSERIES=m | ||
| 230 | CONFIG_GEN_RTC=y | 231 | CONFIG_GEN_RTC=y |
| 231 | CONFIG_RAW_DRIVER=y | 232 | CONFIG_RAW_DRIVER=y |
| 232 | CONFIG_MAX_RAW_DEVS=1024 | 233 | CONFIG_MAX_RAW_DEVS=1024 |
| @@ -367,7 +368,8 @@ CONFIG_CRYPTO_TEA=m | |||
| 367 | CONFIG_CRYPTO_TWOFISH=m | 368 | CONFIG_CRYPTO_TWOFISH=m |
| 368 | CONFIG_CRYPTO_LZO=m | 369 | CONFIG_CRYPTO_LZO=m |
| 369 | # CONFIG_CRYPTO_ANSI_CPRNG is not set | 370 | # CONFIG_CRYPTO_ANSI_CPRNG is not set |
| 370 | # CONFIG_CRYPTO_HW is not set | 371 | CONFIG_CRYPTO_HW=y |
| 372 | CONFIG_CRYPTO_DEV_NX=m | ||
| 371 | CONFIG_VIRTUALIZATION=y | 373 | CONFIG_VIRTUALIZATION=y |
| 372 | CONFIG_KVM_BOOK3S_64=m | 374 | CONFIG_KVM_BOOK3S_64=m |
| 373 | CONFIG_KVM_BOOK3S_64_HV=y | 375 | CONFIG_KVM_BOOK3S_64_HV=y |
diff --git a/arch/powerpc/kernel/entry_32.S b/arch/powerpc/kernel/entry_32.S index 5207d5a405e2..ead5016b02d0 100644 --- a/arch/powerpc/kernel/entry_32.S +++ b/arch/powerpc/kernel/entry_32.S | |||
| @@ -89,10 +89,14 @@ crit_transfer_to_handler: | |||
| 89 | mfspr r0,SPRN_SRR1 | 89 | mfspr r0,SPRN_SRR1 |
| 90 | stw r0,_SRR1(r11) | 90 | stw r0,_SRR1(r11) |
| 91 | 91 | ||
| 92 | /* set the stack limit to the current stack | ||
| 93 | * and set the limit to protect the thread_info | ||
| 94 | * struct | ||
| 95 | */ | ||
| 92 | mfspr r8,SPRN_SPRG_THREAD | 96 | mfspr r8,SPRN_SPRG_THREAD |
| 93 | lwz r0,KSP_LIMIT(r8) | 97 | lwz r0,KSP_LIMIT(r8) |
| 94 | stw r0,SAVED_KSP_LIMIT(r11) | 98 | stw r0,SAVED_KSP_LIMIT(r11) |
| 95 | CURRENT_THREAD_INFO(r0, r1) | 99 | rlwimi r0,r1,0,0,(31-THREAD_SHIFT) |
| 96 | stw r0,KSP_LIMIT(r8) | 100 | stw r0,KSP_LIMIT(r8) |
| 97 | /* fall through */ | 101 | /* fall through */ |
| 98 | #endif | 102 | #endif |
| @@ -109,10 +113,14 @@ crit_transfer_to_handler: | |||
| 109 | mfspr r0,SPRN_SRR1 | 113 | mfspr r0,SPRN_SRR1 |
| 110 | stw r0,crit_srr1@l(0) | 114 | stw r0,crit_srr1@l(0) |
| 111 | 115 | ||
| 116 | /* set the stack limit to the current stack | ||
| 117 | * and set the limit to protect the thread_info | ||
| 118 | * struct | ||
| 119 | */ | ||
| 112 | mfspr r8,SPRN_SPRG_THREAD | 120 | mfspr r8,SPRN_SPRG_THREAD |
| 113 | lwz r0,KSP_LIMIT(r8) | 121 | lwz r0,KSP_LIMIT(r8) |
| 114 | stw r0,saved_ksp_limit@l(0) | 122 | stw r0,saved_ksp_limit@l(0) |
| 115 | CURRENT_THREAD_INFO(r0, r1) | 123 | rlwimi r0,r1,0,0,(31-THREAD_SHIFT) |
| 116 | stw r0,KSP_LIMIT(r8) | 124 | stw r0,KSP_LIMIT(r8) |
| 117 | /* fall through */ | 125 | /* fall through */ |
| 118 | #endif | 126 | #endif |
diff --git a/arch/powerpc/kernel/ftrace.c b/arch/powerpc/kernel/ftrace.c index 91b46b7f6f0d..1fb78561096a 100644 --- a/arch/powerpc/kernel/ftrace.c +++ b/arch/powerpc/kernel/ftrace.c | |||
| @@ -630,18 +630,17 @@ void prepare_ftrace_return(unsigned long *parent, unsigned long self_addr) | |||
| 630 | return; | 630 | return; |
| 631 | } | 631 | } |
| 632 | 632 | ||
| 633 | if (ftrace_push_return_trace(old, self_addr, &trace.depth, 0) == -EBUSY) { | ||
| 634 | *parent = old; | ||
| 635 | return; | ||
| 636 | } | ||
| 637 | |||
| 638 | trace.func = self_addr; | 633 | trace.func = self_addr; |
| 634 | trace.depth = current->curr_ret_stack + 1; | ||
| 639 | 635 | ||
| 640 | /* Only trace if the calling function expects to */ | 636 | /* Only trace if the calling function expects to */ |
| 641 | if (!ftrace_graph_entry(&trace)) { | 637 | if (!ftrace_graph_entry(&trace)) { |
| 642 | current->curr_ret_stack--; | ||
| 643 | *parent = old; | 638 | *parent = old; |
| 639 | return; | ||
| 644 | } | 640 | } |
| 641 | |||
| 642 | if (ftrace_push_return_trace(old, self_addr, &trace.depth, 0) == -EBUSY) | ||
| 643 | *parent = old; | ||
| 645 | } | 644 | } |
| 646 | #endif /* CONFIG_FUNCTION_GRAPH_TRACER */ | 645 | #endif /* CONFIG_FUNCTION_GRAPH_TRACER */ |
| 647 | 646 | ||
diff --git a/arch/powerpc/kernel/rtas_flash.c b/arch/powerpc/kernel/rtas_flash.c index 4174b4b23246..2c0ee6405633 100644 --- a/arch/powerpc/kernel/rtas_flash.c +++ b/arch/powerpc/kernel/rtas_flash.c | |||
| @@ -709,7 +709,7 @@ static int __init rtas_flash_init(void) | |||
| 709 | 709 | ||
| 710 | if (rtas_token("ibm,update-flash-64-and-reboot") == | 710 | if (rtas_token("ibm,update-flash-64-and-reboot") == |
| 711 | RTAS_UNKNOWN_SERVICE) { | 711 | RTAS_UNKNOWN_SERVICE) { |
| 712 | printk(KERN_ERR "rtas_flash: no firmware flash support\n"); | 712 | pr_info("rtas_flash: no firmware flash support\n"); |
| 713 | return 1; | 713 | return 1; |
| 714 | } | 714 | } |
| 715 | 715 | ||
diff --git a/arch/powerpc/kvm/bookehv_interrupts.S b/arch/powerpc/kvm/bookehv_interrupts.S index d28c2d43ac1b..099fe8272b57 100644 --- a/arch/powerpc/kvm/bookehv_interrupts.S +++ b/arch/powerpc/kvm/bookehv_interrupts.S | |||
| @@ -50,8 +50,9 @@ | |||
| 50 | #define HOST_R2 (3 * LONGBYTES) | 50 | #define HOST_R2 (3 * LONGBYTES) |
| 51 | #define HOST_CR (4 * LONGBYTES) | 51 | #define HOST_CR (4 * LONGBYTES) |
| 52 | #define HOST_NV_GPRS (5 * LONGBYTES) | 52 | #define HOST_NV_GPRS (5 * LONGBYTES) |
| 53 | #define HOST_NV_GPR(n) (HOST_NV_GPRS + ((n - 14) * LONGBYTES)) | 53 | #define __HOST_NV_GPR(n) (HOST_NV_GPRS + ((n - 14) * LONGBYTES)) |
| 54 | #define HOST_MIN_STACK_SIZE (HOST_NV_GPR(31) + LONGBYTES) | 54 | #define HOST_NV_GPR(n) __HOST_NV_GPR(__REG_##n) |
| 55 | #define HOST_MIN_STACK_SIZE (HOST_NV_GPR(R31) + LONGBYTES) | ||
| 55 | #define HOST_STACK_SIZE ((HOST_MIN_STACK_SIZE + 15) & ~15) /* Align. */ | 56 | #define HOST_STACK_SIZE ((HOST_MIN_STACK_SIZE + 15) & ~15) /* Align. */ |
| 56 | #define HOST_STACK_LR (HOST_STACK_SIZE + LONGBYTES) /* In caller stack frame. */ | 57 | #define HOST_STACK_LR (HOST_STACK_SIZE + LONGBYTES) /* In caller stack frame. */ |
| 57 | 58 | ||
| @@ -410,24 +411,24 @@ heavyweight_exit: | |||
| 410 | PPC_STL r31, VCPU_GPR(R31)(r4) | 411 | PPC_STL r31, VCPU_GPR(R31)(r4) |
| 411 | 412 | ||
| 412 | /* Load host non-volatile register state from host stack. */ | 413 | /* Load host non-volatile register state from host stack. */ |
| 413 | PPC_LL r14, HOST_NV_GPR(r14)(r1) | 414 | PPC_LL r14, HOST_NV_GPR(R14)(r1) |
| 414 | PPC_LL r15, HOST_NV_GPR(r15)(r1) | 415 | PPC_LL r15, HOST_NV_GPR(R15)(r1) |
| 415 | PPC_LL r16, HOST_NV_GPR(r16)(r1) | 416 | PPC_LL r16, HOST_NV_GPR(R16)(r1) |
| 416 | PPC_LL r17, HOST_NV_GPR(r17)(r1) | 417 | PPC_LL r17, HOST_NV_GPR(R17)(r1) |
| 417 | PPC_LL r18, HOST_NV_GPR(r18)(r1) | 418 | PPC_LL r18, HOST_NV_GPR(R18)(r1) |
| 418 | PPC_LL r19, HOST_NV_GPR(r19)(r1) | 419 | PPC_LL r19, HOST_NV_GPR(R19)(r1) |
| 419 | PPC_LL r20, HOST_NV_GPR(r20)(r1) | 420 | PPC_LL r20, HOST_NV_GPR(R20)(r1) |
| 420 | PPC_LL r21, HOST_NV_GPR(r21)(r1) | 421 | PPC_LL r21, HOST_NV_GPR(R21)(r1) |
| 421 | PPC_LL r22, HOST_NV_GPR(r22)(r1) | 422 | PPC_LL r22, HOST_NV_GPR(R22)(r1) |
| 422 | PPC_LL r23, HOST_NV_GPR(r23)(r1) | 423 | PPC_LL r23, HOST_NV_GPR(R23)(r1) |
| 423 | PPC_LL r24, HOST_NV_GPR(r24)(r1) | 424 | PPC_LL r24, HOST_NV_GPR(R24)(r1) |
| 424 | PPC_LL r25, HOST_NV_GPR(r25)(r1) | 425 | PPC_LL r25, HOST_NV_GPR(R25)(r1) |
| 425 | PPC_LL r26, HOST_NV_GPR(r26)(r1) | 426 | PPC_LL r26, HOST_NV_GPR(R26)(r1) |
| 426 | PPC_LL r27, HOST_NV_GPR(r27)(r1) | 427 | PPC_LL r27, HOST_NV_GPR(R27)(r1) |
| 427 | PPC_LL r28, HOST_NV_GPR(r28)(r1) | 428 | PPC_LL r28, HOST_NV_GPR(R28)(r1) |
| 428 | PPC_LL r29, HOST_NV_GPR(r29)(r1) | 429 | PPC_LL r29, HOST_NV_GPR(R29)(r1) |
| 429 | PPC_LL r30, HOST_NV_GPR(r30)(r1) | 430 | PPC_LL r30, HOST_NV_GPR(R30)(r1) |
| 430 | PPC_LL r31, HOST_NV_GPR(r31)(r1) | 431 | PPC_LL r31, HOST_NV_GPR(R31)(r1) |
| 431 | 432 | ||
| 432 | /* Return to kvm_vcpu_run(). */ | 433 | /* Return to kvm_vcpu_run(). */ |
| 433 | mtlr r5 | 434 | mtlr r5 |
| @@ -453,24 +454,24 @@ _GLOBAL(__kvmppc_vcpu_run) | |||
| 453 | stw r5, HOST_CR(r1) | 454 | stw r5, HOST_CR(r1) |
| 454 | 455 | ||
| 455 | /* Save host non-volatile register state to stack. */ | 456 | /* Save host non-volatile register state to stack. */ |
| 456 | PPC_STL r14, HOST_NV_GPR(r14)(r1) | 457 | PPC_STL r14, HOST_NV_GPR(R14)(r1) |
| 457 | PPC_STL r15, HOST_NV_GPR(r15)(r1) | 458 | PPC_STL r15, HOST_NV_GPR(R15)(r1) |
| 458 | PPC_STL r16, HOST_NV_GPR(r16)(r1) | 459 | PPC_STL r16, HOST_NV_GPR(R16)(r1) |
| 459 | PPC_STL r17, HOST_NV_GPR(r17)(r1) | 460 | PPC_STL r17, HOST_NV_GPR(R17)(r1) |
| 460 | PPC_STL r18, HOST_NV_GPR(r18)(r1) | 461 | PPC_STL r18, HOST_NV_GPR(R18)(r1) |
| 461 | PPC_STL r19, HOST_NV_GPR(r19)(r1) | 462 | PPC_STL r19, HOST_NV_GPR(R19)(r1) |
| 462 | PPC_STL r20, HOST_NV_GPR(r20)(r1) | 463 | PPC_STL r20, HOST_NV_GPR(R20)(r1) |
| 463 | PPC_STL r21, HOST_NV_GPR(r21)(r1) | 464 | PPC_STL r21, HOST_NV_GPR(R21)(r1) |
| 464 | PPC_STL r22, HOST_NV_GPR(r22)(r1) | 465 | PPC_STL r22, HOST_NV_GPR(R22)(r1) |
| 465 | PPC_STL r23, HOST_NV_GPR(r23)(r1) | 466 | PPC_STL r23, HOST_NV_GPR(R23)(r1) |
| 466 | PPC_STL r24, HOST_NV_GPR(r24)(r1) | 467 | PPC_STL r24, HOST_NV_GPR(R24)(r1) |
| 467 | PPC_STL r25, HOST_NV_GPR(r25)(r1) | 468 | PPC_STL r25, HOST_NV_GPR(R25)(r1) |
| 468 | PPC_STL r26, HOST_NV_GPR(r26)(r1) | 469 | PPC_STL r26, HOST_NV_GPR(R26)(r1) |
| 469 | PPC_STL r27, HOST_NV_GPR(r27)(r1) | 470 | PPC_STL r27, HOST_NV_GPR(R27)(r1) |
| 470 | PPC_STL r28, HOST_NV_GPR(r28)(r1) | 471 | PPC_STL r28, HOST_NV_GPR(R28)(r1) |
| 471 | PPC_STL r29, HOST_NV_GPR(r29)(r1) | 472 | PPC_STL r29, HOST_NV_GPR(R29)(r1) |
| 472 | PPC_STL r30, HOST_NV_GPR(r30)(r1) | 473 | PPC_STL r30, HOST_NV_GPR(R30)(r1) |
| 473 | PPC_STL r31, HOST_NV_GPR(r31)(r1) | 474 | PPC_STL r31, HOST_NV_GPR(R31)(r1) |
| 474 | 475 | ||
| 475 | /* Load guest non-volatiles. */ | 476 | /* Load guest non-volatiles. */ |
| 476 | PPC_LL r14, VCPU_GPR(R14)(r4) | 477 | PPC_LL r14, VCPU_GPR(R14)(r4) |
diff --git a/drivers/video/aty/radeon_monitor.c b/drivers/video/aty/radeon_monitor.c index 9261c918fde8..5c23eac0eb9a 100644 --- a/drivers/video/aty/radeon_monitor.c +++ b/drivers/video/aty/radeon_monitor.c | |||
| @@ -730,6 +730,25 @@ static void radeon_videomode_to_var(struct fb_var_screeninfo *var, | |||
| 730 | var->vmode = mode->vmode; | 730 | var->vmode = mode->vmode; |
| 731 | } | 731 | } |
| 732 | 732 | ||
| 733 | #ifdef CONFIG_PPC_PSERIES | ||
| 734 | static int is_powerblade(const char *model) | ||
| 735 | { | ||
| 736 | struct device_node *root; | ||
| 737 | const char* cp; | ||
| 738 | int len, l, rc = 0; | ||
| 739 | |||
| 740 | root = of_find_node_by_path("/"); | ||
| 741 | if (root && model) { | ||
| 742 | l = strlen(model); | ||
| 743 | cp = of_get_property(root, "model", &len); | ||
| 744 | if (cp) | ||
| 745 | rc = memcmp(model, cp, min(len, l)) == 0; | ||
| 746 | of_node_put(root); | ||
| 747 | } | ||
| 748 | return rc; | ||
| 749 | } | ||
| 750 | #endif | ||
| 751 | |||
| 733 | /* | 752 | /* |
| 734 | * Build the modedb for head 1 (head 2 will come later), check panel infos | 753 | * Build the modedb for head 1 (head 2 will come later), check panel infos |
| 735 | * from either BIOS or EDID, and pick up the default mode | 754 | * from either BIOS or EDID, and pick up the default mode |
| @@ -865,6 +884,22 @@ void __devinit radeon_check_modes(struct radeonfb_info *rinfo, const char *mode_ | |||
| 865 | has_default_mode = 1; | 884 | has_default_mode = 1; |
| 866 | } | 885 | } |
| 867 | 886 | ||
| 887 | #ifdef CONFIG_PPC_PSERIES | ||
| 888 | if (!has_default_mode && ( | ||
| 889 | is_powerblade("IBM,8842") || /* JS20 */ | ||
| 890 | is_powerblade("IBM,8844") || /* JS21 */ | ||
| 891 | is_powerblade("IBM,7998") || /* JS12/JS21/JS22 */ | ||
| 892 | is_powerblade("IBM,0792") || /* QS21 */ | ||
| 893 | is_powerblade("IBM,0793") /* QS22 */ | ||
| 894 | )) { | ||
| 895 | printk("Falling back to 800x600 on JSxx hardware\n"); | ||
| 896 | if (fb_find_mode(&info->var, info, "800x600@60", | ||
| 897 | info->monspecs.modedb, | ||
| 898 | info->monspecs.modedb_len, NULL, 8) != 0) | ||
| 899 | has_default_mode = 1; | ||
| 900 | } | ||
| 901 | #endif | ||
| 902 | |||
| 868 | /* | 903 | /* |
| 869 | * Still no mode, let's pick up a default from the db | 904 | * Still no mode, let's pick up a default from the db |
| 870 | */ | 905 | */ |
