OSDN Git Service

serial: 8250: of: Defer probe on missing IRQ
authorAlexander Sverdlin <alexander.sverdlin@nokia.com>
Fri, 13 Jul 2018 15:01:19 +0000 (17:01 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 16 Jul 2018 09:56:22 +0000 (11:56 +0200)
If the IRQ controller is not yet probed do not proceed with irq=0,
try to defer the probe.

Signed-off-by: Alexander Sverdlin <alexander.sverdlin@nokia.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/8250/8250_of.c

index 863e86b..af8beef 100644 (file)
@@ -144,6 +144,10 @@ static int of_platform_serial_setup(struct platform_device *ofdev,
                port->line = ret;
 
        port->irq = irq_of_parse_and_map(np, 0);
+       if (!port->irq) {
+               ret = -EPROBE_DEFER;
+               goto err_unprepare;
+       }
 
        info->rst = devm_reset_control_get_optional_shared(&ofdev->dev, NULL);
        if (IS_ERR(info->rst)) {