From nobody Wed Dec 17 16:11:10 2025 Received: from sender4-pp-f112.zoho.com (sender4-pp-f112.zoho.com [136.143.188.112]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 247562EBBAA for ; Sun, 19 Oct 2025 14:53:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=pass smtp.client-ip=136.143.188.112 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1760885622; cv=pass; b=ksBfD4UB5jSZbdvEtV3qp0HjGX2HAL1iEqGYRVPgIx+wkseuk9lx2bnSqoNl2F9bFy/f9ZnGp59Ba6XPl+2jQbVtqtlRQzmHZh1wuPtuD8db1nUkQHlBOlqXxO+LrA3XcgkojYkq5x9pzHi7S70hy+XdWTuBHQVoJBq9ocSDE/c= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1760885622; c=relaxed/simple; bh=c9O5K6PQRFQetqrubdgFV+vZFzBta7XUxTS3IW7rvQI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=DGA5vhXCEl3FO4Ymnps1M8Z2zkkdgv1MS9IjKAoVEDhIjjUYyvH1DaMhFu2pNpyq+LAzRJZXgmNg0xTClk8L8DCMDo+RrfJggTZHsn3razk/Hj5AwiUlrQiMTP9E1ZSP5rdu5Rm8HQyGDSrQPHcMcwiGddpCfEtRVPvmydMcGFs= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com; spf=pass smtp.mailfrom=collabora.com; dkim=pass (1024-bit key) header.d=collabora.com header.i=adrian.larumbe@collabora.com header.b=jpaP5jgM; arc=pass smtp.client-ip=136.143.188.112 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=collabora.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=collabora.com header.i=adrian.larumbe@collabora.com header.b="jpaP5jgM" ARC-Seal: i=1; a=rsa-sha256; t=1760885602; cv=none; d=zohomail.com; s=zohoarc; b=TFkyn8fkVmaZ12Rypc57wzhH0lWeyTNHyKYPFljYghzQ7QNJBc84cRl0vleUn9UA+GpF5VWUi4lSwpjN4dcWbcgBqlFtQUWU/z8WTlEGo5X8bxL8f6HZhSHFrzry5yNsoOTGwEhTG7a1KLE5RfKlaxzpX3D1aqxrCjb97ibDqrw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1760885602; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To; bh=PVhvKwUnJ2AgUeH2hJPEyVk3NmMQu9bxmT+hc1ATx6o=; b=cVBgtxCqyD08BivVAmsR7lKGmw4C2L8E3gw4lvGa/1dwQgjCV4NcXVZStp7CtSEk/iRWmmoKJHyVl7JRwL31QZeF2Tnhxg6dv02Q2KGlQQKgehycIh8RTa+g0skoWhyWs/CtgcqqpXaBbJ1A7IJnqqgNwCUpfmULOH22x+b/+KU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=collabora.com; spf=pass smtp.mailfrom=adrian.larumbe@collabora.com; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1760885602; s=zohomail; d=collabora.com; i=adrian.larumbe@collabora.com; h=From:From:To:To:Cc:Cc:Subject:Subject:Date:Date:Message-ID:In-Reply-To:References:MIME-Version:Content-Type:Content-Transfer-Encoding:Message-Id:Reply-To; bh=PVhvKwUnJ2AgUeH2hJPEyVk3NmMQu9bxmT+hc1ATx6o=; b=jpaP5jgM3kXveq7c+EnCeMZEhLZwCUhohUSBj5ADyOwwe6N/aiBmc6JkwglfQQYl ny8YxIp0iAJnQ+4v16m2CQ/dtRj85tD17LWxXlLKnfRmzk+bTlAYeQynYHde38sUtG+ MVxR/8t1muCh9qvt6nnGe0uc3Q/uSBq+FcpcuPEY= Received: by mx.zohomail.com with SMTPS id 1760885600645673.1325287663534; Sun, 19 Oct 2025 07:53:20 -0700 (PDT) From: =?UTF-8?q?Adri=C3=A1n=20Larumbe?= To: linux-kernel@vger.kernel.org Cc: dri-devel@lists.freedesktop.org, Steven Price , Boris Brezillon , kernel@collabora.com, =?UTF-8?q?Adri=C3=A1n=20Larumbe?= , AngeloGioacchino Del Regno , Rob Herring , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter Subject: [PATCH v7 11/12] drm/panfrost: Rename panfrost_job functions to reflect real role Date: Sun, 19 Oct 2025 15:52:16 +0100 Message-ID: <20251019145225.3621989-12-adrian.larumbe@collabora.com> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20251019145225.3621989-1-adrian.larumbe@collabora.com> References: <20251019145225.3621989-1-adrian.larumbe@collabora.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable panfrost_job_* prefixed functions in panfrost_job.c deal with both panfrost_job objects and also the more general JM (Job Manager) side of the device itself. This is confusing. Reprefix functions that program the JM to panfrosot_jm_* instead. Reviewed-by: Steven Price Reviewed-by: Boris Brezillon Reviewed-by: AngeloGioacchino Del Regno Signed-off-by: Adri=C3=A1n Larumbe --- drivers/gpu/drm/panfrost/panfrost_device.c | 14 +++---- drivers/gpu/drm/panfrost/panfrost_drv.c | 4 +- drivers/gpu/drm/panfrost/panfrost_job.c | 48 +++++++++++----------- drivers/gpu/drm/panfrost/panfrost_job.h | 16 ++++---- 4 files changed, 41 insertions(+), 41 deletions(-) diff --git a/drivers/gpu/drm/panfrost/panfrost_device.c b/drivers/gpu/drm/p= anfrost/panfrost_device.c index f1d811a6de6c..c61b97af120c 100644 --- a/drivers/gpu/drm/panfrost/panfrost_device.c +++ b/drivers/gpu/drm/panfrost/panfrost_device.c @@ -259,7 +259,7 @@ int panfrost_device_init(struct panfrost_device *pfdev) if (err) goto out_gpu; =20 - err =3D panfrost_job_init(pfdev); + err =3D panfrost_jm_init(pfdev); if (err) goto out_mmu; =20 @@ -269,7 +269,7 @@ int panfrost_device_init(struct panfrost_device *pfdev) =20 return 0; out_job: - panfrost_job_fini(pfdev); + panfrost_jm_fini(pfdev); out_mmu: panfrost_mmu_fini(pfdev); out_gpu: @@ -290,7 +290,7 @@ int panfrost_device_init(struct panfrost_device *pfdev) void panfrost_device_fini(struct panfrost_device *pfdev) { panfrost_perfcnt_fini(pfdev); - panfrost_job_fini(pfdev); + panfrost_jm_fini(pfdev); panfrost_mmu_fini(pfdev); panfrost_gpu_fini(pfdev); panfrost_devfreq_fini(pfdev); @@ -407,9 +407,9 @@ void panfrost_device_reset(struct panfrost_device *pfde= v, bool enable_job_int) panfrost_gpu_power_on(pfdev); panfrost_mmu_reset(pfdev); =20 - panfrost_job_reset_interrupts(pfdev); + panfrost_jm_reset_interrupts(pfdev); if (enable_job_int) - panfrost_job_enable_interrupts(pfdev); + panfrost_jm_enable_interrupts(pfdev); } =20 static int panfrost_device_runtime_resume(struct device *dev) @@ -451,11 +451,11 @@ static int panfrost_device_runtime_suspend(struct dev= ice *dev) { struct panfrost_device *pfdev =3D dev_get_drvdata(dev); =20 - if (!panfrost_job_is_idle(pfdev)) + if (!panfrost_jm_is_idle(pfdev)) return -EBUSY; =20 panfrost_devfreq_suspend(pfdev); - panfrost_job_suspend_irq(pfdev); + panfrost_jm_suspend_irq(pfdev); panfrost_mmu_suspend_irq(pfdev); panfrost_gpu_suspend_irq(pfdev); panfrost_gpu_power_off(pfdev); diff --git a/drivers/gpu/drm/panfrost/panfrost_drv.c b/drivers/gpu/drm/panf= rost/panfrost_drv.c index 200c04d2fc55..1c3c574cd64a 100644 --- a/drivers/gpu/drm/panfrost/panfrost_drv.c +++ b/drivers/gpu/drm/panfrost/panfrost_drv.c @@ -606,7 +606,7 @@ panfrost_open(struct drm_device *dev, struct drm_file *= file) goto err_free; } =20 - ret =3D panfrost_job_open(file); + ret =3D panfrost_jm_open(file); if (ret) goto err_job; =20 @@ -625,7 +625,7 @@ panfrost_postclose(struct drm_device *dev, struct drm_f= ile *file) struct panfrost_file_priv *panfrost_priv =3D file->driver_priv; =20 panfrost_perfcnt_close(file); - panfrost_job_close(file); + panfrost_jm_close(file); =20 panfrost_mmu_ctx_put(panfrost_priv->mmu); kfree(panfrost_priv); diff --git a/drivers/gpu/drm/panfrost/panfrost_job.c b/drivers/gpu/drm/panf= rost/panfrost_job.c index 39e919420aaf..11894a6b9fcc 100644 --- a/drivers/gpu/drm/panfrost/panfrost_job.c +++ b/drivers/gpu/drm/panfrost/panfrost_job.c @@ -430,18 +430,18 @@ static struct dma_fence *panfrost_job_run(struct drm_= sched_job *sched_job) return fence; } =20 -void panfrost_job_reset_interrupts(struct panfrost_device *pfdev) +void panfrost_jm_reset_interrupts(struct panfrost_device *pfdev) { job_write(pfdev, JOB_INT_CLEAR, ALL_JS_INT_MASK); } =20 -void panfrost_job_enable_interrupts(struct panfrost_device *pfdev) +void panfrost_jm_enable_interrupts(struct panfrost_device *pfdev) { clear_bit(PANFROST_COMP_BIT_JOB, pfdev->is_suspended); job_write(pfdev, JOB_INT_MASK, ALL_JS_INT_MASK); } =20 -void panfrost_job_suspend_irq(struct panfrost_device *pfdev) +void panfrost_jm_suspend_irq(struct panfrost_device *pfdev) { set_bit(PANFROST_COMP_BIT_JOB, pfdev->is_suspended); =20 @@ -503,8 +503,8 @@ static void panfrost_job_handle_err(struct panfrost_dev= ice *pfdev, } } =20 -static void panfrost_job_handle_done(struct panfrost_device *pfdev, - struct panfrost_job *job) +static void panfrost_jm_handle_done(struct panfrost_device *pfdev, + struct panfrost_job *job) { /* Set ->jc to 0 to avoid re-submitting an already finished job (can * happen when we receive the DONE interrupt while doing a GPU reset). @@ -517,7 +517,7 @@ static void panfrost_job_handle_done(struct panfrost_de= vice *pfdev, pm_runtime_put_autosuspend(pfdev->base.dev); } =20 -static void panfrost_job_handle_irq(struct panfrost_device *pfdev, u32 sta= tus) +static void panfrost_jm_handle_irq(struct panfrost_device *pfdev, u32 stat= us) { struct panfrost_job *done[NUM_JOB_SLOTS][2] =3D {}; struct panfrost_job *failed[NUM_JOB_SLOTS] =3D {}; @@ -592,7 +592,7 @@ static void panfrost_job_handle_irq(struct panfrost_dev= ice *pfdev, u32 status) } =20 for (i =3D 0; i < ARRAY_SIZE(done[0]) && done[j][i]; i++) - panfrost_job_handle_done(pfdev, done[j][i]); + panfrost_jm_handle_done(pfdev, done[j][i]); } =20 /* And finally we requeue jobs that were waiting in the second slot @@ -610,7 +610,7 @@ static void panfrost_job_handle_irq(struct panfrost_dev= ice *pfdev, u32 status) struct panfrost_job *canceled =3D panfrost_dequeue_job(pfdev, j); =20 dma_fence_set_error(canceled->done_fence, -ECANCELED); - panfrost_job_handle_done(pfdev, canceled); + panfrost_jm_handle_done(pfdev, canceled); } else if (!atomic_read(&pfdev->reset.pending)) { /* Requeue the job we removed if no reset is pending */ job_write(pfdev, JS_COMMAND_NEXT(j), JS_COMMAND_START); @@ -618,7 +618,7 @@ static void panfrost_job_handle_irq(struct panfrost_dev= ice *pfdev, u32 status) } } =20 -static void panfrost_job_handle_irqs(struct panfrost_device *pfdev) +static void panfrost_jm_handle_irqs(struct panfrost_device *pfdev) { u32 status =3D job_read(pfdev, JOB_INT_RAWSTAT); =20 @@ -626,7 +626,7 @@ static void panfrost_job_handle_irqs(struct panfrost_de= vice *pfdev) pm_runtime_mark_last_busy(pfdev->base.dev); =20 spin_lock(&pfdev->js->job_lock); - panfrost_job_handle_irq(pfdev, status); + panfrost_jm_handle_irq(pfdev, status); spin_unlock(&pfdev->js->job_lock); status =3D job_read(pfdev, JOB_INT_RAWSTAT); } @@ -707,7 +707,7 @@ panfrost_reset(struct panfrost_device *pfdev, dev_err(pfdev->base.dev, "Soft-stop failed\n"); =20 /* Handle the remaining interrupts before we reset. */ - panfrost_job_handle_irqs(pfdev); + panfrost_jm_handle_irqs(pfdev); =20 /* Remaining interrupts have been handled, but we might still have * stuck jobs. Let's make sure the PM counters stay balanced by @@ -752,7 +752,7 @@ panfrost_reset(struct panfrost_device *pfdev, drm_sched_start(&pfdev->js->queue[i].sched, 0); =20 /* Re-enable job interrupts now that everything has been restarted. */ - panfrost_job_enable_interrupts(pfdev); + panfrost_jm_enable_interrupts(pfdev); =20 dma_fence_end_signalling(cookie); } @@ -817,11 +817,11 @@ static const struct drm_sched_backend_ops panfrost_sc= hed_ops =3D { .free_job =3D panfrost_job_free }; =20 -static irqreturn_t panfrost_job_irq_handler_thread(int irq, void *data) +static irqreturn_t panfrost_jm_irq_handler_thread(int irq, void *data) { struct panfrost_device *pfdev =3D data; =20 - panfrost_job_handle_irqs(pfdev); + panfrost_jm_handle_irqs(pfdev); =20 /* Enable interrupts only if we're not about to get suspended */ if (!test_bit(PANFROST_COMP_BIT_JOB, pfdev->is_suspended)) @@ -830,7 +830,7 @@ static irqreturn_t panfrost_job_irq_handler_thread(int = irq, void *data) return IRQ_HANDLED; } =20 -static irqreturn_t panfrost_job_irq_handler(int irq, void *data) +static irqreturn_t panfrost_jm_irq_handler(int irq, void *data) { struct panfrost_device *pfdev =3D data; u32 status; @@ -846,7 +846,7 @@ static irqreturn_t panfrost_job_irq_handler(int irq, vo= id *data) return IRQ_WAKE_THREAD; } =20 -int panfrost_job_init(struct panfrost_device *pfdev) +int panfrost_jm_init(struct panfrost_device *pfdev) { struct drm_sched_init_args args =3D { .ops =3D &panfrost_sched_ops, @@ -880,8 +880,8 @@ int panfrost_job_init(struct panfrost_device *pfdev) return js->irq; =20 ret =3D devm_request_threaded_irq(pfdev->base.dev, js->irq, - panfrost_job_irq_handler, - panfrost_job_irq_handler_thread, + panfrost_jm_irq_handler, + panfrost_jm_irq_handler_thread, IRQF_SHARED, KBUILD_MODNAME "-job", pfdev); if (ret) { @@ -905,8 +905,8 @@ int panfrost_job_init(struct panfrost_device *pfdev) } } =20 - panfrost_job_reset_interrupts(pfdev); - panfrost_job_enable_interrupts(pfdev); + panfrost_jm_reset_interrupts(pfdev); + panfrost_jm_enable_interrupts(pfdev); =20 return 0; =20 @@ -918,7 +918,7 @@ int panfrost_job_init(struct panfrost_device *pfdev) return ret; } =20 -void panfrost_job_fini(struct panfrost_device *pfdev) +void panfrost_jm_fini(struct panfrost_device *pfdev) { struct panfrost_job_slot *js =3D pfdev->js; int j; @@ -933,7 +933,7 @@ void panfrost_job_fini(struct panfrost_device *pfdev) destroy_workqueue(pfdev->reset.wq); } =20 -int panfrost_job_open(struct drm_file *file) +int panfrost_jm_open(struct drm_file *file) { struct panfrost_file_priv *panfrost_priv =3D file->driver_priv; int ret; @@ -955,7 +955,7 @@ int panfrost_job_open(struct drm_file *file) return 0; } =20 -void panfrost_job_close(struct drm_file *file) +void panfrost_jm_close(struct drm_file *file) { struct panfrost_file_priv *panfrost_priv =3D file->driver_priv; struct panfrost_jm_ctx *jm_ctx; @@ -967,7 +967,7 @@ void panfrost_job_close(struct drm_file *file) xa_destroy(&panfrost_priv->jm_ctxs); } =20 -int panfrost_job_is_idle(struct panfrost_device *pfdev) +int panfrost_jm_is_idle(struct panfrost_device *pfdev) { struct panfrost_job_slot *js =3D pfdev->js; int i; diff --git a/drivers/gpu/drm/panfrost/panfrost_job.h b/drivers/gpu/drm/panf= rost/panfrost_job.h index f6d9960740ae..c3f57e41a571 100644 --- a/drivers/gpu/drm/panfrost/panfrost_job.h +++ b/drivers/gpu/drm/panfrost/panfrost_job.h @@ -62,16 +62,16 @@ void panfrost_jm_ctx_put(struct panfrost_jm_ctx *jm_ctx= ); struct panfrost_jm_ctx *panfrost_jm_ctx_get(struct panfrost_jm_ctx *jm_ctx= ); struct panfrost_jm_ctx *panfrost_jm_ctx_from_handle(struct drm_file *file,= u32 handle); =20 -int panfrost_job_init(struct panfrost_device *pfdev); -void panfrost_job_fini(struct panfrost_device *pfdev); -int panfrost_job_open(struct drm_file *file); -void panfrost_job_close(struct drm_file *file); +int panfrost_jm_init(struct panfrost_device *pfdev); +void panfrost_jm_fini(struct panfrost_device *pfdev); +int panfrost_jm_open(struct drm_file *file); +void panfrost_jm_close(struct drm_file *file); +void panfrost_jm_reset_interrupts(struct panfrost_device *pfdev); +void panfrost_jm_enable_interrupts(struct panfrost_device *pfdev); +void panfrost_jm_suspend_irq(struct panfrost_device *pfdev); +int panfrost_jm_is_idle(struct panfrost_device *pfdev); int panfrost_job_get_slot(struct panfrost_job *job); int panfrost_job_push(struct panfrost_job *job); void panfrost_job_put(struct panfrost_job *job); -void panfrost_job_reset_interrupts(struct panfrost_device *pfdev); -void panfrost_job_enable_interrupts(struct panfrost_device *pfdev); -void panfrost_job_suspend_irq(struct panfrost_device *pfdev); -int panfrost_job_is_idle(struct panfrost_device *pfdev); =20 #endif --=20 2.51.0