[git pull] drm tree

From: Dave Airlie
Date: Thu Apr 01 2010 - 03:33:04 EST



a pull from nouveau + minor drm core fixes,

Lots of radeon fixes from Alex@AMD, main thing is turning off the use of
the hw i2c engine by default again, it was causing problems for some
people, we now have a module option. Lots of misc radeon fixes from Alex
also, along with RV7xx HDMI audio enabling fixes. No GPU reset or
placement patches. Hopefully this doesn't contain either an April Fools
joke or an Easter Egg.

The following changes since commit 220bf991b0366cc50a94feede3d7341fa5710ee4:
Linus Torvalds (1):
Linux 2.6.34-rc2

are available in the git repository at:

ssh://master.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6.git drm-linus

Alex Deucher (36):
drm/radeon: add new RS880 pci id
drm/radeon/kms/atom: spread spectrum fix
drm/radeon/kms: use lcd pll limits when available
drm/radeon/kms: further spread spectrum fixes
drm/radeon/kms: fix pal tv-out support on legacy IGP chips
drm/radeon/kms: fix for hw i2c
drm/radeon/kms: fix i2c prescale calc on older radeons
drm/radeon/kms/r1xx: enable hw i2c
drm/radeon/kms/rs4xx: make sure crtcs are enabled when setting timing
drm/radeon/r600: add missing license and comments to r600_blit_shaders.c
drm/radeon/kms: expose thermal/fan i2c buses
drm/radeon/kms/pm: fix segfault in clock code
drm/radeon/kms: gfx init fixes for r6xx/r7xx
drm/radeon/kms/pm: fix typo in power table parsing
drm/radeon/kms: init rdev->num_crtc at asic init
drm/radeon/kms: display watermark fixes
drm/radeon/kms: never treat rs4xx as AGP
drm/radeon/kms: fix display bandwidth setup on rs4xx
drm/radeon/kms: remove lvds quirks
drm/radeon/kms/atom: make sure tables are valid (v2)
drm/radeon/r600: remove some regs are not safe regs for command buffers
drm/radeon/kms: fix some typos in r6xx/r7xx hpd setup
drm/radeon/r6xx/r7xx: CS parser fixes
drm/radeon/kms: bump the version for r6xx/r7xx const buffer support
drm/radeon: bump the UMS driver version for r6xx/r7xx const buffer support
drm/radeon/r6xx/r7xx: further safe reg clean up
drm/radeon/kms: fix macbookpro connector quirk
drm/radeon/kms/atom: minor fixes to transmitter setup
drm/radeon/kms/dp: remove extraneous training complete call
drm/radeon/kms: minor fixes for eDP with LCD* device tags (v2)
drm/radeon/kms/dp: disable training pattern on the sink at the end of link training
drm/radeon/kms: display watermark updates (v2)
drm/radeon/kms: disable MSI on IGP chips
drm/radeon/kms: use new pre/post_xfer i2c bit algo hooks
drm/radeon/kms: add hw_i2c module option
drm/radeon/kms/evergreen: get DP working

Ben Skeggs (5):
drm/nouveau: add option to allow override of dcb connector table types
drm/nouveau: Gigabyte NX85T connector table lies, it has DVI-I not HDMI
drm/nv50: fix connector table parsing for some cards
drm/nouveau: add module option to disable TV detection
drm/edid: allow certain bogus edids to hit a fixup path rather than fail

Chris Wilson (1):
drm: Return ENODEV if the inode mapping changes

Daniel Vetter (5):
drm/radeon: create radeon_asic.c
drm/radeon: move asic structs to radeon_asic.c
drm/radeon: unconfuse return value of radeon_asic->clear_surface_reg
drm/radeon: include radeon_asic.h in the asic specific files
drm/radeon: collect r100 asic related declarations in radeon_asic.h

Dave Airlie (8):
drm/ttm: use drm calloc large and free large
Merge remote branch 'nouveau/for-airlied' into drm-linus
Merge branch 'radeon-for-airlied' of ../linux-2.6 into drm-linus
drm/radeon/kms: don't print error on -ERESTARTSYS.
Merge branch 'v2.6.34-rc2' into drm-linus
drm/radeon/kms: add sanity check to wptr.
drm/radeon/kms: rs400/480 should set common registers.
drm/radeon/kms: enable ACPI powermanagement mode on radeon gpus.

Francisco Jerez (2):
drm/nv04-nv40: Fix up the programmed horizontal sync pulse delay.
drm/nouveau: Never evict VRAM buffers to system.

Jerome Glisse (2):
drm/radeon/kms: catch atombios infinite loop and break out of it
drm/radeon/kms: avoid possible oops (call gart_fini before gart_disable)

Maarten Maathuis (2):
drm/nouveau: print a message very early during suspend
drm/nv50: add a memory barrier to pushbuf submission

Marcin Kościelnicki (4):
drm/nv50: Remove redundant/incorrect ctxvals initialisation.
drm/nouveau: Fix fbcon corruption with font width not divisible by 8
drm/nv50: Make ctxprog wait until interrupt handler is done.
drm/nv50: Improve PGRAPH interrupt handling.

Michel Dänzer (1):
drm/radeon/kms: Only restrict BO to visible VRAM size when pinning to VRAM.

Pauli Nieminen (1):
drm/radeon/kms: Fix NULL pointer dereference if memory allocation failed.

Rafał Miłecki (8):
drm/radeon/kms: clean HDMI definitions
drm/radeon/kms: clean assigning HDMI blocks to encoders
drm/radeon/kms: add HDMI code for pre-DCE3 R6xx GPUs
drm/radeon/kms: enable audio engine on DCE32
drm/radeon/kms: remove dead audio/HDMI code
drm/radeon/kms: improve coding style a little
drm/radeon/kms: switch to condition waiting for reclocking
drm/radeon/kms: prepare for more reclocking operations

Randy Dunlap (2):
drm/vmwgfx: depends on FB
drm: fix build error when SYSRQ is disabled

Robert P. J. Day (1):
drm: "kobject_init/kobject_add" -> "kobject_init_and_add".

Zhao Yakui (1):
drm: remove the EDID blob stored in the EDID property when it is disconnected

drivers/gpu/drm/drm_crtc_helper.c | 1 +
drivers/gpu/drm/drm_edid.c | 9 -
drivers/gpu/drm/drm_fb_helper.c | 2 +
drivers/gpu/drm/drm_fops.c | 16 +-
drivers/gpu/drm/nouveau/Makefile | 2 +-
drivers/gpu/drm/nouveau/nouveau_bios.c | 28 +-
drivers/gpu/drm/nouveau/nouveau_bios.h | 3 +-
drivers/gpu/drm/nouveau/nouveau_bo.c | 3 +-
drivers/gpu/drm/nouveau/nouveau_connector.c | 2 +-
drivers/gpu/drm/nouveau/nouveau_dma.c | 5 +
drivers/gpu/drm/nouveau/nouveau_drv.c | 10 +
drivers/gpu/drm/nouveau/nouveau_drv.h | 6 +
drivers/gpu/drm/nouveau/nouveau_irq.c | 609 +++++++++++++++++++--
drivers/gpu/drm/nouveau/nouveau_state.c | 5 +-
drivers/gpu/drm/nouveau/nv04_crtc.c | 6 +-
drivers/gpu/drm/nouveau/nv04_fbcon.c | 6 +-
drivers/gpu/drm/nouveau/nv50_display.c | 4 +-
drivers/gpu/drm/nouveau/nv50_fb.c | 32 ++
drivers/gpu/drm/nouveau/nv50_fbcon.c | 2 +-
drivers/gpu/drm/nouveau/nv50_graph.c | 22 +-
drivers/gpu/drm/nouveau/nv50_grctx.c | 13 +-
drivers/gpu/drm/radeon/Makefile | 2 +-
drivers/gpu/drm/radeon/atom.c | 91 +++-
drivers/gpu/drm/radeon/atom.h | 8 +-
drivers/gpu/drm/radeon/atombios_crtc.c | 98 +++-
drivers/gpu/drm/radeon/atombios_dp.c | 6 +-
drivers/gpu/drm/radeon/evergreen.c | 11 +-
drivers/gpu/drm/radeon/r100.c | 25 +-
drivers/gpu/drm/radeon/r200.c | 1 +
drivers/gpu/drm/radeon/r300.c | 5 +-
drivers/gpu/drm/radeon/r420.c | 2 +
drivers/gpu/drm/radeon/r520.c | 9 +-
drivers/gpu/drm/radeon/r600.c | 30 +-
drivers/gpu/drm/radeon/r600_audio.c | 52 +--
drivers/gpu/drm/radeon/r600_blit_shaders.c | 35 ++
drivers/gpu/drm/radeon/r600_cp.c | 3 +
drivers/gpu/drm/radeon/r600_cs.c | 70 +++-
drivers/gpu/drm/radeon/r600_hdmi.c | 191 +++++---
drivers/gpu/drm/radeon/r600_reg.h | 10 +-
drivers/gpu/drm/radeon/r600d.h | 49 ++
drivers/gpu/drm/radeon/radeon.h | 66 +--
drivers/gpu/drm/radeon/radeon_asic.c | 772 +++++++++++++++++++++++++++
drivers/gpu/drm/radeon/radeon_asic.h | 545 ++-----------------
drivers/gpu/drm/radeon/radeon_atombios.c | 461 +++++++++--------
drivers/gpu/drm/radeon/radeon_combios.c | 7 +-
drivers/gpu/drm/radeon/radeon_connectors.c | 2 +-
drivers/gpu/drm/radeon/radeon_cs.c | 11 +-
drivers/gpu/drm/radeon/radeon_device.c | 237 ++-------
drivers/gpu/drm/radeon/radeon_display.c | 68 ++-
drivers/gpu/drm/radeon/radeon_drv.c | 11 +-
drivers/gpu/drm/radeon/radeon_drv.h | 3 +-
drivers/gpu/drm/radeon/radeon_encoders.c | 121 +++--
drivers/gpu/drm/radeon/radeon_i2c.c | 153 +++---
drivers/gpu/drm/radeon/radeon_irq_kms.c | 22 +-
drivers/gpu/drm/radeon/radeon_legacy_crtc.c | 8 +
drivers/gpu/drm/radeon/radeon_legacy_tv.c | 29 +-
drivers/gpu/drm/radeon/radeon_mode.h | 12 +-
drivers/gpu/drm/radeon/radeon_object.c | 6 +-
drivers/gpu/drm/radeon/radeon_pm.c | 46 ++-
drivers/gpu/drm/radeon/radeon_reg.h | 1 +
drivers/gpu/drm/radeon/reg_srcs/r600 | 75 ---
drivers/gpu/drm/radeon/rs400.c | 7 +-
drivers/gpu/drm/radeon/rs600.c | 33 ++-
drivers/gpu/drm/radeon/rs600d.h | 53 ++
drivers/gpu/drm/radeon/rs690.c | 122 +++--
drivers/gpu/drm/radeon/rs690d.h | 3 +
drivers/gpu/drm/radeon/rv515.c | 45 +-
drivers/gpu/drm/radeon/rv770.c | 31 +-
drivers/gpu/drm/ttm/ttm_bo.c | 4 +-
drivers/gpu/drm/ttm/ttm_memory.c | 18 +-
drivers/gpu/drm/ttm/ttm_tt.c | 23 +-
drivers/gpu/drm/vmwgfx/Kconfig | 2 +-
include/drm/drmP.h | 34 +--
include/drm/drm_mem_util.h | 65 +++
include/drm/drm_pciids.h | 1 +
include/drm/ttm/ttm_bo_driver.h | 1 -
76 files changed, 2902 insertions(+), 1680 deletions(-)
create mode 100644 drivers/gpu/drm/nouveau/nv50_fb.c
create mode 100644 drivers/gpu/drm/radeon/radeon_asic.c
create mode 100644 include/drm/drm_mem_util.h