Lines Matching full:surface
42 * struct vmw_user_surface - User-space visible surface resource
45 * @srf: The surface metadata.
57 * @face: Surface face.
69 * struct vmw_surface_dirty - Surface dirty-tracker
70 * @cache: Cached layout information of the surface.
170 * struct vmw_surface_define - SVGA3D Surface Define command
178 * struct vmw_surface_destroy - SVGA3D Surface Destroy command
191 * Computes the required size for a surface dma command for backup or
192 * restoration of the surface represented by @srf.
201 * vmw_surface_define_size - Compute fifo size for a surface define command.
205 * Computes the required size for a surface define command for the definition
206 * of the surface represented by @srf.
216 * vmw_surface_destroy_size - Compute fifo size for a surface destroy command.
218 * Computes the required size for a surface destroy command for the destruction
219 * of a hw surface.
229 * @id: The surface id
268 * For legacy surface define only 32 bit flag is supported. in vmw_surface_define_encode()
291 * @ptr: Pointer to an SVGAGuestPtr indicating where the surface contents
293 * @to_surface: Boolean whether to DMA to the surface or from the surface.
347 * vmw_hw_surface_destroy - destroy a Device surface
352 * Destroys a the device surface associated with a struct vmw_surface if
388 * vmw_legacy_srf_create - Create a device surface as part of the
393 * If the surface doesn't have a hw id.
422 DRM_ERROR("Failed to allocate a surface id.\n"); in vmw_legacy_srf_create()
432 * Encode surface define- commands. in vmw_legacy_srf_create()
447 * Surface memory usage accounting. in vmw_legacy_srf_create()
460 * vmw_legacy_srf_dma - Copy backup data to or from a legacy surface.
466 * @bind: Boolean wether to DMA to the surface.
468 * Transfer backup data to or from a legacy surface as part of the
472 * and if the surface needs persistent backup storage, the backup buffer
513 * vmw_legacy_srf_bind - Perform a legacy surface bind as part of the
514 * surface validation process.
521 * This function will copy backup data to the surface if the
535 * vmw_legacy_srf_unbind - Perform a legacy surface unbind as part of the
536 * surface eviction process.
544 * This function will copy backup data from the surface.
556 * vmw_legacy_srf_destroy - Destroy a device surface as part of a
571 * Encode the dma- and surface destroy commands. in vmw_legacy_srf_destroy()
583 * Surface memory usage accounting. in vmw_legacy_srf_destroy()
589 * Release the surface ID. in vmw_legacy_srf_destroy()
625 * The surface won't be visible to hardware until a in vmw_surface_init()
626 * surface validate. in vmw_surface_init()
651 * vmw_user_surface_free - User visible surface resource destructor
671 * vmw_user_surface_base_release - User visible surface TTM base object destructor
700 * the user surface destroy functionality.
717 * the user surface define functionality.
758 VMW_DEBUG_USER("Invalid format %d for surface creation.\n", in vmw_surface_define_ioctl()
855 * A gb-aware client referencing a surface will expect a backup in vmw_surface_define_ioctl()
918 "%s: referencing a stale surface handle %d\n", in vmw_lookup_user_surface_for_buffer()
991 "User surface fd %d (handle %d) is null.\n", fd, *handle); in vmw_buffer_prime_to_surface_base()
1039 VMW_DEBUG_USER("Could not find surface to reference.\n"); in vmw_surface_handle_reference()
1044 VMW_DEBUG_USER("Referenced object is not a surface.\n"); in vmw_surface_handle_reference()
1061 * Make sure the surface creator has the same in vmw_surface_handle_reference()
1073 DRM_ERROR("Could not add a reference to a surface.\n"); in vmw_surface_handle_reference()
1092 * the user surface reference functionality.
1180 DRM_ERROR("Failed to allocate a surface id.\n"); in vmw_gb_surface_create()
1434 * the user surface define functionality.
1461 * the user surface reference functionality.
1490 * the user surface define functionality.
1509 * the user surface reference functionality.
1528 * the user surface define functionality.
1556 VMW_DEBUG_USER("SM4 surface not supported.\n"); in vmw_gb_surface_define_internal()
1574 VMW_DEBUG_USER("SM4.1 surface not supported.\n"); in vmw_gb_surface_define_internal()
1580 VMW_DEBUG_USER("SM5 surface not supported.\n"); in vmw_gb_surface_define_internal()
1608 /* Define a surface based on the parameters. */ in vmw_gb_surface_define_internal()
1611 VMW_DEBUG_USER("Failed to define surface.\n"); in vmw_gb_surface_define_internal()
1626 VMW_DEBUG_USER("Can't backup surface with a dumb buffer.\n"); in vmw_gb_surface_define_internal()
1631 VMW_DEBUG_USER("Surface backup buffer too small.\n"); in vmw_gb_surface_define_internal()
1705 * the user surface reference functionality.
1708 * @req: Pointer to user-space request surface arg.
1734 DRM_ERROR("Shared GB surface is missing a backup buffer.\n"); in vmw_gb_surface_reference_internal()
1744 drm_err(dev, "Wasn't able to create a backing handle for surface sid = %u.\n", in vmw_gb_surface_reference_internal()
1835 * @dirty: The surface's dirty tracker.
1880 * the whole surface. in vmw_surface_tex_dirty_range_add()
1947 * vmw_surface_dirty_sync - The surface's dirty_sync callback.
2024 * vmw_surface_dirty_alloc - The surface's dirty_alloc callback.
2075 * vmw_surface_dirty_free - The surface's dirty_free callback
2087 * vmw_surface_clean - The surface's clean callback
2112 * vmw_gb_surface_define - Define a private GB surface
2115 * @metadata: Metadata representing the surface to create.
2120 * surface may later be given a user mode handle by another function to make
2138 VMW_DEBUG_USER("Invalid Screen Target surface format."); in vmw_gb_surface_define()
2144 VMW_DEBUG_USER("%ux%u\n, exceed max surface size %ux%u", in vmw_gb_surface_define()
2156 VMW_DEBUG_USER("Invalid surface format.\n"); in vmw_gb_surface_define()
2204 * Don't set SVGA3D_SURFACE_SCREENTARGET flag for a scanout surface with in vmw_gb_surface_define()
2208 * binding with screen target as during prepare_fb a separate surface is in vmw_gb_surface_define()
2288 * because we wouldn't be able to support full surface coherency in vmw_dumb_create()
2289 * without mobs. There also no reason to support surface coherency in vmw_dumb_create()