Loading drivers/gpu/drm/nouveau/nvkm/engine/fifo/chang84.c +2 −3 Original line number Diff line number Diff line Loading @@ -114,7 +114,7 @@ g84_fifo_chan_engine_init(struct nvkm_fifo_chan *base, struct nvkm_engine *engine) { struct nv50_fifo_chan *chan = nv50_fifo_chan(base); struct nvkm_gpuobj *engn = chan->engn[engine->subdev.index]; struct nvkm_gpuobj *engn = *nv50_fifo_chan_engine(chan, engine); u64 limit, start; int offset; Loading Loading @@ -142,12 +142,11 @@ g84_fifo_chan_engine_ctor(struct nvkm_fifo_chan *base, struct nvkm_object *object) { struct nv50_fifo_chan *chan = nv50_fifo_chan(base); int engn = engine->subdev.index; if (g84_fifo_chan_engine_addr(engine) < 0) return 0; return nvkm_object_bind(object, NULL, 0, &chan->engn[engn]); return nvkm_object_bind(object, NULL, 0, nv50_fifo_chan_engine(chan, engine)); } static int Loading drivers/gpu/drm/nouveau/nvkm/engine/fifo/changf100.h +1 −1 Original line number Diff line number Diff line Loading @@ -22,7 +22,7 @@ struct gf100_fifo_chan { struct gf100_fifo_engn { struct nvkm_gpuobj *inst; struct nvkm_vma *vma; } engn[NVKM_SUBDEV_NR]; } engn[NVKM_FIFO_ENGN_NR]; }; extern const struct nvkm_fifo_chan_oclass gf100_fifo_gpfifo_oclass; Loading drivers/gpu/drm/nouveau/nvkm/engine/fifo/changk104.h +2 −1 Original line number Diff line number Diff line Loading @@ -20,7 +20,7 @@ struct gk104_fifo_chan { struct gk104_fifo_engn { struct nvkm_gpuobj *inst; struct nvkm_vma *vma; } engn[NVKM_SUBDEV_NR]; } engn[NVKM_FIFO_ENGN_NR]; }; extern const struct nvkm_fifo_chan_func gk104_fifo_gpfifo_func; Loading @@ -30,6 +30,7 @@ int gk104_fifo_gpfifo_new(struct gk104_fifo *, const struct nvkm_oclass *, void *gk104_fifo_gpfifo_dtor(struct nvkm_fifo_chan *); void gk104_fifo_gpfifo_init(struct nvkm_fifo_chan *); void gk104_fifo_gpfifo_fini(struct nvkm_fifo_chan *); struct gk104_fifo_engn *gk104_fifo_gpfifo_engine(struct gk104_fifo_chan *, struct nvkm_engine *); int gk104_fifo_gpfifo_engine_ctor(struct nvkm_fifo_chan *, struct nvkm_engine *, struct nvkm_object *); void gk104_fifo_gpfifo_engine_dtor(struct nvkm_fifo_chan *, Loading drivers/gpu/drm/nouveau/nvkm/engine/fifo/channv04.h +1 −1 Original line number Diff line number Diff line Loading @@ -13,7 +13,7 @@ struct nv04_fifo_chan { #define NV04_FIFO_ENGN_GR 1 #define NV04_FIFO_ENGN_MPEG 2 #define NV04_FIFO_ENGN_DMA 3 struct nvkm_gpuobj *engn[NVKM_SUBDEV_NR]; struct nvkm_gpuobj *engn[NVKM_FIFO_ENGN_NR]; }; extern const struct nvkm_fifo_chan_func nv04_fifo_dma_func; Loading drivers/gpu/drm/nouveau/nvkm/engine/fifo/channv50.c +12 −4 Original line number Diff line number Diff line Loading @@ -42,6 +42,15 @@ nv50_fifo_chan_engine_addr(struct nvkm_engine *engine) } } struct nvkm_gpuobj ** nv50_fifo_chan_engine(struct nv50_fifo_chan *chan, struct nvkm_engine *engine) { int engi = chan->base.fifo->func->engine_id(chan->base.fifo, engine); if (engi >= 0) return &chan->engn[engi]; return NULL; } static int nv50_fifo_chan_engine_fini(struct nvkm_fifo_chan *base, struct nvkm_engine *engine, bool suspend) Loading Loading @@ -103,7 +112,7 @@ nv50_fifo_chan_engine_init(struct nvkm_fifo_chan *base, struct nvkm_engine *engine) { struct nv50_fifo_chan *chan = nv50_fifo_chan(base); struct nvkm_gpuobj *engn = chan->engn[engine->subdev.index]; struct nvkm_gpuobj *engn = *nv50_fifo_chan_engine(chan, engine); u64 limit, start; int offset; Loading @@ -130,7 +139,7 @@ nv50_fifo_chan_engine_dtor(struct nvkm_fifo_chan *base, struct nvkm_engine *engine) { struct nv50_fifo_chan *chan = nv50_fifo_chan(base); nvkm_gpuobj_del(&chan->engn[engine->subdev.index]); nvkm_gpuobj_del(nv50_fifo_chan_engine(chan, engine)); } static int Loading @@ -139,12 +148,11 @@ nv50_fifo_chan_engine_ctor(struct nvkm_fifo_chan *base, struct nvkm_object *object) { struct nv50_fifo_chan *chan = nv50_fifo_chan(base); int engn = engine->subdev.index; if (nv50_fifo_chan_engine_addr(engine) < 0) return 0; return nvkm_object_bind(object, NULL, 0, &chan->engn[engn]); return nvkm_object_bind(object, NULL, 0, nv50_fifo_chan_engine(chan, engine)); } void Loading Loading
drivers/gpu/drm/nouveau/nvkm/engine/fifo/chang84.c +2 −3 Original line number Diff line number Diff line Loading @@ -114,7 +114,7 @@ g84_fifo_chan_engine_init(struct nvkm_fifo_chan *base, struct nvkm_engine *engine) { struct nv50_fifo_chan *chan = nv50_fifo_chan(base); struct nvkm_gpuobj *engn = chan->engn[engine->subdev.index]; struct nvkm_gpuobj *engn = *nv50_fifo_chan_engine(chan, engine); u64 limit, start; int offset; Loading Loading @@ -142,12 +142,11 @@ g84_fifo_chan_engine_ctor(struct nvkm_fifo_chan *base, struct nvkm_object *object) { struct nv50_fifo_chan *chan = nv50_fifo_chan(base); int engn = engine->subdev.index; if (g84_fifo_chan_engine_addr(engine) < 0) return 0; return nvkm_object_bind(object, NULL, 0, &chan->engn[engn]); return nvkm_object_bind(object, NULL, 0, nv50_fifo_chan_engine(chan, engine)); } static int Loading
drivers/gpu/drm/nouveau/nvkm/engine/fifo/changf100.h +1 −1 Original line number Diff line number Diff line Loading @@ -22,7 +22,7 @@ struct gf100_fifo_chan { struct gf100_fifo_engn { struct nvkm_gpuobj *inst; struct nvkm_vma *vma; } engn[NVKM_SUBDEV_NR]; } engn[NVKM_FIFO_ENGN_NR]; }; extern const struct nvkm_fifo_chan_oclass gf100_fifo_gpfifo_oclass; Loading
drivers/gpu/drm/nouveau/nvkm/engine/fifo/changk104.h +2 −1 Original line number Diff line number Diff line Loading @@ -20,7 +20,7 @@ struct gk104_fifo_chan { struct gk104_fifo_engn { struct nvkm_gpuobj *inst; struct nvkm_vma *vma; } engn[NVKM_SUBDEV_NR]; } engn[NVKM_FIFO_ENGN_NR]; }; extern const struct nvkm_fifo_chan_func gk104_fifo_gpfifo_func; Loading @@ -30,6 +30,7 @@ int gk104_fifo_gpfifo_new(struct gk104_fifo *, const struct nvkm_oclass *, void *gk104_fifo_gpfifo_dtor(struct nvkm_fifo_chan *); void gk104_fifo_gpfifo_init(struct nvkm_fifo_chan *); void gk104_fifo_gpfifo_fini(struct nvkm_fifo_chan *); struct gk104_fifo_engn *gk104_fifo_gpfifo_engine(struct gk104_fifo_chan *, struct nvkm_engine *); int gk104_fifo_gpfifo_engine_ctor(struct nvkm_fifo_chan *, struct nvkm_engine *, struct nvkm_object *); void gk104_fifo_gpfifo_engine_dtor(struct nvkm_fifo_chan *, Loading
drivers/gpu/drm/nouveau/nvkm/engine/fifo/channv04.h +1 −1 Original line number Diff line number Diff line Loading @@ -13,7 +13,7 @@ struct nv04_fifo_chan { #define NV04_FIFO_ENGN_GR 1 #define NV04_FIFO_ENGN_MPEG 2 #define NV04_FIFO_ENGN_DMA 3 struct nvkm_gpuobj *engn[NVKM_SUBDEV_NR]; struct nvkm_gpuobj *engn[NVKM_FIFO_ENGN_NR]; }; extern const struct nvkm_fifo_chan_func nv04_fifo_dma_func; Loading
drivers/gpu/drm/nouveau/nvkm/engine/fifo/channv50.c +12 −4 Original line number Diff line number Diff line Loading @@ -42,6 +42,15 @@ nv50_fifo_chan_engine_addr(struct nvkm_engine *engine) } } struct nvkm_gpuobj ** nv50_fifo_chan_engine(struct nv50_fifo_chan *chan, struct nvkm_engine *engine) { int engi = chan->base.fifo->func->engine_id(chan->base.fifo, engine); if (engi >= 0) return &chan->engn[engi]; return NULL; } static int nv50_fifo_chan_engine_fini(struct nvkm_fifo_chan *base, struct nvkm_engine *engine, bool suspend) Loading Loading @@ -103,7 +112,7 @@ nv50_fifo_chan_engine_init(struct nvkm_fifo_chan *base, struct nvkm_engine *engine) { struct nv50_fifo_chan *chan = nv50_fifo_chan(base); struct nvkm_gpuobj *engn = chan->engn[engine->subdev.index]; struct nvkm_gpuobj *engn = *nv50_fifo_chan_engine(chan, engine); u64 limit, start; int offset; Loading @@ -130,7 +139,7 @@ nv50_fifo_chan_engine_dtor(struct nvkm_fifo_chan *base, struct nvkm_engine *engine) { struct nv50_fifo_chan *chan = nv50_fifo_chan(base); nvkm_gpuobj_del(&chan->engn[engine->subdev.index]); nvkm_gpuobj_del(nv50_fifo_chan_engine(chan, engine)); } static int Loading @@ -139,12 +148,11 @@ nv50_fifo_chan_engine_ctor(struct nvkm_fifo_chan *base, struct nvkm_object *object) { struct nv50_fifo_chan *chan = nv50_fifo_chan(base); int engn = engine->subdev.index; if (nv50_fifo_chan_engine_addr(engine) < 0) return 0; return nvkm_object_bind(object, NULL, 0, &chan->engn[engn]); return nvkm_object_bind(object, NULL, 0, nv50_fifo_chan_engine(chan, engine)); } void Loading