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