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_...