Displaying 20 results from an estimated 36 matches for "nr_sampl".
Did you mean:
nr_samples
2018 Dec 19
0
[PATCH 07/10] drm/virtio: params struct for virtio_gpu_cmd_create_resource_3d()
.../drm/virtio/virtgpu_drv.h
+++ b/drivers/gpu/drm/virtio/virtgpu_drv.h
@@ -59,6 +59,14 @@ struct virtio_gpu_object_params {
uint32_t height;
unsigned long size;
bool pinned;
+ /* 3d */
+ uint32_t target;
+ uint32_t bind;
+ uint32_t depth;
+ uint32_t array_size;
+ uint32_t last_level;
+ uint32_t nr_samples;
+ uint32_t flags;
};
struct virtio_gpu_object {
@@ -313,7 +321,7 @@ void virtio_gpu_cmd_transfer_to_host_3d(struct virtio_gpu_device *vgdev,
void
virtio_gpu_cmd_resource_create_3d(struct virtio_gpu_device *vgdev,
struct virtio_gpu_object *bo,
- struct virtio_gpu_resource_create...
2014 Apr 18
0
[PATCH] nv50: use 2d blit when src/dst have same number of samples
...ivers/nouveau/nv50/nv50_surface.c
index c28abe0..9a3548a 100644
--- a/src/gallium/drivers/nouveau/nv50/nv50_surface.c
+++ b/src/gallium/drivers/nouveau/nv50/nv50_surface.c
@@ -1299,8 +1299,8 @@ nv50_blit_eng2d(struct nv50_context *nv50, const struct pipe_blit_info *info)
if (src->base.base.nr_samples > dst->base.base.nr_samples) {
/* center src coorinates for proper MS resolve filtering */
- srcx += (int64_t)src->ms_x << 32;
- srcy += (int64_t)src->ms_y << 32;
+ srcx += (int64_t)1 << (src->ms_x + 31);
+ srcy += (int64_t)1 << (s...
2019 Mar 18
0
[PATCH v3 4/5] drm/virtio: params struct for virtio_gpu_cmd_create_resource_3d()
...m/virtio/virtgpu_drv.h
+++ b/drivers/gpu/drm/virtio/virtgpu_drv.h
@@ -55,6 +55,14 @@ struct virtio_gpu_object_params {
uint32_t width;
uint32_t height;
unsigned long size;
+ /* 3d */
+ uint32_t target;
+ uint32_t bind;
+ uint32_t depth;
+ uint32_t array_size;
+ uint32_t last_level;
+ uint32_t nr_samples;
+ uint32_t flags;
};
struct virtio_gpu_object {
@@ -309,7 +317,7 @@ void virtio_gpu_cmd_transfer_to_host_3d(struct virtio_gpu_device *vgdev,
void
virtio_gpu_cmd_resource_create_3d(struct virtio_gpu_device *vgdev,
struct virtio_gpu_object *bo,
- struct virtio_gpu_resource_create...
2015 Sep 02
2
nv3x libreoffice impress opengl animations not working
...r" way to do MS is to create a MS visual. You can run
>> glretrace --samples=4 to get the same effect.
>>
>> Of course I don't really see how MS can work at all with nv30 since it
>> doesn't support a resolve step:
>>
>> if (info.src.resource->nr_samples > 1 &&
>> info.dst.resource->nr_samples <= 1 &&
>> !util_format_is_depth_or_stencil(info.src.resource->format) &&
>> !util_format_is_pure_integer(info.src.resource->format)) {
>> debug_printf("nv30:...
2015 Aug 31
2
nv3x libreoffice impress opengl animations not working
...s some
>> logic that attempts to round-up-to-nearest-POT size, but instead
>> multiplies width by 2?
>
>
> Ok, some debugging / poking at thing further I now know where the multiply
> by 2 comes from, the pipe_resource *tmpl passed into nv30_miptree_create
> has templ->nr_samples = 4, and nv30_miptree_create has:
>
> switch (tmpl->nr_samples) {
> case 4:
> mt->ms_mode = 0x00004000;
> mt->ms_x = 1;
> mt->ms_y = 1;
> break;
> case 2:
> mt->ms_mode = 0x00003000;
> mt->ms_x = 1;
>...
2015 Aug 28
2
nv3x libreoffice impress opengl animations not working
On Fri, Aug 28, 2015 at 4:54 AM, Hans de Goede <hdegoede at redhat.com> wrote:
> Hi,
>
> On 27-08-15 20:19, Ilia Mirkin wrote:
>>
>> On Thu, Aug 27, 2015 at 1:59 PM, Alex Deucher <alexdeucher at gmail.com>
>> wrote:
>
>
> <snip>
>
>>>>>> 2) Since the glretrace does work outside of libreoffice impress, I
2015 Jan 02
2
[PATCH v2] nv50: enable texture compression
...nv50_miptree.c
@@ -65,8 +65,7 @@ nv50_tex_choose_tile_dims(unsigned nx, unsigned ny, unsigned nz)
static uint32_t
nv50_mt_choose_storage_type(struct nv50_miptree *mt, boolean compressed)
{
- const unsigned ms = mt->ms_x + mt->ms_y;
-
+ const unsigned ms = util_logbase2(mt->base.base.nr_samples);
uint32_t tile_flags;
if (unlikely(mt->base.base.flags & NOUVEAU_RESOURCE_FLAG_LINEAR))
@@ -96,6 +95,26 @@ nv50_mt_choose_storage_type(struct nv50_miptree *mt, boolean compressed)
tile_flags = 0x60 + ms;
break;
default:
+ switch (mt->base.base.format) {...
2015 Jan 02
2
[PATCH] nv50: enable texture compression
...nv50_miptree.c
@@ -65,8 +65,7 @@ nv50_tex_choose_tile_dims(unsigned nx, unsigned ny, unsigned nz)
static uint32_t
nv50_mt_choose_storage_type(struct nv50_miptree *mt, boolean compressed)
{
- const unsigned ms = mt->ms_x + mt->ms_y;
-
+ const unsigned ms = util_logbase2(mt->base.base.nr_samples);
uint32_t tile_flags;
if (unlikely(mt->base.base.flags & NOUVEAU_RESOURCE_FLAG_LINEAR))
@@ -96,6 +95,7 @@ nv50_mt_choose_storage_type(struct nv50_miptree *mt, boolean compressed)
tile_flags = 0x60 + ms;
break;
default:
+ compressed = false;
switch (...
2015 Jan 02
1
[PATCH v2] nv50: enable texture compression
...sed)
> The caller of this currently always says true. However it should
> probably be drm_version >= whatever.
Oh sure, i'll add it!
>
>> {
>> - const unsigned ms = mt->ms_x + mt->ms_y;
>> -
>> + const unsigned ms = util_logbase2(mt->base.base.nr_samples);
>> uint32_t tile_flags;
>>
>> if (unlikely(mt->base.base.flags & NOUVEAU_RESOURCE_FLAG_LINEAR))
>> @@ -96,6 +95,26 @@ nv50_mt_choose_storage_type(struct nv50_miptree *mt, boolean compressed)
>> tile_flags = 0x60 + ms;
>> break...
2015 Sep 07
2
[PATCH mesa 2/3] nv30: Fix color resolving for nv3x cards
...0,
> + const struct pipe_blit_info *info)
> +{
> struct nv30_rect src, dst;
>
> define_rect(info->src.resource, 0, info->src.box.z, info->src.box.x,
> @@ -170,7 +220,10 @@ nv30_blit(struct pipe_context *pipe,
> info.dst.resource->nr_samples <= 1 &&
> !util_format_is_depth_or_stencil(info.src.resource->format) &&
> !util_format_is_pure_integer(info.src.resource->format)) {
> - nv30_resource_resolve(nv30, blit_info);
> + if (nv30->screen->eng3d->oclass >= NV40_...
2015 Sep 03
2
[PATCH mesa 3/4] nv30: Do not export msaa capabable visuals on nv3x
On Thu, Sep 3, 2015 at 7:25 AM, Hans de Goede <hdegoede at redhat.com> wrote:
> On nv3x we will likely end up using the cpu to do color resolving for msaa
> blits. Disable msaa on these cards so that we do not end up using the cpu.
Actually the CPU fallback won't do scaled, so it's stuck with SIFM or
assert(false). Which isn't great, but... it's what the HW does. I
2015 Sep 21
2
[PATCH v2 4/6] virtio-gpu: add 3d/virgl support
...ze;
+ struct list_head validate_list;
+ struct ttm_validate_buffer mainbuf;
+ struct virtio_gpu_fence *fence = NULL;
+ struct ww_acquire_ctx ticket;
+ struct virtio_gpu_resource_create_3d rc_3d;
+
+ if (vgdev->has_virgl_3d == false) {
+ if (rc->depth > 1)
+ return -EINVAL;
+ if (rc->nr_samples > 1)
+ return -EINVAL;
+ if (rc->last_level > 1)
+ return -EINVAL;
+ if (rc->target != 2)
+ return -EINVAL;
+ if (rc->array_size > 1)
+ return -EINVAL;
+ }
+
+ INIT_LIST_HEAD(&validate_list);
+ memset(&mainbuf, 0, sizeof(struct ttm_validate_buffer));
+
+ virti...
2015 Sep 21
2
[PATCH v2 4/6] virtio-gpu: add 3d/virgl support
...ze;
+ struct list_head validate_list;
+ struct ttm_validate_buffer mainbuf;
+ struct virtio_gpu_fence *fence = NULL;
+ struct ww_acquire_ctx ticket;
+ struct virtio_gpu_resource_create_3d rc_3d;
+
+ if (vgdev->has_virgl_3d == false) {
+ if (rc->depth > 1)
+ return -EINVAL;
+ if (rc->nr_samples > 1)
+ return -EINVAL;
+ if (rc->last_level > 1)
+ return -EINVAL;
+ if (rc->target != 2)
+ return -EINVAL;
+ if (rc->array_size > 1)
+ return -EINVAL;
+ }
+
+ INIT_LIST_HEAD(&validate_list);
+ memset(&mainbuf, 0, sizeof(struct ttm_validate_buffer));
+
+ virti...
2015 Oct 02
0
[PATCH v3 4/7] virtio-gpu: add 3d/virgl support
...ze;
+ struct list_head validate_list;
+ struct ttm_validate_buffer mainbuf;
+ struct virtio_gpu_fence *fence = NULL;
+ struct ww_acquire_ctx ticket;
+ struct virtio_gpu_resource_create_3d rc_3d;
+
+ if (vgdev->has_virgl_3d == false) {
+ if (rc->depth > 1)
+ return -EINVAL;
+ if (rc->nr_samples > 1)
+ return -EINVAL;
+ if (rc->last_level > 1)
+ return -EINVAL;
+ if (rc->target != 2)
+ return -EINVAL;
+ if (rc->array_size > 1)
+ return -EINVAL;
+ }
+
+ INIT_LIST_HEAD(&validate_list);
+ memset(&mainbuf, 0, sizeof(struct ttm_validate_buffer));
+
+ virti...
2015 Oct 02
0
[PATCH v3 4/7] virtio-gpu: add 3d/virgl support
...ze;
+ struct list_head validate_list;
+ struct ttm_validate_buffer mainbuf;
+ struct virtio_gpu_fence *fence = NULL;
+ struct ww_acquire_ctx ticket;
+ struct virtio_gpu_resource_create_3d rc_3d;
+
+ if (vgdev->has_virgl_3d == false) {
+ if (rc->depth > 1)
+ return -EINVAL;
+ if (rc->nr_samples > 1)
+ return -EINVAL;
+ if (rc->last_level > 1)
+ return -EINVAL;
+ if (rc->target != 2)
+ return -EINVAL;
+ if (rc->array_size > 1)
+ return -EINVAL;
+ }
+
+ INIT_LIST_HEAD(&validate_list);
+ memset(&mainbuf, 0, sizeof(struct ttm_validate_buffer));
+
+ virti...
2015 Sep 21
0
[PATCH v2 4/6] virtio-gpu: add 3d/virgl support
...struct ttm_validate_buffer mainbuf;
> + struct virtio_gpu_fence *fence = NULL;
> + struct ww_acquire_ctx ticket;
> + struct virtio_gpu_resource_create_3d rc_3d;
> +
> + if (vgdev->has_virgl_3d == false) {
> + if (rc->depth > 1)
> + return -EINVAL;
> + if (rc->nr_samples > 1)
> + return -EINVAL;
> + if (rc->last_level > 1)
> + return -EINVAL;
> + if (rc->target != 2)
> + return -EINVAL;
> + if (rc->array_size > 1)
> + return -EINVAL;
> + }
> +
> + INIT_LIST_HEAD(&validate_list);
> + memset(&mai...
2019 Apr 10
0
[PATCH 3/3] virtio-gpu api: VIRTIO_GPU_F_RESSOURCE_V2
...RTIO_GPU_CMD_RESOURCE_CREATE_V2 */
+struct virtio_gpu_cmd_resource_create_v2 {
+ struct virtio_gpu_ctrl_hdr hdr;
+ __le32 resource_id;
+ __le32 format;
+ __le32 width;
+ __le32 height;
+ /* 3d only */
+ __le32 target;
+ __le32 bind;
+ __le32 depth;
+ __le32 array_size;
+ __le32 last_level;
+ __le32 nr_samples;
+ __le32 flags;
+};
+
+/* VIRTIO_GPU_RESP_OK_RESOURCE_INFO */
+struct virtio_gpu_resp_resource_info {
+ struct virtio_gpu_ctrl_hdr hdr;
+ __le32 stride[4];
+ __le32 size[4];
+};
+
#define VIRTIO_GPU_CAPSET_VIRGL 1
#define VIRTIO_GPU_CAPSET_VIRGL2 2
--
2.18.1
2019 Apr 11
0
[PATCH 3/3] virtio-gpu api: VIRTIO_GPU_F_RESSOURCE_V2
...format;
> > + __le32 width;
> > + __le32 height;
> > + /* 3d only */
> > + __le32 target;
> > + __le32 bind;
> > + __le32 depth;
> > + __le32 array_size;
> > + __le32 last_level;
> > + __le32 nr_samples;
> > + __le32 flags;
> > +};
>
>
> I assume this is always backed by some host side allocation, without any
> guest side pages associated with it?
No. It is not backed at all yet. Workflow would be like this:
(1) VIRTIO_GPU_CMD_RESOURCE_CREATE_V2
(2) VIRTIO...
2015 Jan 02
0
[PATCH] nv50: enable texture compression
...@@ nv50_tex_choose_tile_dims(unsigned nx, unsigned ny, unsigned nz)
> static uint32_t
> nv50_mt_choose_storage_type(struct nv50_miptree *mt, boolean compressed)
> {
> - const unsigned ms = mt->ms_x + mt->ms_y;
> -
> + const unsigned ms = util_logbase2(mt->base.base.nr_samples);
> uint32_t tile_flags;
>
> if (unlikely(mt->base.base.flags & NOUVEAU_RESOURCE_FLAG_LINEAR))
> @@ -96,6 +95,7 @@ nv50_mt_choose_storage_type(struct nv50_miptree *mt, boolean compressed)
> tile_flags = 0x60 + ms;
> break;
> default:
> +...
2015 Jan 02
0
[PATCH v2] nv50: enable texture compression
...ose_storage_type(struct nv50_miptree *mt, boolean compressed)
The caller of this currently always says true. However it should
probably be drm_version >= whatever.
> {
> - const unsigned ms = mt->ms_x + mt->ms_y;
> -
> + const unsigned ms = util_logbase2(mt->base.base.nr_samples);
> uint32_t tile_flags;
>
> if (unlikely(mt->base.base.flags & NOUVEAU_RESOURCE_FLAG_LINEAR))
> @@ -96,6 +95,26 @@ nv50_mt_choose_storage_type(struct nv50_miptree *mt, boolean compressed)
> tile_flags = 0x60 + ms;
> break;
> default:
> +...