Commit 3b5ac8b5 authored by Sam Ravnborg's avatar Sam Ravnborg
Browse files

video: amba-clcd: use devm_of_find_backlight



Look up backlight device using devm_of_find_backlight().
This simplifies the code and prevents us from hardcoding
the node name in the driver.

v2:
  - Added Cc: Peter Ujfalusi

Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
Acked-by: default avatarLinus Walleij <linus.walleij@linaro.org>
Cc: Russell King <linux@armlinux.org.uk>
Cc: Sam Ravnborg <sam@ravnborg.org>
Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Cc: Peter Ujfalusi <peter.ujfalusi@ti.com>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: Jani Nikula <jani.nikula@intel.com>
Cc: Douglas Anderson <dianders@chromium.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20200517190139.740249-2-sam@ravnborg.org
parent ebdc02dd
Loading
Loading
Loading
Loading
+8 −11
Original line number Diff line number Diff line
@@ -602,20 +602,17 @@ static int clcdfb_snprintf_mode(char *buf, int size, struct fb_videomode *mode)
			mode->refresh);
}

static int clcdfb_of_get_backlight(struct device_node *panel,
static int clcdfb_of_get_backlight(struct device *dev,
				   struct clcd_panel *clcd_panel)
{
	struct device_node *backlight;
	struct backlight_device *backlight;

	/* Look up the optional backlight phandle */
	backlight = of_parse_phandle(panel, "backlight", 0);
	if (backlight) {
		clcd_panel->backlight = of_find_backlight_by_node(backlight);
		of_node_put(backlight);
	/* Look up the optional backlight device */
	backlight = devm_of_find_backlight(dev);
	if (IS_ERR(backlight))
		return PTR_ERR(backlight);

		if (!clcd_panel->backlight)
			return -EPROBE_DEFER;
	}
	clcd_panel->backlight = backlight;
	return 0;
}

@@ -717,7 +714,7 @@ static int clcdfb_of_init_display(struct clcd_fb *fb)
	if (!panel)
		return -ENODEV;

	err = clcdfb_of_get_backlight(panel, fb->panel);
	err = clcdfb_of_get_backlight(&fb->dev->dev, fb->panel);
	if (err)
		return err;