]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
serial: 8250_platform: Switch to use platform_get_mem_or_io()
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Mon, 12 Aug 2024 15:47:07 +0000 (18:47 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 14 Aug 2024 06:22:50 +0000 (08:22 +0200)
Switch to use new platform_get_mem_or_io() instead of home grown analogue.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20240812154901.1068407-6-andriy.shevchenko@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/8250/8250_platform.c

index 526953442f476990ce5e9677a357c59866e731f0..5953ce5ea32a87013f3b0bfff0d0d6e85605976d 100644 (file)
@@ -113,21 +113,23 @@ static int serial8250_platform_probe(struct platform_device *pdev)
        unsigned char iotype;
        int ret, line;
 
-       regs = platform_get_resource(pdev, IORESOURCE_IO, 0);
-       if (regs) {
+       regs = platform_get_mem_or_io(pdev, 0);
+       if (!regs)
+               return dev_err_probe(dev, -EINVAL, "no registers defined\n");
+
+       switch (resource_type(regs)) {
+       case IORESOURCE_IO:
                uart.port.iobase = regs->start;
                iotype = UPIO_PORT;
-       } else {
-               regs = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-               if (!regs) {
-                       dev_err(dev, "no registers defined\n");
-                       return -EINVAL;
-               }
-
+               break;
+       case IORESOURCE_MEM:
                uart.port.mapbase = regs->start;
                uart.port.mapsize = resource_size(regs);
                uart.port.flags = UPF_IOREMAP;
                iotype = UPIO_MEM;
+               break;
+       default:
+               return -EINVAL;
        }
 
        /* Default clock frequency*/