Displaying 20 results from an estimated 159 matches for "instmem".
2014 Dec 23
1
[PATCH nouveau 08/11] instmem: add dummy support for GK20A
On Tue, Dec 23, 2014 at 5:40 AM, Vince Hsu <vinceh at nvidia.com> wrote:
> This is a workaround to avoid the instmem backup/restore during the suspend
> and resume process in nv50 instemem driver.
>
> Signed-off-by: Vince Hsu <vinceh at nvidia.com>
> ---
> drm/Kbuild | 1 +
> nvkm/engine/device/nve0.c | 2 +-
> nvkm/include/subdev/instmem.h | 1 +
> nvkm/su...
2015 Feb 11
1
[PATCH v2 6/6] instmem/gk20a: add IOMMU support
On Wed, Feb 11, 2015 at 2:21 AM, Alexandre Courbot <gnurou at gmail.com> wrote:
> Let GK20A's instmem take advantage of the IOMMU if it is present. Having
> an IOMMU means that instmem is no longer allocated using the DMA API,
> but instead obtained through page_alloc and made contiguous to the GPU
> by IOMMU mappings.
>
> Signed-off-by: Alexandre Courbot <acourbot at nvidia.com&g...
2014 Dec 23
0
[PATCH nouveau 08/11] instmem: add dummy support for GK20A
This is a workaround to avoid the instmem backup/restore during the suspend
and resume process in nv50 instemem driver.
Signed-off-by: Vince Hsu <vinceh at nvidia.com>
---
drm/Kbuild | 1 +
nvkm/engine/device/nve0.c | 2 +-
nvkm/include/subdev/instmem.h | 1 +
nvkm/subdev/instmem/gk20a.c | 70 +++++++++++...
2015 Feb 11
0
[PATCH v2 2/6] instmem/gk20a: move memory allocation to instmem
GK20A does not have dedicated RAM, thus having a RAM device for it does
not make sense. Move the contiguous physical memory allocation to
instmem.
Signed-off-by: Alexandre Courbot <acourbot at nvidia.com>
---
drm/nouveau/include/nvkm/subdev/instmem.h | 1 +
drm/nouveau/nvkm/engine/device/gk104.c | 2 +-
drm/nouveau/nvkm/subdev/fb/ramgk20a.c | 86 +-----------
drm/nouveau/nvkm/subdev/instmem/Kbuild | 1 +
drm/nouveau/...
2015 Feb 17
1
[PATCH v3 4/6] instmem/gk20a: use DMA attributes
On Tue, Feb 17, 2015 at 5:48 PM, Alexandre Courbot <acourbot at nvidia.com> wrote:
> instmem for GK20A is allocated using dma_alloc_coherent(), which
> provides us with a coherent CPU mapping that we never use because
> instmem objects are accessed through PRAMIN. Switch to
> dma_alloc_attrs() which gives us the option to dismiss that CPU mapping
> and free up some CPU virtual...
2017 Dec 08
3
[PATCH] drm/nouveau/imem/nv50: fix incorrect use of refcount API
...is explicitly forbidden by the API. Instead, use
refcount_set() to set it to 1.
Signed-off-by: Ard Biesheuvel <ard.biesheuvel at linaro.org>
---
Apologies if this was already found and fixed. I don't usually follow
the DRM or nouveau mailing lists.
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c b/drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c
index 1ba7289684aa..db48a1daca0c 100644
--- a/drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c
+++ b/drivers/gpu/drm/n...
2016 Feb 24
0
[PATCH] instmem/gk20a: set DMA mask early
DMA mask is typically set in nouveau_ttm_init(), but this function is
called late during initialization and GK20A's instmem will have called
DMA functions before this happens.
Having a wrongly set DMA mask can result in the use of unneeded bounce
buffers. Set it in GK20A's instmem constructor to avoid this.
Signed-off-by: Alexandre Courbot <acourbot at nvidia.com>
---
drm/nouveau/nvkm/subdev/instmem/gk20a.c...
2017 Jan 30
2
[PATCH] drm/nouveau: gk20a: Turn instmem lock into mutex
...ress space. These functions
may sleep, so protecting them by a spin lock is not safe. This triggers
a warning if the DEBUG_ATOMIC_SLEEP Kconfig option is enabled. Fix this
by using a mutex instead.
Signed-off-by: Thierry Reding <treding at nvidia.com>
---
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/gk20a.c | 19 ++++++++-----------
1 file changed, 8 insertions(+), 11 deletions(-)
diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/instmem/gk20a.c b/drivers/gpu/drm/nouveau/nvkm/subdev/instmem/gk20a.c
index a6a7fa0d7679..7f5244d57d2f 100644
--- a/drivers/gpu/drm/nouveau/nvkm/subdev/instmem/gk20a....
2015 Apr 17
4
[PATCH 2/6] instmem/gk20a: refer to IOMMU physical translation bit
On Thu, Apr 16, 2015 at 8:06 PM, Vince Hsu <vinceh at nvidia.com> wrote:
> Instead of hard-coding the translation bit in subdev driver, we refer to
> the platform data.
>
> Signed-off-by: Vince Hsu <vinceh at nvidia.com>
> ---
> drm/nouveau/nvkm/subdev/instmem/gk20a.c | 13 +++++++++----
> 1 file changed, 9 insertions(+), 4 deletions(-)
>
> diff --git a/drm/nouveau/nvkm/subdev/instmem/gk20a.c b/drm/nouveau/nvkm/subdev/instmem/gk20a.c
> index dd0994d9ebfc..69ef5eae3279 100644
> --- a/drm/nouveau/nvkm/subdev/instmem/gk20a.c
> +++ b/drm/no...
2015 Mar 10
1
[PATCH] instmem/gk20a: fix crash during error path
If a memory allocation fails when using the DMA allocator,
gk20a_instobj_dtor_dma() will be called on the failed instmem object.
At this time, node->handle might not be NULL despite the call to
dma_alloc_attrs() having failed. node->cpuaddr is the right member to
check for such a failure, so use it instead.
Reported-by: Vince Hsu <vinceh at nvidia.com>
Signed-off-by: Alexandre Courbot <acourbot at nvi...
2015 Jan 23
0
[PATCH 4/6] instmem/gk20a: use DMA attributes
instmem for GK20A is allocated using dma_alloc_coherent(), which
provides us with a coherent CPU mapping that we never use because
instmem objects are accessed through PRAMIN. Switch to
dma_alloc_attrs() which gives us the option to dismiss that CPU mapping
and free up some CPU virtual space.
Signed-off-b...
2015 Feb 17
0
[PATCH v3 4/6] instmem/gk20a: use DMA attributes
instmem for GK20A is allocated using dma_alloc_coherent(), which
provides us with a coherent CPU mapping that we never use because
instmem objects are accessed through PRAMIN. Switch to
dma_alloc_attrs() which gives us the option to dismiss that CPU mapping
and free up some CPU virtual space.
Signed-off-b...
2015 Oct 26
2
[PATCH] instmem/gk20a: exclusively acquire instobjs
Although I would not have expected this to happen, we seem to run into
race conditions if instobjs are accessed concurrently. Use a global lock
for safety.
Signed-off-by: Alexandre Courbot <acourbot at nvidia.com>
---
drm/nouveau/nvkm/subdev/instmem/gk20a.c | 15 ++++++---------
1 file changed, 6 insertions(+), 9 deletions(-)
diff --git a/drm/nouveau/nvkm/subdev/instmem/gk20a.c b/drm/nouveau/nvkm/subdev/instmem/gk20a.c
index fc419bb8eab7..d015633b8edd 100644
--- a/drm/nouveau/nvkm/subdev/instmem/gk20a.c
+++ b/drm/nouveau/nvkm/subdev/instmem/g...
2016 Mar 03
0
[PATCH] instmem/gk20a: add write barrier when releasing DMA object
When using the DMA-API for instmem, we may obtain a write-combined
mapping. For such cases, add a write barrier in
gk20a_instobj_release_dma() to make sure that all writes have reached
memory at this time.
Signed-off-by: Alexandre Courbot <acourbot at nvidia.com>
---
drm/nouveau/nvkm/subdev/instmem/gk20a.c | 2 ++
1 file cha...
2014 Dec 23
18
[PATCH 0/11] Add suspend/resume support for GK20A
...| 23 +++++++++++-
include/soc/tegra/pmc.h | 2 +
6 files changed, 151 insertions(+), 12 deletions(-)
Vince Hsu (7): (linux-3.19 / http://cgit.freedesktop.org/~darktama/nouveau)
platform: switch to the new gpu rail clamping function
platform: complete the power up/down sequence
instmem: make nv50_instmem_priv public
instmem: add dummy support for GK20A
drm: export some variable and functions to resue the PM functions
platform: add suspend/resume support
platform: add PM runtime suspend/resume support
drm/Kbuild | 1 +
drm/core/subdev/instmem/nv50.h...
2017 Feb 24
1
[PATCH] drm/nouveau: gk20a: Turn instmem lock into mutex
...them by a spin lock is not safe. This triggers
>> a warning if the DEBUG_ATOMIC_SLEEP Kconfig option is enabled. Fix this
>> by using a mutex instead.
>>
>> Signed-off-by: Thierry Reding <treding at nvidia.com>
>> ---
>> drivers/gpu/drm/nouveau/nvkm/subdev/instmem/gk20a.c | 19 ++++++++-----------
>> 1 file changed, 8 insertions(+), 11 deletions(-)
>
> Alex, could you take a look at this?
Sorry! Yes, using a mutex here should be safe since vmap() can sleep
anyway. And I don't think this code can ever be reached in atomic
context (Ben can c...
2017 Feb 23
0
[PATCH] drm/nouveau: gk20a: Turn instmem lock into mutex
...y sleep, so protecting them by a spin lock is not safe. This triggers
> a warning if the DEBUG_ATOMIC_SLEEP Kconfig option is enabled. Fix this
> by using a mutex instead.
>
> Signed-off-by: Thierry Reding <treding at nvidia.com>
> ---
> drivers/gpu/drm/nouveau/nvkm/subdev/instmem/gk20a.c | 19 ++++++++-----------
> 1 file changed, 8 insertions(+), 11 deletions(-)
Alex, could you take a look at this?
Thanks,
Thierry
> diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/instmem/gk20a.c b/drivers/gpu/drm/nouveau/nvkm/subdev/instmem/gk20a.c
> index a6a7fa0d7679..7f5244...
2015 Nov 04
0
[PATCH] instmem/gk20a: exclusively acquire instobjs
...rging such a large hammer of a fix, I'd strongly prefer to see
at least a better justification for why this is happening rather than
potentially papering over a larger issue.
Ben.
>
> Signed-off-by: Alexandre Courbot <acourbot at nvidia.com>
> ---
> drm/nouveau/nvkm/subdev/instmem/gk20a.c | 15 ++++++---------
> 1 file changed, 6 insertions(+), 9 deletions(-)
>
> diff --git a/drm/nouveau/nvkm/subdev/instmem/gk20a.c b/drm/nouveau/nvkm/subdev/instmem/gk20a.c
> index fc419bb8eab7..d015633b8edd 100644
> --- a/drm/nouveau/nvkm/subdev/instmem/gk20a.c
> +++ b/drm...
2015 Feb 11
9
[PATCH v2 0/6] nouveau/gk20a: RAM device removal & IOMMU support
...oes not
exist. By making it possible to run Nouveau without a RAM device and
systematically returning errors when VRAM allocations are attempted, we force
user-space to do the right thing and always employ the optimal path.
Contiguous memory allocation for GK20A is now handled directly by a custom
instmem driver.
The remaining patches are not related to the RAM device removal, but since
they touch code that has been moved by patch 2 I took the freedom to include
them in this series.
Patch 4 is a little improvement for GK20A's instmem implementation, which
suppresses the permanent and unneeded...
2015 Feb 20
6
[PATCH v4 0/6] nouveau/gk20a: RAM device removal & IOMMU support
Changes since v3:
- Use a single dma_attr for all DMA-API allocations in instmem instead of one
per allocation
- Use device.info.ram_size instead of pfb->ram to check whether VRAM is present
outside of nvkm
Changes since v2:
- Cleaner changes for ltc
- Fixed typos in gk20a instmem IOMMU comments
Changes since v1:
- Add missing else condition in ltc
- Remove extra flags...