summaryrefslogtreecommitdiff
path: root/linux
AgeCommit message (Collapse)AuthorFilesLines
2004-03-07Bring mach64 option back into Kconfig from mach64-0-0-6-branchLeif Delgass1-0/+11
2004-02-21add prototypes for pci functionsDave Airlie1-0/+4
2004-02-09add mach64 DRM to new branchDave Airlie4-2/+239
2004-01-11Adapt to nopage() prototype change in Linux 2.6.1.Michel Daenzer2-55/+114
Reviewed by: Arjan van de Ven <arjanv@redhat.com>, additional feedback from William Lee Irwin III and Linus Torvalds.
2003-12-16Don't ioremap the framebuffer area. The ioremapped area wasn't used bydriinterface-0-0-2-branchEric Anholt1-1/+3
anything, and took up valuable KVA. While I'm in the area, clean up BSD MTRR stuff some more. Suggested by: jonsmirl
2003-12-08Add i865 pci idtrunk-20031209newmesa-0-0-1-20031209-mergeKeith Whitwell1-0/+1
2003-11-06Return EBUSY when attempting to addmap a DRM_SHM area with a lock in it ifEric Anholt1-0/+6
dev->lock.hw_lock is already set. This fixes the case of two X Servers running on the same head on different VTs with interface 1.1, by making the 2nd head fail to inizialize like before.
2003-11-05Changes to DRM(irq_install)...... wrap dev->dma usage with __HAVE_DMA inAlan Hourihane1-0/+4
irq handler, fixes kernel ooops. comment out some setting of flags that are done in DRM(setup) (not sure why both of the above is done in the irq handler)
2003-11-05- Tie the DRM to a specific device: setunique no longer succeeds when givenEric Anholt7-162/+122
a busid that doesn't correspond to the device the DRM is attached to. This is a breaking of backwards-compatibility only for the multiple-DRI-head case with X Servers that don't use interface 1.1. - Move irq_busid to drm_irq.h and make it only return the IRQ for the current device. Retains compatibility with previous X Servers, cleans up unnecessary code. This means no irq_busid on !__HAVE_IRQ, but can be changed if necessary. - Bump interface version to 1.2. This version when set signifies that the control ioctl should ignore the irq number passed in and enable the interrupt handler for the attached device. Otherwise it errors out when the passed-in irq is not equal to the device's. - Store the highest version the interface has been set to in the device. - Fix a recursion on DRM_LOCK in irq_uninstall on FreeBSD. This leaves irq_uninstall being done without the lock in some cases, but it was racey anyways.
2003-11-05Repo-copy linux/drm/kernel/drm.h to shared/drm/kernel/drm.h and use it onEric Anholt2-669/+2
both Linux and *BSD.
2003-11-04Memory layout transition:Michel Daenzer4-0/+12
the 2D driver initializes MC_FB_LOCATION and related registers sanely the DRM deduces the layout from these registers clients use the new SETPARAM ioctl to tell the DRM where they think the framebuffer is located in the card's address space the DRM uses all this information to check client state and fix it up if necessary This is a prerequisite for things like direct rendering with IGP chips and video capturing.
2003-11-03Add i852/i855 PCI ID. Also fix whitespace in the other ID definitions.savage-2-0-0-forkEric Anholt1-2/+3
2003-10-24Switch pci enumeration call to work on both 2.4 and 2.6 pci_for_each_dev isJon Smirl1-2/+2
not supported on 2.6
2003-10-23Move to "old-style" probing as documented in linux/Documentation/pci.txt.Eric Anholt1-20/+10
This should resolve the probe problems with radeon framebuffer due to pci_driver attachment being exclusive.
2003-10-23Missed the sis.h header in Makefile.linux in the move to shared/.Eric Anholt1-2/+2
2003-10-23- Introduce a new ioctl, DRM_IOCTL_SET_VERSION. This ioctl allows theEric Anholt4-1/+88
server or client to notify the DRM that it expects a certain version of the device dependent or device independent interface. If the major doesn't match or minor is too large, EINVAL is returned. A major of -1 means that the requestor doesn't care about that portion of the interface. The ioctl returns the actual versions in the same struct. - Introduce DRM DI interface version 1.1. If the server requests version 1.1, then the DRM sets the unique itself according to the busid of the device it probed, which may then be accessed as normal using getunique. - Request version 1.1 in libdrm's drmOpenByBusID, allowing the X Server to request based on a BusID. Introduce a wrapper for DRM_IOCTL_SET_VERSION and bump libdrm minor version. - Pass the busid in DRIScreenInit if libdrm can handle both a busid and name. This allows drmOpenByBusID to be used to find the DRM instead of just the driver name, which allows us in the future to tie a DRM more strongly to the device it probed to. Introduce a function DRICreatePCIBusID which creates a busid in the form pci:oooo:bb:dd.f similar to linux's pci_name() function. This matches the format used by the DRM in version 1.1. libdrm knows how to match both this format and the old PCI:b:d:f format. - Use the new DRICreatePCIBusID function in the *_dri.c to request the new, more exact busid format.
2003-10-22- Add DRM_GET_PRIV_WITH_RETURN macro. This can be used in shared code toEric Anholt1-0/+2
get the drm_file_t * based on the filp passed in ioctl handlers. - Use this macro on BSD for simplification and improve its error reporting. Make failure to find the drm_file_t * print as an error, not debug. This failure may be part of the problem with KDE. - Make debug and error print macros include the pid on BSD.
2003-10-19Fix probing on 2.5+ kernels, which require that drivers have .id_table set.Eric Anholt1-1/+5
We use PCI_ANY_ID to ask that our probe is called for every available device. Submitted by: jonsmirl
2003-10-17- Move IRQ functions from drm_dma.h to new drm_irq.h and disentangle themEric Anholt18-331/+380
from __HAVE_DMA. This will be useful for adding vblank sync support to sis and tdfx. Rename dma_service to irq_handler, which is more accurately what it is. - Fix the #if _HAVE_DMA_IRQ in radeon, r128, mga, i810, i830, gamma to have the right number of underscores. This may have been a problem in the case that the server died without doing its DRM_IOCTL_CONTROL to uninit.
2003-10-17- Converted Linux drivers to initialize DRM instances based on PCI IDs, notEric Anholt8-208/+127
just a single instance. Moved the PCI ID lists from <card>_drv.c in BSD to <card>.h. The PCI ID lists include a driver private field, which may be used by drivers for chip family or other information. Based on work by jonsmirl. - Make tdfx_drv.c and tdfx.h match other drivers. - Fixed up linking of sis shared files. Tested with Radeon and SiS on Linux and FreeBSD, including a Linux setup with 2 SiS cards in a machine, but only one head being used (with DRI)
2003-09-28Fix typo in SiS help message (and testing cvs commit toLeif Delgass1-1/+1
dri.freedesktop.org)
2003-09-25Whitespace cleanup (spaces before tabs or instead of tabs).Eric Anholt1-241/+241
2003-09-25Fix Kconfig for SiS DRM now that it doesn't require sisfb.Eric Anholt1-2/+2
Submitted by: Linus Torvalds <torvalds@osdl.org>
2003-09-12linux drm fixesAlan Hourihane4-5/+12
2003-09-12resolve merge conflictsAlan Hourihane1-1/+1
2003-08-29Port the SiS DRM to FreeBSD. This includes the ability for the DRM toEric Anholt7-1051/+1
allocate framebuffer memory without sisfb, and a new ioctl to be used by the X Server which tells the DRM what region of framebuffer memory to allocate from. Also fixes a possibility to panic the kernel I believe. Tested on linux with sisfb and FreeBSD (without sisfb) with new DRI only.
2003-08-29Add DRM(calloc), which is convenient, used by the new sis code, and takesEric Anholt3-0/+24
advantage of M_ZERO on BSDs.
2003-08-28Remove superfluous TLB flushMichel Daenzer1-7/+1
2003-08-15Merge from 2.6 kernel (Linus Torvalds)Michel Daenzer5-33/+56
2003-08-15DA: loads of whitespace .. some from Linus, some from meDave Airlie1-43/+48
2003-08-13DA: patch from Matthew upgraded to latest DRI head to solve issue with i810Dave Airlie3-9/+100
compatibility
2003-08-11DA: code cleanups for i810_dma.c from 2.4 kernelDave Airlie1-15/+31
2003-08-07build fix for kernels >= 2.6Michel Daenzer1-1/+1
2003-08-06Fix maplist entries being used after they were freed; thanks to BenjaminMichel Daenzer1-39/+37
Herrenschmidt for tracking this down
2003-07-29IRQ code cleanup suggested by Linus TorvaldsMichel Daenzer4-18/+14
i830 build fix
2003-07-25Compile fixes for recent 2.5/2.6 Linux kernels. I hope this doesn't breakMichel Daenzer7-39/+60
the i830 driver or the BSDs. :)
2003-07-25Fail in DRM(agp_acquire) if the AGP aperture can't be used, such that the XMichel Daenzer1-0/+4
server falls back to PCI GART or disables the DRI gracefully
2003-07-11Restore __HAVE_KERNEL_CTX_SWITCH, required for the sparc drm module in theKeith Whitwell1-1/+42
kernel tree. Added comments to that effect.
2003-07-09DA: fix for bug 484 in Bugzilla, originally from me, reworked by DavidDave Airlie1-1/+1
Dawes to avoid backword incompatibilities...
2003-07-08Removed unused __HAVE_KERNEL_CTX_SWITCH, whatever that was.Keith Whitwell1-36/+3
2003-07-04Don't need to include linux/wrapper.h - we only use Set/ClearPageReservedLeif Delgass1-1/+0
from linux/mm.h now and wrapper.h has been removed in 2.5.69 and later.
2003-06-19Revert the janitorial - that works is now on the new branchJose Fonseca16-597/+325
newdrm-0-0-1-branch.
2003-06-14Move the linux AGP includes into drm_agp.h and only define the AGP dataJose Fonseca2-10/+17
structures if AGP support is enabled in the kernel (__REALLY_HAVE_AGP). This fixes the compile errors on kernels without AGP support.
2003-06-07Verify 'drm_agp' is not NULL for all its wrappers - this causes no overheadJose Fonseca1-8/+12
and must be done if in future a driver tries to talk to the AGP directly from kernelspace instead of userspace, and the AGP is not present.
2003-06-07Check that the AGPGART "drm_agp" symbol pointer is valid beforeJose Fonseca2-2/+6
initializing the DRM device - this was causing a kernel oops when the AGPGART module wasn't loaded.
2003-06-07fix pitch compile errorDave Airlie1-1/+1
2003-06-05add page flipping support to the DRM, up version number to 1.3.0...Dave Airlie4-14/+148
2003-06-03Added the Doxygen configuration file. Minor documentation fixes.Jose Fonseca4-13/+1073
2003-06-03Split declarations/definitions in drm_scatter.h into drm_sg.h/drm_sg_tmp.hJose Fonseca16-311/+565
respectively. Splited the work out of the ioctls and renamed (with the _ioctl prefix). Added some more documentation. Did the same for drm_sgpsupport.h.
2003-05-28Restore change to _DRM_VBLANK_SIGNAL from rev. 1.41, which was revertedLeif Delgass1-1/+1
with the documentation merge.