Dave Airlie [Fri, 10 Dec 2004 11:53:24 +0000 (11:53 +0000)]
Use wbinvd macro instead of assembly for it,
From: Stefan Dirsch <sndirsch@suse.de> Signed-off-by: Dave Airlie
<airlied@linux.ie>
Roland Scheidegger [Wed, 8 Dec 2004 16:43:00 +0000 (16:43 +0000)]
(Stephane Marchesin, me) add hyperz support to radeon drm. Only fast z
clear and z buffer compression are working correctly, hierarchical-z is
not.
Thomas Hellstrom [Tue, 7 Dec 2004 12:18:47 +0000 (12:18 +0000)]
Patch from Jon Smirl from Nov. 2nd that makes older X servers behave well
with linux-core. Without this, they will fail on their second
invocation since the drm already has a busID assigned.
Submitted by: Jon Smirl
Thomas Hellstrom [Tue, 7 Dec 2004 12:09:11 +0000 (12:09 +0000)]
Fix up linux 2.4 series Makefiles for via_verifier.c
Thomas Hellstrom [Mon, 6 Dec 2004 11:19:23 +0000 (11:19 +0000)]
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.
Thomas Hellstrom [Fri, 3 Dec 2004 23:03:36 +0000 (23:03 +0000)]
Added 3D functionality to the via command verifier. Modified the via
ring-buffer code somewhat to workaround hardware problems. Bumped via
minor version number.
Dave Airlie [Fri, 3 Dec 2004 10:22:15 +0000 (10:22 +0000)]
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>
Thomas Hellstrom [Sat, 27 Nov 2004 22:55:31 +0000 (22:55 +0000)]
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.
Dave Airlie [Thu, 11 Nov 2004 11:09:11 +0000 (11:09 +0000)]
patch from bug 1803 - will try and push to kernel soon
Jon Smirl [Tue, 9 Nov 2004 16:58:02 +0000 (16:58 +0000)]
Fix more build problems on linux-core
Jon Smirl [Tue, 9 Nov 2004 03:36:06 +0000 (03:36 +0000)]
make linux-core build again
Roland Scheidegger [Tue, 9 Nov 2004 00:54:19 +0000 (00:54 +0000)]
add missing CHIP_RV350 to radeon_enums
Eric Anholt [Sun, 7 Nov 2004 04:11:15 +0000 (04:11 +0000)]
Refine the locking of the DRM. Most significant is covering the driver
ioctls with dev_lock, which is a major step toward being able to remove
Giant. Covers some new pieces (dev->unique*) in the core, and avoids
one call down into system internals with the drm lock held, which is
usually bad (FreeBSD LOR #23, #27).
Dave Airlie [Sun, 7 Nov 2004 02:19:58 +0000 (02:19 +0000)]
add some more r300 pci ids
Dave Airlie [Sun, 7 Nov 2004 02:15:11 +0000 (02:15 +0000)]
respect cc and cflags
Eric Anholt [Sun, 7 Nov 2004 00:30:15 +0000 (00:30 +0000)]
Don't link in files which no longer exist.
Eric Anholt [Sun, 7 Nov 2004 00:25:49 +0000 (00:25 +0000)]
Now that the memory debug code is gone, and all 3 BSDs have M_ZERO, stop
using drm_alloc/drm_free in the core and instead use plain malloc/free.
Eric Anholt [Sat, 6 Nov 2004 23:05:46 +0000 (23:05 +0000)]
Add the drm Makefile and update .cvsignores.
Eric Anholt [Sat, 6 Nov 2004 23:02:07 +0000 (23:02 +0000)]
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.
Eric Anholt [Sat, 6 Nov 2004 21:44:54 +0000 (21:44 +0000)]
Remove some core stuff that ended up being unnecessary.
Eric Anholt [Sat, 6 Nov 2004 21:18:49 +0000 (21:18 +0000)]
Get r128 basically working: Hook up the driver's dma ioctl, use the proper
offset into the driver ioctl array, and don't make the ctx bitmap
conditional.
Eric Anholt [Sat, 6 Nov 2004 20:27:19 +0000 (20:27 +0000)]
Move the lock/unlock ioctls to a more logical place, in drm_lock.c.
Eric Anholt [Sat, 6 Nov 2004 20:21:55 +0000 (20:21 +0000)]
Connect up r128_ioctls in driver config.
Jon Smirl [Sat, 6 Nov 2004 16:55:41 +0000 (16:55 +0000)]
Move radeon i2c include to top of file
Jon Smirl [Sat, 6 Nov 2004 16:51:36 +0000 (16:51 +0000)]
Export missing r128 ioctl symbol
Jon Smirl [Sat, 6 Nov 2004 16:41:24 +0000 (16:41 +0000)]
Fix Linux build. Why won't this complile? extern int const foo; static
struct drm_driver driver = { .var = foo }; error says foo is not
constant
Eric Anholt [Sat, 6 Nov 2004 11:50:08 +0000 (11:50 +0000)]
Hook the debug output up to a sysctl, so you can choose to enable at
runtime.
Eric Anholt [Sat, 6 Nov 2004 11:19:38 +0000 (11:19 +0000)]
Add file missed in last commit: Commit first pieces of port to OpenBSD,
done by Martin Lexa (martin at martinlexa dot cz). Now that we've got
porting for all three major BSDs (and the fourth being very similar to
FreeBSD), move the mostly-duplication drm_os_* files into drmP.h.
Remove some cruft from linux heritage and from pieces of the DRM that
have since been removed.
Note that things are still not quite working for even FreeBSD, but these
are first steps at cleanup, and just a WIP checkpoint.
Eric Anholt [Sat, 6 Nov 2004 11:16:26 +0000 (11:16 +0000)]
Commit first pieces of port to OpenBSD, done by Martin Lexa (martin at
martinlexa dot cz). Now that we've got porting for all three major BSDs
(and the fourth being very similar to FreeBSD), move the
mostly-duplication drm_os_* files into drmP.h. Remove some cruft from
linux heritage and from pieces of the DRM that have since been removed.
Note that things are still not quite working for even FreeBSD, but these
are first steps at cleanup, and just a WIP checkpoint.
Eric Anholt [Sat, 6 Nov 2004 02:00:04 +0000 (02:00 +0000)]
Remove the vestiges of the memory-debug code.
Eric Anholt [Sat, 6 Nov 2004 01:41:47 +0000 (01:41 +0000)]
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.
Jon Smirl [Fri, 5 Nov 2004 17:29:14 +0000 (17:29 +0000)]
Move ati_pcigart shared routines into drm-core module
Thomas Hellstrom [Wed, 3 Nov 2004 13:37:37 +0000 (13:37 +0000)]
Fixed bug in via_dma.c. The code didn't check that the lock was held by the
caller. Just that it was held.
Thomas Hellstrom [Mon, 1 Nov 2004 20:48:49 +0000 (20:48 +0000)]
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
Keith Whitwell [Mon, 1 Nov 2004 10:52:18 +0000 (10:52 +0000)]
correct historic mis-attribution of copyright
Felix Kuehling [Sun, 31 Oct 2004 15:16:44 +0000 (15:16 +0000)]
Allow drivers to override reclaim_buffers in an OS-independent way by
passing drm_device_t* as first parameter, like in the BSD version.
Thomas Hellstrom [Sat, 30 Oct 2004 13:01:48 +0000 (13:01 +0000)]
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.
Jon Smirl [Fri, 29 Oct 2004 17:09:54 +0000 (17:09 +0000)]
Switch SPIN_LOCK_UNLOCKED to spin_lock_init()
Jon Smirl [Fri, 29 Oct 2004 14:38:07 +0000 (14:38 +0000)]
Add include of moduleparam.h
Jon Smirl [Thu, 28 Oct 2004 15:52:31 +0000 (15:52 +0000)]
Break poll() to make it match the Xserver's broken expectations.
Dave Airlie [Thu, 28 Oct 2004 09:50:39 +0000 (09:50 +0000)]
fix for 2.4 build
Jon Smirl [Sat, 23 Oct 2004 18:12:34 +0000 (18:12 +0000)]
Round 2 of getting rid of inter_module_get()
Jon Smirl [Sat, 23 Oct 2004 14:43:06 +0000 (14:43 +0000)]
Revert symbol_get() changes from drm_drv
Dave Airlie [Sat, 23 Oct 2004 14:00:53 +0000 (14:00 +0000)]
fix inter module put/get
Dave Airlie [Sat, 23 Oct 2004 07:02:29 +0000 (07:02 +0000)]
actually 2.6.10 introduced pfn range so it should work now..
Dave Airlie [Sat, 23 Oct 2004 06:59:15 +0000 (06:59 +0000)]
fix pfn vs page for older kernels (2.6.9-rc kernels many not work..)
Dave Airlie [Sat, 23 Oct 2004 06:25:56 +0000 (06:25 +0000)]
Apply radeon r300 microcode patch to non-core
Jon Smirl [Sat, 23 Oct 2004 04:21:27 +0000 (04:21 +0000)]
Prepare to eliminate inter_module_get("agp")
Jon Smirl [Fri, 22 Oct 2004 16:03:21 +0000 (16:03 +0000)]
Bring in patch from kernel for remap_pfn_range
Jon Smirl [Thu, 21 Oct 2004 16:58:28 +0000 (16:58 +0000)]
Fix up the radeon i2c error handing
Jon Smirl [Wed, 20 Oct 2004 16:23:42 +0000 (16:23 +0000)]
Don't release an i2c channel that has not initialized correctly
Jon Smirl [Wed, 20 Oct 2004 05:11:49 +0000 (05:11 +0000)]
Switch linux-core from using dev->pdev->driver->name to
dev->driver->pci_driver.name. This avoids the stealth mode case where
pdev is pointing to the wrong driver or no driver.
Jon Smirl [Wed, 20 Oct 2004 04:41:38 +0000 (04:41 +0000)]
Fix dd vs di version typo in drm_setversion
Jon Smirl [Tue, 19 Oct 2004 18:18:02 +0000 (18:18 +0000)]
Add a protective check against a possible buffer overflow
Jon Smirl [Tue, 19 Oct 2004 16:30:02 +0000 (16:30 +0000)]
Fix missing I2C busses to be non-fatal error.
Jon Smirl [Tue, 19 Oct 2004 02:50:14 +0000 (02:50 +0000)]
drm-core, Clean up bug error path on stealth mode exit
Jose Fonseca [Mon, 18 Oct 2004 14:16:41 +0000 (14:16 +0000)]
Update Doxygen configuration & comments.
Ville Syrjala [Sat, 16 Oct 2004 11:21:56 +0000 (11:21 +0000)]
Fixed off by one errors in clipping.
Ville Syrjala [Sat, 16 Oct 2004 10:54:58 +0000 (10:54 +0000)]
Fixed bad formatting.
Jon Smirl [Fri, 15 Oct 2004 20:37:01 +0000 (20:37 +0000)]
Remove drm_init.c
Jon Smirl [Fri, 15 Oct 2004 20:36:15 +0000 (20:36 +0000)]
Move drm_cpu_valid out of drm_init. drm_init is empty now.
Jon Smirl [Fri, 15 Oct 2004 02:59:35 +0000 (02:59 +0000)]
Switch linux-core over to 2.6 parameter model to enable debug use
drm_debug=1
Jon Smirl [Wed, 13 Oct 2004 16:40:53 +0000 (16:40 +0000)]
Add a poll function that alternates between zero and normal poll return to
bring DRM into conformance with normal poll().
Thomas Hellstrom [Tue, 12 Oct 2004 18:46:26 +0000 (18:46 +0000)]
Via updates. Fixed unlikely but possible uint32_t overflow in ring-buffer
code. bumped patchlevel.
Jon Smirl [Tue, 12 Oct 2004 03:59:17 +0000 (03:59 +0000)]
Breakout heads into their own data structures.
Jon Smirl [Sun, 10 Oct 2004 22:54:55 +0000 (22:54 +0000)]
Rename fn_tbl to driver. Core driver now uses pci_driver name which
reflects the personality name.
Dave Airlie [Sun, 10 Oct 2004 05:52:19 +0000 (05:52 +0000)]
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>
Jon Smirl [Sun, 10 Oct 2004 02:49:06 +0000 (02:49 +0000)]
Forgot to add the new Makefile
Jon Smirl [Sun, 10 Oct 2004 00:09:31 +0000 (00:09 +0000)]
Make the test programs build
Dave Airlie [Sat, 9 Oct 2004 12:42:52 +0000 (12:42 +0000)]
cleanup VIA driver to look a bit like others before kernel merge
Dave Airlie [Sat, 9 Oct 2004 11:16:20 +0000 (11:16 +0000)]
fix up whitespacing in Kconfig
Dave Airlie [Sat, 9 Oct 2004 11:12:24 +0000 (11:12 +0000)]
Lindent the via stuff so I can include it in kernel
Dave Airlie [Sat, 9 Oct 2004 10:58:19 +0000 (10:58 +0000)]
remove unused dma remnants that were gamma only - these could cause an oops
on via
Thomas Hellstrom [Fri, 8 Oct 2004 21:11:02 +0000 (21:11 +0000)]
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.
Jon Smirl [Fri, 8 Oct 2004 14:31:25 +0000 (14:31 +0000)]
Fix refcount bug in stealth mode
Jon Smirl [Thu, 7 Oct 2004 00:40:16 +0000 (00:40 +0000)]
Fix drm_exit to allow for DRM(global) being deleted when framebuffer is
loaded.
Jon Smirl [Wed, 6 Oct 2004 16:27:55 +0000 (16:27 +0000)]
Revert back to drm_order() instead of using kernel get_order(). The
functions are not identical.
Dave Airlie [Tue, 5 Oct 2004 12:12:01 +0000 (12:12 +0000)]
Patch for Kconfig for making i830/i915 not build together
Jon Smirl [Tue, 5 Oct 2004 02:58:14 +0000 (02:58 +0000)]
enable the device in the right order, remove __devinit from drm_int
Jon Smirl [Sat, 2 Oct 2004 19:11:30 +0000 (19:11 +0000)]
janitor-list_for_each-drivers-char-drm-radeon_memc.patch from mm kernel
Jon Smirl [Thu, 30 Sep 2004 23:47:45 +0000 (23:47 +0000)]
Make the debug memory functions compile for the core model.
Jon Smirl [Thu, 30 Sep 2004 21:27:59 +0000 (21:27 +0000)]
Remove DRM() macros from core ffb driver. DaveA says he'll make it compile
someday.
Jon Smirl [Thu, 30 Sep 2004 21:12:10 +0000 (21:12 +0000)]
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.
Jon Smirl [Thu, 30 Sep 2004 21:06:53 +0000 (21:06 +0000)]
savage.h not used in core builds
Jon Smirl [Thu, 30 Sep 2004 20:46:59 +0000 (20:46 +0000)]
core ffb.h is not used anymore
Jon Smirl [Thu, 30 Sep 2004 20:25:13 +0000 (20:25 +0000)]
Remove unused drm_module.h
Jon Smirl [Thu, 30 Sep 2004 19:26:35 +0000 (19:26 +0000)]
Move things around to reduce public symbols and even out files. Switch to
get_order from drm_order.
Jon Smirl [Thu, 30 Sep 2004 18:13:33 +0000 (18:13 +0000)]
Make fops per driver instead of global, remove default flush, poll, read
functions
Jon Smirl [Tue, 28 Sep 2004 22:25:06 +0000 (22:25 +0000)]
Getting the AGP module is a global resource. Make sure a dual PCI/AGP
driver doesn't release it on unload since an AGP driver may also be
loaded.
Jon Smirl [Mon, 27 Sep 2004 20:14:31 +0000 (20:14 +0000)]
Fix the shared directory I accidentally stomped on
Jon Smirl [Mon, 27 Sep 2004 19:53:51 +0000 (19:53 +0000)]
core needs three new files
Jon Smirl [Mon, 27 Sep 2004 19:51:38 +0000 (19:51 +0000)]
First check in for DRM that splits core from personality modules
Jon Smirl [Mon, 27 Sep 2004 15:42:48 +0000 (15:42 +0000)]
Flip the 2.4 check so that it looks for 2.6 instead. This will allow builds
where we can't determine the version through.
Jon Smirl [Fri, 24 Sep 2004 04:31:25 +0000 (04:31 +0000)]
README with hints on how to make a 2.6 specific version of a 2.4/2.6 shared
file
Jon Smirl [Fri, 24 Sep 2004 04:21:21 +0000 (04:21 +0000)]
Makefile reminder to build in 2.6 when on 2.6
Jon Smirl [Fri, 24 Sep 2004 03:12:17 +0000 (03:12 +0000)]
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.
Jon Smirl [Thu, 23 Sep 2004 17:22:27 +0000 (17:22 +0000)]
Remove 2.6 code that allow DRM major device number to be shared. We can add
it back later if needed. Checked DRM on both 2.4 and
2.6 to ensure that it builds and runs.
Jon Smirl [Thu, 23 Sep 2004 05:40:05 +0000 (05:40 +0000)]
Add new sysfs support files
Jon Smirl [Thu, 23 Sep 2004 05:39:15 +0000 (05:39 +0000)]
1) switches from class_sysfs to drm sysfs implementation to allow
customization
2) compiles again on 2.4, but doesn't work
Felix Kuehling [Wed, 22 Sep 2004 22:51:18 +0000 (22:51 +0000)]
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.