Displaying 13 results from an estimated 13 matches for "vram_domain".
2015 Mar 14
1
[PATCH ddx] Add support for VRAM-less devices to the ddx
...int cpp = bpp / 8, ret;
 
 #ifdef NOUVEAU_PIXMAP_SHARING
@@ -46,7 +46,7 @@ nouveau_allocate_surface(ScrnInfoPtr scrn, int width, int height, int bpp,
 
 	flags = NOUVEAU_BO_MAP;
 	if (bpp >= 8)
-		flags |= shared ? NOUVEAU_BO_GART : NOUVEAU_BO_VRAM;
+		flags |= shared ? NOUVEAU_BO_GART : pNv->vram_domain;
 
 	if (pNv->Architecture >= NV_TESLA) {
 		if (scanout) {
@@ -677,7 +677,7 @@ NVAccelCommonInit(ScrnInfoPtr pScrn)
 	pNv->pushbuf->user_priv = pNv->bufctx;
 
 	/* Scratch buffer */
-	ret = nouveau_bo_new(pNv->dev, NOUVEAU_BO_VRAM | NOUVEAU_BO_MAP,
+	ret = nouveau_bo_new(pNv->...
2014 Oct 29
3
[PATCH 3/3] gk20a: use NOUVEAU_BO_GART as VRAM domain
...gt; @@ -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 also want to set vidmem_bindings = 0... although
potentially after the |= that's done below. Although I guess that
constbuf + command args buf need to be |='d into the sysmem_bindings
for this to work out well. That said, we don't really handle explicit
m...
2014 Oct 27
4
[PATCH 0/3] nouveau: support for custom VRAM domains
...VIDIA 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 NOUVEAU_BO_VRAM when allocating objects, so the right
domain for the chip is used.
Doing so greatly simplifies the equation of memory management on shared-
memory devices, since we don't have to simulate non-existent VRAM memory.
In that respec...
2015 Jun 19
5
[PATCH v3 0/2] nouveau: support for custom VRAM domains
...ike 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 NV_VRAM_DOMAIN() macro
 src/gallium/drivers/nouveau/nouveau_buffer.c           |  6 ++----
 src/gallium/drivers/nouveau/nouveau_screen.c           | 10 ++++++++++
 src/gallium/drivers/nouveau/nouveau_screen.h           |  4 ++++
 src/gallium/drivers/nouveau/nv50/nv50_miptree.c        |  2 +-
 src/gallium/drivers...
2015 Dec 02
3
NV50 compute support questions
...case PIPE_CAP_SEAMLESS_CUBE_MAP_PER_TEXTURE:
        return (class_3d >= NVE4_3D_CLASS) ? 1 : 0;
     case PIPE_CAP_COMPUTE:
-      return (class_3d <= NVE4_3D_CLASS) ? 1 : 0;
+      return 1;
     case PIPE_CAP_PREFER_BLIT_BASED_TEXTURE_TRANSFER:
        return nouveau_screen(pscreen)->vram_domain & NOUVEAU_BO_VRAM ? 1 : 0;
@@ -246,8 +246,6 @@ nvc0_screen_get_shader_param(struct pipe_screen *pscreen, unsigned shader,
           return 0;
        break;
     case PIPE_SHADER_COMPUTE:
-      if (class_3d > NVE4_3D_CLASS)
-         return 0;
        break;
     default:
        return 0...
2014 Nov 19
5
[PATCH v2 0/3] nouveau: support for custom VRAM domains
...VIDIA 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 NOUVEAU_BO_VRAM when allocating objects, so the right
domain for the chip is used.
Doing so greatly simplifies the equation of memory management on shared-
memory devices, since we don't have to simulate non-existent VRAM memory.
In that respec...
2014 Oct 27
0
[PATCH 3/3] gk20a: use NOUVEAU_BO_GART as VRAM domain
...allium/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;
+      break;
+   default:
+      break;
+   }
+
    ret = nouveau_screen_init(&screen->base, dev);
    if (ret) {
       nvc0_screen_destroy(pscreen);
-- 
2.1.2
2014 Nov 05
0
[PATCH 3/3] gk20a: use NOUVEAU_BO_GART as VRAM domain
...en_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 also want to set vidmem_bindings = 0... although
> potentially after the |= that's done below. Although I guess that
> constbuf + command args buf need to be |='d into the sysmem_bindings
> for this to work out well.
Thanks for pointing thi...
2015 Dec 02
0
NV50 compute support questions
..._MAP_PER_TEXTURE:
>         return (class_3d >= NVE4_3D_CLASS) ? 1 : 0;
>      case PIPE_CAP_COMPUTE:
> -      return (class_3d <= NVE4_3D_CLASS) ? 1 : 0;
> +      return 1;
>      case PIPE_CAP_PREFER_BLIT_BASED_TEXTURE_TRANSFER:
>         return nouveau_screen(pscreen)->vram_domain & NOUVEAU_BO_VRAM ?
> 1 : 0;
>
> @@ -246,8 +246,6 @@ nvc0_screen_get_shader_param(struct pipe_screen
> *pscreen, unsigned shader,
>            return 0;
>         break;
>      case PIPE_SHADER_COMPUTE:
> -      if (class_3d > NVE4_3D_CLASS)
> -         return 0;
&...
2015 Dec 04
0
NV50 compute support questions
...lass_3d >= NVE4_3D_CLASS) ? 1 : 0;
>>>      case PIPE_CAP_COMPUTE:
>>> -      return (class_3d <= NVE4_3D_CLASS) ? 1 : 0;
>>> +      return 1;
>>>      case PIPE_CAP_PREFER_BLIT_BASED_TEXTURE_TRANSFER:
>>>         return nouveau_screen(pscreen)->vram_domain & NOUVEAU_BO_VRAM ?
>>> 1 : 0;
>>>
>>> @@ -246,8 +246,6 @@ nvc0_screen_get_shader_param(struct pipe_screen
>>> *pscreen, unsigned shader,
>>>            return 0;
>>>         break;
>>>      case PIPE_SHADER_COMPUTE:
>>> -...
2015 Dec 04
4
NV50 compute support questions
...t;         return (class_3d >= NVE4_3D_CLASS) ? 1 : 0;
>>      case PIPE_CAP_COMPUTE:
>> -      return (class_3d <= NVE4_3D_CLASS) ? 1 : 0;
>> +      return 1;
>>      case PIPE_CAP_PREFER_BLIT_BASED_TEXTURE_TRANSFER:
>>         return nouveau_screen(pscreen)->vram_domain & NOUVEAU_BO_VRAM ?
>> 1 : 0;
>>
>> @@ -246,8 +246,6 @@ nvc0_screen_get_shader_param(struct pipe_screen
>> *pscreen, unsigned shader,
>>            return 0;
>>         break;
>>      case PIPE_SHADER_COMPUTE:
>> -      if (class_3d > NVE4_3D_C...
2015 Nov 20
2
NV50 compute support questions
Hi,
On 20-11-15 17:07, Samuel Pitoiset wrote:
>
>
> On 11/20/2015 11:36 AM, Hans de Goede wrote:
>> Hi Samual, et al,
>
> Hi Hans,
>
>>
>> In
>> http://cgit.freedesktop.org/mesa/mesa/commit/src/gallium/drivers/nouveau?id=ff72440b40211326eda118232fabd53965410afd
>>
>> you write: "This compute support has been tested by
>> Pierre
2014 Nov 19
1
[PATCH v2 2/3] nvc0: use NV_VRAM_DOMAIN() macro
On Wed, Nov 19, 2014 at 12:41 AM, Alexandre Courbot <acourbot at nvidia.com> wrote:
> Use the newly-introduced NV_VRAM_DOMAIN() macro to support alternative
> VRAM domains for chips that do not use dedicated video memory.
>
> Signed-off-by: Alexandre Courbot <acourbot at nvidia.com>
> ---
>  src/gallium/drivers/nouveau/nouveau_buffer.c           |  6 ++----
>  src/gallium/drivers/nouveau/nv50/nv50_...