Alex Deucher
0101127af0
radeon: Simplify the radeon microcode loading.
...
based on patch from Christoph Mallon
2009-04-06 18:01:40 -04:00
Alex Deucher
9858540fab
Add support for RV790 (HD 4890) asics
2009-04-02 12:16:10 -04:00
Alex Deucher
c3c2ae466c
Merge branch 'master' into r6xx-r7xx-support
2009-03-30 01:54:54 -04:00
Alex Deucher
48b5f09534
RS780: Load the right firmware
...
copy paste error
2009-03-29 20:29:40 -04:00
Stuart Bennett
c9cfeaa554
nouveau: plug drm fifo ioremap leak ( #14941 )
2009-03-25 02:50:34 +00:00
Stuart Bennett
03ca202fa5
nouveau: add linux compat defines for PCI config access, use them for nvidia IGPs
2009-03-25 02:50:34 +00:00
Stuart Bennett
b71f3f114e
nouveau: use PFB_CSTATUS naming from ddx (reg introduced with nv10)
...
NV04 had a PFB_FIFO_DATA at the same address, which we don't use, so
remove it to reduce confusion
2009-03-25 02:50:34 +00:00
Alex Deucher
79754dd826
radeon: add new pci ids
2009-03-19 20:24:48 -04:00
Alex Deucher
3085912035
radeon: sync up with more changes from drm-next tree
...
- pull in some fixes
- restructure r6xx/r7xx code to match drm-next
2009-03-16 15:48:07 -04:00
Robert Noland
6777c6bb8b
FreeBSD: Don't set the PZERO flag to mtx_sleep.
...
We also don't support anything old enough to need tsleep.
2009-03-16 00:17:54 -05:00
Alex Deucher
3966e5584f
radeon: irq fixes for rs600
2009-03-15 12:05:18 -04:00
Dave Airlie
06c0fea8bb
drm/radeon: r600 ptes are 64-bit, cleanup cleanup function.
...
Signed-off-by: Dave Airlie <airlied@redhat.com>
2009-03-13 10:54:21 -04:00
Dave Airlie
abed41e108
drm/radeon: fix r600 writeback across suspend/resume
...
This update was done in mainline radeon, but not in the r600.
Signed-off-by: Dave Airlie <airlied@redhat.com>
2009-03-13 10:50:29 -04:00
Dave Airlie
7a2f958dc9
drm/radeon: fix r600 writeback setup.
...
This fixes 2 bugs:
1. the AGP calculation wasn't consistent with the PCI(E) calc for the
RPTR_ADDR registers. This consolidates the writes and fixes it up.
2. The scratch address was being incorrectly calculated, this breaks
it out into a lot more linear steps.
Signed-off-by: Dave Airlie <airlied@redhat.com>
pull in from drm-next
2009-03-09 11:11:40 -04:00
Dave Airlie
f80b83278f
drm/radeon: fix r600 pci mapping calls.
...
This realigns the r600 pci mapping calls with the ati pcigart ones,
fixing the direction and using the correct interface.
Suggested by Jerome Glisse.
Signed-off-by: Dave Airlie <airlied@redhat.com>
pulled in from drm-next
2009-03-09 11:03:36 -04:00
Alex Deucher
cee25efa7d
R6xx/R7xx: remove extra padding on cache flush and wait_until
...
padding is properly taken care of in commit_ring
2009-03-09 10:59:27 -04:00
Alex Deucher
160d78a889
r6xx/r7xx: fix possible oops in r600_page_table_cleanup()
2009-03-07 18:25:18 -05:00
Ben Skeggs
391c92ae17
drm/nouveau: make portion of vram as reserved for PRAMIN on all chipsets
...
NV04 was completely busted. Push buffers were getting allocated at the
end of VRAM, overwriting PRAMIN. So, it turns out PRAMIN is in VRAM on
all chips. Question answered!
2009-03-06 09:16:54 +10:00
Alex Deucher
cf8196e6eb
radeon: pull in ring padding form drm-next
2009-03-04 16:18:17 -05:00
Alex Deucher
189cd825a8
Revert "R6xx/R7xx: don't pad ring for IB age submission"
...
This reverts commit 7f96e792f4 .
This is fixed in the DDX, EXA composite was leaking dma buffers
in some cases:
radeon: 4ad1c4decfee653dbbc1ea2ca4270487be622382
rhd: 9c8ab2dfbe61120298c4b46a2b49245c6779dbc2
2009-03-02 16:26:58 -05:00
Pekka Paalanen
f44c740dc7
drm: drop Linux < 2.6.19 support
...
This also means dropping the DRM_ODD_MM_COMPAT case.
Signed-off-by: Pekka Paalanen <pq@iki.fi>
2009-03-02 23:14:45 +02:00
Alex Deucher
7f96e792f4
R6xx/R7xx: don't pad ring for IB age submission
...
This fixes studdering on HD video playpack, but I don't
think it's the root cause. This need more investigation,
maybe a larger ring for r6xx/r7xx?
2009-03-02 14:37:49 -05:00
Robert Noland
957b10695b
Move vblank_init to driver load time.
2009-02-27 18:16:17 -06:00
Alex Deucher
e2f4c4a8ce
R6xx/R7xx: fix AGP on 2.6.29
2009-02-25 16:07:43 -05:00
Robert Noland
948af0bd9b
i915: Backport jbarnes gm45 vblank counter patch.
2009-02-25 14:20:52 -06:00
Alex Deucher
ce6bde7ab9
RS600: cleanup page table properly
2009-02-25 12:54:35 -05:00
Alex Deucher
b37a96750a
RS600: fix gart setup
2009-02-25 12:43:54 -05:00
Alex Deucher
39de178f68
r6xx/r7xx: re-init vm regs on resume
...
should fix resume
2009-02-25 11:02:46 -05:00
Robert Noland
a44b4ca820
i915: A few whitespace cleanups.
2009-02-24 14:01:38 -06:00
Robert Noland
6870780428
radeon: Prepare radeon for msi support.
2009-02-24 12:28:42 -06:00
Robert Noland
d45bc6667c
i915: This was part of a sync to the intel driver at some point
...
-Remove the old TTM interface
-Move register definitions to i915_reg.h
-Rework the irq handler
2009-02-24 12:24:29 -06:00
Alex Deucher
18a2a0a4c6
RS600: fix MC addr mask
...
noticed by osiris on IRC
2009-02-24 09:49:40 -05:00
Robert Noland
9f94e39f0d
i915: Rip out the use of vblank_swap
2009-02-23 22:39:07 -06:00
Alex Deucher
ac88916eea
radeon: fix logic error
2009-02-23 11:55:52 -05:00
Alex Deucher
112ad16178
RS600: add initial support (untested)
...
The RS600 gart setup is more like R6xx/R7xx than older IGP chips.
If you have an RS600, please test!
2009-02-23 10:27:24 -05:00
Robert Noland
fc9ea629ed
FreeBSD: Finish fixing up the r6/7xx build on FreeBSD.
...
Slightly modified version of a patch provided by vehemens.
2009-02-23 02:13:15 -06:00
Alex Deucher
993d387d75
radeon: make radeon_do_release() r6xx/r7xx safe
2009-02-19 12:02:37 -05:00
Alex Deucher
239acbbb27
R6xx/R7xx: pad VB age submission to 8 dwords
...
also switch to standard VB age check
2009-02-19 10:57:56 -05:00
Alex Deucher
62d391417d
R6xx/R7xx: make sure to call radeon_freelist_reset() in engine_reset()
...
fixes VT switch
2009-02-18 18:58:39 -05:00
Matthew Garrett
96ce587e8b
nouveau: Add in-kernel backlight control support
...
Several nvidia-based systems don't support backlight control via the
standard ACPI control mechanisms. Instead, it's necessary for the driver
to modify the backlight control registers directly. This patch adds
support for determining whether the registers appear to be in use, and
if so registers a kernel backlight device to control them. The backlight
can then be controlled via existing userspace tools.
Signed-off-by: Matthew Garrett <mjg@redhat.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2009-02-18 13:48:33 +10:00
Alex Deucher
7d3f64a41d
radeon: pad r6xx/r7xx ring submissions to 8 dwords
2009-02-16 19:27:19 -05:00
Alex Deucher
4fa339c480
radeon: r6xx/r7xx cleanups
...
- clean up some magic numbers
- add padding to flush/idle in CP_IDLE ioctl (probably not needed)
2009-02-16 19:11:38 -05:00
Ben Skeggs
084e143d0c
nv40: fail completely if we don't have a ctxprog for the chipset
2009-02-15 22:06:18 +10:00
Ben Skeggs
a4ac60a102
nv50: context info for chipset 0xa0
2009-02-15 21:52:19 +10:00
Alex Deucher
8447fbad20
radeon: fix cmdfifo handling for r7xx
2009-02-12 17:36:08 -05:00
Alex Deucher
48bbfae6dc
radeon: fill in more r6xx/r7xx bits
...
- cp reset
2009-02-12 17:04:46 -05:00
Alex Deucher
458497b288
radeon: don't need to pad the ring for IBs
2009-02-11 18:28:45 -05:00
Alex Deucher
36d5bb53d8
radeon: fill in additional missing r6xx/r7xx bits
...
- wait for fifo
- engine idle
- engine reset
2009-02-11 18:21:37 -05:00
Ben Skeggs
bc92c0edf3
drm/nv50: fix nv9x chipsets
...
NVIDIA do this fun little sequence after updating the PRAMIN page tables.
On 9xxx chips, none of the PRAMIN BAR bindings (except the initial one)
worked, hence the majority of the setup needed to create a channel
ended up in the wrong place, causing all sorts of fun.
This is done by NVIDIA on nv8x chips also, so we'll do it for them too,
even though they appear to work without it.
2009-02-11 11:22:41 +10:00
Ben Skeggs
7bbd605a21
drm/nv50: add context info for nv98
...
It won't work yet, just like the other 9xxx chips. Real soon now :)
2009-02-11 10:12:43 +10:00