Remove the device tree fixup code that was stripping power-domains properties from device tree nodes. This fixup was a temporary workaround needed when RPMH power domain driver support was not available in U-Boot.
Now that RPMH power domain driver support has been added, the power domain properties can be preserved in the device tree, allowing proper power domain management. If a suitable power domain driver is not found for the power-controller node, it will be handled with a warning in dev_power_domain_ctrl(). Reviewed-by: Varadarajan Narayanan <[email protected]> Signed-off-by: Aswin Murugan <[email protected]> --- v8: - Changed commit message v7: - No changes to this patch in v7 v6: - No changes to this patch in v6 v5: - No changes to this patch in v5 v4: - Reverted the inclusion of qcom-rpmpd.h header in pervious versions. v3: - Removed OF_LIVE_SA8775P config, since there is no SA8775P specific fixups are done v2: - Removed the power domain fixups, since the power domains are handled in qcom-rpmhpd driver --- arch/arm/mach-snapdragon/of_fixup.c | 31 ----------------------------- 1 file changed, 31 deletions(-) diff --git a/arch/arm/mach-snapdragon/of_fixup.c b/arch/arm/mach-snapdragon/of_fixup.c index 5b6076ea8e5..286541c8edc 100644 --- a/arch/arm/mach-snapdragon/of_fixup.c +++ b/arch/arm/mach-snapdragon/of_fixup.c @@ -134,36 +134,6 @@ static void fixup_usb_nodes(struct device_node *root) } } -/* Remove all references to the rpmhpd device */ -static void fixup_power_domains(struct device_node *root) -{ - struct device_node *pd = NULL, *np = NULL; - struct property *prop; - const __be32 *val; - - /* All Qualcomm platforms name the rpm(h)pd "power-controller" */ - for_each_of_allnodes_from(root, pd) { - if (pd->name && !strcmp("power-controller", pd->name)) - break; - } - - /* Sanity check that this is indeed a power domain controller */ - if (!of_find_property(pd, "#power-domain-cells", NULL)) { - log_err("Found power-controller but it doesn't have #power-domain-cells\n"); - return; - } - - /* Remove all references to the power domain controller */ - for_each_of_allnodes_from(root, np) { - if (!(prop = of_find_property(np, "power-domains", NULL))) - continue; - - val = prop->value; - if (val[0] == cpu_to_fdt32(pd->phandle)) - of_remove_property(np, prop); - } -} - #define time_call(func, ...) \ do { \ u64 start = timer_get_us(); \ @@ -176,7 +146,6 @@ static int qcom_of_fixup_nodes(void * __maybe_unused ctx, struct event *event) struct device_node *root = event->data.of_live_built.root; time_call(fixup_usb_nodes, root); - time_call(fixup_power_domains, root); return 0; } -- 2.34.1

