Fill the struct uart_port->mapsize field and use it, insteaf of
hardcoded values in many places. This makes the code layout a bit
more consistent and easily allows using generic helpers for the
io memory handling.

Candidates for such helpers could be eg. the request+ioremap and
iounmap+release combinations.

Signed-off-by: Enrico Weigelt <i...@metux.net>
---
 drivers/tty/serial/uartlite.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/drivers/tty/serial/uartlite.c b/drivers/tty/serial/uartlite.c
index 44d65bd..c322ab6 100644
--- a/drivers/tty/serial/uartlite.c
+++ b/drivers/tty/serial/uartlite.c
@@ -342,7 +342,7 @@ static const char *ulite_type(struct uart_port *port)
 
 static void ulite_release_port(struct uart_port *port)
 {
-       release_mem_region(port->mapbase, ULITE_REGION);
+       release_mem_region(port->mapbase, port->mapsize);
        iounmap(port->membase);
        port->membase = NULL;
 }
@@ -356,15 +356,15 @@ static int ulite_request_port(struct uart_port *port)
                "ulite console: port=%p; port->mapbase=%llx\n",
                 port, (unsigned long long) port->mapbase);
 
-       if (!request_mem_region(port->mapbase, ULITE_REGION, "uartlite")) {
+       if (!request_mem_region(port->mapbase, port->mapsize, "uartlite")) {
                dev_err(port->dev, "Memory region busy\n");
                return -EBUSY;
        }
 
-       port->membase = ioremap(port->mapbase, ULITE_REGION);
+       port->membase = ioremap(port->mapbase, port->mapsize);
        if (!port->membase) {
                dev_err(port->dev, "Unable to map registers\n");
-               release_mem_region(port->mapbase, ULITE_REGION);
+               release_mem_region(port->mapbase, port->mapsize);
                return -EBUSY;
        }
 
@@ -649,6 +649,7 @@ static int ulite_assign(struct device *dev, int id, u32 
base, int irq,
        port->iotype = UPIO_MEM;
        port->iobase = 1; /* mark port in use */
        port->mapbase = base;
+       port->mapsize = ULITE_REGION;
        port->membase = NULL;
        port->ops = &ulite_ops;
        port->irq = irq;
-- 
1.9.1

Reply via email to