Skip to content
This repository has been archived by the owner on Aug 5, 2022. It is now read-only.

Commit

Permalink
soc/tegra: pmc: Fix child-node lookup
Browse files Browse the repository at this point in the history
commit 1dc6bd5e39a29453bdcc17348dd2a89f1aa4004e upstream.

Fix child-node lookup during probe, which ended up searching the whole
device tree depth-first starting at the parent rather than just matching
on its children.

To make things worse, the parent pmc node could end up being prematurely
freed as of_find_node_by_name() drops a reference to its first argument.

Fixes: 3568df3 ("soc: tegra: Add thermal reset (thermtrip) support to PMC")
Cc: stable <[email protected]>     # 4.0
Cc: Mikko Perttunen <[email protected]>
Signed-off-by: Johan Hovold <[email protected]>
Reviewed-by: Mikko Perttunen <[email protected]>
Signed-off-by: Thierry Reding <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
  • Loading branch information
jhovold authored and gregkh committed Nov 13, 2018
1 parent cac77e1 commit 22a4f7e
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion drivers/soc/tegra/pmc.c
Original file line number Diff line number Diff line change
Expand Up @@ -1189,7 +1189,7 @@ static void tegra_pmc_init_tsense_reset(struct tegra_pmc *pmc)
if (!pmc->soc->has_tsense_reset)
return;

np = of_find_node_by_name(pmc->dev->of_node, "i2c-thermtrip");
np = of_get_child_by_name(pmc->dev->of_node, "i2c-thermtrip");
if (!np) {
dev_warn(dev, "i2c-thermtrip node not found, %s.\n", disabled);
return;
Expand Down

0 comments on commit 22a4f7e

Please sign in to comment.