Skip to content

Commit 1b1eef6

Browse files
andy-shevgregkh
authored andcommitted
serial: 8250_mtk: Switch to use platform_get_irq()
platform_get_irq() provides an established error code and error message. Also, it's better to use dedicated API to retrieve Linux IRQ resource. Signed-off-by: Andy Shevchenko <[email protected]> Reviewed-by: Matthias Brugger <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Greg Kroah-Hartman <[email protected]>
1 parent 451a73c commit 1b1eef6

File tree

1 file changed

+10
-6
lines changed

1 file changed

+10
-6
lines changed

drivers/tty/serial/8250/8250_mtk.c

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -494,13 +494,17 @@ static int mtk8250_probe_of(struct platform_device *pdev, struct uart_port *p,
494494
static int mtk8250_probe(struct platform_device *pdev)
495495
{
496496
struct uart_8250_port uart = {};
497-
struct resource *regs = platform_get_resource(pdev, IORESOURCE_MEM, 0);
498-
struct resource *irq = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
499497
struct mtk8250_data *data;
500-
int err;
498+
struct resource *regs;
499+
int irq, err;
500+
501+
irq = platform_get_irq(pdev, 0);
502+
if (irq < 0)
503+
return irq;
501504

502-
if (!regs || !irq) {
503-
dev_err(&pdev->dev, "no registers/irq defined\n");
505+
regs = platform_get_resource(pdev, IORESOURCE_MEM, 0);
506+
if (!regs) {
507+
dev_err(&pdev->dev, "no registers defined\n");
504508
return -EINVAL;
505509
}
506510

@@ -524,7 +528,7 @@ static int mtk8250_probe(struct platform_device *pdev)
524528

525529
spin_lock_init(&uart.port.lock);
526530
uart.port.mapbase = regs->start;
527-
uart.port.irq = irq->start;
531+
uart.port.irq = irq;
528532
uart.port.pm = mtk8250_do_pm;
529533
uart.port.type = PORT_16550;
530534
uart.port.flags = UPF_BOOT_AUTOCONF | UPF_FIXED_PORT;

0 commit comments

Comments
 (0)