Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932551AbZFLG2a (ORCPT ); Fri, 12 Jun 2009 02:28:30 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1753559AbZFLG2W (ORCPT ); Fri, 12 Jun 2009 02:28:22 -0400 Received: from gir.skynet.ie ([193.1.99.77]:35952 "EHLO gir.skynet.ie" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752390AbZFLG2U (ORCPT ); Fri, 12 Jun 2009 02:28:20 -0400 Date: Fri, 12 Jun 2009 07:28:19 +0100 (IST) From: Dave Airlie X-X-Sender: airlied@skynet.skynet.ie To: torvalds@linux-foundation.org cc: linux-kernel@vger.kernel.org, dri-devel@lists.sf.net Subject: [git pull] drm v2.6.31 merge (part 1) Message-ID: User-Agent: Alpine 2.00 (DEB 1167 2008-08-23) MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="29444707-100699168-1244788100=:11737" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 30039 Lines: 780 This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --29444707-100699168-1244788100=:11737 Content-Type: TEXT/PLAIN; charset=ISO-8859-15 Content-Transfer-Encoding: 8BIT Hi Linus, Please pull the 'drm-linus' branch from ssh://master.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6.git drm-linus This contains the Intel tree merge (merged properly I haven't rebased or touched it), which contains numerous GEM bugfixes + support for a new chipset. AMD patches for new r600 chipset support. A more flexible drm debugging system to decrease the firehose effect enabling drm debugging has, it also contains some paving the way patches for part 2 of the merge. It also contains one AGP patch for supporting those new chips, and a PNP patch to add a new interface that intel kms relies on now, all the signoffs for the pnp code should be correct. Part 2 will contains an initial radeon KMS driver and the TTM memory manager, its quite large so I don't want to include it all in this pull. The initial radeon KMS code enable switch will hide under staging for now for one driver release while we stabilise it in-tree, its not in a bad state but its a lot of new code and we'd hate for anyone to fall over it my accident. Its quite well separated from the old radeon code so shouldn't fall over too much. I'll send the part 2 pull early next week. Dave. drivers/char/agp/intel-agp.c | 16 +- drivers/gpu/drm/drm_bufs.c | 3 +- drivers/gpu/drm/drm_edid.c | 74 +---- drivers/gpu/drm/drm_gem.c | 2 +- drivers/gpu/drm/drm_hashtab.c | 4 + drivers/gpu/drm/drm_mm.c | 165 +++++++-- drivers/gpu/drm/drm_modes.c | 18 +- drivers/gpu/drm/drm_stub.c | 15 + drivers/gpu/drm/i915/i915_dma.c | 67 ++-- drivers/gpu/drm/i915/i915_drv.h | 48 ++- drivers/gpu/drm/i915/i915_gem.c | 156 ++++++--- drivers/gpu/drm/i915/i915_gem_tiling.c | 152 ++++++++ drivers/gpu/drm/i915/i915_irq.c | 190 +++++++++- drivers/gpu/drm/i915/i915_reg.h | 616 ++++++++++++++++++++++++++++++- drivers/gpu/drm/i915/i915_suspend.c | 20 + drivers/gpu/drm/i915/intel_bios.c | 86 +++++- drivers/gpu/drm/i915/intel_bios.h | 101 +++++- drivers/gpu/drm/i915/intel_crt.c | 76 ++++- drivers/gpu/drm/i915/intel_display.c | 645 ++++++++++++++++++++++++++++++-- drivers/gpu/drm/i915/intel_fb.c | 26 +- drivers/gpu/drm/i915/intel_hdmi.c | 33 ++- drivers/gpu/drm/i915/intel_lvds.c | 151 ++++++-- drivers/gpu/drm/i915/intel_sdvo.c | 110 ++++-- drivers/gpu/drm/i915/intel_tv.c | 3 + drivers/gpu/drm/radeon/r600_cp.c | 42 ++- drivers/gpu/drm/radeon/radeon_cp.c | 2 +- drivers/gpu/drm/radeon/radeon_drv.h | 1 + drivers/gpu/drm/via/via_dmablit.c | 6 +- drivers/pnp/resource.c | 18 + include/drm/drmP.h | 126 ++++--- include/drm/drm_hashtab.h | 2 + include/drm/drm_mm.h | 90 +++++ include/drm/drm_pciids.h | 9 + include/linux/pnp.h | 2 + 34 files changed, 2677 insertions(+), 398 deletions(-) create mode 100644 include/drm/drm_mm.h commit 3c24475c1e4e8d10e50df161d8c4f1d382997a7c Author: Jerome Glisse Date: Wed Apr 8 18:34:28 2009 +0200 drm: include kernel list header file in hashtab header Signed-off-by: Dave Airlie commit f2cb5d86e1af175a9b210241800f03a447f92621 Author: Jerome Glisse Date: Wed Apr 8 17:16:24 2009 +0200 drm: Export hash table functionality. add exports so TTM module can use these functions. Signed-off-by: Thomas Hellstrom Signed-off-by: Dave Airlie commit 249d6048ca98b5452105b0824abac1275661b8e3 Author: Jerome Glisse Date: Wed Apr 8 17:11:16 2009 +0200 drm: Split out the mm declarations in a separate header. Add atomic operations. this is a TTM preparation patch, it rearranges the mm and add operations needed to do mm operations in atomic context. Signed-off-by: Thomas Hellstrom Signed-off-by: Dave Airlie commit 715cbb05c935e8a4306a730d14a72d5af881523e Author: Alex Deucher Date: Fri Jun 12 15:55:44 2009 +1000 drm/radeon: add support for RV790. This adds the PCI IDs for the rv790 which are equiv to the rv770. Signed-off-by: Dave Airlie commit 2a71ebcd85bcc4d6607f577f23a491f796c30e82 Author: Alex Deucher Date: Fri Jun 12 15:53:10 2009 +1000 drm/radeon: add rv740 drm support. This adds drm support for the RV740 family of chips to the r600 support code. Signed-off-by: Dave Airlie commit fbe0efb869efde8d847ede3a925230ef88910086 Author: Kristian H?gsberg Date: Tue Jun 9 01:50:41 2009 +1000 drm_calloc_large: check right size, check integer overflow, use GFP_ZERO Previously we would check size instead of size * nmemb, and so would never hit the vmalloc path. Also add integer overflow check as in kcalloc, and allocate GFP_ZERO pages instead of memset()ing them. Signed-off-by: Kristian H?gsberg Signed-off-by: Dave Airlie commit 61f11699e7a92d932b31ded3715ad4f70eb26ef2 Author: Keith Packard Date: Sat May 30 20:42:27 2009 -0700 drm: Eliminate magic I2C frobbing when reading EDID This code depends on the underlying I2C adapter using the bit-banging algo, which may not be the case. If specific encoders require this mechanism, they should build a custom I2C algo that implements this workaround, rather than having it in the general path. Signed-off-by: Keith Packard Signed-off-by: Dave Airlie commit 7ff145593d808a371924652c8d6a15fb75ce2250 Author: Dave Airlie Date: Wed Apr 22 18:52:14 2009 +1000 drm/i915: duplicate desired mode for use by fbcon. duplicate the mode into fbcon storage, so when we free modes later we don't just lose this. Signed-off-by: Dave Airlie commit c5c07550d41abe86d109430e718f2007113031f8 Author: Figo.zhang Date: Sat Jun 6 18:26:26 2009 +0800 drm/via: vfree() no need checking before calling it vfree() does it's own NULL checking, no need for explicit check before calling it. Signed-off-by: Figo.zhang Signed-off-by: Dave Airlie commit be25ed9c5cc06e1d17aa97e41daf88f0b46143e6 Author: yakui_zhao Date: Tue Jun 2 14:13:55 2009 +0800 drm: Replace DRM_DEBUG with DRM_DEBUG_DRIVER in i915 driver Replace the DRM_DEBUG with the DRM_DEBUG_DRIVER to print the debug info in i915 driver. Signed-off-by: Zhao Yakui Signed-off-by: Dave Airlie commit f053185948a1bd16329433f5371809765086c1ec Author: yakui_zhao Date: Tue Jun 2 14:12:47 2009 +0800 drm: Replace DRM_DEBUG with DRM_DEBUG_MODE in drm_mode Replace the DRM_DEBUG with DRM_DEBUG_MODE macro to print the info in drm_mode. airlied:- fixed up to remove a conflicting #define Signed-off-by: Zhao Yakui Signed-off-by: Dave Airlie commit 342dc382c451f75ea202a65e6f529bdff6d184cd Author: yakui_zhao Date: Tue Jun 2 14:12:00 2009 +0800 drm/i915: Replace DRM_DEBUG with DRM_DEBUG_KMS in intel_sdvo Use the DRM_DEBUG_KMS/DEBUG_LOG_KMS to print the debug info for SDVO device. Signed-off-by: Zhao Yakui Signed-off-by: Dave Airlie commit 7fb85bfb54a64e9dd82ee4a79022c38ab58f21a0 Author: yakui_zhao Date: Tue Jun 2 14:10:49 2009 +0800 drm/i915: replace DRM_DEBUG with DRM_DEBUG_KMS in intel_lvds Use the DRM_DEBUG_KMS macro definition to print the debug info for the LVDS. Signed-off-by: Zhao Yakui Signed-off-by: Dave Airlie commit 4fefcb27050b98c97b1c32bc710fc2f874449dee Author: yakui_zhao Date: Tue Jun 2 14:09:47 2009 +0800 drm: add separate drm debugging levels Now all the DRM debug info will be reported if the boot option of "drm.debug=1" is added. Sometimes it is inconvenient to get the debug info in KMS mode. We will get too much unrelated info. This will separate several DRM debug levels and the debug level can be used to print the different debug info. And the debug level is controlled by the module parameter of drm.debug In this patch it is divided into four debug levels; drm_core, drm_driver, drm_kms, drm_mode. At the same time we can get the different debug info by changing the debug level. This can be done by adding the module parameter. Of course it can be changed through the /sys/module/drm/parameters/debug after the system is booted. Four debug macro definitions are provided. DRM_DEBUG(fmt, args...) DRM_DEBUG_DRIVER(prefix, fmt, args...) DRM_DEBUG_KMS(prefix, fmt, args...) DRM_DEBUG_MODE(prefix, fmt, args...) When the boot option of "drm.debug=4" is added, it will print the debug info using DRM_DEBUG_KMS macro definition. When the boot option of "drm.debug=6" is added, it will print the debug info using DRM_DEBUG_KMS/DRM_DEBUG_DRIVER. Sometimes we expect to print the value of an array. For example: SDVO command, In such case the following four DRM debug macro definitions are added: DRM_LOG(fmt, args...) DRM_LOG_DRIVER(fmt, args...) DRM_LOG_KMS(fmt, args...) DRM_LOG_MODE(fmt, args...) Signed-off-by: Zhao Yakui Signed-off-by: Dave Airlie commit df4f7fe7bd516b3833e25c692c3970e22038a6ca Author: Dave Airlie Date: Thu Jun 11 16:16:10 2009 +1000 radeon: remove _DRM_DRIVER from the preadded sarea map This shouldn't be there and is what broke r600 late in the 2.6.30 release cycle with Ben's patch. Signed-off-by: Dave Airlie commit 2ff2e8a3e1898e692b604424c384f134009dea80 Author: Ben Skeggs Date: Tue May 26 10:35:52 2009 +1000 drm: don't associate _DRM_DRIVER maps with a master A driver will use the _DRM_DRIVER map flag to indicate that it wants to be responsible for removing the map itself, bypassing the DRM's automagic cleanup code. Since the multi-master changes this has been broken, resulting in some drivers having their registers unmapped before it's finished with them. Signed-off-by: Ben Skeggs Signed-off-by: Dave Airlie commit b798b1fe3b6436275ad1b517a6823d55e3b75c22 Author: Robert P. J. Day Date: Wed Jun 10 12:43:49 2009 -0700 drm: simplify kcalloc() call to kzalloc(). Calls to kcalloc() for a single element can be simplified to calls to kzalloc(). Signed-off-by: Robert P. J. Day Cc: Dave Airlie Cc: Eric Anholt Signed-off-by: Andrew Morton Signed-off-by: Dave Airlie commit 1bcbf3948876e31a8ece28597dec447611ad9c8b Author: Pavel Roskin Date: Wed Jun 10 12:43:48 2009 -0700 intelfb: fix spelling of "CLOCK" Signed-off-by: Pavel Roskin Cc: Eric Anholt Cc: Dave Airlie Signed-off-by: Andrew Morton Signed-off-by: Dave Airlie commit dcae3626d031fe6296b1e96a16f986193a41f840 Author: Roel Kluin Date: Wed Jun 10 12:43:48 2009 -0700 drm: fix LOCK_TEST_WITH_RETURN macro When this macro isn't called with 'file_priv' this will result in a build failure. Signed-off-by: Roel Kluin Signed-off-by: Andrew Morton Signed-off-by: Dave Airlie commit 03d6069912babc07a3da20e715dd6a5dc8f0f867 Author: Keith Packard Date: Fri Jun 5 18:19:56 2009 -0700 drm/i915: Hook connector to encoder during load detection (fixes tv/vga detect) With the DRM-driven DPMS code, encoders are considered idle unless a connector is hooked to them, so mode setting is skipped. This makes load detection fail as none of the hardware is enabled. Signed-off-by: Keith Packard Signed-off-by: Eric Anholt commit 2939e1f5331455d17a4a704dd6210e1474002545 Author: Chris Wilson Date: Sat Jun 6 09:46:03 2009 +0100 drm/i915: NOMEM->NOSPC To differentiate between encountering an out-of-memory error with running out of space in the aperture, use ENOSPC for the later. Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt commit 21d509e339565c82887733c02465bb7f5866c8f5 Author: Chris Wilson Date: Sat Jun 6 09:46:02 2009 +0100 drm/i915: use I915_GEM_GPU_DOMAINS Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt commit b1ce786cb85280490ca3c29a62ddf8608826b414 Author: Chris Wilson Date: Sat Jun 6 09:46:00 2009 +0100 drm/i915: no need to hold mutex for object lookup Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt commit 1f803ee5cea67d2387aeedb4b07e645a743729de Author: Chris Wilson Date: Sat Jun 6 09:45:59 2009 +0100 drm/i915: Call drm_vblank_post_modeset() on error paths. Ensure that the drm_vblank_pre_modeset() is always balanced by drm_vblank_post_modeset() within intel_crtc_mode_set(). Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt commit 5f26a2c7ad6eba97141e8372f3def282f934b169 Author: Chris Wilson Date: Sat Jun 6 09:45:58 2009 +0100 drm/i915: OR in the COMMAND read domain for the batch buffer. The batch buffer may be shared with another read buffer, so we should not ignore any previously set domains, but just or in the command domain (and check that the buffer is not writable). Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt commit 83d60795157c83389e6aaa0532d5e19afa976a24 Author: Chris Wilson Date: Sat Jun 6 09:45:57 2009 +0100 drm/i915: Sanity check execbuffer arguments before touching state. By sending a broken execbuffer (its length was not suitably aligned) I triggered an operation upon a freed object. The invalid alignment was discovered after updating the write_domain on the object but before the object was placed on the active queue. So during the unwind process following the error, the now freed object attempts to flush its non-existent, but outstanding, GPU writes causing this use-after-free. [drm:i915_dispatch_gem_execbuffer] *ERROR* alignment [drm:i915_gem_execbuffer] *ERROR* dispatch failed -22 WARNING: at lib/kref.c:43 warn_slowpath_null+0x10/0x15() Modules linked in: Pid: 4552, comm: lt-csi-drm Not tainted 2.6.30-rc6 #423 Call Trace: [] warn_slowpath_fmt+0x57/0x6d [] ? get_pageblock_migratetype+0x18/0x1e [] ? free_hot_page+0xa/0xc [] ? __free_pages+0x16/0x1f [] ? shmem_truncate_range+0x63e/0x656 [] ? slob_page_alloc+0x146/0x1c8 [] warn_slowpath_null+0x10/0x15 [] kref_get+0x1b/0x21 [] i915_gem_object_move_to_active+0x1f/0x56 [] i915_add_request+0x156/0x19a [] i915_gem_object_flush_gpu_write_domain+0x28/0x3f [] i915_gem_object_unbind+0x4a/0x124 [] i915_gem_free_object+0x33/0x9b [] drm_gem_object_free+0x28/0x4a [] ? drm_gem_object_free+0x0/0x4a [] kref_put+0x38/0x41 [] drm_gem_object_unreference+0x11/0x13 [] drm_gem_object_handle_unreference+0x1e/0x21 [] drm_gem_object_release_handle+0xa/0xe [] idr_for_each+0x5f/0x98 [] ? drm_gem_object_release_handle+0x0/0xe [] drm_gem_release+0x22/0x34 [] drm_release+0x1e8/0x3c4 [] __fput+0xaf/0x146 [] fput+0x12/0x14 [] filp_close+0x48/0x52 [] put_files_struct+0x57/0x9b [] exit_files+0x1e/0x20 [] do_exit+0x16d/0x511 [] ? __schedule+0x3d4/0x3e5 [] ? handle_irq+0xd/0x69 [] do_group_exit+0x4d/0x73 [] sys_exit_group+0x13/0x17 [] sysenter_do_call+0x12/0x2b Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt commit fa0864b26b4bfa1dd4bb78eeffbc1f398cb56425 Author: Michael Cousin Date: Fri Jun 5 21:16:22 2009 +0200 drm/i915: Skip lvds with Aopen i945GTt-VFA Signed-off-by: Michael Cousin Signed-off-by: Eric Anholt commit 80a538e49daddbf3bf783f3464e91bd3181957b2 Author: Zhenyu Wang Date: Mon Jun 8 14:40:20 2009 +0800 drm/i915: Enable probe on new chipset Signed-off-by: Zhenyu Wang Signed-off-by: Eric Anholt commit 036a4a7d9272582fc7370359515d807393e2f728 Author: Zhenyu Wang Date: Mon Jun 8 14:40:19 2009 +0800 drm/i915: handle interrupt on new chipset Update interrupt handling methods for IGDNG with new registers for display and graphics interrupt functions. As we won't use irq-based vblank sync in dri2, so display interrupt on new chip will be used for hotplug only in future. Signed-off-by: Zhenyu Wang Signed-off-by: Eric Anholt commit d765898970f35acef960581f678b9da9d5c779fa Author: Jesse Barnes Date: Fri Jun 5 14:41:29 2009 +0000 drm/i915: enable MCHBAR if needed Using the new PNP resource checking code, this patch allows the i915 driver to allocate MCHBAR space if needed and use the BAR to determine current memory settings. [apw@canonical.com: moved to the new generic PNP resource interface] Signed-off-by: Jesse Barnes Signed-off-by: Andy Whitcroft Signed-off-by: Eric Anholt failure to update-index after git-am --reject to hand-apply Signed-off-by: Eric Anholt commit 1b8e69662e1a086878bf930a6042daf7f8a076cc Author: Bjorn Helgaas Date: Fri Jun 5 14:37:23 2009 +0000 pnp: add PNP resource range checking function Add a PNP resource range check function, indicating whether a resource has been assigned to any device. Signed-off-by: Bjorn Helgaas [apw@canonical.com: fixed up exports et al] Signed-off-by: Andy Whitcroft Signed-off-by: Eric Anholt commit b66d18ddb16603d1e1ec39cb2ff3abf3fd212180 Author: Jesse Barnes Date: Fri May 15 14:11:48 2009 -0700 drm/i915: avoid non-atomic sysrq execution The sysrq functions are executed in hardirq context, so we shouldn't be calling sleeping functions from them, like mutex_locks or memory allocations. Fix up the i915 sysrq handler to avoid this. Signed-off-by: Jesse Barnes Signed-off-by: Eric Anholt commit 42c2798b35b95c471877133e19ccc3cab00e9b65 Author: Jesse Barnes Date: Tue May 5 13:13:16 2009 -0700 drm/i915: apply G45 vblank count code to all G4x chips and fix max_frame_count All G4x and newer chips use the new style frame count register, with a full 32 bit frame count. Update the code to reflect this. Signed-off-by: Jesse Barnes Signed-off-by: Eric Anholt commit 70aa96ca2d8d938fc036ef8fd189b0151f4fc3ba Author: Jarod Wilson Date: Wed May 27 17:20:39 2009 -0400 drm/i915: add ignore lvds quirk info for AOpen Mini PC Fix a FIXME in the intel LVDS bring-up code, adding the appropriate blacklist entry for the AOpen Mini PC, courtesy of a dmidecode dump from Florian Demmer. Signed-off-by: Jarod Wilson CC: Florian Demmer Signed-off-by: Eric Anholt commit 714605e4a05787c51a5ac36c926d2169cfdfbfba Author: yakui_zhao Date: Sun May 31 17:18:07 2009 +0800 drm/i915: Initialize the SDVO device based on the sdvo info parsed from VBT http://bugs.freedesktop.org/show_bug.cgi?id=20429 Signed-off-by: Zhao Yakui [anholt: Massive cleanup of the slave addr function] Signed-off-by: Eric Anholt commit 9b9d172d06b0f2d51cc9431e2c6c3055f0cf10ef Author: yakui_zhao Date: Sun May 31 17:17:17 2009 +0800 drm/i915: parse VBT general definition block to get the SDVO device info The general definition block contains the child device tables, which include the SDVO device info. For example: device slave address, device dvo port, device type. We will get the info of SDVO device by parsing the general definition blocks. Only when a valid slave address is found, it is regarded as the SDVO device. And the info of DVO port and slave address is recorded. http://bugs.freedesktop.org/show_bug.cgi?id=20429 Signed-off-by: Zhao Yakui Signed-off-by: Eric Anholt commit 59a036cfbd29aadf40d2b754cfebee2a96268752 Author: yakui_zhao Date: Sun May 31 17:16:22 2009 +0800 drm/i915: Add the structure of child_device_config in video BIOS tables. Signed-off-by: Zhao Yakui Signed-off-by: Eric Anholt commit 040d87f15a0129242463d3ed7c48381505f596e2 Author: Keith Packard Date: Sat May 30 20:42:33 2009 -0700 drm/i915: Add Display Port register defines This adds the register definitions for the display port enable register along with those for the GMCH and Link M/N ratios required to drive display port outputs. Signed-off-by: Keith Packard Signed-off-by: Eric Anholt commit 2245fda810f870dce9b030e6aa604320abba53a5 Author: Keith Packard Date: Sat May 30 20:42:29 2009 -0700 drm/i915: Don't trim cursor addresses to 11 bits We can safely assume that cursor addresses will not extend beyond the addressable screen dimensions; setting the additional bits is harmless in any case. Signed-off-by: Keith Packard Signed-off-by: Eric Anholt commit cb66c692d1ae257f32dc7f6085cf9cb9f2f6bab8 Author: Ma Ling Date: Sun May 31 16:58:32 2009 +0800 drm/i915: Set correct TV detection voltage level override values We detect TV connect status by setting DAC voltage level override values as 0.7 voltage for DAC_A/B/C. The corresponding 2-bits shold be 0x2, In order correctly to set last bit as 0, at first we must clean it. It fixed freedesktop.org bug #21204 Signed-off-by: Ma Ling Signed-off-by: Eric Anholt commit 541998a18b72d2cac48b3369fa4540116ff3f0a8 Author: Zhenyu Wang Date: Fri Jun 5 15:38:44 2009 +0800 drm/i915: Add LVDS support for IGDNG Signed-off-by: Zhenyu Wang Signed-off-by: Eric Anholt commit 30ad48b7334a2eb2edf22f6c91f7b3f22a22a837 Author: Zhenyu Wang Date: Fri Jun 5 15:38:43 2009 +0800 drm/i915: Add HDMI support on IGDNG Signed-off-by: Zhenyu Wang Signed-off-by: Eric Anholt commit 2c07245fb8f7f0a282282e5a9747e46defdb2cc7 Author: Zhenyu Wang Date: Fri Jun 5 15:38:42 2009 +0800 drm/i915: enable kernel modesetting on IGDNG This adds kernel mode setting on IGDNG with VGA output support. Note that suspend/resume doesn't work yet. Signed-off-by: Zhenyu Wang Signed-off-by: Eric Anholt commit 2cce0d8740f0d1454d012401257d96c513ce358f Author: Zhenyu Wang Date: Fri Jun 5 15:38:41 2009 +0800 drm/i915: Disable tiling on IGDNG for now Swizzle bit detection not working right on it. Signed-off-by: Zhenyu Wang Signed-off-by: Eric Anholt commit e170b030dcd6aed11dde2d124c09991ec771f529 Author: Zhenyu Wang Date: Fri Jun 5 15:38:40 2009 +0800 drm/i915: Disable opregion on IGDNG for now Disable OpRegion support for now until verified on new chipsets. Signed-off-by: Zhenyu Wang Signed-off-by: Eric Anholt commit b9055052d3e0388b4a5e8c3e0bbab665c5996f50 Author: Zhenyu Wang Date: Fri Jun 5 15:38:38 2009 +0800 drm/i915: Add new chipset register definitions Signed-off-by: Zhenyu Wang Signed-off-by: Eric Anholt commit 280da227c870a50f669de0c8d46bfb2c62da9995 Author: Zhenyu Wang Date: Fri Jun 5 15:38:37 2009 +0800 drm/i915: Add chipset/feature defines for for new chipsets Signed-off-by: Zhenyu Wang [anholt: dropped drm_pciids.h hunk to avoid loading an incomplete driver] Signed-off-by: Eric Anholt commit 32cb055b57eab803ea82b76dc913b0378e5af145 Author: Zhenyu Wang Date: Fri Jun 5 15:38:36 2009 +0800 agp/intel: Add support for new chipsets Both desktop and mobile versions are added. Signed-off-by: Zhenyu Wang Signed-off-by: Eric Anholt commit b962442e46a9340bdbc6711982c59ff0cc2b5afb Author: Eric Anholt Date: Wed Jun 3 07:27:35 2009 +0000 drm/i915: Change GEM throttling to be 20ms like the comment says. keithp didn't like the original 20ms plan because a cooperative client could be starved by an uncooperative client. There may even have been problems with cooperative clients versus cooperative clients. So keithp changed throttle to just wait for the second to last seqno emitted by that client. It worked well, until we started getting more round-trips to the server due to DRI2 -- the server throttles in BlockHandler, and so if you did more than one round trip after finishing your frame, you'd end up unintentionally syncing to the swap. Fix this by keeping track of the client's requests, so the client can wait when it has an outstanding request over 20ms old. This should have non-starving behavior, good behavior in the presence of restarts, and less waiting. Improves high-settings openarena performance on my GM45 by 50%. Signed-off-by: Eric Anholt Reviewed-by: Jesse Barnes commit 1fd1c624362819ecc36db2458c6a972c48ae92d6 Author: Eric Anholt Date: Wed Jun 3 07:26:58 2009 +0000 drm/i915: Save/restore cursor state on suspend/resume. This may fix cursor corruption in X on resume, which would persist until the cursor was hidden and then shown again. V2: Also include the cursor control regs. Signed-off-by: Eric Anholt Reviewed-by: Jesse Barnes commit 0e7ddf7eeeef5aea85412120539ab5369577faeb Author: Eric Anholt Date: Thu Jun 4 11:18:14 2009 +0000 drm/i915: Remove a bad BUG_ON in the fence management code. This could be triggered by a gtt mapping fault on 965 that decides to remove the fence from another object that happens to be active currently. Since the other object doesn't rely on the fence reg for its execution, we don't wait for it to finish. We'll soon be not waiting on 915 most of the time as well, so just drop the BUG_ON. Signed-off-by: Eric Anholt --29444707-100699168-1244788100=:11737-- -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/