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

Leonardo Costa <[email protected]>
Newsgroups dev.linux.lists.imx,org.infradead.lists.linux-arm-kernel,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel
Message-ID <gsihg6tzkrq6gcygquzbjtiqntvoxp67lo6mqntnmbyvyw7s3y@suv4t26pl5eh>
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.

Leonardo
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.