summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Skeggs <bskeggs@redhat.com>2014-12-03 17:07:22 +1000
committerBen Skeggs <bskeggs@redhat.com>2015-01-22 12:14:42 +1000
commit2f4a58e852d103488fc435f0c1ecbb9a86761579 (patch)
treec708086427dc2a003a3f9349f2d2ca65ed6c5e7e
parent4534a2af58087d33a7fcc4497da72bd7b69fe8d0 (diff)
drm/nouveau/subdev: always upcast through nouveau_subdev()/nouveau_engine()
Has additional safeties for one. For two, needed for an upcoming commit that removes abuse of nouveau_object.engine. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
-rw-r--r--drivers/gpu/drm/nouveau/core/include/engine/disp.h2
-rw-r--r--drivers/gpu/drm/nouveau/core/include/engine/fifo.h2
-rw-r--r--drivers/gpu/drm/nouveau/core/include/engine/graph.h2
-rw-r--r--drivers/gpu/drm/nouveau/core/include/engine/perfmon.h2
-rw-r--r--drivers/gpu/drm/nouveau/core/include/subdev/bar.h2
-rw-r--r--drivers/gpu/drm/nouveau/core/include/subdev/bios.h2
-rw-r--r--drivers/gpu/drm/nouveau/core/include/subdev/bus.h2
-rw-r--r--drivers/gpu/drm/nouveau/core/include/subdev/clock.h2
-rw-r--r--drivers/gpu/drm/nouveau/core/include/subdev/devinit.h2
-rw-r--r--drivers/gpu/drm/nouveau/core/include/subdev/fb.h2
-rw-r--r--drivers/gpu/drm/nouveau/core/include/subdev/fuse.h2
-rw-r--r--drivers/gpu/drm/nouveau/core/include/subdev/gpio.h2
-rw-r--r--drivers/gpu/drm/nouveau/core/include/subdev/i2c.h2
-rw-r--r--drivers/gpu/drm/nouveau/core/include/subdev/ibus.h2
-rw-r--r--drivers/gpu/drm/nouveau/core/include/subdev/instmem.h2
-rw-r--r--drivers/gpu/drm/nouveau/core/include/subdev/ltc.h2
-rw-r--r--drivers/gpu/drm/nouveau/core/include/subdev/mc.h2
-rw-r--r--drivers/gpu/drm/nouveau/core/include/subdev/mxm.h2
-rw-r--r--drivers/gpu/drm/nouveau/core/include/subdev/pwr.h2
-rw-r--r--drivers/gpu/drm/nouveau/core/include/subdev/therm.h2
-rw-r--r--drivers/gpu/drm/nouveau/core/include/subdev/timer.h2
-rw-r--r--drivers/gpu/drm/nouveau/core/include/subdev/vm.h2
-rw-r--r--drivers/gpu/drm/nouveau/core/include/subdev/volt.h2
23 files changed, 23 insertions, 23 deletions
diff --git a/drivers/gpu/drm/nouveau/core/include/engine/disp.h b/drivers/gpu/drm/nouveau/core/include/engine/disp.h
index fc307f1317ff..626508d8da40 100644
--- a/drivers/gpu/drm/nouveau/core/include/engine/disp.h
+++ b/drivers/gpu/drm/nouveau/core/include/engine/disp.h
@@ -18,7 +18,7 @@ struct nouveau_disp {
static inline struct nouveau_disp *
nouveau_disp(void *obj)
{
- return (void *)nv_device(obj)->subdev[NVDEV_ENGINE_DISP];
+ return (void *)nouveau_engine(obj, NVDEV_ENGINE_DISP);
}
extern struct nouveau_oclass *nv04_disp_oclass;
diff --git a/drivers/gpu/drm/nouveau/core/include/engine/fifo.h b/drivers/gpu/drm/nouveau/core/include/engine/fifo.h
index 2007453f6fce..c52b939f52f0 100644
--- a/drivers/gpu/drm/nouveau/core/include/engine/fifo.h
+++ b/drivers/gpu/drm/nouveau/core/include/engine/fifo.h
@@ -85,7 +85,7 @@ struct nouveau_fifo {
static inline struct nouveau_fifo *
nouveau_fifo(void *obj)
{
- return (void *)nv_device(obj)->subdev[NVDEV_ENGINE_FIFO];
+ return (void *)nouveau_engine(obj, NVDEV_ENGINE_FIFO);
}
#define nouveau_fifo_create(o,e,c,fc,lc,d) \
diff --git a/drivers/gpu/drm/nouveau/core/include/engine/graph.h b/drivers/gpu/drm/nouveau/core/include/engine/graph.h
index d5055570d01b..d61dcb7d6d5f 100644
--- a/drivers/gpu/drm/nouveau/core/include/engine/graph.h
+++ b/drivers/gpu/drm/nouveau/core/include/engine/graph.h
@@ -35,7 +35,7 @@ struct nouveau_graph {
static inline struct nouveau_graph *
nouveau_graph(void *obj)
{
- return (void *)nv_device(obj)->subdev[NVDEV_ENGINE_GR];
+ return (void *)nouveau_engine(obj, NVDEV_ENGINE_GR);
}
#define nouveau_graph_create(p,e,c,y,d) \
diff --git a/drivers/gpu/drm/nouveau/core/include/engine/perfmon.h b/drivers/gpu/drm/nouveau/core/include/engine/perfmon.h
index 88cc812baaa3..251c8545ca58 100644
--- a/drivers/gpu/drm/nouveau/core/include/engine/perfmon.h
+++ b/drivers/gpu/drm/nouveau/core/include/engine/perfmon.h
@@ -24,7 +24,7 @@ struct nouveau_perfmon {
static inline struct nouveau_perfmon *
nouveau_perfmon(void *obj)
{
- return (void *)nv_device(obj)->subdev[NVDEV_ENGINE_PERFMON];
+ return (void *)nouveau_engine(obj, NVDEV_ENGINE_PERFMON);
}
extern struct nouveau_oclass *nv40_perfmon_oclass;
diff --git a/drivers/gpu/drm/nouveau/core/include/subdev/bar.h b/drivers/gpu/drm/nouveau/core/include/subdev/bar.h
index 257ddf6d36d4..960e33a30819 100644
--- a/drivers/gpu/drm/nouveau/core/include/subdev/bar.h
+++ b/drivers/gpu/drm/nouveau/core/include/subdev/bar.h
@@ -27,7 +27,7 @@ struct nouveau_bar {
static inline struct nouveau_bar *
nouveau_bar(void *obj)
{
- return (void *)nv_device(obj)->subdev[NVDEV_SUBDEV_BAR];
+ return (void *)nouveau_subdev(obj, NVDEV_SUBDEV_BAR);
}
extern struct nouveau_oclass nv50_bar_oclass;
diff --git a/drivers/gpu/drm/nouveau/core/include/subdev/bios.h b/drivers/gpu/drm/nouveau/core/include/subdev/bios.h
index 5bd1ca8cd20d..39528a9f3c20 100644
--- a/drivers/gpu/drm/nouveau/core/include/subdev/bios.h
+++ b/drivers/gpu/drm/nouveau/core/include/subdev/bios.h
@@ -24,7 +24,7 @@ struct nouveau_bios {
static inline struct nouveau_bios *
nouveau_bios(void *obj)
{
- return (void *)nv_device(obj)->subdev[NVDEV_SUBDEV_VBIOS];
+ return (void *)nouveau_subdev(obj, NVDEV_SUBDEV_VBIOS);
}
u8 nvbios_checksum(const u8 *data, int size);
diff --git a/drivers/gpu/drm/nouveau/core/include/subdev/bus.h b/drivers/gpu/drm/nouveau/core/include/subdev/bus.h
index 697f7ce70aab..2d40f0c2fdfc 100644
--- a/drivers/gpu/drm/nouveau/core/include/subdev/bus.h
+++ b/drivers/gpu/drm/nouveau/core/include/subdev/bus.h
@@ -18,7 +18,7 @@ struct nouveau_bus {
static inline struct nouveau_bus *
nouveau_bus(void *obj)
{
- return (void *)nv_device(obj)->subdev[NVDEV_SUBDEV_BUS];
+ return (void *)nouveau_subdev(obj, NVDEV_SUBDEV_BUS);
}
#define nouveau_bus_create(p, e, o, d) \
diff --git a/drivers/gpu/drm/nouveau/core/include/subdev/clock.h b/drivers/gpu/drm/nouveau/core/include/subdev/clock.h
index 36ed035d4d42..0fd5e4a3a7a2 100644
--- a/drivers/gpu/drm/nouveau/core/include/subdev/clock.h
+++ b/drivers/gpu/drm/nouveau/core/include/subdev/clock.h
@@ -104,7 +104,7 @@ struct nouveau_clock {
static inline struct nouveau_clock *
nouveau_clock(void *obj)
{
- return (void *)nv_device(obj)->subdev[NVDEV_SUBDEV_CLOCK];
+ return (void *)nouveau_subdev(obj, NVDEV_SUBDEV_CLOCK);
}
struct nouveau_clocks {
diff --git a/drivers/gpu/drm/nouveau/core/include/subdev/devinit.h b/drivers/gpu/drm/nouveau/core/include/subdev/devinit.h
index e007a9d44683..b627d5329543 100644
--- a/drivers/gpu/drm/nouveau/core/include/subdev/devinit.h
+++ b/drivers/gpu/drm/nouveau/core/include/subdev/devinit.h
@@ -15,7 +15,7 @@ struct nouveau_devinit {
static inline struct nouveau_devinit *
nouveau_devinit(void *obj)
{
- return (void *)nv_device(obj)->subdev[NVDEV_SUBDEV_DEVINIT];
+ return (void *)nouveau_subdev(obj, NVDEV_SUBDEV_DEVINIT);
}
extern struct nouveau_oclass *nv04_devinit_oclass;
diff --git a/drivers/gpu/drm/nouveau/core/include/subdev/fb.h b/drivers/gpu/drm/nouveau/core/include/subdev/fb.h
index 8d0032f15205..889603fbb0cf 100644
--- a/drivers/gpu/drm/nouveau/core/include/subdev/fb.h
+++ b/drivers/gpu/drm/nouveau/core/include/subdev/fb.h
@@ -80,7 +80,7 @@ nouveau_fb(void *obj)
nv_subidx(obj) == NVDEV_SUBDEV_FB)
return obj;
- return (void *)nv_device(obj)->subdev[NVDEV_SUBDEV_FB];
+ return (void *)nouveau_subdev(obj, NVDEV_SUBDEV_FB);
}
extern struct nouveau_oclass *nv04_fb_oclass;
diff --git a/drivers/gpu/drm/nouveau/core/include/subdev/fuse.h b/drivers/gpu/drm/nouveau/core/include/subdev/fuse.h
index 2b1ddb2a9a7d..cc6b02fec682 100644
--- a/drivers/gpu/drm/nouveau/core/include/subdev/fuse.h
+++ b/drivers/gpu/drm/nouveau/core/include/subdev/fuse.h
@@ -11,7 +11,7 @@ struct nouveau_fuse {
static inline struct nouveau_fuse *
nouveau_fuse(void *obj)
{
- return (void *)nv_device(obj)->subdev[NVDEV_SUBDEV_FUSE];
+ return (void *)nouveau_subdev(obj, NVDEV_SUBDEV_FUSE);
}
#define nouveau_fuse_create(p, e, o, d) \
diff --git a/drivers/gpu/drm/nouveau/core/include/subdev/gpio.h b/drivers/gpu/drm/nouveau/core/include/subdev/gpio.h
index f855140dbcb7..8b60c5de6cb9 100644
--- a/drivers/gpu/drm/nouveau/core/include/subdev/gpio.h
+++ b/drivers/gpu/drm/nouveau/core/include/subdev/gpio.h
@@ -35,7 +35,7 @@ struct nouveau_gpio {
static inline struct nouveau_gpio *
nouveau_gpio(void *obj)
{
- return (void *)nv_device(obj)->subdev[NVDEV_SUBDEV_GPIO];
+ return (void *)nouveau_subdev(obj, NVDEV_SUBDEV_GPIO);
}
extern struct nouveau_oclass *nv10_gpio_oclass;
diff --git a/drivers/gpu/drm/nouveau/core/include/subdev/i2c.h b/drivers/gpu/drm/nouveau/core/include/subdev/i2c.h
index d94ccacb40bf..a400e67f2d43 100644
--- a/drivers/gpu/drm/nouveau/core/include/subdev/i2c.h
+++ b/drivers/gpu/drm/nouveau/core/include/subdev/i2c.h
@@ -81,7 +81,7 @@ struct nouveau_i2c {
static inline struct nouveau_i2c *
nouveau_i2c(void *obj)
{
- return (void *)nv_device(obj)->subdev[NVDEV_SUBDEV_I2C];
+ return (void *)nouveau_subdev(obj, NVDEV_SUBDEV_I2C);
}
extern struct nouveau_oclass *nv04_i2c_oclass;
diff --git a/drivers/gpu/drm/nouveau/core/include/subdev/ibus.h b/drivers/gpu/drm/nouveau/core/include/subdev/ibus.h
index 31df634c0fdc..b6387d27ea0c 100644
--- a/drivers/gpu/drm/nouveau/core/include/subdev/ibus.h
+++ b/drivers/gpu/drm/nouveau/core/include/subdev/ibus.h
@@ -11,7 +11,7 @@ struct nouveau_ibus {
static inline struct nouveau_ibus *
nouveau_ibus(void *obj)
{
- return (void *)nv_device(obj)->subdev[NVDEV_SUBDEV_IBUS];
+ return (void *)nouveau_subdev(obj, NVDEV_SUBDEV_IBUS);
}
#define nouveau_ibus_create(p,e,o,d) \
diff --git a/drivers/gpu/drm/nouveau/core/include/subdev/instmem.h b/drivers/gpu/drm/nouveau/core/include/subdev/instmem.h
index c1df26f3230c..4953e6c6c86b 100644
--- a/drivers/gpu/drm/nouveau/core/include/subdev/instmem.h
+++ b/drivers/gpu/drm/nouveau/core/include/subdev/instmem.h
@@ -42,7 +42,7 @@ nouveau_instmem(void *obj)
nv_subidx(obj) == NVDEV_SUBDEV_INSTMEM)
return obj;
- return (void *)nv_device(obj)->subdev[NVDEV_SUBDEV_INSTMEM];
+ return (void *)nouveau_subdev(obj, NVDEV_SUBDEV_INSTMEM);
}
extern struct nouveau_oclass *nv04_instmem_oclass;
diff --git a/drivers/gpu/drm/nouveau/core/include/subdev/ltc.h b/drivers/gpu/drm/nouveau/core/include/subdev/ltc.h
index b909a7363f6b..432717a421d3 100644
--- a/drivers/gpu/drm/nouveau/core/include/subdev/ltc.h
+++ b/drivers/gpu/drm/nouveau/core/include/subdev/ltc.h
@@ -25,7 +25,7 @@ struct nouveau_ltc {
static inline struct nouveau_ltc *
nouveau_ltc(void *obj)
{
- return (void *)nv_device(obj)->subdev[NVDEV_SUBDEV_LTC];
+ return (void *)nouveau_subdev(obj, NVDEV_SUBDEV_LTC);
}
extern struct nouveau_oclass *gf100_ltc_oclass;
diff --git a/drivers/gpu/drm/nouveau/core/include/subdev/mc.h b/drivers/gpu/drm/nouveau/core/include/subdev/mc.h
index 568e4dfc5e9e..af7926f3a93d 100644
--- a/drivers/gpu/drm/nouveau/core/include/subdev/mc.h
+++ b/drivers/gpu/drm/nouveau/core/include/subdev/mc.h
@@ -14,7 +14,7 @@ struct nouveau_mc {
static inline struct nouveau_mc *
nouveau_mc(void *obj)
{
- return (void *)nv_device(obj)->subdev[NVDEV_SUBDEV_MC];
+ return (void *)nouveau_subdev(obj, NVDEV_SUBDEV_MC);
}
extern struct nouveau_oclass *nv04_mc_oclass;
diff --git a/drivers/gpu/drm/nouveau/core/include/subdev/mxm.h b/drivers/gpu/drm/nouveau/core/include/subdev/mxm.h
index b93b152cb566..94b8af23c33e 100644
--- a/drivers/gpu/drm/nouveau/core/include/subdev/mxm.h
+++ b/drivers/gpu/drm/nouveau/core/include/subdev/mxm.h
@@ -15,7 +15,7 @@ struct nouveau_mxm {
static inline struct nouveau_mxm *
nouveau_mxm(void *obj)
{
- return (void *)nv_device(obj)->subdev[NVDEV_SUBDEV_MXM];
+ return (void *)nouveau_subdev(obj, NVDEV_SUBDEV_MXM);
}
#define nouveau_mxm_create(p,e,o,d) \
diff --git a/drivers/gpu/drm/nouveau/core/include/subdev/pwr.h b/drivers/gpu/drm/nouveau/core/include/subdev/pwr.h
index f2427bf5aeed..ef57c85405ff 100644
--- a/drivers/gpu/drm/nouveau/core/include/subdev/pwr.h
+++ b/drivers/gpu/drm/nouveau/core/include/subdev/pwr.h
@@ -30,7 +30,7 @@ struct nouveau_pwr {
static inline struct nouveau_pwr *
nouveau_pwr(void *obj)
{
- return (void *)nv_device(obj)->subdev[NVDEV_SUBDEV_PWR];
+ return (void *)nouveau_subdev(obj, NVDEV_SUBDEV_PWR);
}
extern struct nouveau_oclass *nva3_pwr_oclass;
diff --git a/drivers/gpu/drm/nouveau/core/include/subdev/therm.h b/drivers/gpu/drm/nouveau/core/include/subdev/therm.h
index a437597dcafc..42f9574a06c9 100644
--- a/drivers/gpu/drm/nouveau/core/include/subdev/therm.h
+++ b/drivers/gpu/drm/nouveau/core/include/subdev/therm.h
@@ -47,7 +47,7 @@ struct nouveau_therm {
static inline struct nouveau_therm *
nouveau_therm(void *obj)
{
- return (void *)nv_device(obj)->subdev[NVDEV_SUBDEV_THERM];
+ return (void *)nouveau_subdev(obj, NVDEV_SUBDEV_THERM);
}
#define nouveau_therm_create(p,e,o,d) \
diff --git a/drivers/gpu/drm/nouveau/core/include/subdev/timer.h b/drivers/gpu/drm/nouveau/core/include/subdev/timer.h
index db9be803a874..36b5184e35ec 100644
--- a/drivers/gpu/drm/nouveau/core/include/subdev/timer.h
+++ b/drivers/gpu/drm/nouveau/core/include/subdev/timer.h
@@ -42,7 +42,7 @@ struct nouveau_timer {
static inline struct nouveau_timer *
nouveau_timer(void *obj)
{
- return (void *)nv_device(obj)->subdev[NVDEV_SUBDEV_TIMER];
+ return (void *)nouveau_subdev(obj, NVDEV_SUBDEV_TIMER);
}
#define nouveau_timer_create(p,e,o,d) \
diff --git a/drivers/gpu/drm/nouveau/core/include/subdev/vm.h b/drivers/gpu/drm/nouveau/core/include/subdev/vm.h
index c9509039f94b..d56585f1cd8c 100644
--- a/drivers/gpu/drm/nouveau/core/include/subdev/vm.h
+++ b/drivers/gpu/drm/nouveau/core/include/subdev/vm.h
@@ -91,7 +91,7 @@ struct nouveau_vmmgr {
static inline struct nouveau_vmmgr *
nouveau_vmmgr(void *obj)
{
- return (void *)nv_device(obj)->subdev[NVDEV_SUBDEV_VM];
+ return (void *)nouveau_subdev(obj, NVDEV_SUBDEV_VM);
}
#define nouveau_vmmgr_create(p,e,o,i,f,d) \
diff --git a/drivers/gpu/drm/nouveau/core/include/subdev/volt.h b/drivers/gpu/drm/nouveau/core/include/subdev/volt.h
index 67db5e58880d..13e9a83ceccc 100644
--- a/drivers/gpu/drm/nouveau/core/include/subdev/volt.h
+++ b/drivers/gpu/drm/nouveau/core/include/subdev/volt.h
@@ -29,7 +29,7 @@ struct nouveau_volt {
static inline struct nouveau_volt *
nouveau_volt(void *obj)
{
- return (void *)nv_device(obj)->subdev[NVDEV_SUBDEV_VOLT];
+ return (void *)nouveau_subdev(obj, NVDEV_SUBDEV_VOLT);
}
#define nouveau_volt_create(p, e, o, d) \