soc/tegra: pmc: Fix child-node lookup
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: 3568df3d31
("soc: tegra: Add thermal reset (thermtrip) support to PMC")
Cc: stable <stable@vger.kernel.org> # 4.0
Cc: Mikko Perttunen <mperttunen@nvidia.com>
Signed-off-by: Johan Hovold <johan@kernel.org>
Reviewed-by: Mikko Perttunen <mperttunen@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
This commit is contained in:
parent
4d8c836a86
commit
1dc6bd5e39
|
@ -1288,7 +1288,7 @@ static void tegra_pmc_init_tsense_reset(struct tegra_pmc *pmc)
|
||||||
if (!pmc->soc->has_tsense_reset)
|
if (!pmc->soc->has_tsense_reset)
|
||||||
return;
|
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) {
|
if (!np) {
|
||||||
dev_warn(dev, "i2c-thermtrip node not found, %s.\n", disabled);
|
dev_warn(dev, "i2c-thermtrip node not found, %s.\n", disabled);
|
||||||
return;
|
return;
|
||||||
|
|
Loading…
Reference in New Issue