Lines Matching refs:entry
233 * memory via alloc_agp() and creates a drm_agp_mem entry for it.
237 struct drm_agp_mem *entry;
244 if (!(entry = kmalloc(sizeof(*entry), GFP_KERNEL)))
247 (void) memset(entry, 0, sizeof(*entry));
257 kfree(entry, sizeof (*entry));
261 entry->handle = alloc.agpa_key + DRM_AGP_KEY_OFFSET;
262 entry->bound = 0;
263 entry->pages = (int) pages;
264 list_add(&entry->head, &dev->agp->memory, (caddr_t)entry);
266 request->handle = entry->handle;
281 * Search for the AGP memory entry associated with a handle.
292 struct drm_agp_mem *entry;
294 list_for_each_entry(entry, struct drm_agp_mem, &dev->agp->memory, head) {
295 if (entry->handle == handle)
296 return entry;
311 * entry and passes it to the unbind_agp() function.
315 struct drm_agp_mem *entry;
320 if (!(entry = drm_agp_lookup_entry(dev, request->handle)))
322 if (!entry->bound)
328 unbind.agpu_key = (uintptr_t)entry->handle - DRM_AGP_KEY_OFFSET;
335 entry->bound = 0;
357 * is currently bound into the GATT. Looks-up the AGP memory entry and passes
362 struct drm_agp_mem *entry;
368 if (!(entry = drm_agp_lookup_entry(dev, request->handle)))
370 if (entry->bound)
374 uint_t key = (uintptr_t)entry->handle - DRM_AGP_KEY_OFFSET;
381 entry->bound = dev->agp->base + (page << PAGE_SHIFT);
382 DRM_DEBUG("base = 0x%lx entry->bound = 0x%lx\n",
383 dev->agp->base, entry->bound);
405 * AGP memory entry. If the memory it's currently bound, unbind it via
406 * unbind_agp(). Frees it via free_agp() as well as the entry itself
411 struct drm_agp_mem *entry;
415 if (!(entry = drm_agp_lookup_entry(dev, request->handle)))
417 if (entry->bound)
420 list_del(&entry->head);
422 int agpu_key = (uintptr_t)entry->handle - DRM_AGP_KEY_OFFSET;
432 kfree(entry, sizeof (*entry));
522 struct drm_agp_mem *entry;
529 entry = drm_agp_lookup_entry(dev, handle);
530 if (!entry || !entry->bound)
534 unbind.agpu_key = (uintptr_t)entry->handle - DRM_AGP_KEY_OFFSET;
540 entry->bound = 0;