On Fri, Jul 1, 2022 at 8:08 AM Sudeep Holla <sudeep.holla@xxxxxxx> wrote: > > Hi, Saravana, > > On Fri, Jul 01, 2022 at 01:26:12AM -0700, Saravana Kannan wrote: > > [...] > > > 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@xxxxxxxxxx/ 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