drm/nouveau/nvif: give every mmu object a human-readable identifier
Signed-off-by: Ben Skeggs <bskeggs@redhat.com> Reviewed-by: Lyude Paul <lyude@redhat.com>
This commit is contained in:
parent
bd21080eb6
commit
b495396cc9
|
@ -31,8 +31,9 @@ struct nvif_mmu {
|
|||
u8 *kind;
|
||||
};
|
||||
|
||||
int nvif_mmu_init(struct nvif_object *, s32 oclass, struct nvif_mmu *);
|
||||
void nvif_mmu_fini(struct nvif_mmu *);
|
||||
int nvif_mmu_ctor(struct nvif_object *, const char *name, s32 oclass,
|
||||
struct nvif_mmu *);
|
||||
void nvif_mmu_dtor(struct nvif_mmu *);
|
||||
|
||||
static inline bool
|
||||
nvif_mmu_kind_valid(struct nvif_mmu *mmu, u8 kind)
|
||||
|
|
|
@ -178,7 +178,7 @@ nouveau_cli_fini(struct nouveau_cli *cli)
|
|||
usif_client_fini(cli);
|
||||
nouveau_vmm_fini(&cli->svm);
|
||||
nouveau_vmm_fini(&cli->vmm);
|
||||
nvif_mmu_fini(&cli->mmu);
|
||||
nvif_mmu_dtor(&cli->mmu);
|
||||
nvif_device_dtor(&cli->device);
|
||||
mutex_lock(&cli->drm->master.lock);
|
||||
nvif_client_dtor(&cli->base);
|
||||
|
@ -254,7 +254,8 @@ nouveau_cli_init(struct nouveau_drm *drm, const char *sname,
|
|||
goto done;
|
||||
}
|
||||
|
||||
ret = nvif_mmu_init(&cli->device.object, mmus[ret].oclass, &cli->mmu);
|
||||
ret = nvif_mmu_ctor(&cli->device.object, "drmMmu", mmus[ret].oclass,
|
||||
&cli->mmu);
|
||||
if (ret) {
|
||||
NV_PRINTK(err, cli, "MMU allocation failed: %d\n", ret);
|
||||
goto done;
|
||||
|
|
|
@ -25,7 +25,7 @@
|
|||
#include <nvif/if0008.h>
|
||||
|
||||
void
|
||||
nvif_mmu_fini(struct nvif_mmu *mmu)
|
||||
nvif_mmu_dtor(struct nvif_mmu *mmu)
|
||||
{
|
||||
kfree(mmu->kind);
|
||||
kfree(mmu->type);
|
||||
|
@ -34,7 +34,8 @@ nvif_mmu_fini(struct nvif_mmu *mmu)
|
|||
}
|
||||
|
||||
int
|
||||
nvif_mmu_init(struct nvif_object *parent, s32 oclass, struct nvif_mmu *mmu)
|
||||
nvif_mmu_ctor(struct nvif_object *parent, const char *name, s32 oclass,
|
||||
struct nvif_mmu *mmu)
|
||||
{
|
||||
static const struct nvif_mclass mems[] = {
|
||||
{ NVIF_CLASS_MEM_GF100, -1 },
|
||||
|
@ -50,8 +51,8 @@ nvif_mmu_init(struct nvif_object *parent, s32 oclass, struct nvif_mmu *mmu)
|
|||
mmu->type = NULL;
|
||||
mmu->kind = NULL;
|
||||
|
||||
ret = nvif_object_ctor(parent, "nvifMmu", 0, oclass, &args,
|
||||
sizeof(args), &mmu->object);
|
||||
ret = nvif_object_ctor(parent, name ? name : "nvifMmu", 0, oclass,
|
||||
&args, sizeof(args), &mmu->object);
|
||||
if (ret)
|
||||
goto done;
|
||||
|
||||
|
@ -127,6 +128,6 @@ nvif_mmu_init(struct nvif_object *parent, s32 oclass, struct nvif_mmu *mmu)
|
|||
|
||||
done:
|
||||
if (ret)
|
||||
nvif_mmu_fini(mmu);
|
||||
nvif_mmu_dtor(mmu);
|
||||
return ret;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue