mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-15 09:55:36 +00:00
Input: twl4030-vibra - fix sibling-node lookup
A helper purported to look up a child node based on its name was using the wrong of-helper and ended up prematurely freeing the parent of-node while searching the whole device tree depth-first starting at the parent node. Fixes: 64b9e4d803b1 ("input: twl4030-vibra: Support for DT booted kernel") Fixes: e661d0a04462 ("Input: twl4030-vibra - fix ERROR: Bad of_node_put() warning") Cc: stable <stable@vger.kernel.org> # 3.7 Signed-off-by: Johan Hovold <johan@kernel.org> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
This commit is contained in:
parent
02a0d9216d
commit
5b18920199
@ -178,12 +178,14 @@ static SIMPLE_DEV_PM_OPS(twl4030_vibra_pm_ops,
|
|||||||
twl4030_vibra_suspend, twl4030_vibra_resume);
|
twl4030_vibra_suspend, twl4030_vibra_resume);
|
||||||
|
|
||||||
static bool twl4030_vibra_check_coexist(struct twl4030_vibra_data *pdata,
|
static bool twl4030_vibra_check_coexist(struct twl4030_vibra_data *pdata,
|
||||||
struct device_node *node)
|
struct device_node *parent)
|
||||||
{
|
{
|
||||||
|
struct device_node *node;
|
||||||
|
|
||||||
if (pdata && pdata->coexist)
|
if (pdata && pdata->coexist)
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
node = of_find_node_by_name(node, "codec");
|
node = of_get_child_by_name(parent, "codec");
|
||||||
if (node) {
|
if (node) {
|
||||||
of_node_put(node);
|
of_node_put(node);
|
||||||
return true;
|
return true;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user