search for: nvc0_screen_create

Displaying 20 results from an estimated 51 matches for "nvc0_screen_create".

2014 Nov 19
5
[PATCH v2 0/3] nouveau: support for custom VRAM domains
This series is to allow NVIDIA chips with shared memory to operate more efficiently (and to operate at all once we disable VRAM from the kernel driver) by allowing nouveau_screen to specify a domain to use for objects originally allocated into VRAM. If the domain is not overridden, the default NOUVEAU_BO_VRAM is used. A NV_VRAM_DOMAIN() macro is then introduced to be used in place of
2015 Dec 07
2
[mesa v2 5/9] nouveau: fix screen creation failure paths
...err); \ > - nvc0_screen_destroy(pscreen); \ > - return NULL; \ > + goto fail; \ > } while(0) > > struct nouveau_screen * > @@ -650,6 +649,7 @@ nvc0_screen_create(struct nouveau_device *dev) > if (!screen) > return NULL; > pscreen = &screen->base.base; > + pscreen->destroy = nvc0_screen_destroy; > > ret = nouveau_screen_init(&screen->base, dev); > if (ret) { > @@ -672,7 +672,6 @@ nvc0_screen_c...
2015 Nov 27
13
[mesa v2 1/9] nouveau: bump required libdrm version to 2.4.66
From: Ben Skeggs <bskeggs at redhat.com> Signed-off-by: Ben Skeggs <bskeggs at redhat.com> --- configure.ac | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index 4016871..c02ee61 100644 --- a/configure.ac +++ b/configure.ac @@ -73,7 +73,7 @@ LIBDRM_RADEON_REQUIRED=2.4.56 LIBDRM_AMDGPU_REQUIRED=2.4.63 LIBDRM_INTEL_REQUIRED=2.4.61
2014 Oct 29
3
[PATCH 3/3] gk20a: use NOUVEAU_BO_GART as VRAM domain
...gt; diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c b/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c > index ac5823e4a8d5..ad143cd9a140 100644 > --- a/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c > +++ b/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c > @@ -620,6 +620,16 @@ nvc0_screen_create(struct nouveau_device *dev) > return NULL; > pscreen = &screen->base.base; > > + /* Recognize chipsets with no VRAM */ > + switch (dev->chipset) { > + /* GK20A */ > + case 0xea: > + screen->base.vram_domain = NOUVEAU_BO_GART; I think you...
2015 Nov 26
9
[mesa 1/9] nouveau: bump required libdrm version to 2.4.66
From: Ben Skeggs <bskeggs at redhat.com> Signed-off-by: Ben Skeggs <bskeggs at redhat.com> --- configure.ac | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index 4016871..c02ee61 100644 --- a/configure.ac +++ b/configure.ac @@ -73,7 +73,7 @@ LIBDRM_RADEON_REQUIRED=2.4.56 LIBDRM_AMDGPU_REQUIRED=2.4.63 LIBDRM_INTEL_REQUIRED=2.4.61
2015 Dec 07
1
[mesa v2 5/9] nouveau: fix screen creation failure paths
...c0_screen_destroy(pscreen); \ >>> - return NULL; \ >>> + goto fail; \ >>> } while(0) >>> >>> struct nouveau_screen * >>> @@ -650,6 +649,7 @@ nvc0_screen_create(struct nouveau_device *dev) >>> if (!screen) >>> return NULL; >>> pscreen = &screen->base.base; >>> + pscreen->destroy = nvc0_screen_destroy; >>> >>> ret = nouveau_screen_init(&screen->base, dev); >>&g...
2015 Dec 16
11
[mesa v3 1/9] nouveau: bump required libdrm version to 2.4.66
From: Ben Skeggs <bskeggs at redhat.com> v2. forgot bump for non-gallium driver Signed-off-by: Ben Skeggs <bskeggs at redhat.com> --- configure.ac | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/configure.ac b/configure.ac index b6680d0..965c6f7 100644 --- a/configure.ac +++ b/configure.ac @@ -72,8 +72,8 @@ LIBDRM_REQUIRED=2.4.60
2014 Oct 27
4
[PATCH 0/3] nouveau: support for custom VRAM domains
This series is to allow NVIDIA chips with shared memory to operate more efficiently (and to operate at all once we disable VRAM from the kernel driver) by allowing nouveau_screen to specify a domain to use for objects originally allocated into VRAM. If the domain is not overridden, the default NOUVEAU_BO_VRAM is used. A NV_VRAM_DOMAIN() macro is then introduced to be used in place of
2014 Oct 27
2
[PATCH] nvc0: remove unused nvc0_screen::mm_VRAM_fe0
...nvc0_screen_destroy(struct pipe_screen *pscreen) FREE(screen->tic.entries); - nouveau_mm_destroy(screen->mm_VRAM_fe0); - nouveau_object_del(&screen->eng3d); nouveau_object_del(&screen->eng2d); nouveau_object_del(&screen->m2mf); @@ -1027,7 +1025,6 @@ nvc0_screen_create(struct nouveau_device *dev) mm_config.nvc0.tile_mode = 0; mm_config.nvc0.memtype = 0xfe0; - screen->mm_VRAM_fe0 = nouveau_mm_create(dev, NOUVEAU_BO_VRAM, &mm_config); if (!nvc0_blitter_create(screen)) goto fail; diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_scre...
2014 Nov 19
0
[PATCH v2 2/3] nvc0: use NV_VRAM_DOMAIN() macro
...lt;< 17, size, + ret = nouveau_bo_new(screen->base.device, NV_VRAM_DOMAIN(&screen->base), 1 << 17, size, NULL, &bo); if (ret) { NOUVEAU_ERR("failed to allocate TLS area, size: 0x%"PRIx64"\n", size); @@ -812,7 +812,7 @@ nvc0_screen_create(struct nouveau_device *dev) nvc0_magic_3d_init(push, screen->eng3d->oclass); - ret = nouveau_bo_new(dev, NOUVEAU_BO_VRAM, 1 << 17, 1 << 20, NULL, + ret = nouveau_bo_new(dev, NV_VRAM_DOMAIN(&screen->base), 1 << 17, 1 << 20, NULL,...
2015 Nov 27
0
[mesa v2 5/9] nouveau: fix screen creation failure paths
...\ NOUVEAU_ERR(str, err); \ - nvc0_screen_destroy(pscreen); \ - return NULL; \ + goto fail; \ } while(0) struct nouveau_screen * @@ -650,6 +649,7 @@ nvc0_screen_create(struct nouveau_device *dev) if (!screen) return NULL; pscreen = &screen->base.base; + pscreen->destroy = nvc0_screen_destroy; ret = nouveau_screen_init(&screen->base, dev); if (ret) { @@ -672,7 +672,6 @@ nvc0_screen_create(struct nouveau_device *dev)...
2014 May 27
2
[PATCH 1/2] nvc0: add GK20A 3D class
...gt; diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c b/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c > index cccfe2bba23d..95e5ef81cd79 100644 > --- a/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c > +++ b/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c > @@ -702,7 +702,14 @@ nvc0_screen_create(struct nouveau_device *dev) > obj_class = NVF0_3D_CLASS; > break; > case 0xe0: > - obj_class = NVE4_3D_CLASS; > + switch (dev->chipset) { > + case 0xea: > + obj_class = NVEA_3D_CLASS; Again, would be nice to be consistent with the wa...
2014 Nov 19
1
[PATCH v2 2/3] nvc0: use NV_VRAM_DOMAIN() macro
...et = nouveau_bo_new(screen->base.device, NV_VRAM_DOMAIN(&screen->base), 1 << 17, size, > NULL, &bo); > if (ret) { > NOUVEAU_ERR("failed to allocate TLS area, size: 0x%"PRIx64"\n", size); > @@ -812,7 +812,7 @@ nvc0_screen_create(struct nouveau_device *dev) > > nvc0_magic_3d_init(push, screen->eng3d->oclass); > > - ret = nouveau_bo_new(dev, NOUVEAU_BO_VRAM, 1 << 17, 1 << 20, NULL, > + ret = nouveau_bo_new(dev, NV_VRAM_DOMAIN(&screen->base), 1 << 17, 1 << 20,...
2017 Mar 30
1
[PATCH] nvc0: support for GP10B
...changed, 1 insertion(+) diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c b/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c index 3e4c4f44ba92..c9042fc00447 100644 --- a/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c +++ b/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c @@ -903,6 +903,7 @@ nvc0_screen_create(struct nouveau_device *dev) case 0x130: switch (dev->chipset) { case 0x130: + case 0x13b: obj_class = GP100_3D_CLASS; break; default: -- 2.12.0
2015 Dec 07
0
[mesa v2 5/9] nouveau: fix screen creation failure paths
...\ >> - nvc0_screen_destroy(pscreen); \ >> - return NULL; \ >> + goto fail; \ >> } while(0) >> >> struct nouveau_screen * >> @@ -650,6 +649,7 @@ nvc0_screen_create(struct nouveau_device *dev) >> if (!screen) >> return NULL; >> pscreen = &screen->base.base; >> + pscreen->destroy = nvc0_screen_destroy; >> >> ret = nouveau_screen_init(&screen->base, dev); >> if (ret) { >> @...
2014 Nov 19
1
[PATCH v2 2/3] nvc0: use NV_VRAM_DOMAIN() macro
...ret = nouveau_bo_new(screen->base.device, NV_VRAM_DOMAIN(&screen->base), 1 << 17, size, > NULL, &bo); > if (ret) { > NOUVEAU_ERR("failed to allocate TLS area, size: 0x%"PRIx64"\n", size); > @@ -812,7 +812,7 @@ nvc0_screen_create(struct nouveau_device *dev) > > nvc0_magic_3d_init(push, screen->eng3d->oclass); > > - ret = nouveau_bo_new(dev, NOUVEAU_BO_VRAM, 1 << 17, 1 << 20, NULL, > + ret = nouveau_bo_new(dev, NV_VRAM_DOMAIN(&screen->base), 1 << 17, 1 << 20, NULL,...
2015 Jun 19
5
[PATCH v3 0/2] nouveau: support for custom VRAM domains
New revision of this patchset that prevents VRAM objects from being allocated on VRAM-less systems like Tegra. This is required for Mesa to work on such systems. Changes since v2: - Use vram_size to detect systems without VRAM and set the correct domain instead of expecting each chip to set its domain explicitly. Alexandre Courbot (2): nouveau: support for custom VRAM domains nvc0: use
2014 May 27
8
[PATCH 0/2] nvc0: support for GK20A (Tegra K1)
The following 2 patches make it possible to run Mesa programs on GK20A (Tegra K1). GK20A is very similar to GK104, but uses a new (backward-compatible) 3D class as well as the same ISA as GK110 (SM35). Taking these differences into account is sufficient to successfully render simple off-screen buffers. Alexandre Courbot (2): nvc0: add GK20A 3D class nvc0: use SM35 ISA with GK20A
2014 Jul 10
3
[PATCH 0/3] nvc0: ARB_(multi_)draw_indirect support
The main patches are from Christoph. Unfortunately they're a little beyond my understanding of all the vertex-related details, but they generally seemed fine. I'm just going to push these unless someone steps up to review them. Christoph Bumiller (2): nvc0: add support for indirect drawing nvc0: fix translate path for PRIM_RESTART_WITH_DRAW_ARRAYS Ilia Mirkin (1): nouveau: check if
2014 Jun 17
2
[PATCH try 2 1/2] gallium/nouveau: decouple nouveau_fence implementation from screen
...e(struct pipe_screen *pscreen) +nvc0_screen_fence_update(struct nouveau_fence_mgr *mgr) { - struct nvc0_screen *screen = nvc0_screen(pscreen); + struct nvc0_screen *screen = NULL; + + screen = container_of(mgr, screen, base.fence); return screen->fence.map[0]; } @@ -639,6 +644,8 @@ nvc0_screen_create(struct nouveau_device *dev) goto fail; nouveau_bo_map(screen->fence.bo, 0, NULL); screen->fence.map = screen->fence.bo->map; + screen->base.fence.screen = &screen->base; + screen->base.fence.flush = nouveau_screen_fence_kick; screen->base.fence.emi...