On 08/30/2015 12:33 AM, Sergei Shtylyov wrote: > Hello. > > On 8/28/2015 9:50 PM, Tony Lindgren wrote: > >> The interrupt handler may not be available when smsc911x probes if the >> interrupt handler is a GPIO controller for example. Let's fix that >> by adding handling for -EPROBE_DEFER. > >> Cc: Steve Glendinning <steve.glendinning@xxxxxxxxxxx> >> Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx> >> --- >> drivers/net/ethernet/smsc/smsc911x.c | 5 ++++- >> 1 file changed, 4 insertions(+), 1 deletion(-) >> >> diff --git a/drivers/net/ethernet/smsc/smsc911x.c >> b/drivers/net/ethernet/smsc/smsc911x.c >> index 959aeea..cb9f166f 100644 >> --- a/drivers/net/ethernet/smsc/smsc911x.c >> +++ b/drivers/net/ethernet/smsc/smsc911x.c >> @@ -2435,7 +2435,10 @@ static int smsc911x_drv_probe(struct >> platform_device *pdev) >> res_size = resource_size(res); >> >> irq = platform_get_irq(pdev, 0); >> - if (irq <= 0) { >> + if (irq == -EPROBE_DEFER) { >> + retval = -EPROBE_DEFER; >> + goto out_0; >> + } else if (irq <= 0) { >> pr_warn("Could not allocate irq resource\n"); >> retval = -ENODEV; > > I'd propagate the error code from platfrom_get_irq() instead (in > fact, I've submitted a couple of such patches yesterday and they have > been already merged). Have you paid some attention on current platform_get_irq_() implementation? The platform_get_irq() can return 0 in case of DT-boot. -- regards, -grygorii -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html