Re: [PATCH 6/6] arm64: dts: freescale: imx8mp-verdin: Add Mezzanine with Toradex Display 10.1" LVDS V2

From: Leonardo Costa

Date: Thu Sep 03 2026 - 13:27:09 EST


On Wed, Aug 19, 2026 at 09:18:27AM -0500, Frank Li wrote:
> On Wed, Aug 19, 2026 at 08:56:53AM -0300, Leonardo Costa wrote:
> > On Tue, Aug 18, 2026 at 01:53:27PM -0500, Frank Li wrote:
> > > On Tue, Aug 18, 2026 at 03:08:33PM -0300, Leonardo Costa wrote:
> > > > It seems that the drivers are being deferred at boot start by the
> > > > device_links_check_suppliers() function. It runs through the drivers before
> > > > they're initialized and defers them if their suppliers are not available. The
> > > > GPIO and PWM drivers are able to follow the gpio-map and pwm-map properties
> > > > (through the of_parse_phandle_with_args_map() function), but from what I see,
> > > > device_links_check_suppliers() has no such mechanism. It follows the phandle to
> > > > the nexus connector node only, and since there's no compatible driver for it,
> > > > the function defers the consumer drivers used in the overlay.
> > > >
> > > > I think this is what is happening mainly because setting the
> > > > fw_devlink=permissive kernel parameter (which sets the DL_FLAG_SYNC_STATE_ONLY
> > > > flag) solved the issue, though I could be misunderstanding something.
> > > >
> > > > int device_links_check_suppliers(struct device *dev)
> > > > {
> > > > ...
> > > > list_for_each_entry(link, &dev->links.suppliers, c_node) {
> > > > ...
> > > >
> > > > if (link->status != DL_STATE_AVAILABLE &&
> > > > !device_link_test(link, DL_FLAG_SYNC_STATE_ONLY)) {
> > > >
> > > > ...
> > > > device_links_missing_supplier(dev);
> > > > ret = dev_err_probe(dev, -EPROBE_DEFER,
> > > > "supplier %s not ready\n", dev_name(link->supplier));
> > > > break;
> > > > }
> > > > WRITE_ONCE(link->status, DL_STATE_CONSUMER_PROBE);
> > > > }
> > > > ...
> > > > }
> > > >
> > > > Has this behavior been observed before? Do you know of any work being done that
> > > > addresses this?
> > >
> > > Does a dummy container driver (for debug) to proof your analyer? Let
> > > me to find time to debug it.
> > >
> > > Frank
> >
> > I made a dummy driver matching that compatible string, and yes, it did
> > solve the issue.
>
> Thank you very much. Let me think how to fix this problem. Nexus node
> should be direction overall.
>
> Frank

Hi Frank,

FYI, this patch sent as an RFC addresses and solves this issue:

Link: https://lore.kernel.org/all/20260902-fw-devlink-nexus-ready-v1-0-68fe1996e78a@xxxxxxxxxxx/T/#t

In the meantime, could we have these overlays merged as they are right now, and
refactor them to use the nexus connectors later, when that patch is more
concretely established? We'd like to be able to have these overlays on upstream,
but we're not sure how long it'll be until that patch is mature enough to be
accepted and merged.

Leonardo