Dave Airlie
300e0866d6
fix agp detection on linux
2005-02-07 10:44:28 +00:00
Eric Anholt
080a547d4d
- Implement drm_initmap, and extend it with the resource number to help
...
FreeBSD. Add drm_get_resource_{start|len} so linux-specific stuff
doesn't need to be in shared code.
- Fix mach64 build by using __DECONST to work around passing a const
pointer to useracc, which is unfortunately not marked const.
- Get rid of a lot of maplist code by not having dev->maplist be a pointer,
and by sticking the link entries directly in drm_local_map_t rather
than having a separate structure for the linked list.
- Factor out map uninit and removal into its own routine, rather than
duplicating in both drm_takedown() and drm_rmmap().
- Hook up more driver functions, and correct FreeBSD-specific bits of
radeon_cp.c, making radeon work.
- Baby steps towards using bus_space as we should.
2005-02-05 08:00:14 +00:00
Thomas Hellstrom
270ca5f3ce
Via driver: Add missing drm_poll function to via driver in core.
2005-02-03 10:51:22 +00:00
Eric Anholt
7f7bbdcbed
Declare r128_do_cleanup_pageflip static since it's only used here and its
...
prototype went away.
2005-02-03 01:06:10 +00:00
Eric Anholt
ed31275144
Cast user data to correct type in radeon_surface_free's copyin.
2005-02-03 01:05:34 +00:00
Dave Airlie
0d6b7fcb79
cleanup patch from Adrian Bunk <bunk@stusta.de>
2005-02-01 11:08:31 +00:00
Dave Airlie
1dd948f280
make functions static in i915, remove unused functions
2005-02-01 10:43:42 +00:00
Thomas Hellstrom
cd9ef39c76
Fixed multiple devices DMA bug. Fixed PCI path FIRE command detection
2005-01-27 22:48:47 +00:00
Dave Airlie
77045dc516
fix incorrect PCI id for ATI radeon
2005-01-27 09:13:42 +00:00
Roland Scheidegger
43c3223de6
(Stephane Marchesin,me) Add radeon framebuffer tiling support to radeon
...
drm. Add new ioctls to manage surfaces which cover the tiled areas
2005-01-26 17:48:59 +00:00
Roland Scheidegger
408376b203
replace magic number with macro constant RADEON_ZBLOCK16
2005-01-26 14:19:24 +00:00
Felix Kuehling
39d5c831a0
Removed one bogus Savage3D PCI ID. Corrected another one. Restored
...
numerical ordering.
2005-01-20 23:33:24 +00:00
Adam Jackson
36ec8d82e7
Add a Savage3D PCI ID
2005-01-20 19:05:42 +00:00
Felix Kuehling
858e68fbdc
Corrected some confusion of vb_stride and vtx_size
...
Implemented SAVAGE_CMD_DMA_IDX and SAVAGE_CMD_VB_IDX for ELTs support in
the _savage_render_stage of the 3D driver
Bumped minor version and driver date
2005-01-20 12:23:25 +00:00
Jose Fonseca
d29e2369be
Some code commenting concerning the FIFO & DMA engine.
2005-01-17 21:46:32 +00:00
Dave Airlie
0867ce78f6
This table is in radeon_drv.h along with the version number so remove it
...
from here
2005-01-16 06:41:34 +00:00
Dave Airlie
354dd17d25
The patch makes drmAddBufs/drmMapBufs can handle buffers in video memory
...
The attached patch adds a new buffer type DRM_FB_BUFFER. It works like AGP
memory but uses video memory.
From: austinyuan@viatech.com.cn (fd.o bug 1668) Signed-off-by: Dave Airlie
<airlied@linux.ie>
2005-01-16 05:40:12 +00:00
Felix Kuehling
9514ee39f7
Fixed a bug that prevented the driver from ever emitting triangle strips or
...
fans. Bumped patchlevel and driver date.
2005-01-16 01:22:09 +00:00
Felix Kuehling
ffc51f1f32
Setup MTRRs for frame buffer and aperture manually on Savage3D and
...
Savage4-based cards. Automatic setup in drm_initmap doesn't work due to
the weird alignment and size of the aperture.
2005-01-15 16:55:01 +00:00
Felix Kuehling
17d893f567
Only try to find the agp_buffer_map if dma_type is AGP. This is all that's
...
needed on the DRM side to support PCI Savages. Bumped patch level and
driver date.
2005-01-10 22:46:02 +00:00
Felix Kuehling
d6af902ff7
Improved workaround for Savage3D DMA lockup to emit NOPs only before the
...
first indexed drawing command of a cmdbuf or if a wait command was
emitted since the last indexed drawing command.
2005-01-09 19:49:21 +00:00
Felix Kuehling
e7ba83bd6f
Fixed off-by-one error in savage_bci_wait_fifo_shadow.
2005-01-08 23:28:27 +00:00
Thomas Hellstrom
fb6a4d0a7d
via updates: moved the verifier state struct to dev_priv. Implemented AGP
...
alignment check.
2005-01-07 11:37:01 +00:00
Thomas Hellstrom
ca2b94cfa2
Updated via DRM with check for stray FIRE commands primitive list.
2005-01-07 08:21:29 +00:00
Alan Hourihane
fcece3cf34
Add i915GM support Add resume functionality (must be used with later DDX)
...
Bump to 1.2
2005-01-06 17:51:32 +00:00
Thomas Hellstrom
50a6ffa878
via DRM: Updated the verifier to check the vertex lists more thorough. This
...
should hopefully stop it from getting out of sync.
The PCI command parser is still not updated.
2005-01-06 15:53:38 +00:00
Felix Kuehling
ae1bc4a6da
3D scissor regs are now managed by the DRM to iterate over clip rects
...
passed to the cmdbuf ioctl (try xeyes on top of glxgears ;-)
Tightened the texture state check
Bumped Savage DRM version to 2.1.0 so that DRI driver can (theoretically)
depend on the DRM to manage the scissor registers
2005-01-05 23:45:42 +00:00
Thomas Hellstrom
4818014ab1
Bumped driver date and minor version.
2005-01-05 17:46:34 +00:00
Thomas Hellstrom
e34b560191
VIA update:
...
Release video futexes when context is destroyed (This was previously done
by the X server).
Added New Unichrome Pro VIDEO DMA commands to the verifier.
Added Quiescent heavyweight lock mode.
2005-01-05 17:44:43 +00:00
Felix Kuehling
094f02c568
Fixed the DMA buffer age test. Should fix occasional "soft" lockups. Bumped
...
patch level and driver date.
2005-01-05 14:34:12 +00:00
Felix Kuehling
04842e8bcf
Completeley rewritten Savage DRM which can be considered secure (modulo
...
implementation errors). Direct hardware (MMIO, BCI) access is no longer
needed in the Mesa driver. Bumped version to 2.0.0. Corresponding
changes to the DDX and Mesa drivers are being committed.
2005-01-01 20:22:58 +00:00
Felix Kuehling
ed165a2529
Added a new DRM map type _DRM_CONSISTENT for consistent PCI memory. It uses
...
drm_pci_alloc/free for allocating/freeing the memory. Only implemented
in the Linux DRM so far.
2005-01-01 20:03:15 +00:00
Thomas Hellstrom
e19fa7ada1
VIA DRM: verifier: Added verbose palette error reporting, and support for
...
stipple palettes together with rudimentary checks for texture palette
sizes.
other: Bumped version patchlevel and driver date.
2004-12-31 11:44:27 +00:00
Thomas Hellstrom
590b230119
VIA DRM: Stability enhancements and cleanups in via_dma.c Added explicit
...
licence notice in via_dma.c
2004-12-31 11:27:57 +00:00
Thomas Hellstrom
02c35ec0a2
via DRM: Tightened the security for some functions of the
...
DRM_IOCTL_VIA_DMA_INIT IOCTL. Bumped patchlevel and driver date.
XFree86 bug: 2119
2004-12-21 17:13:22 +00:00
Keith Whitwell
47c178da08
Copy HC_ParaType_Auto change to shared-core. Bump version numbers and
...
dates.
2004-12-20 12:03:02 +00:00
Thomas Hellstrom
ae0db704b4
via changes: Fixed typecasting bug in via_dma.c, and possible short-circuit
...
bug in the cmdbuf_size ioctl. Modified ring-buffer jump code AGAIN, due
to new oddities discovered on the Unichrome Pro with faster processors.
Bumped patchlevel and driver date.
2004-12-19 19:13:47 +00:00
Thomas Hellstrom
aff0a25485
VIA drm updates:
...
1. Improved security check of AGP texture adresses.
2. Hopefully last fix of ring-buffer jump oddities.
3. Added ioctl to check available space and command regulator lag in
ring-buffer. This is needed for 3D application responsiveness.
2004-12-13 13:53:12 +00:00
Roland Scheidegger
c4a87c6883
(Stephane Marchesin, me) add hyperz support to radeon drm. Only fast z
...
clear and z buffer compression are working correctly, hierarchical-z is
not.
2004-12-08 16:43:00 +00:00
Thomas Hellstrom
1fbfd9eb32
Security and optimization fixes for the via drm:
...
1. The command verifier was never initialized in the non-core source tree.
2. Check added that the AGP ring buffer has been initialized before
accepting command buffer.
3. Free space check in the AGP buffer is moved to after command
verification, which is more optimal in most cases.
2004-12-06 11:19:23 +00:00
Thomas Hellstrom
267e064527
Added 3D functionality to the via command verifier. Modified the via
...
ring-buffer code somewhat to workaround hardware problems. Bumped via
minor version number.
2004-12-03 23:03:36 +00:00
Dave Airlie
f197110e07
Make 1-bit fields be unsigned (no sign bit :). sparse complains about them:
...
drivers/char/drm/sis_ds.h:88:12: warning: dubious one-bit signed
bitfield drivers/char/drm/sis_ds.h:89:16: warning: dubious one-bit
signed bitfield
Signed-off-by: Randy Dunlap <rddunlap@osdl.org> Signed-off-by: Dave Airlie
<airlied@linux.ie>
2004-12-03 10:22:15 +00:00
Thomas Hellstrom
4f8fa60286
Reworked PCI MMIO command buffer parser, and imported code from the Mesa
...
driver. It can now handle the 3D OpenGL commands from the Mesa
unichrome driver.
Added vsync frequency detection support. This will be used in the future
for XvMC and better frame timing.
Bumped minor version number and driver date.
2004-11-27 22:55:31 +00:00
Dave Airlie
f0a86288fa
patch from bug 1803 - will try and push to kernel soon
2004-11-11 11:09:11 +00:00
Dave Airlie
c5bededa51
add some more r300 pci ids
2004-11-07 02:19:58 +00:00
Eric Anholt
cb5aaa8987
Convert more drivers for bsd-core, moving the ioctl definitions to shared
...
code. Remove the "drv" from sisdrv, as it's unnecessary. Use the
drm_pci functions in i915 instead of per-os implementations of the
same. Avoid whitespace within fields in drm_pciids.txt (one of the r300
definitions), since it breaks the bsd pciids script. Tested on sis,
mga, r128. i915 needs more work.
2004-11-06 23:02:07 +00:00
Jon Smirl
069f53a93b
Move radeon i2c include to top of file
2004-11-06 16:55:41 +00:00
Jon Smirl
642a8106d2
Export missing r128 ioctl symbol
2004-11-06 16:51:36 +00:00
Eric Anholt
c9202c8965
Commit WIP of BSD conversion to core model. Compiles for r128, radeon, but
...
doesn't run yet. Moves the ioctl definitions for these two drivers back
to the shared code -- they aren't OS-specific.
2004-11-06 01:41:47 +00:00
Thomas Hellstrom
f08a01c0e2
Fixed bug in via_dma.c. The code didn't check that the lock was held by the
...
caller. Just that it was held.
2004-11-03 13:37:37 +00:00
Thomas Hellstrom
9409d8231c
Reworked the jump-code in via_dma.c. The command regulator now seems to
...
pause correctly after a jump. Removed the debug message from within the
interrupt handler of via_irq.c
2004-11-01 20:48:49 +00:00
Keith Whitwell
08758b2fb7
correct historic mis-attribution of copyright
2004-11-01 10:52:18 +00:00
Thomas Hellstrom
8264e2c8aa
Some stabilizing work to the DMA ring-buffer code. Temporarily replaced the
...
rewind jump with a reinitialization. This makes the code stable on
CLE266 and KM400.
2004-10-30 13:01:48 +00:00
Ville Syrjala
d403173005
Fixed off by one errors in clipping.
2004-10-16 11:21:56 +00:00
Ville Syrjala
52fdf10fd7
Fixed bad formatting.
2004-10-16 10:54:58 +00:00
Thomas Hellstrom
bbfe18e3bf
Via updates. Fixed unlikely but possible uint32_t overflow in ring-buffer
...
code. bumped patchlevel.
2004-10-12 18:46:26 +00:00
Jon Smirl
ad70dc676e
Breakout heads into their own data structures.
2004-10-12 03:59:17 +00:00
Jon Smirl
ad549c5ae6
Rename fn_tbl to driver. Core driver now uses pci_driver name which
...
reflects the personality name.
2004-10-10 22:54:55 +00:00
Dave Airlie
3f02a79351
Vladimir requested support so we can at least load r300 microcode for
...
helping
2D operations.
Ups radeon to version 1.12.0, Vladimir, you might want to add any extra
pciids...
Approved-by: Dave Airlie <airlied@linux.ie>
2004-10-10 05:52:19 +00:00
Dave Airlie
8727326371
cleanup VIA driver to look a bit like others before kernel merge
2004-10-09 12:42:52 +00:00
Dave Airlie
fec94a8274
Lindent the via stuff so I can include it in kernel
2004-10-09 11:12:24 +00:00
Thomas Hellstrom
d24194e904
Changed unsigned to uint32_t in some ioctl parameters. Introduced first
...
rudimentary command verifier for dma buffers. Changed the decoder futex
ioctl parameters. Bumped the via major version number.
2004-10-08 21:11:02 +00:00
Jon Smirl
61d36f6179
Revert back to drm_order() instead of using kernel get_order(). The
...
functions are not identical.
2004-10-06 16:27:55 +00:00
Jon Smirl
aba12cfc0e
janitor-list_for_each-drivers-char-drm-radeon_memc.patch from mm kernel
2004-10-02 19:11:30 +00:00
Jon Smirl
9f9a8f1382
Lindent of core build. Drivers checked for no binary diffs. A few files
...
weren't Lindent's because their comments didn't convert very well. A
bunch of other minor clean up with no code implact included.
2004-09-30 21:12:10 +00:00
Jon Smirl
1c0a437fa2
Move things around to reduce public symbols and even out files. Switch to
...
get_order from drm_order.
2004-09-30 19:26:35 +00:00
Jon Smirl
3aef3841d0
Make fops per driver instead of global, remove default flush, poll, read
...
functions
2004-09-30 18:13:33 +00:00
Jon Smirl
fa6b1d129e
First check in for DRM that splits core from personality modules
2004-09-27 19:51:38 +00:00
Jon Smirl
74f063fc9d
Create new linux-2.6 build. Move all gpl files into the 2.6 build. If you
...
edit files for 2.6 be sure and break the link to the 2.4 directory and
copy the cvs history.
2004-09-24 03:12:17 +00:00
Jon Smirl
c158a36c4c
1) switches from class_sysfs to drm sysfs implementation to allow
...
customization
2) compiles again on 2.4, but doesn't work
2004-09-23 05:39:15 +00:00
Felix Kuehling
af326f6f0c
Create permanent maps of framebuffer, aperture and MMIO registers. Added
...
chipset-type information in driver data field of Savage PCI-IDs. Added
missing PCI-ID 0x8d03 (ProSavageDDR on Pentium boards). Don't require
AGP.
2004-09-22 22:51:18 +00:00
Jon Smirl
27fc998f7d
Remove hotplug reset support from DRM driver. This will be handled by the
...
VGA driver when it gets written.
2004-09-22 19:13:02 +00:00
Jon Smirl
6f31c42fe9
Remove size restriction on permanent addmap
2004-09-20 19:23:27 +00:00
Dave Airlie
5654880eee
remove HAVE_COUNTERS
2004-09-20 11:29:16 +00:00
Jon Smirl
0c6fb0fbe1
Add linux sysfs i2c support to radeon driver. This patch adds GPL licensed
...
files to the linux build but not to the BSD directories.
2004-09-17 04:02:28 +00:00
Jon Smirl
c7c9d3ef7b
Let's try adding the dyn-minor patch again. This patch will reuse minor
...
numbers if a card is hotplugged in/out instead of just having them
increase.
2004-09-16 18:42:03 +00:00
Jon Smirl
eeb0ef1a70
Back dyn-minor patch out for now. fops handling is broken on some cards
2004-09-15 17:44:30 +00:00
Jon Smirl
64ef12c55c
Dynamic device minor support. Minor device numbers will be reused if the
...
device is hotplugged in/out of the system
2004-09-15 00:20:21 +00:00
Jon Smirl
03c2e674e4
Add chip family names to the radeon driver
2004-09-14 03:59:25 +00:00
Jon Smirl
36050cc958
Fix DRM to compile cleanly with recent kernel changes in PCI IO and
...
DRM_COPY_FROM_USER. PCI IO changes in 2.6.9-rc1 bk currently.
2004-09-12 03:23:50 +00:00
Jon Smirl
e6d468ad7f
More general patch to mark resources in use by all DRM drivers. Makes the
...
code Linux specific.
2004-09-10 16:44:28 +00:00
Jose Fonseca
1fb27632c3
Update doxygen configuration file. Minor documentation updates/fixes.
2004-09-08 20:57:39 +00:00
Thomas Hellstrom
b0c73b7fcb
Added IOCTL for writing 2D DMA command buffers over PCI. Bumped minor
...
version number.
2004-09-07 16:48:44 +00:00
Dave Airlie
eeae6a0a38
merge back bunch of whitespace and misc changes from kernel
2004-09-05 10:54:59 +00:00
Dave Airlie
7809efc8c3
drm-memory patch, cleans up alloc/free and makes calloc look more libc like
2004-08-30 09:01:50 +00:00
Erdi Chen
08de6e5b04
Fix copy_from_user return value ignored warning at via_dma.c:168.
2004-08-30 04:58:24 +00:00
Dave Airlie
73e606753f
run i915 through lindent
2004-08-27 09:14:30 +00:00
Dave Airlie
019fd38a3c
__NO_VERSION__ hasn't been needed since 2.3 days ditch it...
2004-08-27 09:11:07 +00:00
Jon Smirl
e068fcbfdd
Rearrange things so that via_dma.c will compile with inline via_check_dma
2004-08-26 03:54:01 +00:00
Dave Airlie
d4dbf45781
Merged drmfntbl-0-0-2
2004-08-24 11:15:53 +00:00
Erdi Chen
25e319c1ef
This patch adds three new ioctl's to the VIA Unichrome/Pro DRM driver:
...
DRM_IOCTL_VIA_DMA_INIT DRM_IOCTL_VIA_CMDBUFFER DRM_IOCTL_VIA_FLUSH
The first ioctl sets up an area in AGP memory that will be used as the ring
buffer. The second ioctl copies a command buffer from user space memory
to the ring buffer. The third ioctl waits for engine idle until it
returns.
The motivation for this patch is to avoid the wait for engine idle call
before each buffer flush in the current DRI driver. With this patch,
the DRI driver can continue to flush its buffer as long as there is
free space in the ring buffer.
This patch adds an additional copy operation on the command buffer. This
buffer copying is necessary to support multiple DRI clients rendering
simultaneously. Otherwise, more CPU time will be spent in the busy loop
waiting for engine idle between DRI context switch. Even in the single
client case, the tradeoff is reasonable in comparision to the kernel
call to check for free buffer space for the client to render directly
to the ring buffer.
2004-08-24 01:44:37 +00:00
Dave Airlie
7fe4f60768
set pointers to NULL after freeing, remove some extra debugging
2004-08-23 10:05:01 +00:00
Dave Airlie
5c9ed83094
Merged drmfntbl-0-0-1
2004-08-17 13:10:05 +00:00
Dave Airlie
93e8c201af
preparation patch for radeon permanent mapping registers/framebuffer makes
...
dev_priv live always, and add AGP detection in kernel patch:
radeon-pre-2.patch From: Jon Smirl
2004-08-17 11:24:50 +00:00
Eric Anholt
dd83f39f03
Add a "dev" argument to DRIVER_CTX_[CD]TOR. This will be used in an
...
upcoming commit for the SiS driver.
2004-08-14 00:46:15 +00:00
Eric Anholt
211c37e250
Fix apparent copy'n'paste-o of the card attributes commit that broke the
...
FreeBSD build.
2004-08-13 23:32:39 +00:00
Dave Airlie
9277f9eef3
Patch from Jon Smirl to add attribute field to the pciids, and use this for
...
certain radeon combinations - intel drivers can probably use this for
dual head capable devices etc..
2004-08-10 11:14:07 +00:00
Dave Airlie
33b740ad99
forgot to check these in.. thanks to Jon for reminding me ..
2004-08-02 11:45:23 +00:00
Dave Airlie
bd71ba6428
patch from RH xorg-x11 tree ported to drm.h
2004-07-31 08:38:39 +00:00
Dave Airlie
eb3d0635d4
fixes for using userspace pointers found by sparse utility
...
From: Dave Airlie
2004-07-31 07:26:52 +00:00