Lines Matching defs:metadata

45  * @srf:            The surface metadata.
202 return srf->metadata.num_sizes * sizeof(struct vmw_surface_dma);
216 return sizeof(struct vmw_surface_define) + srf->metadata.num_sizes *
265 cmd_len = sizeof(cmd->body) + srf->metadata.num_sizes *
276 cmd->body.surfaceFlags = (SVGA3dSurface1Flags)srf->metadata.flags;
277 cmd->body.format = srf->metadata.format;
279 cmd->body.face[i].numMipLevels = srf->metadata.mip_levels[i];
283 src_size = srf->metadata.sizes;
285 for (i = 0; i < srf->metadata.num_sizes; ++i, cmd_size++, src_size++) {
309 svga3dsurface_get_desc(srf->metadata.format);
311 for (i = 0; i < srf->metadata.num_sizes; ++i) {
317 const struct drm_vmw_size *cur_size = &srf->metadata.sizes[i];
673 kfree(srf->metadata.sizes);
732 struct vmw_surface_metadata *metadata;
798 metadata = &srf->metadata;
802 metadata->flags = (SVGA3dSurfaceAllFlags)req->flags;
803 metadata->format = req->format;
804 metadata->scanout = req->scanout;
806 memcpy(metadata->mip_levels, req->mip_levels,
807 sizeof(metadata->mip_levels));
808 metadata->num_sizes = num_sizes;
810 metadata->sizes =
813 sizeof(*metadata->sizes) * metadata->num_sizes);
814 if (IS_ERR(metadata->sizes)) {
815 ret = PTR_ERR(metadata->sizes);
818 srf->offsets = kmalloc_array(metadata->num_sizes, sizeof(*srf->offsets),
825 metadata->base_size = *srf->metadata.sizes;
826 metadata->autogen_filter = SVGA3D_TEX_FILTER_NONE;
827 metadata->multisample_count = 0;
828 metadata->multisample_pattern = SVGA3D_MS_PATTERN_NONE;
829 metadata->quality_level = SVGA3D_MS_QUALITY_NONE;
833 cur_size = metadata->sizes;
836 for (j = 0; j < metadata->mip_levels[i]; ++j) {
850 if (metadata->scanout &&
851 metadata->num_sizes == 1 &&
852 metadata->sizes[0].width == 64 &&
853 metadata->sizes[0].height == 64 &&
854 metadata->format == SVGA3D_A8R8G8B8) {
918 kfree(metadata->sizes);
1038 rep->flags = (uint32_t)srf->metadata.flags;
1039 rep->format = srf->metadata.format;
1040 memcpy(rep->mip_levels, srf->metadata.mip_levels,
1041 sizeof(srf->metadata.mip_levels));
1046 ret = copy_to_user(user_sizes, &srf->metadata.base_size,
1047 sizeof(srf->metadata.base_size));
1050 srf->metadata.num_sizes);
1070 struct vmw_surface_metadata *metadata = &srf->metadata;
1105 if (has_sm5_context(dev_priv) && metadata->array_size > 0) {
1109 } else if (has_sm4_1_context(dev_priv) && metadata->array_size > 0) {
1113 } else if (metadata->array_size > 0) {
1133 if (has_sm5_context(dev_priv) && metadata->array_size > 0) {
1137 cmd4->body.surfaceFlags = metadata->flags;
1138 cmd4->body.format = metadata->format;
1139 cmd4->body.numMipLevels = metadata->mip_levels[0];
1140 cmd4->body.multisampleCount = metadata->multisample_count;
1141 cmd4->body.multisamplePattern = metadata->multisample_pattern;
1142 cmd4->body.qualityLevel = metadata->quality_level;
1143 cmd4->body.autogenFilter = metadata->autogen_filter;
1144 cmd4->body.size.width = metadata->base_size.width;
1145 cmd4->body.size.height = metadata->base_size.height;
1146 cmd4->body.size.depth = metadata->base_size.depth;
1147 cmd4->body.arraySize = metadata->array_size;
1148 cmd4->body.bufferByteStride = metadata->buffer_byte_stride;
1149 } else if (has_sm4_1_context(dev_priv) && metadata->array_size > 0) {
1153 cmd3->body.surfaceFlags = metadata->flags;
1154 cmd3->body.format = metadata->format;
1155 cmd3->body.numMipLevels = metadata->mip_levels[0];
1156 cmd3->body.multisampleCount = metadata->multisample_count;
1157 cmd3->body.multisamplePattern = metadata->multisample_pattern;
1158 cmd3->body.qualityLevel = metadata->quality_level;
1159 cmd3->body.autogenFilter = metadata->autogen_filter;
1160 cmd3->body.size.width = metadata->base_size.width;
1161 cmd3->body.size.height = metadata->base_size.height;
1162 cmd3->body.size.depth = metadata->base_size.depth;
1163 cmd3->body.arraySize = metadata->array_size;
1164 } else if (metadata->array_size > 0) {
1168 cmd2->body.surfaceFlags = metadata->flags;
1169 cmd2->body.format = metadata->format;
1170 cmd2->body.numMipLevels = metadata->mip_levels[0];
1171 cmd2->body.multisampleCount = metadata->multisample_count;
1172 cmd2->body.autogenFilter = metadata->autogen_filter;
1173 cmd2->body.size.width = metadata->base_size.width;
1174 cmd2->body.size.height = metadata->base_size.height;
1175 cmd2->body.size.depth = metadata->base_size.depth;
1176 cmd2->body.arraySize = metadata->array_size;
1181 cmd->body.surfaceFlags = metadata->flags;
1182 cmd->body.format = metadata->format;
1183 cmd->body.numMipLevels = metadata->mip_levels[0];
1184 cmd->body.multisampleCount = metadata->multisample_count;
1185 cmd->body.autogenFilter = metadata->autogen_filter;
1186 cmd->body.size.width = metadata->base_size.width;
1187 cmd->body.size.height = metadata->base_size.height;
1188 cmd->body.size.depth = metadata->base_size.depth;
1460 struct vmw_surface_metadata metadata = {0};
1518 metadata.flags = svga3d_flags_64;
1519 metadata.format = req->base.format;
1520 metadata.mip_levels[0] = req->base.mip_levels;
1521 metadata.multisample_count = req->base.multisample_count;
1522 metadata.multisample_pattern = req->multisample_pattern;
1523 metadata.quality_level = req->quality_level;
1524 metadata.array_size = req->base.array_size;
1525 metadata.buffer_byte_stride = req->buffer_byte_stride;
1526 metadata.num_sizes = 1;
1527 metadata.base_size = req->base.base_size;
1528 metadata.scanout = req->base.drm_surface_flags &
1532 ret = vmw_gb_surface_define(dev_priv, size, &metadata, &srf);
1651 struct vmw_surface_metadata *metadata;
1667 metadata = &srf->metadata;
1681 rep->creq.base.svga3d_flags = SVGA3D_FLAGS_LOWER_32(metadata->flags);
1682 rep->creq.base.format = metadata->format;
1683 rep->creq.base.mip_levels = metadata->mip_levels[0];
1685 rep->creq.base.multisample_count = metadata->multisample_count;
1686 rep->creq.base.autogen_filter = metadata->autogen_filter;
1687 rep->creq.base.array_size = metadata->array_size;
1689 rep->creq.base.base_size = metadata->base_size;
1699 SVGA3D_FLAGS_UPPER_32(metadata->flags);
1700 rep->creq.multisample_pattern = metadata->multisample_pattern;
1701 rep->creq.quality_level = metadata->quality_level;
1872 if (srf->metadata.format == SVGA3D_BUFFER)
1962 const struct vmw_surface_metadata *metadata = &srf->metadata;
1975 if (metadata->array_size)
1976 num_layers = metadata->array_size;
1977 else if (metadata->flags & SVGA3D_SURFACE_CUBEMAP)
1980 num_mip = metadata->mip_levels[0];
2001 num_samples = max_t(u32, 1, metadata->multisample_count);
2002 ret = svga3dsurface_setup_cache(&metadata->base_size, metadata->format,
2066 * @metadata: Metadata representing the surface to create.
2079 struct vmw_surface_metadata *metadata;
2150 srf->metadata = *req;
2153 metadata = &srf->metadata;
2155 if (metadata->array_size)
2157 else if (metadata->flags & SVGA3D_SURFACE_CUBEMAP)
2160 if (metadata->flags & SVGA3D_SURFACE_MULTISAMPLE)
2161 sample_count = metadata->multisample_count;
2164 svga3dsurface_get_serialized_size_extended(metadata->format,
2165 metadata->base_size,
2166 metadata->mip_levels[0],
2170 if (metadata->flags & SVGA3D_SURFACE_BIND_STREAM_OUTPUT)
2182 metadata->scanout &&
2183 metadata->base_size.width <= dev_priv->stdu_max_width &&
2184 metadata->base_size.height <= dev_priv->stdu_max_height)
2185 metadata->flags |= SVGA3D_SURFACE_SCREENTARGET;