<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Wed, Mar 5, 2025 at 3:59 AM Raphael Gallais-Pou <<a href="mailto:raphael.gallais-pou@foss.st.com">raphael.gallais-pou@foss.st.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>
On 3/3/25 18:29, Anusha Srivatsa wrote:<br>
> On Wed, Feb 26, 2025 at 5:19 AM Raphael Gallais-Pou <<br>
> <a href="mailto:raphael.gallais-pou@foss.st.com" target="_blank">raphael.gallais-pou@foss.st.com</a>> wrote:<br>
><br>
>> On 2/25/25 23:20, Anusha Srivatsa wrote:<br>
>>> Replace platform_get_resource/_byname + devm_ioremap<br>
>>> with just devm_platform_ioremap_resource()<br>
>>><br>
>>> Used Coccinelle to do this change. SmPl patch:<br>
>>><br>
>>> @rule@<br>
>>> identifier res;<br>
>>> expression ioremap;<br>
>>> identifier pdev;<br>
>>> constant mem;<br>
>>> expression name;<br>
>>> @@<br>
>>> -struct resource *res;<br>
>>> ...<br>
>>> -res = platform_get_resource_byname(pdev,mem,name);<br>
>>> <...<br>
>>> -if (!res) {<br>
>>> -...<br>
>>> -}<br>
>>> ...><br>
>>> -ioremap = devm_ioremap(...);<br>
>>> +ioremap = devm_platform_ioremap_resource_byname(pdev,name);<br>
>>><br>
>>> and<br>
>>> @rule_2@<br>
>>> identifier res;<br>
>>> expression ioremap;<br>
>>> identifier pdev;<br>
>>> @@<br>
>>> -struct resource *res;<br>
>>> ...<br>
>>> -res = platform_get_resource(pdev,...);<br>
>>> <...<br>
>>> -if (!res) {<br>
>>> -...<br>
>>> -}<br>
>>> ...><br>
>>> -ioremap = devm_ioremap(...);<br>
>>> +ioremap = devm_platform_ioremap_resource(pdev,0);<br>
>>><br>
>>> v2: Fix compilation error.<br>
>><br>
>> Hi Anusha,<br>
>><br>
>><br>
>> You did not take into account my comment regarding the changelog. :-)<br>
>><br>
>> <a href="https://www.kernel.org/doc/html/latest/process/submitting-patches.html#commentary" rel="noreferrer" target="_blank">https://www.kernel.org/doc/html/latest/process/submitting-patches.html#commentary</a><br>
>><br>
>> While the commit summary do not specify the version, this changelog<br>
>> suggests<br>
>> that the version of your series as been incremented.<br>
>> If this is a v2, then a version descriptor should be applied to the<br>
>> patchset.<br>
>><br>
>> <a href="https://www.kernel.org/doc/html/latest/process/submitting-patches.html#subject-line" rel="noreferrer" target="_blank">https://www.kernel.org/doc/html/latest/process/submitting-patches.html#subject-line</a><br>
>><br>
>> Hi  Raphael,<br>
> That is correct. While this patch is a v2, there is another patch or two in<br>
> the same series that is on v4 when it got acked and reviewed. Having<br>
> patches belonging to the same series with different version prefixes seemed<br>
> odd when I sent the series. Hence added what exactly changed in the commit<br>
> log.<br>
<br>
<br>
Indeed, the serie version should remain consistent across all patches.<br>
<br>
Maxime told you in an earlier answer, any modification of any patch what so ever<br>
increases the serie version. Thus all patches are at v5 (looking at your latest<br>
revision).<br>
<br>
Verbatim from the documentation :<br>
<br>
Other comments relevant only to the moment or the maintainer, not suitable for<br>
the permanent changelog, should also go here [under the --- marker]. A good<br>
example of such comments might be patch changelogs which describe what has<br>
changed between the v1 and v2 version of the patch.<br>
<br>
Please put this information after the --- line which separates the changelog<br>
from the rest of the patch. The version information is not part of the changelog<br>
which gets committed to the git tree. It is additional information for the<br>
reviewers. If it’s placed above the commit tags, it needs manual interaction to<br>
remove it. If it is below the separator line, it gets automatically stripped off<br>
when applying the patch:<br>
<br>
<a href="https://www.kernel.org/doc/html/latest/process/submitting-patches.html#commentary" rel="noreferrer" target="_blank">https://www.kernel.org/doc/html/latest/process/submitting-patches.html#commentary</a><br>
<br>
Raphaël<br>
<br></blockquote><div><br></div><div>Thanks Raphael and Maxime for the detailed explanation. I had overlooked this. Shall keep in mind going forward.</div><div><br></div><div>Anusha <br></div><div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
><br>
> Anusha<br>
><br>
><br>
>> Regards,<br>
>> Raphaël<br>
>><br>
>>> Cc: Raphael Gallais-Pou <<a href="mailto:raphael.gallais-pou@foss.st.com" target="_blank">raphael.gallais-pou@foss.st.com</a>><br>
>>> Cc: Alain Volmat <<a href="mailto:alain.volmat@foss.st.com" target="_blank">alain.volmat@foss.st.com</a>><br>
>>> Reviewed-by: Maxime Ripard <<a href="mailto:mripard@kernel.org" target="_blank">mripard@kernel.org</a>><br>
>>> Acked-by: Raphael Gallais-Pou <<a href="mailto:rgallaispou@gmail.com" target="_blank">rgallaispou@gmail.com</a>><br>
>>> Signed-off-by: Anusha Srivatsa <<a href="mailto:asrivats@redhat.com" target="_blank">asrivats@redhat.com</a>><br>
>>> ---<br>
>>>  drivers/gpu/drm/sti/sti_compositor.c | 10 +---------<br>
>>>  drivers/gpu/drm/sti/sti_dvo.c        | 10 +---------<br>
>>>  drivers/gpu/drm/sti/sti_hda.c        |  9 +--------<br>
>>>  drivers/gpu/drm/sti/sti_hdmi.c       | 11 +----------<br>
>>>  drivers/gpu/drm/sti/sti_hqvdp.c      | 10 +---------<br>
>>>  drivers/gpu/drm/sti/sti_tvout.c      | 10 +---------<br>
>>>  drivers/gpu/drm/sti/sti_vtg.c        | 10 +---------<br>
>>>  7 files changed, 7 insertions(+), 63 deletions(-)<br>
>>><br>
>>> diff --git a/drivers/gpu/drm/sti/sti_compositor.c<br>
>> b/drivers/gpu/drm/sti/sti_compositor.c<br>
>>> index<br>
>> 063f82d23d80c4ba83624a0066a18416a2b37351..7aefce6706ba2cd7d97a33228c9b9812edecf06f<br>
>> 100644<br>
>>> --- a/drivers/gpu/drm/sti/sti_compositor.c<br>
>>> +++ b/drivers/gpu/drm/sti/sti_compositor.c<br>
>>> @@ -177,7 +177,6 @@ static int sti_compositor_probe(struct<br>
>> platform_device *pdev)<br>
>>>       struct device_node *np = dev->of_node;<br>
>>>       struct device_node *vtg_np;<br>
>>>       struct sti_compositor *compo;<br>
>>> -     struct resource *res;<br>
>>>       unsigned int i;<br>
>>><br>
>>>       compo = devm_kzalloc(dev, sizeof(*compo), GFP_KERNEL);<br>
>>> @@ -194,14 +193,7 @@ static int sti_compositor_probe(struct<br>
>> platform_device *pdev)<br>
>>>       memcpy(&compo->data, of_match_node(compositor_of_match, np)->data,<br>
>>>              sizeof(struct sti_compositor_data));<br>
>>> -<br>
>>> -     /* Get Memory ressources */<br>
>>> -     res = platform_get_resource(pdev, IORESOURCE_MEM, 0);<br>
>>> -     if (res == NULL) {<br>
>>> -             DRM_ERROR("Get memory resource failed\n");<br>
>>> -             return -ENXIO;<br>
>>> -     }<br>
>>> -     compo->regs = devm_ioremap(dev, res->start, resource_size(res));<br>
>>> +     compo->regs = devm_platform_ioremap_resource(pdev, 0);<br>
>>>       if (compo->regs == NULL) {<br>
>>>               DRM_ERROR("Register mapping failed\n");<br>
>>>               return -ENXIO;<br>
>>> diff --git a/drivers/gpu/drm/sti/sti_dvo.c<br>
>> b/drivers/gpu/drm/sti/sti_dvo.c<br>
>>> index<br>
>> 4dcddd02629b6a1052be8fb8333bd3aa17c083c5..c877298a7f2bad171724eca4d43ea622db4c81cd<br>
>> 100644<br>
>>> --- a/drivers/gpu/drm/sti/sti_dvo.c<br>
>>> +++ b/drivers/gpu/drm/sti/sti_dvo.c<br>
>>> @@ -511,7 +511,6 @@ static int sti_dvo_probe(struct platform_device<br>
>> *pdev)<br>
>>>  {<br>
>>>       struct device *dev = &pdev->dev;<br>
>>>       struct sti_dvo *dvo;<br>
>>> -     struct resource *res;<br>
>>>       struct device_node *np = dev->of_node;<br>
>>><br>
>>>       DRM_INFO("%s\n", __func__);<br>
>>> @@ -523,14 +522,7 @@ static int sti_dvo_probe(struct platform_device<br>
>> *pdev)<br>
>>>       }<br>
>>><br>
>>>       dvo->dev = pdev->dev;<br>
>>> -<br>
>>> -     res = platform_get_resource_byname(pdev, IORESOURCE_MEM,<br>
>> "dvo-reg");<br>
>>> -     if (!res) {<br>
>>> -             DRM_ERROR("Invalid dvo resource\n");<br>
>>> -             return -ENOMEM;<br>
>>> -     }<br>
>>> -     dvo->regs = devm_ioremap(dev, res->start,<br>
>>> -                     resource_size(res));<br>
>>> +     dvo->regs = devm_platform_ioremap_resource_byname(pdev, "dvo-reg");<br>
>>>       if (!dvo->regs)<br>
>>>               return -ENOMEM;<br>
>>><br>
>>> diff --git a/drivers/gpu/drm/sti/sti_hda.c<br>
>> b/drivers/gpu/drm/sti/sti_hda.c<br>
>>> index<br>
>> 14fdc00d2ba03d4f96ba407ac8e576decb6f32c0..3ca3abb80d425901f4c031edfd327a770d624e1c<br>
>> 100644<br>
>>> --- a/drivers/gpu/drm/sti/sti_hda.c<br>
>>> +++ b/drivers/gpu/drm/sti/sti_hda.c<br>
>>> @@ -750,14 +750,7 @@ static int sti_hda_probe(struct platform_device<br>
>> *pdev)<br>
>>>               return -ENOMEM;<br>
>>><br>
>>>       hda->dev = pdev->dev;<br>
>>> -<br>
>>> -     /* Get resources */<br>
>>> -     res = platform_get_resource_byname(pdev, IORESOURCE_MEM,<br>
>> "hda-reg");<br>
>>> -     if (!res) {<br>
>>> -             DRM_ERROR("Invalid hda resource\n");<br>
>>> -             return -ENOMEM;<br>
>>> -     }<br>
>>> -     hda->regs = devm_ioremap(dev, res->start, resource_size(res));<br>
>>> +     hda->regs = devm_platform_ioremap_resource_byname(pdev, "hda-reg");<br>
>>>       if (!hda->regs)<br>
>>>               return -ENOMEM;<br>
>>><br>
>>> diff --git a/drivers/gpu/drm/sti/sti_hdmi.c<br>
>> b/drivers/gpu/drm/sti/sti_hdmi.c<br>
>>> index<br>
>> 164a34d793d86f114394048667ae3189e1c39242..c64ce7a1ef58b9ce4429edd368269bea87d86984<br>
>> 100644<br>
>>> --- a/drivers/gpu/drm/sti/sti_hdmi.c<br>
>>> +++ b/drivers/gpu/drm/sti/sti_hdmi.c<br>
>>> @@ -1380,7 +1380,6 @@ static int sti_hdmi_probe(struct platform_device<br>
>> *pdev)<br>
>>>       struct device *dev = &pdev->dev;<br>
>>>       struct sti_hdmi *hdmi;<br>
>>>       struct device_node *np = dev->of_node;<br>
>>> -     struct resource *res;<br>
>>>       struct device_node *ddc;<br>
>>>       int ret;<br>
>>><br>
>>> @@ -1399,15 +1398,7 @@ static int sti_hdmi_probe(struct platform_device<br>
>> *pdev)<br>
>>>       }<br>
>>><br>
>>>       hdmi->dev = pdev->dev;<br>
>>> -<br>
>>> -     /* Get resources */<br>
>>> -     res = platform_get_resource_byname(pdev, IORESOURCE_MEM,<br>
>> "hdmi-reg");<br>
>>> -     if (!res) {<br>
>>> -             DRM_ERROR("Invalid hdmi resource\n");<br>
>>> -             ret = -ENOMEM;<br>
>>> -             goto release_adapter;<br>
>>> -     }<br>
>>> -     hdmi->regs = devm_ioremap(dev, res->start, resource_size(res));<br>
>>> +     hdmi->regs = devm_platform_ioremap_resource_byname(pdev,<br>
>> "hdmi-reg");<br>
>>>       if (!hdmi->regs) {<br>
>>>               ret = -ENOMEM;<br>
>>>               goto release_adapter;<br>
>>> diff --git a/drivers/gpu/drm/sti/sti_hqvdp.c<br>
>> b/drivers/gpu/drm/sti/sti_hqvdp.c<br>
>>> index<br>
>> 0f658709c9d0d398c4eed65202443db9d0b41f8c..420395598d119a403d531211022e6005d6a2bd59<br>
>> 100644<br>
>>> --- a/drivers/gpu/drm/sti/sti_hqvdp.c<br>
>>> +++ b/drivers/gpu/drm/sti/sti_hqvdp.c<br>
>>> @@ -1356,7 +1356,6 @@ static int sti_hqvdp_probe(struct platform_device<br>
>> *pdev)<br>
>>>       struct device *dev = &pdev->dev;<br>
>>>       struct device_node *vtg_np;<br>
>>>       struct sti_hqvdp *hqvdp;<br>
>>> -     struct resource *res;<br>
>>><br>
>>>       DRM_DEBUG_DRIVER("\n");<br>
>>><br>
>>> @@ -1367,14 +1366,7 @@ static int sti_hqvdp_probe(struct platform_device<br>
>> *pdev)<br>
>>>       }<br>
>>><br>
>>>       hqvdp->dev = dev;<br>
>>> -<br>
>>> -     /* Get Memory resources */<br>
>>> -     res = platform_get_resource(pdev, IORESOURCE_MEM, 0);<br>
>>> -     if (!res) {<br>
>>> -             DRM_ERROR("Get memory resource failed\n");<br>
>>> -             return -ENXIO;<br>
>>> -     }<br>
>>> -     hqvdp->regs = devm_ioremap(dev, res->start, resource_size(res));<br>
>>> +     hqvdp->regs = devm_platform_ioremap_resource(pdev, 0);<br>
>>>       if (!hqvdp->regs) {<br>
>>>               DRM_ERROR("Register mapping failed\n");<br>
>>>               return -ENXIO;<br>
>>> diff --git a/drivers/gpu/drm/sti/sti_tvout.c<br>
>> b/drivers/gpu/drm/sti/sti_tvout.c<br>
>>> index<br>
>> af6c06f448c4819def8cc0d0836e30f991529690..0bebe815f5e7567f84388af93723a6fa7d2cc7a2<br>
>> 100644<br>
>>> --- a/drivers/gpu/drm/sti/sti_tvout.c<br>
>>> +++ b/drivers/gpu/drm/sti/sti_tvout.c<br>
>>> @@ -838,7 +838,6 @@ static int sti_tvout_probe(struct platform_device<br>
>> *pdev)<br>
>>>       struct device *dev = &pdev->dev;<br>
>>>       struct device_node *node = dev->of_node;<br>
>>>       struct sti_tvout *tvout;<br>
>>> -     struct resource *res;<br>
>>><br>
>>>       DRM_INFO("%s\n", __func__);<br>
>>><br>
>>> @@ -850,14 +849,7 @@ static int sti_tvout_probe(struct platform_device<br>
>> *pdev)<br>
>>>               return -ENOMEM;<br>
>>><br>
>>>       tvout->dev = dev;<br>
>>> -<br>
>>> -     /* get memory resources */<br>
>>> -     res = platform_get_resource_byname(pdev, IORESOURCE_MEM,<br>
>> "tvout-reg");<br>
>>> -     if (!res) {<br>
>>> -             DRM_ERROR("Invalid glue resource\n");<br>
>>> -             return -ENOMEM;<br>
>>> -     }<br>
>>> -     tvout->regs = devm_ioremap(dev, res->start, resource_size(res));<br>
>>> +     tvout->regs = devm_platform_ioremap_resource_byname(pdev,<br>
>> "tvout-reg");<br>
>>>       if (!tvout->regs)<br>
>>>               return -ENOMEM;<br>
>>><br>
>>> diff --git a/drivers/gpu/drm/sti/sti_vtg.c<br>
>> b/drivers/gpu/drm/sti/sti_vtg.c<br>
>>> index<br>
>> 5ba469b711b5318e9e9e6d8df127fb8933d1fac1..b5353fe774d72fd629ecd3ef75a5d2817ca8617f<br>
>> 100644<br>
>>> --- a/drivers/gpu/drm/sti/sti_vtg.c<br>
>>> +++ b/drivers/gpu/drm/sti/sti_vtg.c<br>
>>> @@ -380,20 +380,12 @@ static int vtg_probe(struct platform_device *pdev)<br>
>>>  {<br>
>>>       struct device *dev = &pdev->dev;<br>
>>>       struct sti_vtg *vtg;<br>
>>> -     struct resource *res;<br>
>>>       int ret;<br>
>>><br>
>>>       vtg = devm_kzalloc(dev, sizeof(*vtg), GFP_KERNEL);<br>
>>>       if (!vtg)<br>
>>>               return -ENOMEM;<br>
>>> -<br>
>>> -     /* Get Memory ressources */<br>
>>> -     res = platform_get_resource(pdev, IORESOURCE_MEM, 0);<br>
>>> -     if (!res) {<br>
>>> -             DRM_ERROR("Get memory resource failed\n");<br>
>>> -             return -ENOMEM;<br>
>>> -     }<br>
>>> -     vtg->regs = devm_ioremap(dev, res->start, resource_size(res));<br>
>>> +     vtg->regs = devm_platform_ioremap_resource(pdev, 0);<br>
>>>       if (!vtg->regs) {<br>
>>>               DRM_ERROR("failed to remap I/O memory\n");<br>
>>>               return -ENOMEM;<br>
>>><br>
>><br>
<br>
</blockquote></div></div>