Re: [PATCH 6/6] arm64: dts: freescale: imx8mp-verdin: Add Mezzanine with Toradex Display 10.1" LVDS V2
From: Leonardo Costa <hidden>
Date: 2026-09-03 16:36:53
Also in:
imx, linux-devicetree, lkml
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:quoted
On Tue, Aug 18, 2026 at 01:53:27PM -0500, Frank Li wrote:quoted
On Tue, Aug 18, 2026 at 03:08:33PM -0300, Leonardo Costa wrote:quoted
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. FrankI 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@toradex.com/T/#t (local) 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