diff options
author | Eric Anholt <anholt@freebsd.org> | 2005-02-05 08:00:14 +0000 |
---|---|---|
committer | Eric Anholt <anholt@freebsd.org> | 2005-02-05 08:00:14 +0000 |
commit | 080a547d4d42d42e08a525aca9a62b5ece7616d5 (patch) | |
tree | 6996ba882ce26098fb69ba336969d88aa47dc39c /bsd-core/drm_vm.c | |
parent | 270ca5f3cee387c10a06a4d58e50c5d0e1cea837 (diff) |
- Implement drm_initmap, and extend it with the resource number to help
FreeBSD. Add drm_get_resource_{start|len} so linux-specific stuff
doesn't need to be in shared code.
- Fix mach64 build by using __DECONST to work around passing a const
pointer to useracc, which is unfortunately not marked const.
- Get rid of a lot of maplist code by not having dev->maplist be a pointer,
and by sticking the link entries directly in drm_local_map_t rather
than having a separate structure for the linked list.
- Factor out map uninit and removal into its own routine, rather than
duplicating in both drm_takedown() and drm_rmmap().
- Hook up more driver functions, and correct FreeBSD-specific bits of
radeon_cp.c, making radeon work.
- Baby steps towards using bus_space as we should.
Diffstat (limited to 'bsd-core/drm_vm.c')
-rw-r--r-- | bsd-core/drm_vm.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/bsd-core/drm_vm.c b/bsd-core/drm_vm.c index 1b5d4d3f..2b5f0ef4 100644 --- a/bsd-core/drm_vm.c +++ b/bsd-core/drm_vm.c @@ -35,8 +35,7 @@ paddr_t drm_mmap(dev_t kdev, off_t offset, int prot) #endif { DRM_DEVICE; - drm_local_map_t *map = NULL; - drm_map_list_entry_t *listentry = NULL; + drm_local_map_t *map; drm_file_t *priv; drm_map_type_t type; @@ -81,13 +80,12 @@ paddr_t drm_mmap(dev_t kdev, off_t offset, int prot) for performance, even if the list was a bit longer. */ DRM_LOCK(); - TAILQ_FOREACH(listentry, dev->maplist, link) { - map = listentry->map; + TAILQ_FOREACH(map, &dev->maplist, link) { if (offset >= map->offset && offset < map->offset + map->size) break; } - if (!listentry) { + if (map == NULL) { DRM_UNLOCK(); DRM_DEBUG("can't find map\n"); return -1; |