[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250205-mem-cocci-newapi-v1-0-aebf2b0e2300@redhat.com>
Date: Wed, 05 Feb 2025 15:07:56 -0500
From: Anusha Srivatsa <asrivats@...hat.com>
To: Joel Stanley <joel@....id.au>,
Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>,
Maxime Ripard <mripard@...nel.org>, Thomas Zimmermann <tzimmermann@...e.de>,
David Airlie <airlied@...il.com>, Simona Vetter <simona@...ll.ch>,
Andrew Jeffery <andrew@...econstruct.com.au>,
Stefan Agner <stefan@...er.ch>, Alison Wang <alison.wang@....com>,
Xinliang Liu <xinliang.liu@...aro.org>, Tian Tao <tiantao6@...ilicon.com>,
Xinwei Kong <kong.kongxinwei@...ilicon.com>,
Sumit Semwal <sumit.semwal@...aro.org>,
Yongqin Liu <yongqin.liu@...aro.org>, John Stultz <jstultz@...gle.com>,
Chun-Kuang Hu <chunkuang.hu@...nel.org>,
Philipp Zabel <p.zabel@...gutronix.de>,
Matthias Brugger <matthias.bgg@...il.com>,
AngeloGioacchino Del Regno <angelogioacchino.delregno@...labora.com>,
Marek Vasut <marex@...x.de>, Shawn Guo <shawnguo@...nel.org>,
Sascha Hauer <s.hauer@...gutronix.de>,
Pengutronix Kernel Team <kernel@...gutronix.de>,
Fabio Estevam <festevam@...il.com>, Sandy Huang <hjc@...k-chips.com>,
Heiko Stübner <heiko@...ech.de>,
Andy Yan <andy.yan@...k-chips.com>, Orson Zhai <orsonzhai@...il.com>,
Baolin Wang <baolin.wang@...ux.alibaba.com>,
Chunyan Zhang <zhang.lyra@...il.com>,
Alain Volmat <alain.volmat@...s.st.com>,
Raphael Gallais-Pou <rgallaispou@...il.com>,
Yannick Fertre <yannick.fertre@...s.st.com>,
Raphael Gallais-Pou <raphael.gallais-pou@...s.st.com>,
Philippe Cornu <philippe.cornu@...s.st.com>,
Maxime Coquelin <mcoquelin.stm32@...il.com>,
Alexandre Torgue <alexandre.torgue@...s.st.com>,
Thierry Reding <thierry.reding@...il.com>,
Mikko Perttunen <mperttunen@...dia.com>,
Jonathan Hunter <jonathanh@...dia.com>,
Alexey Brodkin <abrodkin@...opsys.com>,
Dave Stevenson <dave.stevenson@...pberrypi.com>,
Maíra Canal <mcanal@...lia.com>,
Raspberry Pi Kernel Maintenance <kernel-list@...pberrypi.com>,
Jonathan Corbet <corbet@....net>
Cc: linux-aspeed@...ts.ozlabs.org, dri-devel@...ts.freedesktop.org,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
linux-mediatek@...ts.infradead.org, imx@...ts.linux.dev,
linux-rockchip@...ts.infradead.org,
linux-stm32@...md-mailman.stormreply.com, linux-tegra@...r.kernel.org,
linux-doc@...r.kernel.org, Anusha Srivatsa <asrivats@...hat.com>,
Dmitry Baryshkov <dmitry.baryshkov@...aro.org>
Subject: [PATCH 00/12] drm: Move to using devm_platform_ioremap_resource
Start replacing the below occurences with the newer API:
- (devm_)platform_get_resource + devm_ioremap_resource
- (devm_)platform_get_resource + (devm_)ioremap
- platform_get_resource_byname + devm_ioremap
Move all these occurences to uses devm_platform_ioremap_resource
instead.
This is v2 of the series. Changes from v1 [1]:
- Mostly fix the compilation errors :( What had passed locally
happened to be the wrong config with most drivers not enabled.
- Clarify the TODO item in the GPU section of Documentation
for anyone who wants to do it in future.
- Drop meson patch from discussion in v1
- Drop rockchip patch as well. Offline discussion with
Maxime led to the conclusion that using
devm_platform_get_and_ioremap_resource() would be a better
approach in that source file. Not adding that change as part of
this series, can be addressed separately.
[1] - https://patchwork.freedesktop.org/series/144073/
Used Coccinelle to make the code changes.Semantic patch:
//First Case
//rule s/platform_get_resource + devm_ioremap_resource/devm_platform_ioremap_resource
@rule_1@
identifier res;
expression ioremap_res;
identifier pdev;
@@
-struct resource *res;
...
-res = platform_get_resource(pdev,...);
-ioremap_res = devm_ioremap_resource(...);
+ioremap_res = devm_platform_ioremap_resource(pdev,0);
//Second case
//rule s/(devm_)platform_get_resource + (devm_)ioremap/devm_platform_ioremap_resource.
@rule_2@
identifier res;
expression ioremap;
identifier pdev;
@@
-struct resource *res;
...
-res = platform_get_resource(pdev,...);
<...
-if (!res) {
-...
-}
...>
-ioremap = devm_ioremap(...);
+ioremap = devm_platform_ioremap_resource(pdev,0);
//Third case
//rule s/(devm_)platform_get_resource_byname + (devm_)ioremap/devm_platform_ioremap_resource_byname.
@rule_3@
identifier res;
expression ioremap;
identifier pdev;
constant mem;
expression name;
@@
-struct resource *res;
<+...
-res = platform_get_resource_byname(pdev,mem,name);
<...
-if (!res) {
-...
-}
...>
-ioremap = devm_ioremap(...);
+ioremap = devm_platform_ioremap_resource_byname(pdev,name);
...+>
Signed-off-by: Anusha Srivatsa <asrivats@...hat.com>
---
Anusha Srivatsa (12):
drm/aspeed: move to devm_platform_ioremap_resource() usage
drm/fsl-dcu: move to devm_platform_ioremap_resource() usage
drm/hisilicon: move to devm_platform_ioremap_resource() usage
drm/mediatek: move to devm_platform_ioremap_resource() usage
drm/mxsfb: move to devm_platform_ioremap_resource() usage
drm/sprd: move to devm_platform_ioremap_resource() usage
drm/sti: move to devm_platform_ioremap_resource() usage
drm/stm: move to devm_platform_ioremap_resource() usage
drm/tegra: move to devm_platform_ioremap_resource() usage
drm/tiny: move to devm_platform_ioremap_resource() usage
drm/vc4: move to devm_platform_ioremap_resource() usage
Documentation: Update the todo
Documentation/gpu/todo.rst | 12 +++---
drivers/gpu/drm/aspeed/aspeed_gfx_drv.c | 4 +-
drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c | 4 +-
drivers/gpu/drm/hisilicon/kirin/dw_drm_dsi.c | 4 +-
drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c | 4 +-
drivers/gpu/drm/mediatek/mtk_disp_color.c | 4 +-
drivers/gpu/drm/mediatek/mtk_disp_gamma.c | 4 +-
drivers/gpu/drm/mediatek/mtk_disp_merge.c | 4 +-
drivers/gpu/drm/mediatek/mtk_disp_ovl.c | 4 +-
drivers/gpu/drm/mediatek/mtk_disp_rdma.c | 4 +-
drivers/gpu/drm/mediatek/mtk_dsi.c | 4 +-
drivers/gpu/drm/mediatek/mtk_hdmi.c | 4 +-
drivers/gpu/drm/mediatek/mtk_mdp_rdma.c | 4 +-
drivers/gpu/drm/mxsfb/lcdif_drv.c | 4 +-
drivers/gpu/drm/mxsfb/mxsfb_drv.c | 4 +-
drivers/gpu/drm/sprd/sprd_dpu.c | 9 +---
drivers/gpu/drm/sprd/sprd_dsi.c | 9 +---
drivers/gpu/drm/sti/sti_compositor.c | 10 +----
drivers/gpu/drm/sti/sti_dvo.c | 10 +----
drivers/gpu/drm/sti/sti_hda.c | 9 +---
drivers/gpu/drm/sti/sti_hdmi.c | 11 +----
drivers/gpu/drm/sti/sti_hqvdp.c | 10 +----
drivers/gpu/drm/sti/sti_tvout.c | 10 +----
drivers/gpu/drm/sti/sti_vtg.c | 10 +----
drivers/gpu/drm/stm/ltdc.c | 4 +-
drivers/gpu/drm/tegra/dsi.c | 4 +-
drivers/gpu/drm/tiny/arcpgu.c | 4 +-
drivers/gpu/drm/vc4/vc4_hdmi.c | 55 +++++++------------------
28 files changed, 46 insertions(+), 177 deletions(-)
---
base-commit: 92514ef226f511f2ca1fb1b8752966097518edc0
change-id: 20250205-mem-cocci-newapi-6db4b8116d6e
Best regards,
--
Anusha Srivatsa <asrivats@...hat.com>
Powered by blists - more mailing lists