summaryrefslogtreecommitdiffstats
path: root/drivers
AgeCommit message (Collapse)Author
2010-02-26drm/i915: reuse i915_gpu_idle helperDaniel Vetter
We have it, so use it. This required moving the function to avoid a forward declaration. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Eric Anholt <eric@anholt.net>
2010-02-26drm/i915: ensure lru ordering of fence_listDaniel Vetter
The fence_list should be lru ordered for otherwise we might try to steal a fence reg from an active object even though there are fences from inactive objects available. lru ordering was obeyed for gpu access everywhere save when moving dirty objects from flushing_list to active_list. Fixing this cause the code to indent way to much, so I've extracted the flushing_list processing logic into its on function. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Eric Anholt <eric@anholt.net>
2010-02-26drm/i915: extract fence stealing codeDaniel Vetter
The spaghetti logic in there tripped up my brain's code parser for a few secs. Prevent this from happening again by extracting the fence stealing code into a seperate functions. IMHO this slightly clears up the code flow. v2: Beautified according to ickle's comments. v3: ickle forgot to flush his comment queue ... Now there's also a we-are-paranoid BUG_ON in there. v4: I've forgotten to switch on my brain when doing v3. Now the BUG_ON actually checks something useful. v5: Clean up a stale comment as noted by Eric Anholt. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Eric Anholt <eric@anholt.net>
2010-02-26drm/i915: fixup active list locking in object_unbindDaniel Vetter
All other accesses take this spinlock, so do this here, too. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Eric Anholt <eric@anholt.net>
2010-02-26drm/i915: reuse i915_gem_object_put_fence_reg for fence stealing codeDaniel Vetter
This has a few functional changes against the old code: * a few more unnecessary loads and stores to the drm_i915_fence_reg objects. Also an unnecessary store to the hw fence register. * zaps any userspace mappings before doing other flushes. Only changes anything when userspace does racy stuff against itself. * also flush GTT domain. This is a noop, but still try to keep the bookkeeping correct. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Eric Anholt <eric@anholt.net>
2010-02-26drm/i915: Add dependency on the intel agp moduleZhenyu Wang
See http://bugzilla.kernel.org/show_bug.cgi?id=15021 Make sure that the appropriate AGP module is loaded and probed before trying to set up the DRM. The DRM already depends on the AGP core, but in this case we know the specific AGP driver we need too, and can help users avoid the trap of loading the AGP driver after the DRM driver. Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com> Signed-off-by: Eric Anholt <eric@anholt.net>
2010-02-26drm/i915: More s/IS_IRONLAKE/HAS_PCH_SPLIT for Sandybridge.Eric Anholt
I think this is pretty much correct. Not really tested. Signed-off-by: Eric Anholt <eric@anholt.net>
2010-02-26drm/i915: Correct the Sandybridge chipset info structs.Eric Anholt
Disables CXSR until it's done, and sets the mobile bit on mobile. Signed-off-by: Eric Anholt <eric@anholt.net>
2010-02-26drm/i915: Disable the hangcheck reset on Sandybridge until we add support.Eric Anholt
Signed-off-by: Eric Anholt <eric@anholt.net>
2010-02-26drm/i915: Add a new mobile Sandybridge PCI ID.Eric Anholt
Signed-off-by: Eric Anholt <eric@anholt.net>
2010-02-26agp/intel: Add a new Sandybridge HB/IG PCI ID combo.Eric Anholt
Signed-off-by: Eric Anholt <eric@anholt.net>
2010-02-26drm/i915, agp/intel: Fix stolen memory size on SandybridgeZhenyu Wang
New memory control config reg at 0x50 should be used for stolen memory size detection on Sandybridge. Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com> Signed-off-by: Eric Anholt <eric@anholt.net>
2010-02-26drm/i915: Correct locking in the modesetting failure path, fixing a BUG_ON.Eric Anholt
Signed-off-by: Eric Anholt <eric@anholt.net>
2010-02-26drm/i915: Disable the surface tile swizzling on Sandybridge.Eric Anholt
I can't explain this, except that it makes my display correct. Signed-off-by: Eric Anholt <eric@anholt.net>
2010-02-26agp/intel: Use a non-reserved value for the cache field of the PTEs.Eric Anholt
I don't know if this is what we'll want to be using long term, we'll see. Signed-off-by: Eric Anholt <eric@anholt.net>
2010-02-26drm/i915: Fix sandybridge status page setup.Eric Anholt
The register's moved to the same location as the one for the BCS, it seems. Signed-off-by: Eric Anholt <eric@anholt.net>
2010-02-26drm/i915: Set up fence registers on sandybridge.Eric Anholt
Signed-off-by: Eric Anholt <eric@anholt.net>
2010-02-26drm/i915: Add initial bits for VGA modesetting bringup on Sandybridge.Eric Anholt
Signed-off-by: Eric Anholt <eric@anholt.net>
2010-02-26agp/intel: Add support for Sandybridge.Eric Anholt
Signed-off-by: Eric Anholt <eric@anholt.net>
2010-02-26Merge remote branch 'korg/drm-radeon-testing' into drm-next-stageDave Airlie
* korg/drm-radeon-testing: (62 commits) drm/radeon/kms: update new pll algo drm/radeon/kms: add support for square microtiles on r3xx-r5xx drm/radeon/kms: force pinning buffer into visible VRAM drm/radeon/kms/evergreen: fix typo in cursor code drm/radeon/kms: implement reading active PCIE lanes on R600+ drm/radeon/kms: for downclocking non-mobility check PERFORMANCE state drm/radeon/kms: simplify storing current and requested PM mode drm/radeon: fixes for r6xx/r7xx gfx init drm/radeon/rv740: fix backend setup drm/radeon/kms: fix R3XX/R4XX memory controller initialization [rfc] drm/radeon/kms: pm debugging check for vbl. drm/radeon: Fix memory allocation failures in the preKMS command stream checking. drm: Add generic multipart buffer. drm/radeon/kms: simplify memory controller setup V2 drm/radeon: Add asic hook for dma copy to r200 cards. drm/radeon/kms: Create asic structure for r300 pcie cards. drm/radeon/kms: remove unused r600_gart_clear_page drm/radeon/kms: remove HDP flushes from fence emit (v2) drm/radeon/kms: add LVDS pll quirk for Dell Studio 15 drm/radeon/kms: simplify picking power state ... Conflicts: drivers/gpu/drm/radeon/atom.c drivers/gpu/drm/radeon/atombios.h drivers/gpu/drm/radeon/atombios_dp.c drivers/gpu/drm/radeon/r600.c drivers/gpu/drm/radeon/r600_audio.c drivers/gpu/drm/radeon/r600_cp.c drivers/gpu/drm/radeon/radeon.h drivers/gpu/drm/radeon/radeon_connectors.c drivers/gpu/drm/radeon/radeon_ring.c drivers/gpu/drm/radeon/rv770.c
2010-02-25Merge remote branch 'anholt/drm-intel-next' into drm-next-stageDave Airlie
* anholt/drm-intel-next: drm/i915: Record batch buffer following GPU error drm/i915: give up on 8xx lid status drm/i915: reduce some of the duplication of tiling checking drm/i915: blow away userspace mappings before fence change drm/i915: move a gtt flush to the correct place agp/intel: official names for Pineview and Ironlake drm/i915: overlay: drop superflous gpu flushes drm/i915: overlay: nuke readback to flush wc caches drm/i915: provide self-refresh status in debugfs drm/i915: provide FBC status in debugfs drm/i915: fix drps disable so unload & re-load works drm/i915: Fix OGLC performance regression on 945 drm/i915: Deobfuscate the render p-state obfuscation drm/i915: add dynamic performance control support for Ironlake drm/i915: enable memory self refresh on 9xx drm/i915: Don't reserve compatibility fence regs in KMS mode. drm/i915: Keep MCHBAR always enabled drm/i915: Replace open-coded eviction in i915_gem_idle()
2010-02-25Merge remote branch 'korg/drm-core-next' into drm-next-stageDave Airlie
* korg/drm-core-next: drm/ttm: handle OOM in ttm_tt_swapout drm/radeon/kms/atom: fix shr/shl ops drm/kms: fix spelling of "CLOCK" drm/kms: fix fb_changed = true else statement drivers/gpu/drm/drm_fb_helper.c: don't use private implementation of atoi() drm: switch all GEM/KMS ioctls to unlocked ioctl status. Use drm_gem_object_[handle_]unreference_unlocked where possible drm: introduce drm_gem_object_[handle_]unreference_unlocked
2010-02-25drm/ttm: handle OOM in ttm_tt_swapoutMaarten Maathuis
- Without this change I get a general protection fault. - Also use PTR_ERR where applicable. Signed-off-by: Maarten Maathuis <madman2003@gmail.com> Reviewed-by: Dave Airlie <airlied@redhat.com> Acked-by: Thomas Hellstrom <thellstrom@vmware.com> Cc: stable@kernel.org Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-02-25drm/radeon/kms/atom: fix shr/shl opsAlex Deucher
The whole attribute table is valid for shr/shl ops. Fixes fdo bug 26668 Signed-off-by: Alex Deucher <alexdeucher@gmail.com> Cc: stable@kernel.org Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-02-25drm/radeon/kms: update new pll algoAlex Deucher
- add support for pre-avivo chips - add support for fixed post/ref dividers - add support for non-fractional fb dividers By default avivo chips use the new algo and pre-avivo chips use the old algo. Use the "new_pll" module option to toggle between them. Signed-off-by: Alex Deucher <alexdeucher@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-02-25drm/radeon/kms: add support for square microtiles on r3xx-r5xxMarek Olšák
Signed-off-by: Marek Olšák <maraeo@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-02-25drm/radeon/kms: force pinning buffer into visible VRAMJerome Glisse
This patch properly set visible VRAM and enforce any pinned buffer to be into visible VRAM. We might later add a flag to release this constraint for some newer hw more clever than previous. Signed-off-by: Jerome Glisse <jglisse@redhat.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-02-25drm/radeon/kms/evergreen: fix typo in cursor codeAlex Deucher
cursor x/y are surface relative. fixes fdo bug 26551 Signed-off-by: Alex Deucher <alexdeucher@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-02-23Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6Linus Torvalds
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: net: bug fix for vlan + gro issue tc35815: Remove a wrong netif_wake_queue() call which triggers BUG_ON cdc_ether: new PID for Ericsson C3607w to the whitelist (resubmit) IPv6: better document max_addresses parameter MAINTAINERS: update mv643xx_eth maintenance status e1000: Fix DMA mapping error handling on RX iwlwifi: sanity check before counting number of tfds can be free iwlwifi: error checking for number of tfds in queue iwlwifi: set HT flags after channel in rxon
2010-02-23Merge branch 'release' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6 * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: ACPI: Be in TS_POLLING state during mwait based C-state entry ACPI: Fix regression where _PPC is not read at boot even when ignore_ppc=0 acer-wmi: Respect current backlight level when loading
2010-02-23Merge branch 'drm-linus' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: drm/vmwgfx: Fix queries if no dma buffer thrashing is occuring. drm/nv50: fix vram ptes on IGPs to point at stolen system memory drm/nv50: fix instmem binding on IGPs to point at stolen system memory drm/nv50: improve vram page table construction drm/nv50: more efficient clearing of gpu page table entries drm/nv50: make nv50_mem_vm_{bind,unbind} operate only on vram drm/nouveau: Fix up pre-nv17 analog load detection.
2010-02-23Merge branch 'master' of ↵David S. Miller
git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6
2010-02-23tc35815: Remove a wrong netif_wake_queue() call which triggers BUG_ONAtsushi Nemoto
The netif_wake_queue() is called correctly (i.e. only on !txfull condition) from txdone routine. So Unconditional call to the netif_wake_queue() here is wrong. This might cause calling of start_xmit routine on txfull state and trigger BUG_ON. This bug does not happen when NAPI disabled. After txdone there must be at least one free tx slot. But with NAPI, this is not true anymore and the BUG_ON can hits on heavy load. In this driver NAPI was enabled on 2.6.33-rc1 so this is regression from 2.6.32 kernel. Reported-by: Ralf Roesch <ralf.roesch@rw-gmbh.de> Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: David S. Miller <davem@davemloft.net>
2010-02-23cdc_ether: new PID for Ericsson C3607w to the whitelist (resubmit)Torgny Johansson
This patch adds a new vid/pid to the cdc_ether whitelist. Device added: - Ericsson Mobile Broadband variant C3607w Signed-off-by: Torgny Johansson <torgny.johansson@gmail.com> -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Signed-off-by: David S. Miller <davem@davemloft.net>
2010-02-23e1000: Fix DMA mapping error handling on RXAnton Blanchard
Check for error return from pci_map_single/pci_map_page and clean up. With this and the previous patch the driver was able to handle a significant percentage of errors (I set the fault injection rate to 10% and could still download large files at a reasonable speed). Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2010-02-23drm/vmwgfx: Fix queries if no dma buffer thrashing is occuring.Thomas Hellstrom
Intercept query commands and apply relocations to their guest pointers. Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-02-23Merge remote branch 'nouveau/for-airlied' of ../drm-nouveau-next into drm-linusDave Airlie
* 'nouveau/for-airlied' of ../drm-nouveau-next: drm/nv50: fix vram ptes on IGPs to point at stolen system memory drm/nv50: fix instmem binding on IGPs to point at stolen system memory drm/nv50: improve vram page table construction drm/nv50: more efficient clearing of gpu page table entries drm/nv50: make nv50_mem_vm_{bind,unbind} operate only on vram drm/nouveau: Fix up pre-nv17 analog load detection.
2010-02-23Merge branch 'pcc' into releaseLen Brown
2010-02-23Merge branches 'bugzilla-14207' and 'idle' into releaseLen Brown
2010-02-22efifb: fix framebuffer handoffMarcin Slusarz
Commit 4410f3910947dcea8672280b3adecd53cec4e85e ("fbdev: add support for handoff from firmware to hw framebuffers") didn't add fb_destroy operation to efifb. Fix it and change aperture_size to match size passed to request_mem_region. Addresses http://bugzilla.kernel.org/show_bug.cgi?id=15151 Signed-off-by: Marcin Slusarz <marcin.slusarz@gmail.com> Reported-by: Alex Zhavnerchik <alex.vizor@gmail.com> Tested-by: Alex Zhavnerchik <alex.vizor@gmail.com> Acked-by: Peter Jones <pjones@redhat.com> Cc: Huang Ying <ying.huang@intel.com> Cc: Dave Airlie <airlied@redhat.com> Cc: "Rafael J. Wysocki" <rjw@sisk.pl> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-02-22geode-mfgpt: restore previous behavior for selecting IRQJens Rottmann
geode-mfgpt: restore previous behavior for selecting IRQ The MFGPT IRQ used to be, in order of decreasing priority, * IRQ supplied by the user as a boot-time parameter, * IRQ previously set by the BIOS or another driver, * default IRQ given at compile time. Return to this behavior, which got broken when splitting the MFGPT/clocksource driver for 2.6.33-rc1. Signed-off-by: Jens Rottmann <JRottmann@LiPPERTEmbedded.de> Acked-by: Andres Salomon <dilinger@collabora.co.uk> Cc: Jordan Crouse <jordan.crouse@amd.com> Cc: Ingo Molnar <mingo@elte.hu> Cc: john stultz <johnstul@us.ibm.com> Acked-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-02-23drm/nv50: fix vram ptes on IGPs to point at stolen system memoryBen Skeggs
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-02-23drm/nv50: fix instmem binding on IGPs to point at stolen system memoryBen Skeggs
This also modifies the unused PRAMIN PT entries to be all zeroes, can't really recall why I used 9/0 initially, just that it didn't work for some reason. It was likely masking a bug elsewhere that's since been fixed. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-02-23drm/nv50: improve vram page table constructionBen Skeggs
This commit changes nouveau to construct PTEs which look very much like the ones the binary driver creates. I presume that filling multiple PTEs identically with length flags and the physical address of the start of a block of VRAM is a hint to the memory controller that it need not perform additional page table lookups for that range of addresses. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-02-23drm/nv50: more efficient clearing of gpu page table entriesBen Skeggs
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-02-23drm/nv50: make nv50_mem_vm_{bind,unbind} operate only on vramBen Skeggs
GART is handled elsewhere, no reason to have the code for it here too. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-02-23drm/nouveau: Fix up pre-nv17 analog load detection.Francisco Jerez
Signed-off-by: Francisco Jerez <currojerez@riseup.net> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-02-23drm/radeon/kms: implement reading active PCIE lanes on R600+Rafał Miłecki
Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-02-23drm/radeon/kms: for downclocking non-mobility check PERFORMANCE stateRafał Miłecki
AtomBIOS tables on non-mobility GPU do not contain POWERSAVE/BATTERY. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Reviewed-by: Alex Deucher <alexdeucher@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-02-23drm/radeon/kms: simplify storing current and requested PM modeRafał Miłecki
We kept pointers to requested and current clock modes in every power state. That was useless, more /global/ pointers in power struct are enough. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Reviewed-by: Alex Deucher <alexdeucher@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>