From: Rob Clark <robdcl...@chromium.org>

If we don't have a gpu, there is no need to create a submitqueue, which
lets us simplify the error handling and submitqueue creation.

Signed-off-by: Rob Clark <robdcl...@chromium.org>
Acked-by: Christian König <christian.koe...@amd.com>
---
 drivers/gpu/drm/msm/msm_submitqueue.c | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

diff --git a/drivers/gpu/drm/msm/msm_submitqueue.c 
b/drivers/gpu/drm/msm/msm_submitqueue.c
index e5eef11ed014..9e9fec61d629 100644
--- a/drivers/gpu/drm/msm/msm_submitqueue.c
+++ b/drivers/gpu/drm/msm/msm_submitqueue.c
@@ -66,6 +66,12 @@ int msm_submitqueue_create(struct drm_device *drm, struct 
msm_file_private *ctx,
        if (!ctx)
                return -ENODEV;
 
+       if (!priv->gpu)
+               return -ENODEV;
+
+       if (prio >= priv->gpu->nr_rings)
+               return -EINVAL;
+
        queue = kzalloc(sizeof(*queue), GFP_KERNEL);
 
        if (!queue)
@@ -73,15 +79,7 @@ int msm_submitqueue_create(struct drm_device *drm, struct 
msm_file_private *ctx,
 
        kref_init(&queue->ref);
        queue->flags = flags;
-
-       if (priv->gpu) {
-               if (prio >= priv->gpu->nr_rings) {
-                       kfree(queue);
-                       return -EINVAL;
-               }
-
-               queue->prio = prio;
-       }
+       queue->prio = prio;
 
        write_lock(&ctx->queuelock);
 
@@ -107,12 +105,14 @@ int msm_submitqueue_init(struct drm_device *drm, struct 
msm_file_private *ctx)
        struct msm_drm_private *priv = drm->dev_private;
        int default_prio;
 
+       if (!priv->gpu)
+               return -ENODEV;
+
        /*
         * Select priority 2 as the "default priority" unless nr_rings is less
         * than 2 and then pick the lowest priority
         */
-       default_prio = priv->gpu ?
-               clamp_t(uint32_t, 2, 0, priv->gpu->nr_rings - 1) : 0;
+       default_prio = clamp_t(uint32_t, 2, 0, priv->gpu->nr_rings - 1);
 
        INIT_LIST_HEAD(&ctx->submitqueues);
 
-- 
2.31.1

_______________________________________________
Freedreno mailing list
Freedreno@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/freedreno

Reply via email to