Chris Wilson
f0c8602464
Revert "drm/i915: Don't save/restore hardware status page address register"
...
This reverts commit a7a75c8f70 .
There are two different variations on how Intel hardware addresses the
"Hardware Status Page". One as a location in physical memory and the
other as an offset into the virtual memory of the GPU, used in more
recent chipsets. (The HWS itself is a cacheable region of memory which
the GPU can write to without requiring CPU synchronisation, used for
updating various details of hardware state, such as the position of
the GPU head in the ringbuffer, the last breadcrumb seqno, etc).
These two types of addresses were updated in different locations of code
- one inline with the ringbuffer initialisation, and the other during
device initialisation. (The HWS page is logically associated with
the rings, and there is one HWS page per ring.) During resume, only the
ringbuffers were being re-initialised along with the virtual HWS page,
leaving the older physical address HWS untouched. This then caused a
hang on the older gen3/4 (915GM, 945GM, 965GM) the first time we tried
to synchronise the GPU as the breadcrumbs were never being updated.
Reported-and-tested-by: Linus Torvalds <torvalds@linux-foundation.org>
Reported-by: Jan Niehusmann <jan@gondor.com>
Reported-and-tested-by: Justin P. Mattock <justinmattock@gmail.com>
Reported-and-tested-by: Michael "brot" Groh <brot@minad.de>
Cc: Zhenyu Wang <zhenyuw@linux.intel.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Acked-by: Zhenyu Wang <zhenyuw@linux.intel.com>
2011-03-24 07:15:01 +00:00
..
accessibility
acpi
ACPI / ACPICA: Implicit notify for multiple devices
2011-02-24 19:59:21 +01:00
amba
ata
atm
ATM, Solos PCI ADSL2+: Don't deref NULL pointer if net_ratelimit() and alloc_skb() interact badly.
2011-02-13 16:55:46 -08:00
auxdisplay
base
block
block: kill loop_mutex
2011-03-03 11:53:25 -05:00
bluetooth
Revert "Bluetooth: Enable USB autosuspend by default on btusb"
2011-02-23 19:42:03 -08:00
cdrom
cdrom: support devices that have check_events but not media_changed
2011-02-09 14:22:37 +01:00
char
ipmi: Fix IPMI errors due to timing problems
2011-03-10 13:21:16 -08:00
clk
clocksource
connector
cpufreq
[CPUFREQ] fix BUG on cpufreq policy init failure
2011-03-01 18:49:44 -05:00
cpuidle
crypto
dca
dio
dma
Merge branch 'imx' into dmaengine-fixes
2011-02-14 02:40:46 -08:00
edac
amd64_edac: Fix DIMMs per DCTs output
2011-02-10 14:41:49 +01:00
eisa
firewire
firmware
x86, dmi, debug: Log board name (when present) in dmesg/oops output
2011-02-15 04:20:57 +01:00
gpio
drivers/gpio/pca953x.c: add a mutex to fix race condition
2011-02-11 16:12:20 -08:00
gpu
Revert "drm/i915: Don't save/restore hardware status page address register"
2011-03-24 07:15:01 +00:00
hid
hwmon
hwmon: (adt7411) add MODULE_DEVICE_TABLE
2011-02-26 08:59:32 -08:00
i2c
i2c-eg20t: include slab.h for memory allocations
2011-03-08 23:13:30 +00:00
ide
idle
intel_idle: disable Atom/Lincroft HW C-state auto-demotion
2011-02-17 17:08:48 -05:00
ieee802154
infiniband
Merge branches 'nes' and 'qib' into for-next
2011-02-17 14:04:59 -08:00
input
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
2011-02-23 14:44:25 -08:00
isdn
drivers:isdn:istream.c Fix typo pice to piece
2011-02-28 12:07:32 -08:00
leds
lguest
macintosh
mca
md
md: Fix - again - partition detection when array becomes active
2011-02-24 17:26:41 +11:00
media
Merge branch 'media_fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6
2011-03-10 13:22:10 -08:00
memstick
workqueue, freezer: unify spelling of 'freeze' + 'able' to 'freezable'
2011-02-16 17:48:59 +01:00
message
[SCSI] mptfusion: Bump version 03.04.18
2011-02-12 12:51:21 -06:00
mfd
mfd: Avoid tps6586x burst writes
2011-03-02 10:57:50 +01:00
misc
drivers/misc/bmp085.c: add MODULE_DEVICE_TABLE
2011-03-04 17:53:38 -08:00
mmc
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc
2011-03-09 14:00:44 -08:00
mtd
workqueue, freezer: unify spelling of 'freeze' + 'able' to 'freezable'
2011-02-16 17:48:59 +01:00
net
r8169: disable ASPM
2011-03-03 11:55:43 -08:00
nfc
drivers/nfc/pn544.c: add missing regulator
2011-02-25 15:07:36 -08:00
nubus
of
of/promtree: allow DT device matching by fixing 'name' brokenness (v5)
2011-03-02 13:45:19 -07:00
oprofile
parisc
parport
pci
pci: use security_capable() when checking capablities during config space read
2011-02-15 19:06:31 +11:00
pcmcia
Merge branch 'fixes' of master.kernel.org:/home/rmk/linux-2.6-arm
2011-03-07 20:45:42 -08:00
platform
dell-laptop: Toggle the unsupported hardware killswitch
2011-02-21 17:06:21 -05:00
pnp
power
pps
pps: make pps_gen_parport depend on BROKEN
2011-03-04 17:53:38 -08:00
ps3
rapidio
rapidio: fix sysfs config attribute to access 16MB of maint space
2011-02-25 15:07:37 -08:00
regulator
regulator, mc13xxx: Remove pointless test for unsigned less than zero
2011-02-25 08:51:07 +00:00
rtc
drivers/rtc/rtc-s3c.c: fix prototype for s3c_rtc_setaie()
2011-03-04 17:53:38 -08:00
s390
[S390] tape: deadlock on system work queue
2011-03-03 17:56:14 +01:00
sbus
scsi
block: add @force_kblockd to __blk_run_queue()
2011-03-02 08:48:05 -05:00
sfi
sh
sn
spi
spi/pxa2xx pci: fix the release - remove race
2011-02-15 13:25:36 -07:00
ssb
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6
2011-02-08 12:03:54 -08:00
staging
Merge branch 'staging-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6
2011-02-10 12:19:23 -08:00
target
[SCSI] target: fix use after free detected by SLUB poison
2011-02-12 12:32:41 -06:00
tc
telephony
thermal
ACPI: Fix build for CONFIG_NET unset
2011-02-28 18:00:31 -08:00
tty
fmvj18x_cs: add new id
2011-02-28 12:06:20 -08:00
uio
usb
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
2011-03-03 15:43:15 -08:00
uwb
vhost
video
drivers/video/backlight/ltv350qv.c: fix a memory leak
2011-03-04 17:53:38 -08:00
virtio
vlynq
w1
drivers/w1/masters/omap_hdq.c: add missing clk_put
2011-02-11 16:12:20 -08:00
watchdog
watchdog: sbc_fitpc2_wdt, fix crash on systems without DMI_BOARD_NAME
2011-03-09 21:33:37 +00:00
xen
xen: suspend and resume system devices when running PVHVM
2011-02-17 10:31:20 +00:00
zorro
Kconfig
Makefile