183d290c5STom Rini // SPDX-License-Identifier: GPL-2.0+
2363bf77aSSimon Glass /*
3363bf77aSSimon Glass  * Copyright (c) 2016 Google, Inc
4363bf77aSSimon Glass  * Written by Simon Glass <sjg@chromium.org>
5363bf77aSSimon Glass  */
6363bf77aSSimon Glass 
7363bf77aSSimon Glass #include <common.h>
8363bf77aSSimon Glass #include <dm.h>
9363bf77aSSimon Glass #include <backlight.h>
10363bf77aSSimon Glass 
backlight_enable(struct udevice * dev)11363bf77aSSimon Glass int backlight_enable(struct udevice *dev)
12363bf77aSSimon Glass {
13363bf77aSSimon Glass 	const struct backlight_ops *ops = backlight_get_ops(dev);
14363bf77aSSimon Glass 
15363bf77aSSimon Glass 	if (!ops->enable)
16363bf77aSSimon Glass 		return -ENOSYS;
17363bf77aSSimon Glass 
18363bf77aSSimon Glass 	return ops->enable(dev);
19363bf77aSSimon Glass }
20363bf77aSSimon Glass 
backlight_set_brightness(struct udevice * dev,int percent)21*a4f737a9SSimon Glass int backlight_set_brightness(struct udevice *dev, int percent)
22*a4f737a9SSimon Glass {
23*a4f737a9SSimon Glass 	const struct backlight_ops *ops = backlight_get_ops(dev);
24*a4f737a9SSimon Glass 
25*a4f737a9SSimon Glass 	if (!ops->set_brightness)
26*a4f737a9SSimon Glass 		return -ENOSYS;
27*a4f737a9SSimon Glass 
28*a4f737a9SSimon Glass 	return ops->set_brightness(dev, percent);
29*a4f737a9SSimon Glass }
30*a4f737a9SSimon Glass 
31363bf77aSSimon Glass UCLASS_DRIVER(backlight) = {
32363bf77aSSimon Glass 	.id		= UCLASS_PANEL_BACKLIGHT,
33363bf77aSSimon Glass 	.name		= "backlight",
34363bf77aSSimon Glass };
35