lkml.org 
[lkml]   [2019]   [May]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v2 20/45] drivers: tty: serial: msm_serial: use devm_* functions
On Thu 14 Mar 15:33 PDT 2019, Enrico Weigelt, metux IT consult wrote:

> Use the safer devm versions of memory mapping functions.
>
> Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>

As pointed out by others, this resource does not follow the life cycle
of the port->dev, so I don't think this improves the code.

Regards,
Bjorn

> ---
> drivers/tty/serial/msm_serial.c | 13 ++++++++-----
> 1 file changed, 8 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/tty/serial/msm_serial.c b/drivers/tty/serial/msm_serial.c
> index 1090960..e8e0c87 100644
> --- a/drivers/tty/serial/msm_serial.c
> +++ b/drivers/tty/serial/msm_serial.c
> @@ -1324,8 +1324,8 @@ static void msm_release_port(struct uart_port *port)
> return;
> size = resource_size(uart_resource);
>
> - release_mem_region(port->mapbase, size);
> - iounmap(port->membase);
> + devm_release_mem_region(port->dev, port->mapbase, size);
> + devm_iounmap(port->dev, port->membase);
> port->membase = NULL;
> }
>
> @@ -1342,10 +1342,13 @@ static int msm_request_port(struct uart_port *port)
>
> size = resource_size(uart_resource);
>
> - if (!request_mem_region(port->mapbase, size, "msm_serial"))
> + if (!devm_request_mem_region(port->dev,
> + port->mapbase,
> + size,
> + "msm_serial"))
> return -EBUSY;
>
> - port->membase = ioremap(port->mapbase, size);
> + port->membase = ioremap(port->dev, port->mapbase, size);
> if (!port->membase) {
> ret = -EBUSY;
> goto fail_release_port;
> @@ -1354,7 +1357,7 @@ static int msm_request_port(struct uart_port *port)
> return 0;
>
> fail_release_port:
> - release_mem_region(port->mapbase, size);
> + devm_release_mem_region(port->dev, port->mapbase, size);
> return ret;
> }
>
> --
> 1.9.1
>

\
 
 \ /
  Last update: 2022-09-17 16:05    [W:0.231 / U:1.736 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site