Dave Airlie
4ccec67a23
radeon: remove unused gem indirect ioctl
2008-11-03 09:42:01 +10:00
Dave Airlie
6000fa6862
radeon: CS2 make it all work with new relocs style
2008-11-03 09:40:52 +10:00
Dave Airlie
35f0805592
radeon: don't copy to user the cs ids
2008-11-03 09:40:24 +10:00
Dave Airlie
8b2925468d
radeon: make new CS2 command submission interface port older interface to this
2008-11-03 09:39:53 +10:00
Dave Airlie
fd9e05b3f4
radeon: release agp on module unload
2008-11-03 09:33:32 +10:00
Dave Airlie
624da91277
radeon: add r423 bits to modesetting
2008-11-03 09:33:12 +10:00
Dave Airlie
1c817cc3fc
radeon: pull bus master enable into its own function
2008-11-03 09:32:39 +10:00
Dave Airlie
b4803991c8
radeon: update proper chip family
2008-11-03 09:30:48 +10:00
Dave Airlie
3fd0e1483e
radeon: fixup scratch register interactions properly
2008-11-03 09:29:22 +10:00
Dave Airlie
a066a5f908
radeon: make writeback work again
2008-11-03 09:28:56 +10:00
Dave Airlie
0dbe3436ee
radeon: fix some warnings
2008-11-03 09:28:36 +10:00
Dave Airlie
52ef9d87db
radeon: fix small typo in agp code
2008-11-03 09:27:00 +10:00
Dave Airlie
d275f99c9a
radeon: don't enable dynclks on rs48x
2008-11-03 09:26:00 +10:00
Dave Airlie
48f2227516
radeon: export radeon_modeset
2008-11-03 09:25:32 +10:00
Dave Airlie
f74721fc25
radeon: fix unused agp functionality
2008-11-03 09:24:13 +10:00
Dave Airlie
b09cb93e2d
radeon: add some more r100 support to test AGP
2008-11-03 09:23:19 +10:00
Jesse Barnes
1db35ba583
libdrm: fix ABI change in drm_mode_get_encoder
...
The encoder_type field should be at the top to match the kernel.
2008-10-29 12:18:15 -07:00
Eric Anholt
0e86731232
intel: Add dri_bufmgr_check_aperture support for bufmgr_gem.
...
This relies on a new kernel ioctl to get the available aperture size.
In order to provide reasonable performance from dri_bufmgr_check_aperture, we
now require that once a buffer has been used as the target of a relocation,
it gets no further relocations added to it. This cuts the cost of
check_aperture from 10% to 1% in the 3D driver with no code changes, but
slightly complicates our plans for the 2D driver.
2008-10-28 14:27:49 -07:00
Ben Skeggs
48b73904b4
nv50: move context-related tables a separate header file
...
This turns the various nvXX_graph_init_ctxvals() methods into tables,
and speeds up compliation of nv50_graph.c quite a bit. This has bothered
me for a while, but others are complaining now so it's time to fix it :)
2008-10-28 11:56:07 +11:00
Robert Noland
145d2d610b
i915: Since FreeBSD doesn't have gem support yet, don't advertise it.
...
This allows us to not crash X when using newer Intel ddx drivers.
2008-10-27 14:39:05 -04:00
Alex Deucher
e1372f6727
radeon: fix error in busmaster enable logic
...
- logic was wrong. rs400/rs480 should clear the RADEON_BUS_MASTER_DIS bit
- should fix kernel bug 11798
2008-10-27 13:18:07 -04:00
Alex Deucher
848f00d773
radeon: fix some fallout from the busmaster disable cleanup
...
rs400 is just like rs480. I mixed up the internal
chipset names for rs600 and rs400.
2008-10-27 12:59:39 -04:00
Dave Airlie
389b7617b5
drm: make handles 32-bits again not sure why they changed
2008-10-27 17:06:23 +10:00
Matthias Hopf
1d930fc75b
drm/i915: fix ioremap of a user address for non-root (CVE-2008-3831)
...
Olaf Kirch noticed that the i915_set_status_page() function of the i915
kernel driver calls ioremap with an address offset that is supplied by
userspace via ioctl. The function zeroes the mapped memory via memset
and tells the hardware about the address. Turns out that access to that
ioctl is not restricted to root so users could probably exploit that to
do nasty things. We haven't tried to write actual exploit code though.
It only affects the Intel G33 series and newer.
2008-10-25 12:15:50 -04:00
Jakob Bornecrantz
34a3ebffc3
mode: Try to settle on a standard for struct fields
2008-10-24 18:46:47 +02:00
Jakob Bornecrantz
0796bf8c6b
mode: Indent defines
2008-10-24 18:23:39 +02:00
Dave Airlie
26076bf24a
radeon: add initial agp support.
...
This add agpmode command line option.
2008-10-16 10:59:31 +10:00
Dave Airlie
8d9a11c55c
radeon: add CS support for r100/r200 in 2D driver
2008-10-16 10:57:31 +10:00
Dave Airlie
d958cd7bb9
radeon: use discardable flags on no backing store objects
2008-10-16 10:51:31 +10:00
Robert Noland
a8f73c214d
i915: Cleanup interrupt handling
2008-10-09 22:11:55 -04:00
Alex Deucher
728d8e226f
radeon: add comment to clarify bus mastering on PCIE chips
2008-10-06 12:12:49 -04:00
Alex Deucher
6f9dfa098f
radeon: fix duplicate define in my last commit
...
That's what I get for committing at 3 AM.
2008-10-06 12:01:11 -04:00
Dave Airlie
8e5f5ed189
radeon: PCIE cards don't appear to have explicit bus master
2008-10-07 04:47:54 +10:00
Alex Deucher
4b98f6d74f
radeon: fix bus master enabled bits on newer asics
2008-10-06 03:08:27 -04:00
Mihail Zenkov
5a36cce349
radeon: fix missing bit from rs740 patch
...
See bug 17908
2008-10-06 00:49:15 -04:00
Alex Deucher
ce40261012
radeon: Add support for HD2100 IGP (RS740)
2008-10-04 20:43:21 -04:00
Dave Airlie
7b3aa62648
Merge remote branch 'origin/modesetting-gem' into modesetting-gem
2008-09-30 14:17:27 +10:00
Dave Airlie
972f657265
Merge remote branch 'origin/master' into modesetting-gem
...
Conflicts:
libdrm/Makefile.am
libdrm/dri_bufmgr.h
linux-core/drm_irq.c
linux-core/drm_sysfs.c
linux-core/drm_ttm.c
shared-core/i915_dma.c
shared-core/i915_irq.c
shared-core/nouveau_drv.h
shared-core/radeon_cp.c
2008-09-30 14:13:49 +10:00
Alex Deucher
09b2dfcedc
radeon: make atom on r4xx a module option
...
default is legacy modesetting. pass module option r4xx_atom
to try using atom on r4xx.
2008-09-26 17:20:04 -04:00
Jakob Bornecrantz
ea9711b954
Seperate modesetting userspace bits into drm_mode.h
2008-09-25 23:13:19 +02:00
Dave Airlie
35e379ce5a
radeon: add r600 modesetting registers writes
2008-09-24 15:25:35 +10:00
Alex Deucher
34af71c42a
radeon: add function to configure PCIE lanes
2008-09-18 16:07:41 -04:00
Alex Deucher
e1e782af5d
Radeon: restructure PLL data
...
- store pixel clocks, core clock, and memory clocks separately
- grab all pll limits from bios tables
2008-09-18 15:11:48 -04:00
Dave Airlie
3a497db786
radeon: fixup buffer and cs bits
2008-09-18 10:22:23 +10:00
Dave Airlie
8f38c28a39
radeon: fail properly if we can't create the ring.
...
Normally this will be due to an AGP driver needing updating
2008-09-18 10:19:08 +10:00
Dave Airlie
515aa0800c
radeon: do proper memory controller init and setup
2008-09-18 10:17:27 +10:00
Dave Airlie
ed961cb428
radeon: remove unneeded debugging
2008-09-18 10:14:32 +10:00
Dave Airlie
8f23d4a44c
make text reserve 256k
2008-09-18 10:12:13 +10:00
Dave Airlie
2a6dad31d8
radeon: add initial suspend/resume support
...
plus a bunch of fixes
2008-09-18 10:11:23 +10:00
Ben Skeggs
ee6bcabc50
nv50: add initial context for chipset 0xaa
...
This just doesn't look right..
2008-09-17 22:18:03 +10:00
Ben Skeggs
d55e8090fa
nv50: add initial context to match ctxprog for chipset 0x50
2008-09-17 22:03:38 +10:00
Ben Skeggs
4d2f1257fa
nv50: add ctxprog for chipset 0x50
2008-09-17 15:13:27 +10:00
Ben Skeggs
301be1dc9b
nv50: add ctxprog for chipset 0xaa
2008-09-17 15:02:54 +10:00
Ben Skeggs
f152482bde
nv50: add support for chipset 0x92
2008-09-17 14:52:22 +10:00
Robert Noland
6f2479c674
[FreeBSD] Ensure that drm_pci_alloc is never called while locks are held.
2008-09-06 18:37:06 -04:00
Dave Airlie
f60d9a04b8
radeon: change interface from headers add pin_domain into padding
2008-09-07 08:09:24 +10:00
Robert Noland
3f915f68e8
i915: fix i915_ring_validate()
2008-09-05 12:38:41 -04:00
Stephane Marchesin
ce84511f4d
nouveau: 8200 cards are 0xA0 family.
2008-09-05 00:17:52 +02:00
Dave Airlie
cd7d71f19c
radeon: make writeback work after suspend/resume.
...
While re-writing this for modesetting, I find we disable writeback on
resume.
2008-08-31 07:27:26 +10:00
vehemens
71f0a3e389
[FreeBSD] Replace typedefs on bsd.
...
Signed-off-by: Robert Noland <rnoland@2hip.net>
2008-08-29 15:46:05 -04:00
Dave Airlie
7552b2a6c3
drm: fix some whitespace
2008-08-27 13:41:53 +10:00
Dave Airlie
361ab10d2f
radeon: fixup domains and use them properly
2008-08-26 17:39:00 +10:00
Robert Noland
c8fd8d3a0d
i915: Fix i915 build on FreeBSD
...
ifdef out all the gem stuff for now. Also, the msi stuff isn't portable
the way it is... I'll try and fix that up sometime soon.
2008-08-24 15:53:17 -04:00
Robert Noland
d0acbe4553
i915: Convert vblank on disabled pipe DRM_ERROR to DRM_DEBUG.
2008-08-24 15:25:20 -04:00
Robert Noland
739b01dde4
i915: Clear sarea_priv during lastclose.
...
sarea_priv needs to be NULL before i915_initialized is called to
properly reset it. The stale value produces a panic any time something
opens/closes drm without calling initialize. i.e. version checking
2008-08-24 15:25:20 -04:00
Robert Noland
1f3c4dd938
i915: Free dev->dev_private on unload.
2008-08-24 15:25:19 -04:00
Robert Noland
16c1a87580
i915: Move spinlock init / destroy to load / unload time.
...
This resolves the panic on FreeBSD during VT switch, without attempting
any of the more lofty goals for the time being.
2008-08-24 15:25:19 -04:00
root
0da66c27fa
nouveau: fifo and graphics engine suspend and resume for nv04-nv4x
...
Corresponding DDX patch at http://people.freedesktop.org/~stuart/nv0x-nv4x_suspend/
2008-08-19 02:01:14 +01:00
Dave Airlie
2d4cf9cc0f
radeon: oops set correct scratch
2008-08-19 08:20:09 +10:00
Alex Deucher
aed70622ab
radeon: first pass at bios scratch regs
...
- todo: updated connected status
2008-08-17 18:09:07 -04:00
Maarten Maathuis
a5381cac55
nouveau: make it compile under 2.6.27
2008-08-17 00:41:50 +02:00
Jesse Barnes
a2adc69656
i915: finish removing TTM bits
...
Makes it build again.
2008-08-16 12:09:24 -07:00
Jesse Barnes
d313108167
Merge branch 'modesetting-gem' of ssh://git.freedesktop.org/git/mesa/drm into modesetting-gem
2008-08-16 11:45:53 -07:00
Jesse Barnes
893315d49e
i915: set domain properly on fb mapping, flush out changes
...
The user visible ioctl does this, but since we call into GEM internals
directly, we have to flush things ourselves. Fixes initial fb console
corruption.
2008-08-16 11:35:10 -07:00
Dave Airlie
30ff279e42
radeon: add support for memory map init
2008-08-14 14:43:51 +10:00
Dave Airlie
eb8f9b9da4
radeon: add copy/solid regs for rn50
2008-08-14 14:41:15 +10:00
Dave Airlie
9dff806802
i915: fixup from last merge hopefully
2008-08-14 09:43:23 +10:00
Dave Airlie
2d4420c666
Merge branch 'radeon-gem-cs' into modesetting-gem
...
Conflicts:
libdrm/xf86drm.c
linux-core/Makefile.kernel
linux-core/drmP.h
linux-core/drm_compat.h
linux-core/drm_drv.c
linux-core/drm_stub.c
linux-core/drm_vm.c
shared-core/i915_dma.c
shared-core/r300_cmdbuf.c
shared-core/radeon_drv.h
2008-08-14 09:36:34 +10:00
Alex Deucher
b486ed7f7d
Get legacy working finally
...
- extra ~ in RADEON_WRITE_P()
- re-arrange crtc setup a bit
- add debugging for tracing calls
- fix pitch calculation
2008-08-14 09:19:03 +10:00
Alex Deucher
5f427e9aae
Brute force port of legacy crtc/encoder code
...
- removed save/init/restore chain with set functions
2008-08-14 09:19:02 +10:00
Dave Airlie
b167ccf10f
radeon: fix kernel_mm properly
2008-08-14 09:17:43 +10:00
Dave Airlie
58df2fa0ec
radeon: remove debugging
2008-08-14 09:14:56 +10:00
Dave Airlie
b0ee12e6bb
radeon: use mm_enabled variable to denote memory manager running
2008-08-14 09:14:14 +10:00
Dave Airlie
18020e5e96
radeon: make buffer swap for older drivers work again on GEM
2008-08-14 09:12:36 +10:00
Dave Airlie
d59f41b8cf
radeon: add userspace call for mm support check
2008-08-14 09:11:15 +10:00
Dave Airlie
957c71ff52
radeon: FEDORA: add old DMA buffers on top of GEM
...
This really shouldn't go upstream, it just lets me
run the old 3D driver on GEM setup system
2008-08-14 09:10:11 +10:00
Jesse Barnes
1c6abcefdc
i915: setup hardware status page if physical addrs are required
...
Needed for the modesetting case where we initialize the ring at load time.
2008-08-13 11:39:22 -07:00
Jesse Barnes
b8724ae647
Merge branch 'modesetting-101' into modesetting-gem
2008-08-13 10:09:41 -07:00
Jesse Barnes
2f03ba4aad
Merge branch 'master' into modesetting-gem
...
Conflicts:
libdrm/Makefile.am
libdrm/xf86drm.h
shared-core/i915_dma.c
shared-core/i915_irq.c
2008-08-13 10:08:02 -07:00
Maarten Maathuis
9a2adc442a
NV50: minor changes
2008-08-09 19:50:00 +02:00
Maarten Maathuis
f79ed55462
NV50: enable hotplug irq
2008-08-09 19:47:06 +02:00
Eric Anholt
e1b8e79796
Merge branch 'drm-gem'
...
Conflicts:
shared-core/i915_dma.c
This brings in kernel support and userland interface for intel GEM.
2008-08-08 14:05:01 -07:00
Stuart Bennett
0c47151a57
nouveau: wait for pgraph idle after loading or saving a context
...
the nvidia driver does this, and it stops the error message appearing on nv40
2008-08-08 16:25:05 +01:00
Dave Airlie
c2184e450e
radeon: add initial support for legacy crtc/encoders.
...
not all there yet
2008-08-08 16:04:45 +10:00
Jesse Barnes
8074b2e83d
Make modesetting-gem build with recent kernels
...
Needed to merge in VM fault changes & pci_read_base API update.
2008-08-07 17:15:50 -07:00
Dave Airlie
513d4c3ff1
radeon: fix setting new memmap in right place
2008-08-06 10:21:20 +10:00
Dave Airlie
4748fbcbd7
radeon: fix blit due to registers wrong
2008-08-05 11:36:37 +10:00
Dave Airlie
aa8e15f8b5
radeon: add userspace mm enable switch
2008-08-04 14:59:17 +10:00
Dave Airlie
dff8485151
drm: remove unused types
2008-08-04 14:55:12 +10:00
Dave Airlie
af6efc3d77
i915/radeon: use rmmap locked
2008-08-04 14:54:02 +10:00