Lines Matching +full:sleep +full:- +full:map
3 * Copyright (c) 2006-2009 VMware, Inc., Palo Alto, CA., USA
20 * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
28 * Authors: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
43 #include <linux/dma-resv.h>
67 * but they cannot be accessed from user-space. For kernel-only use.
97 * @evicted: Whether the object was evicted without user-space knowing.
199 * @interruptible: Sleep interruptible if sleeping.
221 * ttm_bo_get - reference a struct ttm_buffer_object
227 kref_get(&bo->kref); in ttm_bo_get()
231 * ttm_bo_get_unless_zero - reference a struct ttm_buffer_object unless
243 if (!kref_get_unless_zero(&bo->kref)) in ttm_bo_get_unless_zero()
249 * ttm_bo_wait - wait for buffer idle.
259 * Returns -EBUSY if no_wait is true and the buffer is busy.
260 * Returns -ERESTARTSYS if interrupted by a signal.
265 * ttm_bo_mem_compat - Check if proposed placement is compatible with a bo
286 * -EINVAL on invalid proposed placement.
287 * -ENOMEM on out-of-memory condition.
288 * -EBUSY if no_wait is true and buffer busy.
289 * -ERESTARTSYS if interrupted by a signal.
372 * This function initializes a pre-allocated struct ttm_buffer_object.
375 * enables driver-specific objects derived from a ttm_buffer_object.
388 * -ENOMEM: Out of memory.
389 * -EINVAL: Invalid placement flags.
390 * -ERESTARTSYS: Interrupted by signal while sleeping waiting for resources.
414 * @interruptible: If needing to sleep to wait for GPU resources,
415 * sleep interruptible.
424 * This function initializes a pre-allocated struct ttm_buffer_object.
427 * enables driver-specific objects derived from a ttm_buffer_object.
438 * -ENOMEM: Out of memory.
439 * -EINVAL: Invalid placement flags.
440 * -ERESTARTSYS: Interrupted by signal while sleeping waiting for resources.
457 * @interruptible: If needing to sleep while waiting for GPU resources,
458 * sleep interruptible.
464 * -ENOMEM: Out of memory.
465 * -EINVAL: Invalid placement flags.
466 * -ERESTARTSYS: Interrupted by signal while waiting for resources.
481 * out-of-memory-space-due-to-fragmentation handler.
487 * -EINVAL: Invalid or uninitialized memory type.
488 * -ERESTARTSYS: The call was interrupted by a signal while waiting to
496 * @map: A struct ttm_bo_kmap_obj returned from ttm_bo_kmap.
498 * virtual map is io memory, 0 if normal memory.
504 static inline void *ttm_kmap_obj_virtual(struct ttm_bo_kmap_obj *map, in ttm_kmap_obj_virtual() argument
507 *is_iomem = !!(map->bo_kmap_type & TTM_BO_MAP_IOMEM_MASK); in ttm_kmap_obj_virtual()
508 return map->virtual; in ttm_kmap_obj_virtual()
515 * @start_page: The first page to map.
516 * @num_pages: Number of pages to map.
517 * @map: pointer to a struct ttm_bo_kmap_obj representing the map.
524 * -ENOMEM: Out of memory.
525 * -EINVAL: Invalid range.
528 unsigned long num_pages, struct ttm_bo_kmap_obj *map);
533 * @map: Object describing the map to unmap.
535 * Unmaps a kernel map set up by ttm_bo_kmap.
537 void ttm_bo_kunmap(struct ttm_bo_kmap_obj *map);
540 * ttm_bo_mmap_obj - mmap memory backed by a ttm buffer object.
550 * ttm_bo_mmap - mmap out of the ttm device address space.
567 * @wbuf: User-space pointer to address of buffer to write. NULL on read.
568 * @rbuf: User-space pointer to address of buffer to read into.
579 * the function may return -ERESTARTSYS if
591 * ttm_bo_uses_embedded_gem_object - check if the given bo uses the
606 return bo->base.dev != NULL; in ttm_bo_uses_embedded_gem_object()
615 /* Default number of pre-faulted pages in the TTM fault handler */