lkml.org 
[lkml]   [2019]   [Mar]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH v2 10/45] drivers: tty: serial: zs: use devm_* functions
Date
Use the safer devm versions of memory mapping functions.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
---
drivers/tty/serial/zs.c | 16 ++++++++++------
1 file changed, 10 insertions(+), 6 deletions(-)

diff --git a/drivers/tty/serial/zs.c b/drivers/tty/serial/zs.c
index b03d3e4..0b1ec2f 100644
--- a/drivers/tty/serial/zs.c
+++ b/drivers/tty/serial/zs.c
@@ -984,16 +984,17 @@ static const char *zs_type(struct uart_port *uport)

static void zs_release_port(struct uart_port *uport)
{
- iounmap(uport->membase);
+ devm_iounmap(uport->dev, uport->membase);
uport->membase = 0;
- release_mem_region(uport->mapbase, ZS_CHAN_IO_SIZE);
+ devm_release_mem_region(uport->dev, uport->mapbase, ZS_CHAN_IO_SIZE);
}

static int zs_map_port(struct uart_port *uport)
{
if (!uport->membase)
- uport->membase = ioremap_nocache(uport->mapbase,
- ZS_CHAN_IO_SIZE);
+ uport->membase = devm_ioremap_nocache(uport->dev,
+ uport->mapbase,
+ ZS_CHAN_IO_SIZE);
if (!uport->membase) {
printk(KERN_ERR "zs: Cannot map MMIO\n");
return -ENOMEM;
@@ -1005,13 +1006,16 @@ static int zs_request_port(struct uart_port *uport)
{
int ret;

- if (!request_mem_region(uport->mapbase, ZS_CHAN_IO_SIZE, "scc")) {
+ if (!devm_request_mem_region(uport->mapbase,
+ ZS_CHAN_IO_SIZE, "scc")) {
printk(KERN_ERR "zs: Unable to reserve MMIO resource\n");
return -EBUSY;
}
ret = zs_map_port(uport);
if (ret) {
- release_mem_region(uport->mapbase, ZS_CHAN_IO_SIZE);
+ devm_release_mem_region(uport-dev,
+ uport->mapbase,
+ ZS_CHAN_IO_SIZE);
return ret;
}
return 0;
--
1.9.1
\
 
 \ /
  Last update: 2019-03-14 23:39    [W:1.895 / U:0.188 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site