History log of /linux-master/drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv04.c
Revision Date Author Comments
# 624c6f78 18-Sep-2023 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/imem/tu102-: prepare for GSP-RM

- move suspend/resume paths to HW-specific code
- allow (future) RM paths to be based on nv50_instmem

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230918202149.4343-15-skeggsb@gmail.com


# d9691a22 03-Dec-2020 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/instmem: switch to instanced constructor

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Reviewed-by: Lyude Paul <lyude@redhat.com>


# e5bf9a5c 01-Dec-2020 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/instmem: protect mm/lru with private mutex

nvkm_subdev.mutex is going away.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Reviewed-by: Lyude Paul <lyude@redhat.com>


# 997a8900 31-Oct-2017 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/core/memory: add reference counting

We need to be able to prevent memory from being freed while it's still
mapped in a GPU's address-space.

Will be used by upcoming MMU changes.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# 4d058fab 31-Oct-2017 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/core/mm: have users explicitly define heap identifiers

Different sections of VRAM may have different properties (ie. can't be used
for compression/display, can't be mapped, etc).

We currently already support this, but it's a bit magic. This change makes
it more obvious where we're allocating from.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# 71370e62 31-Oct-2017 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/imem: remove now-unused wrapper for backend objects

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# 87717e7f 31-Oct-2017 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/imem/nv04: directly embed nvkm_instobj into nv04_instobj

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# 07bbc1c5 31-Oct-2017 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/core/memory: split info pointers from accessor pointers

The accessor functions can change as a result of acquire()/release() calls,
and are protected by any refcounting done there.

Other functions must remain constant, as they can be called any time.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# b7a2bc18 19-Aug-2015 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/imem: convert to new-style nvkm_subdev

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# 1d2a1e53 19-Aug-2015 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/ramht: remove dependence on namedb

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# 5b1ab0c2 19-Aug-2015 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/imem/nv04-nv40: directly use instmem for vbios/ramfc/ramro

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# d8e83994 19-Aug-2015 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/imem: improve management of instance memory

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# a4747426 19-Aug-2015 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/imem: remove object accessor functions

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# d5c5bcf6 19-Aug-2015 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/imem: switch to device pri macros

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# c44c06ae 19-Aug-2015 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/imem: cosmetic changes

This is purely preparation for upcoming commits, there should be no
code changes here.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# 7512223b 15-Jul-2015 Kamil Dudka <kdudka@redhat.com>

drm/nouveau/drm/nv04-nv40/instmem: protect access to priv->heap by mutex

This fixes the list_del corruption reported
at <https://bugzilla.redhat.com/1205985>.

Signed-off-by: Kamil Dudka <kdudka@redhat.com>


# 78b2b4e7 13-Jan-2015 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/instmem: namespace + nvidia gpu names (no binary change)

The namespace of NVKM is being changed to nvkm_ instead of nouveau_,
which will be used for the DRM part of the driver. This is being
done in order to make it very clear as to what part of the driver a
given symbol belongs to, and as a minor step towards splitting the
DRM driver out to be able to stand on its own (for virt).

Because there's already a large amount of churn here anyway, this is
as good a time as any to also switch to NVIDIA's device and chipset
naming to ease collaboration with them.

A comparison of objdump disassemblies proves no code changes.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# c39f472e 13-Jan-2015 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau: remove symlinks, move core/ to nvkm/ (no code changes)

The symlinks were annoying some people, and they're not used anywhere
else in the kernel tree. The include directory structure has been
changed so that symlinks aren't needed anymore.

NVKM has been moved from core/ to nvkm/ to make it more obvious as to
what the directory is for, and as some minor prep for when NVKM gets
split out into its own module (virt) at a later date.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>