diff options
| author | Aswin Murugan <[email protected]> | 2026-02-13 16:40:08 +0530 |
|---|---|---|
| committer | Casey Connolly <[email protected]> | 2026-04-27 12:33:29 +0200 |
| commit | 3fbd82eb67bdf469f710c4cdc03eaa5231ee5b34 (patch) | |
| tree | 0608500b42106abc3ff393c01af75d93b008058d | |
| parent | 8e2ac60bb8cd26adbd1f36ce742f943c1a916149 (diff) | |
mach-snapdragon: Remove RPMH power domain DT fixup code
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]>
Reviewed-by: Sumit Garg <[email protected]>
Link: https://patch.msgid.link/[email protected]
Signed-off-by: Casey Connolly <[email protected]>
| -rw-r--r-- | arch/arm/mach-snapdragon/of_fixup.c | 31 |
1 files changed, 0 insertions, 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; } |
