summaryrefslogtreecommitdiffstats
path: root/sys/dev/drm
Commit message (Collapse)AuthorAgeFilesLines
* Merge DRM CVS as of 2005-12-02, adding i915 DRM support thanks to Alexey Popov,anholt2005-12-033-5/+11
| | | | and a new r300 PCI ID.
* Make cleaner diffs by munging the $FreeBSD$s from the FreeBSD CVS sources backanholt2005-12-031-1/+15
| | | | into the new sources.
* Restore the enabling of debugging by default by the DRM_DEBUG kernel option.anholt2005-12-021-0/+4
| | | | | | | It remains controlled by hw.dri.*.debug no matter what. PR: kern/85479 Submitted by: Oliver Fromme <olli@secnetix.de>
* Update DRM to CVS snapshot as of 2005-11-28. Notable changes:anholt2005-11-2873-1722/+3486
| | | | | | | | | | | | | - S3 Savage driver ported. - Added support for ATI_fragment_shader registers for r200. - Improved r300 support, needed for latest r300 DRI driver. - (possibly) r300 PCIE support, needs X.Org server from CVS. - Added support for PCI Matrox cards. - Software fallbacks fixed for Rage 128, which used to render badly or hang. - Some issues reported by WITNESS are fixed. - i915 module Makefile added, as the driver may now be working, but is untested. - Added scripts for copying and preprocessing DRM CVS for inclusion in the kernel. Thanks to Daniel Stone for getting me started on that.
* Fix a buffer aging problem in new r300 code that could lead to hangs with someanholt2005-08-011-3/+1
| | | | | | apps. Obtained from: DRM CVS
* Add the latest r300 code from r300.sf.net. This is based on the patch suppliedanholt2005-07-2011-43/+2454
| | | | | | by Vladimir Dergachev for inclusion in DRM CVS, with minor modifications for FreeBSD CVS and the appropriate license from Nicolai Haehnle on r300_reg.h. Fixes hangs when using r300.sf.net userland, tested on a Radeon 9600 on amd64.
* Disable the drm_initmap calls in radeon_cp.c, due to them resulting in improperanholt2005-06-281-0/+6
| | | | | | | | | | handling of pci resources, and mapping framebuffer leading to panics on X startup. The proper solution involves use of bus_alloc_resource without RF_ACTIVE, but this code is being rewritten in DRM CVS currently, and disabling for now doesn't remove any features, so take the easy route. PR: kern/80718 Approved by: re (scottl)
* Mark the permanent map for radeon registers read-only. Failure to set this flaganholt2005-06-241-1/+2
| | | | | | | | | allowed writing to the registers by any user that can open the DRI device, and therefore ability to initiate DMA. This came in with the merge from DRI CVS on 2005-04-15. Approved by: re (scottl) Obtained from: DRM CVS
* Fix a panic on X startup for drivers that don't init maps themselves by storinganholt2005-04-241-1/+1
| | | | | | the return value of drm_ioremap in the right place again. Submitted by: tegge
* Update to DRM CVS as of 2005-04-12, bringing many changes:anholt2005-04-1676-16792/+25843
| | | | | | | | | | | | | | | | | | | | - Split core DRM routines back into their own module, rather than using the nasty templated system like before. - Development-class R300 support in radeon driver (requires userland pieces, of course). - Mach64 driver (haven't tested in a while -- my mach64s no longer fit in the testbox). Covers Rage Pros, Rage Mobility P/M, Rage XL, and some others. - i915 driver files, which just need to get drm_drv.c fixed to allow attachment to the drmsub device. Covers i830 through i915 integrated graphics. - savage driver files, which should require minimal changes to work. Covers the Savage3D, Savage IX/MX, Savage 4, ProSavage. - Support for color and texture tiling and HyperZ features of Radeon. Thanks to: scottl (much p4 handholding) Jung-uk Kim (helpful prodding) PR: [1] kern/76879, [2] kern/72548 Submitted by: [1] Alex, lesha at intercaf dot ru [2] Shaun Jurrens, shaun at shamz dot net
* - Change the vm_mmap() function to accept an objtype_t parameter specifyingjhb2005-04-011-5/+1
| | | | | | | | | | | | the type of object represented by the handle argument. - Allow vm_mmap() to map device memory via cdev objects in addition to vnodes and anonymous memory. Note that mmaping a cdev directly does not currently perform any MAC checks like mapping a vnode does. - Unbreak the DRM getbufs ioctl by having it call vm_mmap() directly on the cdev the ioctl is acting on rather than trying to find a suitable vnode to map from. Reviewed by: alc, arch@
* move ptr deref's to after null checkssam2005-02-261-3/+6
| | | | Noticed by: Coverity Prevent analysis tool
* Neuter DRM(mapbufs) until somebody finds time to try to fix it.phk2005-02-221-0/+4
| | | | | | It is _never_ OK to find a vnode from a struct cdev because you have no way of telling if you get the right one. You might be in jail or chroot for instance.
* Fix typo from previous commit.scottl2005-01-071-0/+1
|
* Unbreak the tinderbox, make this compile.maxim2005-01-061-1/+1
|
* Start each of the license/copyright comments with /*-, minor shuffle of linesimp2005-01-0655-103/+103
|
* Use the SYSCTL_ADD_OID macro, instead of directly calling sysctl_add_oid().ssouhlal2004-12-151-1/+1
| | | | Approved by: anholt, grehan (mentor)
* Specifically use the 32-bit version of fuword/suword since that's whatobrien2004-12-021-7/+6
| | | | | | | we really want vs. the size changing 'long' (i386 vs. AMD64). This fixes the problem with DRM with Radeon's on AMD64. Submitted by: Jung-uk Kim <jkim@niksun.com>
* Fixed the module name (macros don't work here).ru2004-08-291-1/+1
|
* Now that mem(4) is a kernel module, we need to add a dependency onmux2004-08-051-0/+1
| | | | | | | it in drm(4) for mem_range_attr_set(). This fixes loading a DRM driver as a module. Reviewed by: anholt
* Do the dreaded s/dev_t/struct cdev */phk2004-06-165-11/+11
| | | | Bump __FreeBSD_version accordingly.
* Merge from DRI CVS as of 2004-05-26. Most of the meat is new PCI IDs and a newanholt2004-06-1121-249/+609
| | | | packet for Radeon.
* Convert callers to the new bus_alloc_resource_any(9) API.njl2004-03-171-2/+2
| | | | | Submitted by: Mark Santcroos <marks@ripe.net> Reviewed by: imp, dfr, bde
* Prefer uintptr_t to intptr_t.obrien2004-03-032-6/+6
|
* Use a long as the opaque type so that it matches the size of a pointerobrien2004-03-031-1/+1
| | | | on both 32-bit and 64-bit platforms.
* Use a long as the opaque type so that it matches the size of a pointerobrien2004-03-032-5/+5
| | | | on both 32-bit and 64-bit platforms.
* Add memory barrier routines for AMD64.obrien2004-03-031-1/+7
|
* Cast thru intptr_t on the way to void* for success on 64-bit platforms.obrien2004-03-032-6/+6
|
* Limit the amount of memory userspace processes can cause the kernel torwatson2004-02-231-0/+17
| | | | | | | allocate via DRI on r128 devices. Obtained from: Thomas Biege <thomas@suse.de> Reviewed by: scottl
* Device megapatch 4/6:phk2004-02-211-1/+2
| | | | | | | | Introduce d_version field in struct cdevsw, this must always be initialized to D_VERSION. Flip sense of D_NOGIANT flag to D_NEEDGIANT, this involves removing four D_NOGIANT flags and adding 145 D_NEEDGIANT flags.
* Device megapatch 1/6:phk2004-02-212-2/+0
| | | | | | | Free approx 86 major numbers with a mostly automatically generated patch. A number of strategic drivers have been left behind by caution, and a few because they still (ab)use their major number.
* This is not a D_TTY driver.phk2004-02-141-1/+1
|
* Merge from DRI CVS. No longer maps the framebuffer into KVA on radeon, r128,anholt2004-01-0612-66/+77
| | | | and mga. MTRR code cleanups. Includes new Radeon and Rage 128 PCI IDs.
* Fix a few more places where NULL was used instead of 0.se2003-12-232-3/+3
|
* Update from DRI CVS. Includes locking fixes (including PR 59202), changes foranholt2003-11-1215-314/+833
| | | | | | Radeon IGP support (still lacking PCI IDs), and DRM interface 1.2 updates which include finally tying the DRM instances to specific devices rather than relying on the X Server.
* Change the DRM_ERROR about authenticator not found back to DRM_DEBUG. It'sanholt2003-11-032-2/+2
| | | | noisier than I expected, and I don't have the time to actually get it fixed.
* Don't try to use dev->dma_lock unless dma is initialized (dev->dma != NULL)anholt2003-10-241-2/+1
| | | | | | in bufs_info sysctl handler. dev->dma and dev->dma_lock existence are protected by DRM_LOCK(). Fixes panic on sysctl hw.dri when the device is uninitialied (when you aren't in X).
* Update to latest from DRI CVS. Primary new feature is mostly-complete smpnganholt2003-10-2436-1217/+1320
| | | | | | | | locking, and the apparently unnecessary locking for -stable has been removed. This may fix issues with missed interrupts since April, which manifested themselves as slowdowns or hangs in radeon, in particular. Many cleanups also took place. In the shared code, there are improvements to r128 driver stability.
* Merge from DRI CVS. Includes newly ported SiS 300/305/540/630/730 driver andanholt2003-09-0917-71/+1261
| | | | | | updates to allow system memory to be used for textures on PCI Radeons. Sponsored by: LinuxFund
* Comment out a couple of __inline__s until we can get inlines to be actuallyanholt2003-08-241-2/+2
| | | | respected or at least shut the warning up.
* Use __FBSDID().obrien2003-08-242-2/+6
| | | | Also some minor style cleanups.
* Prefer new location of pci include files (which have only been in theimp2003-08-221-1/+2
| | | | | tree for two or more years now), except in a few places where there's code to be compatible with older versions of FreeBSD.
* Update DRM from DRI CVS as of today. Notable changes include Radeonanholt2003-08-1935-683/+1061
| | | | | suspend/resume support and Rage 128 pageflipping support (both of which require XFree86 from CVS), along with miscellaneous cleanups.
* Do not define memset() to bzero(). We have a memset().phk2003-05-311-2/+0
| | | | Found by: FlexeLint
* Merge from DRI CVS: Disable MTRRs on FreeBSD-stable to work around hangs withanholt2003-04-261-10/+17
| | | | | SMP machines. and use i386 asm for atomic_cmpset_int on -stable. This is in preparation for MFCing the DRM.
* Update the DRM to the latest from DRI CVS. Includes some bugfixes and removalanholt2003-04-2531-2552/+437
| | | | | | of the infrastructure for the gamma driver which was removed a while back. The DRM_LINUX option is removed because the handler is now provided by the linux compat code itself.
* - Add vm_paddr_t, a physical address type. This is required for systemsjake2003-03-251-2/+2
| | | | | | | | | | | | | | | where physical addresses larger than virtual addresses, such as i386s with PAE. - Use this to represent physical addresses in the MI vm system and in the i386 pmap code. This also changes the paddr parameter to d_mmap_t. - Fix printf formats to handle physical addresses >4G in the i386 memory detection code, and due to kvtop returning vm_paddr_t instead of u_long. Note that this is a name change only; vm_paddr_t is still the same as vm_offset_t on all currently supported platforms. Sponsored by: DARPA, Network Associates Laboratories Discussed with: re, phk (cdevsw change)
* Use td->td_ucred instead of td->td_proc->p_ucred.jhb2003-03-201-2/+2
|
* Update Radeon PCI IDs and naming from pciids.sf.net.anholt2003-03-111-26/+28
|
* Update the DRM to latest from DRI CVS. This is approximately the versionanholt2003-03-0951-5821/+6113
| | | | | | | included in XFree86 4.3, but includes some fixes. Notable changes include Radeon 8500-9100 support, PCI Radeon/Rage 128 support, transform & lighting support for Radeons, and vblank syncing support for r128, radeon, and mga. The gamma driver was removed due to lack of any users.
OpenPOWER on IntegriCloud