Message ID | 20171113102049.9342-3-johan@kernel.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 13/11/17 10:20, Johan Hovold wrote: > 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. > > This would only cause trouble if the child node is missing while there > is an unrelated node named "backlight" elsewhere in the tree. > > Fixes: eebfdc17cc6c ("backlight: Add TPS65217 WLED driver") > Cc: stable <stable@vger.kernel.org> # 3.7 > Cc: Matthias Kaehlcke <matthias@kaehlcke.net> > Signed-off-by: Johan Hovold <johan@kernel.org> Acked-by: Daniel Thompson <daniel.thompson@linaro.org> > --- > drivers/video/backlight/tps65217_bl.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/video/backlight/tps65217_bl.c b/drivers/video/backlight/tps65217_bl.c > index 380917c86276..762e3feed097 100644 > --- a/drivers/video/backlight/tps65217_bl.c > +++ b/drivers/video/backlight/tps65217_bl.c > @@ -184,11 +184,11 @@ static struct tps65217_bl_pdata * > tps65217_bl_parse_dt(struct platform_device *pdev) > { > struct tps65217 *tps = dev_get_drvdata(pdev->dev.parent); > - struct device_node *node = of_node_get(tps->dev->of_node); > + struct device_node *node; > struct tps65217_bl_pdata *pdata, *err; > u32 val; > > - node = of_find_node_by_name(node, "backlight"); > + node = of_get_child_by_name(tps->dev->of_node, "backlight"); > if (!node) > return ERR_PTR(-ENODEV); > > -- To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/video/backlight/tps65217_bl.c b/drivers/video/backlight/tps65217_bl.c index 380917c86276..762e3feed097 100644 --- a/drivers/video/backlight/tps65217_bl.c +++ b/drivers/video/backlight/tps65217_bl.c @@ -184,11 +184,11 @@ static struct tps65217_bl_pdata * tps65217_bl_parse_dt(struct platform_device *pdev) { struct tps65217 *tps = dev_get_drvdata(pdev->dev.parent); - struct device_node *node = of_node_get(tps->dev->of_node); + struct device_node *node; struct tps65217_bl_pdata *pdata, *err; u32 val; - node = of_find_node_by_name(node, "backlight"); + node = of_get_child_by_name(tps->dev->of_node, "backlight"); if (!node) return ERR_PTR(-ENODEV);
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. This would only cause trouble if the child node is missing while there is an unrelated node named "backlight" elsewhere in the tree. Fixes: eebfdc17cc6c ("backlight: Add TPS65217 WLED driver") Cc: stable <stable@vger.kernel.org> # 3.7 Cc: Matthias Kaehlcke <matthias@kaehlcke.net> Signed-off-by: Johan Hovold <johan@kernel.org> --- drivers/video/backlight/tps65217_bl.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)