Messages in this thread Patch in this message | | | From | Saravana Kannan <> | Date | Mon, 15 Aug 2022 16:36:23 -0700 | Subject | Re: [PATCH v1 0/3] Bring back driver_deferred_probe_check_state() for now |
| |
On Mon, Aug 15, 2022 at 9:57 AM Luca Weiss <luca.weiss@fairphone.com> wrote: > > On Mon Aug 15, 2022 at 1:01 PM CEST, Tony Lindgren wrote: > > * Saravana Kannan <saravanak@google.com> [700101 02:00]: > > > More fixes/changes are needed before driver_deferred_probe_check_state() > > > can be deleted. So, bring it back for now. > > > > > > Greg, > > > > > > Can we get this into 5.19? If not, it might not be worth picking up this > > > series. I could just do the other/more fixes in time for 5.20. > > > > Yes please pick this as fixes for v6.0-rc series, it fixes booting for > > me. I've replied with fixes tags for the two patches that were causing > > regressions for me. > > > > Hi, > > for me Patch 1+3 fix display probe on Qualcomm SM6350 (although display > for this SoC isn't upstream yet, there are lots of other SoCs with very > similar setup). > > Probe for DPU silently fails, with CONFIG_DEBUG_DRIVER=y we get this: > > msm-mdss ae00000.mdss: __genpd_dev_pm_attach() failed to find PM domain: -2 > > While I'm not familiar with the specifics of fw_devlink, the dtsi has > power-domains = <&dispcc MDSS_GDSC> for this node but it doesn't pick > that up for some reason. > > We can also see that a bit later dispcc finally probes.
Luca,
Can you test with this series instead and see if it fixes this issue? https://lore.kernel.org/lkml/20220810060040.321697-1-saravanak@google.com/
You might also need to add this delta on top of the series if the series itself isn't sufficient. diff --git a/drivers/base/core.c b/drivers/base/core.c index 2f012e826986..866755d8ad95 100644 --- a/drivers/base/core.c +++ b/drivers/base/core.c @@ -2068,7 +2068,11 @@ static int fw_devlink_create_devlink(struct device *con, device_links_write_unlock(); }
- sup_dev = get_dev_from_fwnode(sup_handle); + if (sup_handle->flags & FWNODE_FLAG_NOT_DEVICE) + sup_dev = fwnode_get_next_parent_dev(sup_handle); + else + sup_dev = get_dev_from_fwnode(sup_handle); + if (sup_dev) { /* * If it's one of those drivers that don't actually bind to -Saravana
| |