unmap memory mapped with devm_ioremap_resource

Adrian Fiergolski adrian.fiergolski at fastree3d.com
Tue Dec 6 16:23:24 EST 2022


Hi Costa,

Thank you for your reply.

I saw 'devm_iounmap' , but, correct me if I am wrong, I think is not 
enough.

devm_ioremap_resource calls __devm_ioremap_resource (link 
<https://elixir.bootlin.com/linux/v5.10.157/source/lib/devres.c#L117>) 
which calls eventually __devm_request_region (link 
<https://elixir.bootlin.com/linux/v5.10.157/source/kernel/resource.c#L1520>) 
and __devm_ioremap (link 
<https://elixir.bootlin.com/linux/v5.10.157/source/lib/devres.c#L25>). 
Those two will allocate 2 devres: devm_region_release and 
devm_ioremap_release.

The proposed devm_iounmap (link 
<https://elixir.bootlin.com/linux/v5.10.157/source/lib/devres.c#L108>) 
seems to destroy only devm_ioremap_release devres.

Regards,
Adrian

On 2.12.2022 19:01, Constantine Shulyupin wrote:
> Hi,
>
> I suppose you are looking for `devm_iounmap`.
> You can find example of usage in `drivers/fpga/dfl.c`:
>
> ...
>                          feature->ioaddr =
>                                 devm_ioremap_resource(binfo->dev,
>                                                       &finfo->mmio_res);
> ...
>
> static void build_info_complete(struct build_feature_devs_info *binfo)
> {
>         devm_iounmap(binfo->dev, binfo->ioaddr);
>         devm_release_mem_region(binfo->dev, binfo->start, binfo->len);
> }
>
> Regards,
> Costa
>
>
> On Fri, 2 Dec 2022 at 19:25, Adrian Fiergolski
> <adrian.fiergolski at fastree3d.com>  wrote:
>> Hello,
>>
>> I am extending xilinx-hls driver
>> (https://github.com/Xilinx/linux-xlnx/blob/master/drivers/media/platform/xilinx/xilinx-hls.c)
>> to support of_overlay.
>>
>> In order to reflect in the driver changes being applied by the overlay
>> to the device tree, I need to unmap first the memory mapped with
>> devm_ioremap_resource. How to do it properly?
>>
>> I think it's uncommon, as normally kernel (devm_* functions) manages
>> those resources itself with devres, so I can't find inspiration in other
>> drivers.
>>
>> Regards,
>> Adrian
>>
>>
>>
>> _______________________________________________
>> Kernelnewbies mailing list
>> Kernelnewbies at kernelnewbies.org
>> https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20221206/0b664064/attachment.html>


More information about the Kernelnewbies mailing list