summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/nouveau/nvkm/subdev/fuse
diff options
context:
space:
mode:
authorBen Skeggs <bskeggs@redhat.com>2015-08-20 07:54:13 +0300
committerBen Skeggs <bskeggs@redhat.com>2015-08-28 05:40:26 +0300
commit7e24c1145a9176fb9c9b81b3a0f0703598b1445c (patch)
treec3b08d22dc1f4f066cbd8ea7d237908db82a44f7 /drivers/gpu/drm/nouveau/nvkm/subdev/fuse
parent7f5f518fd70b1b72ca4cf8249ca3306846383ed4 (diff)
downloadlinux-7e24c1145a9176fb9c9b81b3a0f0703598b1445c.tar.xz
drm/nouveau/fuse: remove object accessor functions
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau/nvkm/subdev/fuse')
-rw-r--r--drivers/gpu/drm/nouveau/nvkm/subdev/fuse/gf100.c10
-rw-r--r--drivers/gpu/drm/nouveau/nvkm/subdev/fuse/gm107.c9
-rw-r--r--drivers/gpu/drm/nouveau/nvkm/subdev/fuse/nv50.c10
3 files changed, 20 insertions, 9 deletions
diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/fuse/gf100.c b/drivers/gpu/drm/nouveau/nvkm/subdev/fuse/gf100.c
index e9d432424071..4e94cb94430c 100644
--- a/drivers/gpu/drm/nouveau/nvkm/subdev/fuse/gf100.c
+++ b/drivers/gpu/drm/nouveau/nvkm/subdev/fuse/gf100.c
@@ -30,9 +30,9 @@ struct gf100_fuse {
};
static u32
-gf100_fuse_rd32(struct nvkm_object *object, u64 addr)
+gf100_fuse_read(struct nvkm_fuse *obj, u32 addr)
{
- struct gf100_fuse *fuse = (void *)object;
+ struct gf100_fuse *fuse = container_of(obj, typeof(*fuse), base);
struct nvkm_device *device = fuse->base.subdev.device;
unsigned long flags;
u32 fuse_enable, unk, val;
@@ -48,6 +48,10 @@ gf100_fuse_rd32(struct nvkm_object *object, u64 addr)
return val;
}
+static const struct nvkm_fuse_func
+gf100_fuse_func = {
+ .read = gf100_fuse_read,
+};
static int
gf100_fuse_ctor(struct nvkm_object *parent, struct nvkm_object *engine,
@@ -63,6 +67,7 @@ gf100_fuse_ctor(struct nvkm_object *parent, struct nvkm_object *engine,
return ret;
spin_lock_init(&fuse->fuse_enable_lock);
+ fuse->base.func = &gf100_fuse_func;
return 0;
}
@@ -74,6 +79,5 @@ gf100_fuse_oclass = {
.dtor = _nvkm_fuse_dtor,
.init = _nvkm_fuse_init,
.fini = _nvkm_fuse_fini,
- .rd32 = gf100_fuse_rd32,
},
};
diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/fuse/gm107.c b/drivers/gpu/drm/nouveau/nvkm/subdev/fuse/gm107.c
index 94594ac9990b..bb1101e12148 100644
--- a/drivers/gpu/drm/nouveau/nvkm/subdev/fuse/gm107.c
+++ b/drivers/gpu/drm/nouveau/nvkm/subdev/fuse/gm107.c
@@ -24,13 +24,16 @@
#include "priv.h"
static u32
-gm107_fuse_rd32(struct nvkm_object *object, u64 addr)
+gm107_fuse_read(struct nvkm_fuse *fuse, u32 addr)
{
- struct nvkm_fuse *fuse = (void *)object;
struct nvkm_device *device = fuse->subdev.device;
return nvkm_rd32(device, 0x21100 + addr);
}
+static const struct nvkm_fuse_func
+gm107_fuse_func = {
+ .read = gm107_fuse_read,
+};
static int
gm107_fuse_ctor(struct nvkm_object *parent, struct nvkm_object *engine,
@@ -43,6 +46,7 @@ gm107_fuse_ctor(struct nvkm_object *parent, struct nvkm_object *engine,
ret = nvkm_fuse_create(parent, engine, oclass, &fuse);
*pobject = nv_object(fuse);
+ fuse->func = &gm107_fuse_func;
return ret;
}
@@ -54,6 +58,5 @@ gm107_fuse_oclass = {
.dtor = _nvkm_fuse_dtor,
.init = _nvkm_fuse_init,
.fini = _nvkm_fuse_fini,
- .rd32 = gm107_fuse_rd32,
},
};
diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/fuse/nv50.c b/drivers/gpu/drm/nouveau/nvkm/subdev/fuse/nv50.c
index c47abfa98809..ee76268ae702 100644
--- a/drivers/gpu/drm/nouveau/nvkm/subdev/fuse/nv50.c
+++ b/drivers/gpu/drm/nouveau/nvkm/subdev/fuse/nv50.c
@@ -30,9 +30,9 @@ struct nv50_fuse {
};
static u32
-nv50_fuse_rd32(struct nvkm_object *object, u64 addr)
+nv50_fuse_read(struct nvkm_fuse *obj, u32 addr)
{
- struct nv50_fuse *fuse = (void *)object;
+ struct nv50_fuse *fuse = container_of(obj, typeof(*fuse), base);
struct nvkm_device *device = fuse->base.subdev.device;
unsigned long flags;
u32 fuse_enable, val;
@@ -46,6 +46,10 @@ nv50_fuse_rd32(struct nvkm_object *object, u64 addr)
return val;
}
+static const struct nvkm_fuse_func
+nv50_fuse_func = {
+ .read = &nv50_fuse_read,
+};
static int
nv50_fuse_ctor(struct nvkm_object *parent, struct nvkm_object *engine,
@@ -61,6 +65,7 @@ nv50_fuse_ctor(struct nvkm_object *parent, struct nvkm_object *engine,
return ret;
spin_lock_init(&fuse->fuse_enable_lock);
+ fuse->base.func = &nv50_fuse_func;
return 0;
}
@@ -72,6 +77,5 @@ nv50_fuse_oclass = {
.dtor = _nvkm_fuse_dtor,
.init = _nvkm_fuse_init,
.fini = _nvkm_fuse_fini,
- .rd32 = nv50_fuse_rd32,
},
};