Regression: PM: domains: Delete usage of driver_deferred_probe_check_state
Peng Fan
peng.fan at nxp.com
Mon Aug 15 23:43:22 PDT 2022
> Subject: Regression: PM: domains: Delete usage of
> driver_deferred_probe_check_state
Just see your patchset :)
https://lore.kernel.org/all/20220727185012.3255200-1-saravanak@google.com/
Thanks,
Peng.
>
> Hi Saravana,
>
> The following two patches breaks NXP i.MX8ULP, but I think it may break
> others use SCMI.
>
> commit 5a46079a96451cfb15e4f5f01f73f7ba24ef851a
> Author: Saravana Kannan <mailto:saravanak at google.com>
> Date: Wed Jun 1 00:06:57 2022 -0700
>
> PM: domains: Delete usage of driver_deferred_probe_check_state()
>
> Now that fw_devlink=on by default and fw_devlink supports
> "power-domains" property, the execution will never get to the point
> where driver_deferred_probe_check_state() is called before the supplier
> has probed successfully or before deferred probe timeout has expired.
>
> So, delete the call and replace it with -ENODEV.
>
> Tested-by: Geert Uytterhoeven <mailto:geert+renesas at glider.be>
> Reviewed-by: Ulf Hansson <mailto:ulf.hansson at linaro.org>
> Signed-off-by: Saravana Kannan <mailto:saravanak at google.com>
> Link: https://lore.kernel.org/r/20220601070707.3946847-2-
> saravanak at google.com
> Signed-off-by: Greg Kroah-Hartman <mailto:gregkh at linuxfoundation.org>
>
> commit 9cbffc7a59561be950ecc675d19a3d2b45202b2b
> Author: Saravana Kannan <mailto:saravanak at google.com>
> Date: Wed Jun 1 00:07:05 2022 -0700
>
> driver core: Delete driver_deferred_probe_check_state()
>
> The function is no longer used. So delete it.
>
> Tested-by: Geert Uytterhoeven <mailto:geert+renesas at glider.be>
> Signed-off-by: Saravana Kannan <mailto:saravanak at google.com>
> Link: https://lore.kernel.org/r/20220601070707.3946847-10-
> saravanak at google.com
> Signed-off-by: Greg Kroah-Hartman <mailto:gregkh at linuxfoundation.org>
>
> The i.MX8ULP mmc device node use
> "power-domains = <&scmi_devpd IMX8ULP_PD_USDHC0>;"
>
> The scmi firmware node as below:
> firmware {
> scmi {
> compatible = "arm,scmi-smc";
> arm,smc-id = <0xc20000fe>;
> #address-cells = <1>;
> #size-cells = <0>;
> shmem = <&scmi_buf>;
>
> scmi_devpd: protocol at 11 {
> reg = <0x11>;
> #power-domain-cells = <1>;
> };
>
> scmi_sensor: protocol at 15 {
> reg = <0x15>;
> #thermal-sensor-cells = <1>;
> };
> };
> };
>
> When sdhc driver probe, the scmi power domain provider has not been
> registered. So __genpd_dev_pm_attach directly return -ENODEV.
>
> device_links_check_suppliers should already check suppliers, but scmi
> protocol device not have compatible, so of_link_to_phandle
> |-> of_get_compat_node
> use the parent node of scmi protocol as supplier if I understand correct.
>
> I am not sure whether we need to revert the above two patches, or do you
> have other suggestions?
>
> Thanks,
> Peng.
More information about the linux-arm-kernel
mailing list