summaryrefslogtreecommitdiff
path: root/bsd-core/drm_os_freebsd.h
AgeCommit message (Collapse)Author
2004-05-09Add mach64 DRM module for BSD (untested, but compiles).Eric Anholt
2003-11-12Fix a locking nit, and add asserts in some things that should be calledEric Anholt
with locks held.
2003-11-05Args for the BSD DRM_PUT_USER_UNCHECKED were swapped.Eric Anholt
2003-11-04Memory layout transition:Michel Daenzer
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-10-27Add a DRM_PUT_USER_UNCHECKED, which will be used by an upcoming radeonEric Anholt
change.
2003-10-22- Add DRM_GET_PRIV_WITH_RETURN macro. This can be used in shared code toEric Anholt
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-20Fix the possibility of sleeping with locks held in sysctls by copying theEric Anholt
data into temporary variables with the lock held then outputting to sysctls with the lock released. Rearranged a little extra code to aid this. Note that drm_memory_debug.h hasn't had this fix applied, but I consider that code to be just about dead anyway.
2003-10-20Clean up BSD MTRR handling. The NetBSD code is untested, but it's my bestEric Anholt
shot.
2003-10-19- SMPng lock the DRM. This is only partial -- there are a few code pathsEric Anholt
used by root (the X Server) which are not locked. However, it should deal with lost-IRQ issues on -current which I think people have been experiencing but I am unable to reproduce (though I understand why they would occur, because of a bug of mine). Note that most of the locking (DRM_LOCK()/UNLOCK()) is all covered by Giant still, so it doesn't matter yet. - Remove locking on FreeBSD-stable and NetBSD. These are covered by the fact that there is no reentrancy of the kernel except by interrupts, which are locked using spldrm()/splx() instead.
2003-10-17- Converted Linux drivers to initialize DRM instances based on PCI IDs, notEric Anholt
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-10-03Stylistic preparation for SMPng locking work: DRM_LOCK/DRM_UNLOCK have sideEric Anholt
effects, so make them look like functions (add parenthesis).
2003-10-02Wrap sys/endian.h usage with __FreeBSD_version >= 480000.Eric Anholt
Obtained from: i865-agp-0-1-branch
2003-10-02MTRR issue with SMP and -stable seems to be resolved. Re-enable MTRRs onEric Anholt
4.x
2003-09-09Use spldrm/splx around tsleep() in DRM_WAIT_ONKeith Whitwell
2003-09-07Fix for older -stable.Eric Anholt
Obtained from: FreeBSD CVS
2003-08-29This PCI header has been living in dev/pci/ for a while now.Eric Anholt
2003-08-19- Remove $FreeBSD$ tags as they weren't too useful and merges are now beingEric Anholt
done through perforce. - Add copyright headers to drm_os_*bsd.h, still need to research the other copyright-less files better.
2003-08-12Merge from FreeBSD r1.11: We have memset in the kernel, no need to defineEric Anholt
it to bzero (which it was always used for).
2003-07-29IRQ code cleanup suggested by Linus TorvaldsMichel Daenzer
i830 build fix
2003-07-26Fix FreeBSD build after IRQ changes.Eric Anholt
2003-07-25Compile fixes for recent 2.5/2.6 Linux kernels. I hope this doesn't breakMichel Daenzer
the i830 driver or the BSDs. :)
2003-04-27Use real endian conversion functions.Eric Anholt
2003-04-26Fix formatting of hw.dri sysctl.Eric Anholt
2003-04-26Remove the map argument from DRM_*MEMORYBARRIER. Not all of the uses ofEric Anholt
DRM_*MEMORYBARRIER we had were related to an MMIO space. This means arch-specific code on the BSDs, unfortunately. Also add DRM_MEMORYBARRIER() and change the DRM_READMEMORYBARRIER()s that used to be read/write barriers to it.
2003-04-26Missed files in the last commit: Remove memory debugging sysctl unlessEric Anholt
MEMORY_DEBUG is set.
2003-04-26Replace the C atomic_cmpset_int compatibility function for -stable with theEric Anholt
real i386 atomic_cmpset_int from -current. FreeBSD-stable won't ever have DRM support for non-i386.
2003-04-26Disable MTRRs on FreeBSD-stable. Without this, it hangs on boot in the MTRREric Anholt
setting for AGP cards on SMP machines.
2003-04-25Merge from FreeBSD-current.Eric Anholt
2003-04-24Remove a bunch of dead code and fix spelling of a couple of comments.Eric Anholt
2003-04-24Remove DRM_DMA_HISTOGRAM and associated code.Eric Anholt
2003-04-24Make DRM(read) and DRM(poll) stubs and remove DRM(write) andEric Anholt
DRM(write_string). This is the first part of removing much of the support code for gamma from the BSD DRM, since it appears that no new drivers are using it and nobody has ever shown interest in gamma on BSD.
2003-03-29Add DRMFILE definitions and supply filp for BSD in theEric Anholt
post-drm-filp-0-1-branch world. The filp is a void * cast from the current pid. This is a temporary solution which maintains the status quo until a proper solution is implemented. What is really needed is a unique pointer per open, hopefully with a device private area. This can be done in FreeBSD for all entry points except mmap, but is difficult (sys/dev/streams/streams.c is an example). I have partially completed code for this but have not had time to debug, so this is a temporary fix.
2003-03-11Merge back from FreeBSD-current, adding FreeBSD ID tags to aid futureEric Anholt
merging. Also includes an update to radeon PCI IDs.
2003-03-08Make dma_addr_t an unsigned long not a uint32, don't try to use memrangeEric Anholt
functions on FreeBSD non-x86, and remove a dead define.
2003-03-05Remove a paste-o in DRM_SPINUNINIT and add a volatile to the compatibilityEric Anholt
atomic_cmpset_int.
2003-03-04DRM_FREE/2 patch from Philip BrownKeith Whitwell
2003-02-21Merge from bsd-4-0-0-branch.Eric Anholt
2003-01-24Fix build on -current: Provide M_WAITOK define.Eric Anholt
2002-10-14Fix reversed test that broke vblank waiting on FreeBSD.Eric Anholt
Pointy hat to: anholt
2002-09-29Make our set_bit and friends match linux better (cleans up some warnings)Eric Anholt
2002-09-29Fix some of my silliness in DRM_WAIT_ON (not returning EINTR).Eric Anholt
2002-09-29Move os-dependent stuff out of radeon_irq.cKeith Whitwell
2002-09-26BSD vblank framework.Eric Anholt
2002-09-23merged r200-0-2-branch to trunkKeith Whitwell
2002-08-21Remove drm_linux.h, move the two useful defines into drm_drv.h (the onlyEric Anholt
place they're used). Use fd locking on -current. Actually copy in data from userspace to kernel in the linux-compat ioctl path. Make sure ioctl sizes are as expected in the ioctl handler functions.
2002-07-05merged bsd-3-0-0-branchAlan Hourihane
2002-01-27Import of XFree86 4.2.0David Dawes