Commit graph

1152 commits

Author SHA1 Message Date
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
Adam Jackson
caa4212faa momentary revert. libdrm build may be broken now, but no one uses it yet... 2005-02-01 22:09:46 +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
Dave Airlie
62e0a58ecf update i830 similiar to the kernel, add statics 2005-02-01 10:33:51 +00:00
Dave Airlie
8d4c731aa1 make more functions static in i810 and fix pageflip cleanup 2005-02-01 10:18:27 +00:00
Adam Jackson
4b23b5fc3e Final pass of libdrm.so work:
- Add $(DESTDIR) for distributors doing package creation
- Remove OS-specific include path from build
- Add /usr/include/drm for driver-kernel API
- Install all of shared-core/*.h in /usr/include/drm
- Rename xf86drm.h to libdrm.h since we're not X biased anymore
- Include backwards compat for xf86drm.h name, with a warning
- Fix libdrm source to account for drm.h living in /usr/include/drm
2005-01-30 03:30:45 +00:00
Dave Airlie
41cbbb47af fix radeon drv 2005-01-29 23:05:35 +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
Dave Airlie
310abb39b2 use libdrm after it was updated 2005-01-24 08:39:22 +00:00
Dave Airlie
311da0f212 hopefully fix drm_core setversion ioctl... pointed out by Eric on irc 2005-01-24 01:05:07 +00:00
Adam Jackson
3df805bd4a Add drm.h to the install target. 2005-01-22 08:24:36 +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
Alan Hourihane
9620a0b8bb Fix cut & paste problem 2005-01-19 10:03:33 +00:00
Alan Hourihane
f5914ad67b Fix a cut & paste problem 2005-01-19 08:55:53 +00:00
Jose Fonseca
d29e2369be Some code commenting concerning the FIFO & DMA engine. 2005-01-17 21:46:32 +00:00
Eric Anholt
7d0cb01cbf Add detection of whether the device is AGP by walking the capabilities
list.
2005-01-17 20:24:52 +00:00
Adam Jackson
c74052cfae Add xf86drm.h to the install target. 2005-01-17 00:02:04 +00:00
Adam Jackson
e5cc0b8f6f Shared libdrm work:
- create libdrm.so target
- build it by default
- drop xf86drmCompat.c from the build
- make 'clean' target never fail
- use pattern rules for .c -> .o for parallelism
- add 'install' target
2005-01-16 23:50:58 +00:00
Dave Airlie
37318f1675 remove duplicate drm_sysfs.o 2005-01-16 07:49:55 +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
Dave Airlie
6c8a3194f4 due to backways compat crap for IRQ_HANDLED etc.. this wouldn't build on
2.4
2005-01-13 01:26:16 +00:00
Felix Kuehling
d4a8f16eb6 Use virt_to_page instead of vmalloc_to_page in drm_do_vm_shm_nopage for
consistent pages allocated with drm_pci_alloc.
2005-01-12 16:07:49 +00:00
Keith Whitwell
ee57636763 Import Thomas' changes upto 2.4.3 to shared. Small tweak to install target. 2005-01-11 10:59:01 +00:00
Keith Whitwell
9904319b95 import Thomas' shared-core via changes up to 2.4.1 2005-01-11 10:42:52 +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
Jon Smirl
6e38fd3576 Adjust 4 level page check for <= 2.6.10 2005-01-09 17:30:44 +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
Jon Smirl
c6c7496ca0 Adjust drm-memory for 4 level page tables in 2.6.10 ifdef'd to use 3 levels
in kernels older than 2.6.10
2005-01-06 17:09:22 +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