Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

pmdomain: Merge branch fixes into next

Merge the pmdomain fixes for v6.18-rc[n] into the next branch, to allow
them to get tested together with the new changes that are targeted for
v6.19.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>

+16 -3
+15 -3
drivers/pmdomain/mediatek/mtk-pm-domains.c
··· 984 984 } 985 985 } 986 986 987 + static struct device_node *scpsys_get_legacy_regmap(struct device_node *np, const char *pn) 988 + { 989 + struct device_node *local_node; 990 + 991 + for_each_child_of_node(np, local_node) { 992 + if (of_property_present(local_node, pn)) 993 + return local_node; 994 + } 995 + 996 + return NULL; 997 + } 998 + 987 999 static int scpsys_get_bus_protection_legacy(struct device *dev, struct scpsys *scpsys) 988 1000 { 989 1001 const u8 bp_blocks[3] = { ··· 1017 1005 * this makes it then possible to allocate the array of bus_prot 1018 1006 * regmaps and convert all to the new style handling. 1019 1007 */ 1020 - node = of_find_node_with_property(np, "mediatek,infracfg"); 1008 + node = scpsys_get_legacy_regmap(np, "mediatek,infracfg"); 1021 1009 if (node) { 1022 1010 regmap[0] = syscon_regmap_lookup_by_phandle(node, "mediatek,infracfg"); 1023 1011 of_node_put(node); ··· 1030 1018 regmap[0] = NULL; 1031 1019 } 1032 1020 1033 - node = of_find_node_with_property(np, "mediatek,smi"); 1021 + node = scpsys_get_legacy_regmap(np, "mediatek,smi"); 1034 1022 if (node) { 1035 1023 smi_np = of_parse_phandle(node, "mediatek,smi", 0); 1036 1024 of_node_put(node); ··· 1048 1036 regmap[1] = NULL; 1049 1037 } 1050 1038 1051 - node = of_find_node_with_property(np, "mediatek,infracfg-nao"); 1039 + node = scpsys_get_legacy_regmap(np, "mediatek,infracfg-nao"); 1052 1040 if (node) { 1053 1041 regmap[2] = syscon_regmap_lookup_by_phandle(node, "mediatek,infracfg-nao"); 1054 1042 num_regmaps++;
+1
drivers/pmdomain/tegra/powergate-bpmp.c
··· 184 184 powergate->genpd.name = kstrdup(info->name, GFP_KERNEL); 185 185 powergate->genpd.power_on = tegra_powergate_power_on; 186 186 powergate->genpd.power_off = tegra_powergate_power_off; 187 + powergate->genpd.flags = GENPD_FLAG_NO_STAY_ON; 187 188 188 189 err = pm_genpd_init(&powergate->genpd, NULL, off); 189 190 if (err < 0) {