Commit c2c9b243 authored by Ben Skeggs's avatar Ben Skeggs

drm/nouveau/flcn/cmdq: cmd_queue_close always commits, simplify it

Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent 2baaffff
...@@ -97,14 +97,9 @@ cmd_queue_open(struct nvkm_msgqueue *priv, struct nvkm_msgqueue_queue *queue, ...@@ -97,14 +97,9 @@ cmd_queue_open(struct nvkm_msgqueue *priv, struct nvkm_msgqueue_queue *queue,
} }
static void static void
cmd_queue_close(struct nvkm_msgqueue *priv, struct nvkm_msgqueue_queue *queue, cmd_queue_close(struct nvkm_msgqueue *priv, struct nvkm_msgqueue_queue *queue)
bool commit)
{ {
struct nvkm_falcon *falcon = priv->falcon; nvkm_falcon_wr32(queue->qmgr->falcon, queue->head_reg, queue->position);
if (commit)
nvkm_falcon_wr32(falcon, queue->head_reg, queue->position);
mutex_unlock(&queue->mutex); mutex_unlock(&queue->mutex);
} }
...@@ -116,7 +111,6 @@ cmd_write(struct nvkm_msgqueue *priv, struct nvkm_msgqueue_hdr *cmd, ...@@ -116,7 +111,6 @@ cmd_write(struct nvkm_msgqueue *priv, struct nvkm_msgqueue_hdr *cmd,
static unsigned timeout = 2000; static unsigned timeout = 2000;
unsigned long end_jiffies = jiffies + msecs_to_jiffies(timeout); unsigned long end_jiffies = jiffies + msecs_to_jiffies(timeout);
int ret = -EAGAIN; int ret = -EAGAIN;
bool commit = true;
while (ret == -EAGAIN && time_before(jiffies, end_jiffies)) while (ret == -EAGAIN && time_before(jiffies, end_jiffies))
ret = cmd_queue_open(priv, queue, cmd->size); ret = cmd_queue_open(priv, queue, cmd->size);
...@@ -126,7 +120,7 @@ cmd_write(struct nvkm_msgqueue *priv, struct nvkm_msgqueue_hdr *cmd, ...@@ -126,7 +120,7 @@ cmd_write(struct nvkm_msgqueue *priv, struct nvkm_msgqueue_hdr *cmd,
} }
cmd_queue_push(priv, queue, cmd, cmd->size); cmd_queue_push(priv, queue, cmd, cmd->size);
cmd_queue_close(priv, queue, commit); cmd_queue_close(priv, queue);
return ret; return ret;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment