[no subject]
From: Dave Airlie
Date: Mon Sep 28 2009 - 23:55:23 EST
Hi Linus,
Please pull the 'drm-next' branch from
ssh://master.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6.git drm-next
This might seem a bit big and I did mean to get it to you last week,
but got distracted by X things. However its been fairly well tested.
The only new feature which I feel is important enough to let in now
as it shouldn't disrupt much, is to allow kms to resepct video= on the
cmdline and set the initial mode and turn individual connectors on/off.
(it contains one patch to fb to allow this, which I've sent past the
fbdev list already)
There are also some fixes for the EDID parser.
Otherwise its mostly radeon related:
radeon kms fixups and reogranising
r600 non-kms bug fixes.
radeon large kmalloc avoidance, we sometimes could try and do
a 64k kmalloc if the userspace submitted a large enough packet,
this could fail, I've avoided this by using 2 separate pages
to cache parts of the userspace buffer.
Dave.
drivers/gpu/drm/drm_crtc.c | 1 +
drivers/gpu/drm/drm_crtc_helper.c | 88 ++++++-
drivers/gpu/drm/drm_edid.c | 46 +++-
drivers/gpu/drm/drm_fb_helper.c | 235 +++++++++++++++++-
drivers/gpu/drm/drm_modes.c | 3 +-
drivers/gpu/drm/i915/intel_fb.c | 5 +-
drivers/gpu/drm/radeon/.gitignore | 3 +
drivers/gpu/drm/radeon/avivod.h | 9 -
drivers/gpu/drm/radeon/r100.c | 197 ++++++---------
drivers/gpu/drm/radeon/r100_track.h | 69 +++++-
drivers/gpu/drm/radeon/r200.c | 79 +++---
drivers/gpu/drm/radeon/r300.c | 137 ++++-------
drivers/gpu/drm/radeon/r500_reg.h | 3 +
drivers/gpu/drm/radeon/r520.c | 276 ++++++++++++--------
drivers/gpu/drm/radeon/r520d.h | 187 ++++++++++++++
drivers/gpu/drm/radeon/r600.c | 11 +-
drivers/gpu/drm/radeon/r600_cs.c | 186 +++++++++++---
drivers/gpu/drm/radeon/radeon.h | 76 ++++++-
drivers/gpu/drm/radeon/radeon_asic.h | 80 +++---
drivers/gpu/drm/radeon/radeon_atombios.c | 9 +-
drivers/gpu/drm/radeon/radeon_connectors.c | 79 +++++--
drivers/gpu/drm/radeon/radeon_cs.c | 103 +++++++-
drivers/gpu/drm/radeon/radeon_device.c | 11 +-
drivers/gpu/drm/radeon/radeon_drv.c | 5 -
drivers/gpu/drm/radeon/radeon_fb.c | 26 ++-
drivers/gpu/drm/radeon/radeon_kms.c | 49 ----
drivers/gpu/drm/radeon/radeon_reg.h | 1 +
drivers/gpu/drm/radeon/radeon_ttm.c | 7 +-
drivers/gpu/drm/radeon/rs600.c | 20 +--
drivers/gpu/drm/radeon/rs690.c | 3 +-
drivers/gpu/drm/radeon/rv515.c | 364 +++++++++++++++++++--------
drivers/gpu/drm/radeon/rv515d.h | 385 +++++++++++++++++++++++++++-
drivers/gpu/drm/radeon/rv770.c | 11 +-
drivers/video/fbmem.c | 2 +-
include/drm/drm_crtc.h | 14 +-
include/drm/drm_crtc_helper.h | 4 +-
include/drm/drm_fb_helper.h | 24 ++
37 files changed, 2117 insertions(+), 691 deletions(-)
create mode 100644 drivers/gpu/drm/radeon/.gitignore
create mode 100644 drivers/gpu/drm/radeon/r520d.h
commit f0ed1f655aa0375e2abba84cc4e8e6c853d48555
Author: Jerome Glisse <jglisse@xxxxxxxxxx>
Date: Mon Sep 28 20:39:19 2009 +0200
drm/radeon/kms: Convert R520 to new init path and associated cleanup
Convert the r520 asic support to new init path, change are smaller than
previous one as most of the architecture is now in place and more code
sharing can happen btw various asics.
Signed-off-by: Jerome Glisse <jglisse@xxxxxxxxxx>
Signed-off-by: Dave Airlie <airlied@xxxxxxxx>
commit d39c3b895876427c5083a936e00f3f5b7f0fc1b3
Author: Jerome Glisse <jglisse@xxxxxxxxxx>
Date: Mon Sep 28 18:34:43 2009 +0200
drm/radeon/kms: Convert RV515 to new init path and associated cleanup
Convert the rv515 asic support to new init path also add an explanation
in radeon.h about the new init path. There is also few cleanups
associated with this change (others asic calling rv515 helper
functions).
Signed-off-by: Jerome Glisse <jglisse@xxxxxxxxxx>
Signed-off-by: Dave Airlie <airlied@xxxxxxxx>
commit f4e45d02e4135043fe98bc21be38527c516ad990
Author: Mikael Pettersson <mikpe@xxxxxxxx>
Date: Mon Sep 28 18:27:23 2009 +0200
drm: fix radeon DRM warnings when !CONFIG_DEBUG_FS
Compiling the radeon DRM driver with !CONFIG_DEBUG_FS
throws the following warnings:
drivers/gpu/drm/radeon/radeon_ttm.c: In function 'radeon_ttm_debugfs_init':
drivers/gpu/drm/radeon/radeon_ttm.c:714: warning: unused variable 'i'
drivers/gpu/drm/radeon/radeon_ttm.c: At top level:
drivers/gpu/drm/radeon/radeon_ttm.c:692: warning: 'radeon_mem_types_list' defined but not used
drivers/gpu/drm/radeon/radeon_ttm.c:693: warning: 'radeon_mem_types_names' defined but not used
Fix: move these variables inside the #if defined(CONFIG_DEBUG_FS)
block in radeon_ttm_debugsfs_init(), which is the only place using them.
Signed-off-by: Mikael Pettersson <mikpe@xxxxxxxx>
Signed-off-by: Dave Airlie <airlied@xxxxxxxx>
commit bea1d35b8e1533ac493305b3efe04a4b7def8a7f
Author: Mikael Pettersson <mikpe@xxxxxxxx>
Date: Mon Sep 28 18:26:25 2009 +0200
drm: fix drm_fb_helper warning when !CONFIG_MAGIC_SYSRQ
Compiling DRM throws the following warning if MAGIC_SYSRQ is disabled:
drivers/gpu/drm/drm_fb_helper.c:101: warning: 'sysrq_drm_fb_helper_restore_op' defined but not used
Fix: place sysrq_drm_fb_helper_restore_op and associated
definitions inside #ifdef CONFIG_MAGIC_SYSRQ.
Signed-off-by: Mikael Pettersson <mikpe@xxxxxxxx>
Signed-off-by: Dave Airlie <airlied@xxxxxxxx>
commit 4c57edba4588ddba40017fbde3cd356e600bdf80
Author: Dave Airlie <airlied@xxxxxxxx>
Date: Mon Sep 28 15:37:25 2009 +1000
drm/r600: fix memory leak introduced with 64k malloc avoidance fix.
The legacy r600 path shares code, but doesn't share quite enough
to get the freeing correct. Free the pages here also.
Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>
commit 74bf2ad508efa93db4254c9da9c7238da44e2c58
Author: Dave Airlie <airlied@xxxxxxxx>
Date: Mon Sep 28 15:31:10 2009 +1000
drm/kms: make fb helper work for all drivers.
This initialises the fb helper with the connector helper,
so that the fb cmdline code works for intel as well.
Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>
commit 210bed8f827471e271f894fb99ee879a5d27cf30
Author: Alex Deucher <alexdeucher@xxxxxxxxx>
Date: Fri Sep 25 18:33:08 2009 -0400
drm/radeon/r600: fix offset handling in CS parser
Need add reloc offset to the offset in the actual
packet. Fixes use of the DRAW_INDEX packet by the 3D
driver.
[airlied: modified first one where idx_value == ib[idx+0]
Signed-off-by: Alex Deucher <alexdeucher@xxxxxxxxx>
Signed-off-by: Dave Airlie <airlied@xxxxxxxx>
commit 2b5d6c538b48772ba3351b8a8eed096f7af8de5d
Author: Alex Deucher <alexdeucher@xxxxxxxxx>
Date: Fri Sep 25 17:32:14 2009 -0400
drm/radeon/kms/r600: fix forcing pci mode on agp cards
All we need to do on r6xx/r7xx is clear the RADEON_IS_AGP
flag; the rest is handled in r600.c
fixes fdo bug 23990:
http://bugs.freedesktop.org/show_bug.cgi?id=23990
Signed-off-by: Alex Deucher <alexdeucher@xxxxxxxxx>
Signed-off-by: Dave Airlie <airlied@xxxxxxxx>
commit c5e617e2f84225a28823a3e19951273b9f59eb27
Author: Dave Airlie <airlied@xxxxxxxx>
Date: Sat Sep 26 09:03:39 2009 +1000
drm/radeon/kms: fix for the extra pages copying.
Thanks to Michel for pointing this out to me, this is
why I need to get more sleep, over complicate this a bit.
Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>
commit 2f67c6e0220e5311bb14895d32852250b2d9652b
Author: Alex Deucher <alexdeucher@xxxxxxxxx>
Date: Fri Sep 25 16:35:11 2009 -0400
drm/radeon/kms/r600: add support for vline relocs
Provides support for anti-tearing functionality
in the ddx.
Signed-off-by: Alex Deucher <alexdeucher@xxxxxxxxx>
Signed-off-by: Dave Airlie <airlied@xxxxxxxx>
commit 90ebd0655ac1a19e591f2fe8b9a871cc03cc3989
Author: Alex Deucher <alexdeucher@xxxxxxxxx>
Date: Fri Sep 25 16:39:24 2009 -0400
drm/radeon/kms: fix some bugs in vline reloc
- fix offset of NOP packet for parsing
- fix p->idx increments
- fix bad mask when updating crtc vline info
Signed-off-by: Alex Deucher <alexdeucher@xxxxxxxxx>
Signed-off-by: Dave Airlie <airlied@xxxxxxxx>
commit 974b16e33ea626c9854f0f34fa5455a18822e159
Author: Alex Deucher <alexdeucher@xxxxxxxxx>
Date: Fri Sep 25 10:06:39 2009 -0400
drm/radeon/kms/r600: clamp vram to aperture size
r6xx and r7xx was missing this. We don't support
non-CPU accessible vram yet.
Signed-off-by: Alex Deucher <alexdeucher@xxxxxxxxx>
Signed-off-by: Dave Airlie <airlied@xxxxxxxx>
commit 8ef8678c8f6131ca5941fa387cd3939c68c4f36d
Author: Dave Airlie <airlied@xxxxxxxx>
Date: Sat Sep 26 06:39:00 2009 +1000
drm/kms: protect against fb helper not being created.
If drivers don't init the fb helper on the connector, the cmdline
code won't work, but it shouldn't crash either.
Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>
commit adea4796cfb9b74d340f9e32ba523fb61305d0b7
Author: Dave Airlie <airlied@xxxxxxxx>
Date: Fri Sep 25 14:23:47 2009 +1000
drm/r600: get values from the passed in IB not the copy.
this avoids reading back the IB on AGP, also it avoids
the race where since we haven't fetched the page from the main IB
and written it to the gpu one, reading back fetches 0.
Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>
commit 31edd4824ec42e7cba26498fbd35df6c66b098ba
Author: Amerigo Wang <amwang@xxxxxxxxxx>
Date: Wed Sep 23 04:24:05 2009 -0400
drm: create gitignore file for radeon
Got lots of untracked files after compiling.
These files are generated, thus should be ignored by git.
Signed-off-by: WANG Cong <amwang@xxxxxxxxxx>
Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>
commit e3590096f7563c6e75b77336ab8775f9a168b0f6
Author: Dave Airlie <airlied@xxxxxxxxxx>
Date: Wed Sep 23 15:49:20 2009 +1000
drm/radeon/kms: remove unneeded master create/destroy functions.
We shouldn't need these at all in radeon kms mode.
Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>
commit d50ba256b5f1478e15accfcfda9b72fd7a661364
Author: Dave Airlie <airlied@xxxxxxxx>
Date: Wed Sep 23 14:44:08 2009 +1000
drm/kms: start adding command line interface using fb.
[note this requires an fb patch posted to linux-fbdev-devel already]
This uses the normal video= command line option to control the kms
output setup at boot time. It is used to override the autodetection
done by kms.
video= normally takes a framebuffer as the first parameter, in kms
it will take a connector name, DVI-I-1, or LVDS-1 etc. If no output
connector is specified the mode string will apply to all connectors.
The mode specification used will match down the probed modes, and if
no mode is found it will add a CVT mode that matches.
video=1024x768 - all connectors match a 1024x768 mode or add a CVT on
video=VGA-1:1024x768, VGA-1 connector gets mode only.
The same strings as used in current fb modedb.c are used, except I've
added three more letters, e, D, d, e = enable, D = enable Digital,
d = disable, which allow a connector to be forced into a certain state.
Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>
commit f80330357284c908e1f67cc8b4d8e56a3e2f6fc6
Author: Dave Airlie <airlied@xxxxxxxx>
Date: Wed Sep 16 20:45:09 2009 +1000
fb: change rules for global rules match.
Having a : should be enough 'fb:' isn't really useful
if the fb wants to a kms output ID.
Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>
commit 513bcb4655e68706594e45dfa1d4b181500110ba
Author: Dave Airlie <airlied@xxxxxxxxxx>
Date: Wed Sep 23 16:56:27 2009 +1000
drm/radeon/kms: don't require up to 64k allocations. (v2)
This avoids needing to do a kmalloc > PAGE_SIZE for the main
indirect buffer chunk, it adds an accessor for all reads from
the chunk and caches a single page at a time for subsequent
reads.
changes since v1:
Use a two page pool which should be the most common case
a single packet spanning > PAGE_SIZE will be hit, but I'm
having trouble seeing anywhere we currently generate anything like that.
hopefully proper short page copying at end
added parser_error flag to set deep errors instead of having to test
every ib value fetch.
fixed bug in patch that went to list.
Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>
commit 35e4b7af21d77933abda3d41d1672589eb6c960c
Author: Dave Airlie <airlied@xxxxxxxx>
Date: Fri Sep 25 11:56:50 2009 +1000
drm/radeon/kms: enable dac load detection by default.
when I added the property I forgot to enable it.
Thanks to soreau on #radeon for tracking it down.
Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>
commit 4bbd4973703bf8a5f00f05eff30a99cd9814f37f
Author: Dave Airlie <airlied@xxxxxxxx>
Date: Fri Sep 25 08:56:12 2009 +1000
drm/radeon/kms: enable r600 tv outputs.
I never changed this back when I wrote tv-out support.
Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>
commit f066a17d9f8d0a20d01d1aa9badce7f43c7bd6ad
Author: Adam Jackson <ajax@xxxxxxxxxx>
Date: Wed Sep 23 17:31:21 2009 -0400
drm/edid: Fix standard timing parse for EDID <= 1.2
Aspect ratio code of 0 means 1:1 before EDID 1.3.
Signed-off-by: Adam Jackson <ajax@xxxxxxxxxx>
Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>
commit 93dc6c2b0d97a55508144073838e041140b206cd
Author: Adam Jackson <ajax@xxxxxxxxxx>
Date: Wed Sep 23 17:31:09 2009 -0400
drm/edid: Detailed standard timing blocks have six timings, not five.
Signed-off-by: Adam Jackson <ajax@xxxxxxxxxx>
Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>
commit 23425caeebc2e06629ef04f6197543cfe3f7d7b2
Author: Adam Jackson <ajax@xxxxxxxxxx>
Date: Wed Sep 23 17:30:58 2009 -0400
drm/edid: Ignore bad standard timings.
Signed-off-by: Adam Jackson <ajax@xxxxxxxxxx>
Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>
commit 083ae0560ab53b039aaa897b77458cbadf19050d
Author: Adam Jackson <ajax@xxxxxxxxxx>
Date: Wed Sep 23 17:30:45 2009 -0400
drm/edid: const cleanup
Signed-off-by: Adam Jackson <ajax@xxxxxxxxxx>
Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/