diff options
author | Ben Skeggs <bskeggs@redhat.com> | 2012-07-18 20:51:42 -0400 |
---|---|---|
committer | Ben Skeggs <bskeggs@redhat.com> | 2012-10-02 23:12:54 -0400 |
commit | e193b1d42c390bf1bff7fa02a5a1202b98e75601 (patch) | |
tree | c31143ea95c00e8b49c12571b10a1b9a200bd490 /drivers/gpu/drm/nouveau/nouveau_fence.c | |
parent | 66f247234d1c47da480f687b8104d8935d05b404 (diff) |
drm/nouveau/fence: un-port from nouveau_exec_engine interfaces
Still the same code, but not an "engine" anymore. The fence code is more of
a policy decision rather than exposing mechanisms, so it's not appropriate
to port it to the new engine subsystem.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau/nouveau_fence.c')
-rw-r--r-- | drivers/gpu/drm/nouveau/nouveau_fence.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/drivers/gpu/drm/nouveau/nouveau_fence.c b/drivers/gpu/drm/nouveau/nouveau_fence.c index a91d6e859889..9775458aff48 100644 --- a/drivers/gpu/drm/nouveau/nouveau_fence.c +++ b/drivers/gpu/drm/nouveau/nouveau_fence.c | |||
@@ -62,8 +62,9 @@ void | |||
62 | nouveau_fence_update(struct nouveau_channel *chan) | 62 | nouveau_fence_update(struct nouveau_channel *chan) |
63 | { | 63 | { |
64 | struct drm_device *dev = chan->dev; | 64 | struct drm_device *dev = chan->dev; |
65 | struct nouveau_fence_priv *priv = nv_engine(dev, NVOBJ_ENGINE_FENCE); | 65 | struct drm_nouveau_private *dev_priv = dev->dev_private; |
66 | struct nouveau_fence_chan *fctx = chan->engctx[NVOBJ_ENGINE_FENCE]; | 66 | struct nouveau_fence_priv *priv = dev_priv->fence.func; |
67 | struct nouveau_fence_chan *fctx = chan->fence; | ||
67 | struct nouveau_fence *fence, *fnext; | 68 | struct nouveau_fence *fence, *fnext; |
68 | 69 | ||
69 | spin_lock(&fctx->lock); | 70 | spin_lock(&fctx->lock); |
@@ -84,8 +85,9 @@ int | |||
84 | nouveau_fence_emit(struct nouveau_fence *fence, struct nouveau_channel *chan) | 85 | nouveau_fence_emit(struct nouveau_fence *fence, struct nouveau_channel *chan) |
85 | { | 86 | { |
86 | struct drm_device *dev = chan->dev; | 87 | struct drm_device *dev = chan->dev; |
87 | struct nouveau_fence_priv *priv = nv_engine(dev, NVOBJ_ENGINE_FENCE); | 88 | struct drm_nouveau_private *dev_priv = dev->dev_private; |
88 | struct nouveau_fence_chan *fctx = chan->engctx[NVOBJ_ENGINE_FENCE]; | 89 | struct nouveau_fence_priv *priv = dev_priv->fence.func; |
90 | struct nouveau_fence_chan *fctx = chan->fence; | ||
89 | int ret; | 91 | int ret; |
90 | 92 | ||
91 | fence->channel = chan; | 93 | fence->channel = chan; |
@@ -148,7 +150,8 @@ int | |||
148 | nouveau_fence_sync(struct nouveau_fence *fence, struct nouveau_channel *chan) | 150 | nouveau_fence_sync(struct nouveau_fence *fence, struct nouveau_channel *chan) |
149 | { | 151 | { |
150 | struct drm_device *dev = chan->dev; | 152 | struct drm_device *dev = chan->dev; |
151 | struct nouveau_fence_priv *priv = nv_engine(dev, NVOBJ_ENGINE_FENCE); | 153 | struct drm_nouveau_private *dev_priv = dev->dev_private; |
154 | struct nouveau_fence_priv *priv = dev_priv->fence.func; | ||
152 | struct nouveau_channel *prev; | 155 | struct nouveau_channel *prev; |
153 | int ret = 0; | 156 | int ret = 0; |
154 | 157 | ||
@@ -193,7 +196,7 @@ nouveau_fence_new(struct nouveau_channel *chan, struct nouveau_fence **pfence) | |||
193 | struct nouveau_fence *fence; | 196 | struct nouveau_fence *fence; |
194 | int ret = 0; | 197 | int ret = 0; |
195 | 198 | ||
196 | if (unlikely(!chan->engctx[NVOBJ_ENGINE_FENCE])) | 199 | if (unlikely(!chan->fence)) |
197 | return -ENODEV; | 200 | return -ENODEV; |
198 | 201 | ||
199 | fence = kzalloc(sizeof(*fence), GFP_KERNEL); | 202 | fence = kzalloc(sizeof(*fence), GFP_KERNEL); |