Leif Delgass
10b06bc8b3
fix buffer size in descriptor for DMA test.
2002-05-01 00:14:07 +00:00
Leif Delgass
265b19947c
Enable/disable DMA based on result of gui-mastering test. MMIO mode can
...
still be forced at compile time by setting MACH64_USE_DMA to 0.
DMA test now uses already allocated pci pool memory for descriptor table
and allocates a temporary dma buffer from the pool. This should
probabaly be changed to use one of our mapped vertex/dma buffers.
Also, return error code if _dispatch_vertex causes a lockup, either with
DMA (wait for idle fails) or MMIO (wait for fifo times out).
2002-05-01 00:10:29 +00:00
Jose Fonseca
33e6c36a6e
Use DMA by default.
2002-04-30 12:21:20 +00:00
Leif Delgass
dd8f31bcef
Disable code that was causing kernel oops. I haven't yet determined why the
...
oops happens.
2002-04-28 18:48:59 +00:00
Leif Delgass
2558b54aa0
Byte swapping for vertex DMA data and DMA descriptors
2002-04-28 04:33:56 +00:00
Leif Delgass
121100a515
Account for endianess in register reads/writes.
2002-04-27 19:16:23 +00:00
Leif Delgass
45a5c02888
use virt_to_bus instead of virt_to_phys to get DMA buffer address, which
...
should work on non-x86 architecures.
2002-04-27 04:46:17 +00:00
Leif Delgass
edac61a944
remove duplicate prototype for mach64_do_wait_for_idle (oops)
2002-04-26 22:03:29 +00:00
Leif Delgass
40a9e22bf9
Initial hacked-up code for synchronous DMA of vertex buffers (disabled but
...
functional for both PCI and AGP). 16 KB descriptor table is created by
the drm and the handles stored in the device private structure.
Finish setup of AGP -- AGP registers are now initialized.
Fix up MMIO for PCI.
2002-04-26 21:57:07 +00:00
Jose Fonseca
c04bb660f4
Better support for kernel ring buffers. Changes to allow the evetual use of
...
buffer aging.
2002-04-23 23:47:09 +00:00
Jose Fonseca
0436f9bb35
Fixed the DMA emul code which was checking the FIFO every 17th entry
...
instead of 16
2002-04-21 23:38:55 +00:00
Jose Fonseca
3c16d33f8a
Changed the DMA emulation code to wait for FIFO instead of idle engine
2002-04-21 23:34:01 +00:00
Jose Fonseca
95dba10bc0
Slighty more optimized DMA emulation C code. Support for waiting for
...
checking empty FIFO - but disabled for now.
2002-04-21 14:32:28 +00:00
Leif Delgass
31a6440465
Implement streamlined vertex buffer by setting up multiple sequential
...
register writes.
Register addresses in command/vertex buffer now specified by memory-mapped
address, which is needed for real DMA.
Fix multi-reg write increment in pseudo-DMA flush (byte address needs +4
incr.).
Restore DMAGETPTR grouping of state register writes.
2002-04-21 06:25:08 +00:00
Jose Fonseca
b21b585cf0
Forgot to increment the register number in the pseudo DMA algorithm
2002-04-20 22:04:42 +00:00
Jose Fonseca
e5b7dc8c19
Fixed another discrepancy in mach64_drm.h (this one harmless because is
...
wasn't being used). Use of the DMAGETPTR / DMAADVANCE for which
conditional as they aren't executed in block. Update of
mach64_print_dirty.
2002-04-20 21:42:00 +00:00
Leif Delgass
bd00770298
Add agp texture region info to DRM. Also, use DMA* macros for DRM
...
emit_state functions. This ensures a wait_for_fifo for the MMIO writes.
2002-04-20 20:11:08 +00:00
Jose Fonseca
f080c751f3
Fix a discrepancy in the definition of the upload flags. This still doesn't
...
fix the problem that since the last update UT and some example aren't
showing textures anymore, but other programs do...
2002-04-20 12:28:20 +00:00
Jose Fonseca
d04ebd5463
Added the state hardware programming functions to here
2002-04-20 12:03:19 +00:00
Leif Delgass
7aea29f4bc
Preliminary changes required for AGP textures. AGP texture area is now
...
mapped in the DDX driver and Mesa client. DRI and Mesa screen
structures updated to add agp texture region data. The AGP card heap is
not setup in the Mesa driver screen init yet, so about all this does
right now is print AGP mode info in the renderer string and the texture
region should show up in the X log and /proc/dri
2002-04-20 07:38:16 +00:00
Jose Fonseca
c7df8b994c
Fixed the DMA emulation code thanks to Keith
2002-04-20 00:20:49 +00:00
Jose Fonseca
c0622174af
Code restructuring to be more similar to the existing drivers.
...
Implementation of several functions to support the handling of DMA
buffers. The DMA emulation code is disabled because it segfaults when
trying to read the DMA buffer.
2002-04-19 07:12:32 +00:00
Jose Fonseca
b7ff3cdd0f
Removal of erroneous PCI GART code. Better support for PCI cards. More
...
robustness in the DRM DMA initialization code.
2002-04-15 00:51:14 +00:00
Jose Fonseca
572ee321d9
Error checking when mapping as is done in other drivers
2002-04-12 13:02:26 +00:00
Leif Delgass
0873cfb116
Make sure we wait for enough FIFO entries (needed to add 2 to account for
...
scissors being added in a couple places).
2002-04-09 22:27:42 +00:00
Jose Fonseca
fe04858d8c
Prevent from reading from AGP related registers to avoid lockup in PCI
...
cards.
2002-04-05 01:02:22 +00:00
Jose Fonseca
db8109dd4a
Removed the AGP requirement in the DRM.
...
Fixed the mach64_state.c description header.
2002-03-23 03:28:08 +00:00
Leif Delgass
43fb03f135
Fixes for viewport calculation, scissors, and cliprects. Added drawX,drawY
...
to the context struct to hold origin of drawable in draw buffer. The
viewport is adjusted using these fields.
Enabled scissor test, drm now uses scissor values from the sarea context.
Also enabled color masking, drm uses mask from sarea context
(untested).
The viewport calcs seem to be working, but cliprects still have problems
for single buffer contexts and overlapping GL windows. Needs more
testing and debugging. I'm committing now so we can continue with
testing.
2002-03-05 02:03:31 +00:00
Jose Fonseca
9448f35c3b
Initial merge with the trunk (XFree 4.2.x, Mesa 4.x)
2002-02-26 22:02:37 +00:00
David Dawes
ab87c5d0d1
First pass of mesa-4-0 branch merge into trunk.
2002-02-14 02:00:26 +00:00
Michel Daenzer
65d25572de
wrapper for ioremap_nocache() like for ioremap() (Paul Mundt)
2002-02-02 17:03:51 +00:00
David Dawes
44aa4d6297
First pass merge of XFree86 4.2.0 import.
2002-01-27 20:05:42 +00:00
David Dawes
14945ada16
Import of XFree86 4.2.0
2002-01-27 18:23:04 +00:00
David Dawes
16bd14926e
Initial revision
2002-01-27 18:23:04 +00:00
Alan Hourihane
f18a6d836b
merge with linux kernel 2.4.15
2001-12-10 23:29:37 +00:00
Keith Whitwell
727abee235
Put back i810 major version number (same reasons as for r128)
2001-11-27 11:43:12 +00:00
Keith Whitwell
13e11e1f94
Put drm version back from 3.0 to 2.2; XFree86 4.1 is the baseline for
...
versioning information.
2001-11-26 13:28:38 +00:00
Alan Hourihane
05fb3e93f2
wrap the MODULE_LICENSE definition.
2001-11-02 17:40:11 +00:00
Alan Hourihane
92ad1b60e1
merge kernel 2.4.13-pre6.
2001-10-22 19:15:04 +00:00
Manuel Teira
87ec138e14
file mach64.h was initially added on branch mach64-0-0-2-branch.
2001-10-21 21:08:15 +00:00
Alan Hourihane
bdd84e8958
commit Abraham vd Merwe fix.
2001-10-08 12:58:20 +00:00
Alan Hourihane
ca820fca87
merge with 2.4.10 kernel
2001-09-25 09:32:16 +00:00
Alan Hourihane
390440c939
remove Linux 2.3.x cruft.
2001-09-18 11:00:23 +00:00
Alan Hourihane
b1c44c8ac1
bumped the DRM versions (already done in ddx and client side drivers).
2001-09-17 21:12:10 +00:00
Alan Hourihane
2fabe80827
Use CCE for 2D acceleration (Gerd Knorr)
2001-09-17 10:30:17 +00:00
David Dawes
9e69d0dac6
- Remove the rest of the unneeded client-side libraries.
...
- Use installed libraries that are not built here.
- Don't build/install client-library related file and headers.
2001-08-25 03:13:04 +00:00
Alan Hourihane
27e24cbc0a
file convert.c was initially added on branch bsd-2-0-0-branch.
2001-08-24 11:09:50 +00:00
David Dawes
c6bf9bae8e
First part of XFree86 4.1.99.1 merge.
2001-08-22 18:24:52 +00:00
David Dawes
2f060f44e0
Import of XFree86 4.1.99.1
2001-08-22 18:00:47 +00:00
Jeff Hartmann
063fe900aa
file drm_ioctl_table.h was initially added on branch mesa-3-5-branch.
2001-08-21 21:54:04 +00:00