linux/drivers
Daniel Vetter c9c4b6f6c2 drm/i915: fix swizzle detection for gen3
It looks like the desktop variants of i915 and i945 also have the DCC
register to control dram channel interleave and cpu side bit6
swizzling.

Unfortunately internal Cspec/ConfigDB documentation for these ancient chips
have already been dropped and there seem to be no archives. Also
somebody thought the swizzling behaviour is surely a worthy secret to
keep and redacted any mention of these fields from the published Intel
datasheets.

I suspect the hw engineers were really proud of the page coloring
they've achieved in their first dual channel dram controller with
bit17 - after all Bspec explains in great length the optimal layout of
page frame numbers modulo 4 for the color and depth buffers, too.
Later on when they've started to work on VT-d they shamefully
discoverd their stupidity and tried to cover the tracks ...

Tested-by: Daniel Vetter <daniel.vetter@ffwll.ch> (i915g)
Tested-by: Pavel Ondračka <pavel.ondracka@email.cz> (i945g)
Tested-by: Chris Wilson <chris@chris-wilson.co.uk>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=42625
Signed-Off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2012-01-30 21:19:15 +01:00
..
accessibility
acpi
amba
ata
atm
auxdisplay
base
bcma
block Merge branch 'for-linus' of git://git.kernel.dk/linux-block 2011-12-16 10:05:14 -08:00
bluetooth
cdrom
char agp/intel: Add pci id for hostbridge from has/qemu 2012-01-17 11:06:09 +01:00
clk
clocksource
connector
cpufreq
cpuidle
crypto
dca
devfreq
dio
dma
edac
eisa
firewire
firmware Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/ibft 2011-12-15 14:16:47 -08:00
gpio gpio: Fix DA9052 GPIO build errors. 2011-12-15 11:25:43 -07:00
gpu drm/i915: fix swizzle detection for gen3 2012-01-30 21:19:15 +01:00
hid
hv
hwmon
hwspinlock
i2c i2c-eg20t: correct the driver init order of pch_i2c_probe() 2011-12-18 11:46:42 +00:00
ide
idle
ieee802154
infiniband
input
iommu Merge branch 'drm-intel-fixes' of git://people.freedesktop.org/~keithp/linux 2011-12-16 11:27:56 -08:00
isdn
leds
lguest
macintosh
mca
md
media
memstick
message
mfd
misc
mmc
mtd
net Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2011-12-16 12:17:32 -08:00
nfc
nubus
of
oprofile
parisc
parport
pci pci: Fix hotplug of Express Module with pci bridges 2011-12-18 14:10:16 -08:00
pcmcia
pinctrl
platform
pnp
power
pps
ps3
ptp
rapidio
regulator
rtc
s390 [SCSI] zfcp: return early from slave_destroy if slave_alloc returned early 2011-12-14 15:40:43 +04:00
sbus
scsi [SCSI] fcoe: fix fcoe in a DCB environment by adding DCB notifiers to set skb priority 2011-12-15 11:02:07 +04:00
sfi
sh
sn
spi
ssb
staging Merge tag 'v3.2-rc6' of /home/airlied/devel/kernel/linux-2.6 into drm-core-next 2011-12-20 14:43:53 +00:00
target
tc
telephony
thermal
tty
uio
usb
uwb
vhost
video
virt
virtio
vlynq
w1
watchdog
xen Merge tag 'v3.2-rc6' of /home/airlied/devel/kernel/linux-2.6 into drm-core-next 2011-12-20 14:43:53 +00:00
zorro
Kconfig
Makefile