Re: [PATCH v2 1/9] PM: domains: Delete usage of driver_deferred_probe_check_state()
From: Saravana Kannan <hidden>
Date: 2022-07-01 19:13:59
Also in:
linux-gpio, linux-iommu, linux-pm, lkml
On Fri, Jul 1, 2022 at 8:08 AM Sudeep Holla [off-list ref] wrote:
Hi, Saravana, On Fri, Jul 01, 2022 at 01:26:12AM -0700, Saravana Kannan wrote: [...]quoted
Can you check if this hack helps? If so, then I can think about whether we can pick it up without breaking everything else. Copy-paste tab mess up warning.Sorry for jumping in late and not even sure if this is right thread. I have not bisected anything yet, but I am seeing issues on my Juno R2 with SCMI enabled power domains and Coresight AMBA devices. OF: amba_device_add() failed (-19) for /etf@20010000 OF: amba_device_add() failed (-19) for /tpiu@20030000 OF: amba_device_add() failed (-19) for /funnel@20040000 OF: amba_device_add() failed (-19) for /etr@20070000 OF: amba_device_add() failed (-19) for /stm@20100000 OF: amba_device_add() failed (-19) for /replicator@20120000 OF: amba_device_add() failed (-19) for /cpu-debug@22010000 OF: amba_device_add() failed (-19) for /etm@22040000 OF: amba_device_add() failed (-19) for /cti@22020000 OF: amba_device_add() failed (-19) for /funnel@220c0000 OF: amba_device_add() failed (-19) for /cpu-debug@22110000 OF: amba_device_add() failed (-19) for /etm@22140000 OF: amba_device_add() failed (-19) for /cti@22120000 OF: amba_device_add() failed (-19) for /cpu-debug@23010000 OF: amba_device_add() failed (-19) for /etm@23040000 OF: amba_device_add() failed (-19) for /cti@23020000 OF: amba_device_add() failed (-19) for /funnel@230c0000 OF: amba_device_add() failed (-19) for /cpu-debug@23110000 OF: amba_device_add() failed (-19) for /etm@23140000 OF: amba_device_add() failed (-19) for /cti@23120000 OF: amba_device_add() failed (-19) for /cpu-debug@23210000 OF: amba_device_add() failed (-19) for /etm@23240000 OF: amba_device_add() failed (-19) for /cti@23220000 OF: amba_device_add() failed (-19) for /cpu-debug@23310000 OF: amba_device_add() failed (-19) for /etm@23340000 OF: amba_device_add() failed (-19) for /cti@23320000 OF: amba_device_add() failed (-19) for /cti@20020000 OF: amba_device_add() failed (-19) for /cti@20110000 OF: amba_device_add() failed (-19) for /funnel@20130000 OF: amba_device_add() failed (-19) for /etf@20140000 OF: amba_device_add() failed (-19) for /funnel@20150000 OF: amba_device_add() failed (-19) for /cti@20160000 These are working fine with deferred probe in the mainline. I tried the hack you have suggested here(rather Tony's version),
Thanks for trying that.
also tried with fw_devlink=0 and fw_devlink=1
0 and 1 aren't valid input to fw_devlink. But yeah, I don't expect disabling it to make anything better.
&& fw_devlink.strict=0 No change in the behaviour. The DTS are in arch/arm64/boot/dts/arm/juno-*-scmi.dts and there coresight devices are mostly in juno-cs-r1r2.dtsi
Thanks
Let me know if there is anything obvious or you want me to bisect which means I need more time. I can do that next week.
I'll let you know once I poke at the DTS. We need to figure out why fw_devlink wasn't blocking these from getting to the error (same as in Tony's case). But since these are amba devices, I think I have some guesses. This is an old series that had some issues in some cases and I haven't gotten around to looking at it. You can give that a shot if you can apply it to a recent tree. https://lore.kernel.org/lkml/20210304195101.3843496-1-saravanak@google.com/ (local) After looking at that old patch again, I think I know what's going on. For normal devices, the pm domain attach happens AFTER the device is added and fw_devlink has had a chance to set up device links. And if the suppliers aren't ready, really_probe() won't get as far as dev_pm_domain_attach(). But for amba, the clock and pm domain suppliers are "grabbed" before adding the device. So with that old patch + always returning -EPROBE_DEFER in amba_device_add() if amba_read_periphid() fails should fix your issue. -Saravana