On Thu, Nov 10, 2016 at 1:59 AM, Luis R. Rodriguez <mcg...@kernel.org> wrote: > On Wed, Nov 9, 2016 at 4:43 PM, Rafael J. Wysocki <raf...@kernel.org> wrote: >> On Mon, Nov 7, 2016 at 10:22 PM, Luis R. Rodriguez <mcg...@kernel.org> wrote: >>> As clarified by Rafael at Plumbers, this functional dependencies >>> framework assumes your driver / subsystem supports deferred probe, >> >> It isn't particularly clear what you mean by "support" here. > > I noted some folks had reported issues, and you acknowledged that if > deferred probe was used in some drivers and if this created an issue > the same issue would be seen with this framework. AFAICT there are two > possible issues to consider: > > 1) the one Geert Uytterhoeven noted. Again I'll note what he had mentioned > [0]. > > "Some drivers / subsystems don’t support deferred probe yet, such failures > usually don’t blow up, but cause subtle malfunctioning. Example, an > Ethernet > phy could not get its interrupt as the primary IRQ chip had not been probed > yet, it reverted to polling though. Sub-optimal." [0] > > [0] > https://lists.linuxfoundation.org/pipermail/ksummit-discuss/2016-August/003425.html > > Geert can you provide more details?
Issue reported in "of_mdiobus_register_phy() and deferred probe" (http://lkml.iu.edu/hypermail/linux/kernel/1510.2/05770.html) Key point is: "However, of_mdiobus_register_phy() uses irq_of_parse_and_map(), which plainly ignores EPROBE_DEFER, and it just continues." At that time, the PHY driver fell back to polling, but as of commit d5c3d8465 ("net: phy: Avoid polling PHY with PHY_IGNORE_INTERRUPTS") that's no longer the case, and now the PHY fails to work completely. Workaround is "[PATCH v2] irqchip/renesas-irqc: Postpone driver initialization" (https://www.spinics.net/lists/netdev/msg403325.html), which seems to have sparked some interest in fixing the issue for good ;-) Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- ge...@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds