Re: [PATCH 1/4] firmware: arm_scmi: bus: Bypass setting fwnode for scmi cpufreq
From: Peng Fan <hidden>
Date: 2025-03-13 04:15:53
Also in:
arm-scmi, imx, linux-arm-kernel, lkml
On Wed, Mar 12, 2025 at 11:28:52AM +0000, Sudeep Holla wrote:
On Wed, Mar 12, 2025 at 10:52:23AM +0000, Sudeep Holla wrote:quoted
On Tue, Mar 11, 2025 at 11:23:12AM +0000, Sudeep Holla wrote:quoted
On Tue, Mar 11, 2025 at 11:12:45AM +0000, Peng Fan wrote:quoted
So it is clear that wrong fw_devlink is created, it is because scmi cpufreq device is created earlier and when device_add, the below logic makes the fwnode pointer points to scmi cpufreq device. if (dev->fwnode && !dev->fwnode->dev) { dev->fwnode->dev = dev; fw_devlink_link_device(dev); }Thanks, looks like simple way to reproduce the issue. I will give it a try.I could reproduce but none of my solution solved the problem completely or properly. And I don't like the DT proposal you came up with. I am not inclined to just drop this fwnode setting in the scmi devices and just use of_node.Sorry for the typo that changes the meaning: s/not/now I meant "I am now inclined ..", until we figure out a way to make this work with devlinks properly.
when you have time, please give a look at https://github.com/MrVan/linux/commit/b500c29cb7f6f32a38b1ed462e333db5a3e301e4 The upper patch was to follow Cristian's and Dan's suggestion in V2[1] to use a flag SCMI_DEVICE_NO_FWNODE for scmi device. I could post out the upper patch as V3 if it basically looks no design flaw. I will drop the pinctrl patch in v3, considering we are first going to resolve the fw_devlink issue for cpufreq/devfreq. [1] https://lore.kernel.org/all/Z6SgFGb4Z88v783c@pluto/ (local) Thanks, Peng.
-- Regards, Sudeep