History log of /src/sys/external/bsd/drm/dist/bsd-core/drmP.h |
Revision | | Date | Author | Comments |
1.26 |
| 18-Mar-2022 |
riastradh | old drm: Use getticks(), not hardclock_ticks.
Should delete this code, no idea if it even still compiles.
|
1.25 |
| 06-Apr-2019 |
thorpej | Overhaul the API used to fetch and store individual memory cells in userspace. The old fetch(9) and store(9) APIs (fubyte(), fuword(), subyte(), suword(), etc.) are retired and replaced with new ufetch(9) and ustore(9) APIs that can return proper error codes, etc. and are implemented consistently across all platforms. The interrupt-safe variants are no longer supported (and several of the existing attempts at fuswintr(), etc. were buggy and not actually interrupt-safe).
Also augmement the ucas(9) API, making it consistently available on all plaforms, supporting uniprocessor and multiprocessor systems, even those that do not have CAS or LL/SC primitives.
Welcome to NetBSD 8.99.37.
|
1.24 |
| 20-Apr-2015 |
riastradh | branches: 1.24.18; Remove old drm's container_of.
|
1.23 |
| 01-Jul-2011 |
dyoung | branches: 1.23.12; 1.23.30; #include <sys/bus.h> instead of <machine/bus.h>.
|
1.22 |
| 09-Jun-2011 |
joerg | dma_addr_t may not be a 64bit type, so add an explicit cast here instead of silent truncation
|
1.21 |
| 24-Feb-2011 |
mrg | branches: 1.21.2; convert all crtc values passed in from userland to be unsigned instead of signed. there's still some more internal to the i915 driver that should be converted.
tested on a radeon x1550.
|
1.20 |
| 18-Feb-2011 |
jmcneill | sync viadrm with FreeBSD, big new feature is AGP DMA and PCI DMA support
|
1.19 |
| 24-May-2010 |
mrg | branches: 1.19.2; 1.19.4; use round_page() for PAGE_ALIGN(). from Onno van der Linden <o.vd.linden@quicknet.nl> in PR#38700, though apparently i didn't commit it way back when i closed that bug. oops?
|
1.18 |
| 24-May-2010 |
mrg | implement DRM_RADEON_CS ioctl, necessary for r600_dri to function.
this is mostly from freebsd (though it also exists in other versions of the drm code) svn commits:
-- SVN rev 196470 on 2009-08-23 14:55:57Z by rnoland
Add kernel support for Radeon R6/7xx 3D.
You will still need Mesa from git and possibly an updated DDX driver, but this is working fairly well now. -- SVN rev 196142 on 2009-08-12 12:57:02Z by rnoland
Add support for radeon RS880 IGP chips to drm. -- SVN rev 195501 on 2009-07-09 16:39:28Z by rnoland
Add support for Radeon HD 4770 (RV740) chips. -- SVN rev 196471 on 2009-08-23 15:02:58Z by rnoland
Add GET_PARAM support for Z pipes.
This is needed for occulsion queries on rv530 chips. -- SVN rev 198695 on 2009-10-30 18:07:22Z by rnoland
A bit of cleanup work on radeon_freelist_get()
* Fix the main loop to search all buffers before sleeping. * Remove dead code -- SVN rev 197606 on 2009-09-28 22:41:28Z by rnoland
Fix offset handling -- SVN rev 197605 on 2009-09-28 22:40:29Z by rnoland
radeon_family is an enum, so ordering can be important.
sync up with what amd is shipping. -- SVN rev 197603 on 2009-09-28 22:37:07Z by rnoland
R600 doesn't support IRQs yet, so don't try to use them. --
special thanks to robert noland @ freebsd for making this an easy port!
|
1.17 |
| 19-May-2010 |
mrg | only use bus_space*() on drm_local_map_t's that have been mapped into some bus space somewhere. otherwise, just use normal accesses since it is normal memory.
this fixes radeondrm on x86 since bus_space_tag_t became a pointer.
add the "GEM" and "TTM" mapping types to sysctl support (though right now we will never have them in our list of maps.)
|
1.16 |
| 26-Jan-2010 |
jmorse | branches: 1.16.2; 1.16.4; PR/42262: Support drm drivers (intel G33/G45) submapping pci resources
|
1.15 |
| 06-Dec-2009 |
dyoung | Delete the do-nothing device-activation hook, drm_activate().
|
1.14 |
| 02-Sep-2009 |
mrg | - normalize netbsd drm_mtrr_del() with freebsd, removing a few #if's - make the mtrr code do nothing on non-x86
|
1.13 |
| 07-Aug-2009 |
mrg | remove some netbsd specific code that does nothing.
|
1.12 |
| 20-Jun-2009 |
mrg | some minor clean up: - reduce diffs to mesa-drm where possible - fix various formatting issues - netbsd uses major 180 for drm (XXX)
no functional changes intended.
|
1.11 |
| 19-Jun-2009 |
mrg | merge the changes from drm 85b9f737db0d2a845e4d7e2bbf9ad12ff9e2227c with our changes and the work recently done by Arto Huusko <arto.huusko@pp2.inet.fi> and FUKAUMI Naoki <fun@naobsd.org>.
it includes all the changes arto provided from both mesa-drm and the r6xx-r7xx-support branch. it does not yet include code to handle the (deleted) drm_pciids.h file, but i'll probably just check in a generated one for now.
i have not yet merged the changes from outside this dir.
from arto's messages to tech-x11:
The important change that was needed is that drm_scatter.c was fixed to return pointer to all allocated pages, not just the beginning of the allocated segments.
Other changes:
- drm_scatter maps COHERENT memory - drm_drawable: drawable handle allocation is done inside lock - drm_memory: when mapping "agp" memory, store offset of mapped area, so that new requests to same offset return the same area instead of trying to remap and fail - drm_vm: use bus_space_mmap for frame buffer and registers
- r600_cp.c: ioremapfree allocated gart range - radeon_cp.c: use mtsleep - some memset calls I had added had their args swapped, and no memory was cleared
|
1.10 |
| 30-Mar-2009 |
mrg | branches: 1.10.2; - apply from sys/dev: revision 1.33 date: 2009/03/29 17:00:50; author: mrg; state: Exp; lines: +12 -4 add a comment explaining DRM_NETBSD_ADDR2HANDLE/DRM_NETBSD_HANDLE2ADDR:
* This hack strips the top bit from amd64 addresses, which avoid * udv_attach() returning NULL for "negative" offset. * A better hack would be to encode the offset of some kernel data * structure..
add a new DRM_HANDLE_NEEDS_MASK macro to check whether the above need to be applied for various mapping types (_DRM_SHM and _DRM_SCATTER_GATHER.)
also: - use IPL_VM for now - use a lot of bus_space - struct drm_device now has a pointer to the device_t
|
1.9 |
| 25-Jul-2008 |
bjs | branches: 1.9.2; 1.9.4; 1.9.6; 1.9.8; 1.9.10; 1.9.14; 1.9.18; - for DRM_NETBSD_HANDLE2ADDR/ADDR2HANDLE, do what uvm does to recover the virtual address from a uoffset, e.g. uoffset + vm_map_min(kernel_map).
- Eliminate the bus_space_read/write-based DRM_READ/WRITE macros. The memory we're reading/writing from is not always allocated with bus_space, and so this will not do. Instead, since all of our bus_space maps are linear, volatile pointer dereferences will do just fine.
- Unify members of struct drm_dma_handle amongst freebsd and netbsd: the 'addr' member was superfluous; also, set dmah->tag from dev->pa.pa_dmat and use that.
- we don't need BUS_DMA_ALLOCNOW, as bus_dmamap_load is called immediately following bus_dmamap_create(), so there's no need to avoid deferring allocation to load time.
- Add check for nsegs != 1 in drm_pci_alloc().
- We don't need the DRM_PCI_DMAADDR macro right now--it was only used once.
|
1.8 |
| 25-Jul-2008 |
mrg | merge git-change-2580a065d81be645a14af1e91b8441f7e72fcbe4.
|
1.7 |
| 25-Jul-2008 |
bjs | IRQ_HANDLED should be 1, not 0.
|
1.6 |
| 19-Jul-2008 |
mrg | merge cornflakes from git-change-04893aa99abfbed8eb6d7067a974fa1f31193c87.
|
1.5 |
| 19-Jul-2008 |
bjs | use ALIGN() instead of rolling our own.
|
1.4 |
| 19-Jul-2008 |
jmcneill | Implement drm_drawable gunk and drm_locked_task, untested. i915drm links now.
|
1.3 |
| 19-Jul-2008 |
bjs | Change IPL of DRM_SPININIT macro to IPL_NONE. Currently, the only mutex initialized by this macro is the dma lock, which certainly should not be IPL_VM. The priorities of the other locks should be revisited.
Also, in DRM_WAIT_ON, enforce the policy of "drm returns -errno to shared code" (this used to be implemented via a macro).
|
1.2 |
| 19-Jul-2008 |
mrg | pull over many many changes from netbsd-current sys/dev/{,pci/}drm/. make the mesa-drm style Makefile's actually run on netbsd (but i doubt they work yet.)
this still has a lot to go. it doesn't work yet, but it's getting close.
most of this is from other authors than myself: yorrick, drochner, jared, bjs, all contributed a lot more than i have so far, but there's a bunch of clean up from myself in here as well.
|
1.1 |
| 19-Jul-2008 |
mrg | branches: 1.1.1; Initial revision
|
1.1.1.4 |
| 19-Jun-2009 |
mrg | import mesa-drm git from version 85b9f737db0d2a845e4d7e2bbf9ad12ff9e2227c.
|
1.1.1.3 |
| 25-Jul-2008 |
mrg | import mesa-drm git from change 2580a065d81be645a14af1e91b8441f7e72fcbe4. this pulls in a few vblank fixes.
|
1.1.1.2 |
| 19-Jul-2008 |
mrg | import mesa-drm git at change 04893aa99abfbed8eb6d7067a974fa1f31193c87.
|
1.1.1.1 |
| 19-Jul-2008 |
mrg | import mesa-drm git from version 5d27fd94afaaf434c3a92af0075420b550055bfb, which is approximately june 25th or so.
|
1.9.18.1 |
| 21-Apr-2010 |
matt | sync to netbsd-5
|
1.9.14.2 |
| 23-Jul-2009 |
jym | Sync with HEAD.
|
1.9.14.1 |
| 13-May-2009 |
jym | Sync with HEAD.
Commit is split, to avoid a "too many arguments" protocol error.
|
1.9.10.4 |
| 08-Dec-2010 |
riz | Patch the following files (requested by mrg in ticket #1488): sys/dev/pci/drm/files.pcidrm sys/external/bsd/drm/dist/bsd-core/drmP.h sys/external/bsd/drm/dist/bsd-core/drm_pciids.h sys/external/bsd/drm/dist/bsd-core/drm_sysctl.c sys/external/bsd/drm/dist/shared-core/r600_blit.c sys/external/bsd/drm/dist/shared-core/r600_cp.c sys/external/bsd/drm/dist/shared-core/radeon_cp.c sys/external/bsd/drm/dist/shared-core/radeon_cs.c sys/external/bsd/drm/dist/shared-core/radeon_drm.h sys/external/bsd/drm/dist/shared-core/radeon_drv.h sys/external/bsd/drm/dist/shared-core/radeon_state.c
implement DRM_RADEON_CS ioctl, necessary for r600_dri to function. this is mostly from freebsd (though it also exists in other versions of the drm code.)
only use bus_space*() on drm_local_map_ts that have been mapped into some bus space somewhere. otherwise, just use normal accesses since it is normal memory.
|
1.9.10.3 |
| 30-Jan-2010 |
snj | Pull up following revision(s) (requested by jmorse in ticket #1280): sys/external/bsd/drm/dist/bsd-core/drm_bufs.c: revision 1.7 sys/external/bsd/drm/dist/bsd-core/drmP.h: revision 1.16 sys/external/bsd/drm/dist/bsd-core/drm_memory.c: revision 1.7 PR/42262: Support drm drivers (intel G33/G45) submapping pci resources
|
1.9.10.2 |
| 14-Aug-2009 |
snj | Pull up following revision(s) (requested by mrg in ticket #907): sys/external/bsd/drm/dist/bsd-core/drm_fops.c: revision 1.6 sys/external/bsd/drm/dist/bsd-core/drmP.h: revision 1.13 remove some netbsd specific code that does nothing.
|
1.9.10.1 |
| 20-Jun-2009 |
snj | Apply patch (requested by mrg in ticket #823): import mesa-drm git from version 85b9f737db0d2a845e4d7e2bbf9ad12ff9e2227c. -- merge the changes from drm 85b9f737db0d2a845e4d7e2bbf9ad12ff9e2227c with our changes and the work recently done by Arto Huusko and FUKAUMI Naoki.
it includes all the changes arto provided from both mesa-drm and the r6xx-r7xx-support branch. it does not yet include code to handle the (deleted) drm_pciids.h file, but i'll probably just check in a generated one for now.
i have not yet merged the changes from outside this dir.
from arto's messages to tech-x11:
The important change that was needed is that drm_scatter.c was fixed to return pointer to all allocated pages, not just the beginning of the allocated segments.
Other changes:
- drm_scatter maps COHERENT memory - drm_drawable: drawable handle allocation is done inside lock - drm_memory: when mapping "agp" memory, store offset of mapped area, so that new requests to same offset return the same area instead of trying to remap and fail - drm_vm: use bus_space_mmap for frame buffer and registers
- r600_cp.c: ioremapfree allocated gart range - radeon_cp.c: use mtsleep - some memset calls I had added had their args swapped, and no memory was cleared -- add a freshly generated drm_pciids.h -- some minor clean up: - reduce diffs to mesa-drm where possible - fix various formatting issues - netbsd uses major 180 for drm (XXX)
|
1.9.8.1 |
| 28-Apr-2009 |
skrll | Sync with HEAD.
|
1.9.6.2 |
| 28-Sep-2008 |
mjf | Sync with HEAD.
|
1.9.6.1 |
| 25-Jul-2008 |
mjf | file drmP.h was added on branch mjf-devfs2 on 2008-09-28 10:40:36 +0000
|
1.9.4.2 |
| 18-Sep-2008 |
wrstuden | Sync with wrstuden-revivesa-base-2.
|
1.9.4.1 |
| 25-Jul-2008 |
wrstuden | file drmP.h was added on branch wrstuden-revivesa on 2008-09-18 04:36:47 +0000
|
1.9.2.2 |
| 28-Jul-2008 |
simonb | Sync with head.
|
1.9.2.1 |
| 25-Jul-2008 |
simonb | file drmP.h was added on branch simonb-wapbl on 2008-07-28 14:37:28 +0000
|
1.10.2.7 |
| 11-Aug-2010 |
yamt | sync with head.
|
1.10.2.6 |
| 11-Mar-2010 |
yamt | sync with head
|
1.10.2.5 |
| 16-Sep-2009 |
yamt | sync with head
|
1.10.2.4 |
| 19-Aug-2009 |
yamt | sync with head.
|
1.10.2.3 |
| 18-Jul-2009 |
yamt | sync with head.
|
1.10.2.2 |
| 04-May-2009 |
yamt | sync with head.
|
1.10.2.1 |
| 30-Mar-2009 |
yamt | file drmP.h was added on branch yamt-nfs-mp on 2009-05-04 08:13:28 +0000
|
1.16.4.3 |
| 12-Jun-2011 |
rmind | sync with head
|
1.16.4.2 |
| 05-Mar-2011 |
rmind | sync with head
|
1.16.4.1 |
| 30-May-2010 |
rmind | sync with head
|
1.16.2.1 |
| 17-Aug-2010 |
uebayasi | Sync with HEAD.
|
1.19.4.1 |
| 05-Mar-2011 |
bouyer | Sync with HEAD
|
1.19.2.1 |
| 06-Jun-2011 |
jruoho | Sync with HEAD.
|
1.21.2.1 |
| 23-Jun-2011 |
cherry | Catchup with rmind-uvmplock merge.
|
1.23.30.1 |
| 06-Jun-2015 |
skrll | Sync with HEAD
|
1.23.12.1 |
| 03-Dec-2017 |
jdolecek | update from HEAD
|
1.24.18.1 |
| 10-Jun-2019 |
christos | Sync with HEAD
|