blob: e8afbd71a140696cd5b6affe1a7fbada5ccc5148 [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001/* SPDX-License-Identifier: GPL-2.0 */
eric miao42796d32008-04-14 09:35:08 +01002/*
3 * Generic PWM backlight driver data - see drivers/video/backlight/pwm_bl.c
4 */
5#ifndef __LINUX_PWM_BACKLIGHT_H
6#define __LINUX_PWM_BACKLIGHT_H
7
Robert Morellef0a5e82011-03-22 16:30:31 -07008#include <linux/backlight.h>
9
eric miao42796d32008-04-14 09:35:08 +010010struct platform_pwm_backlight_data {
11 int pwm_id;
12 unsigned int max_brightness;
13 unsigned int dft_brightness;
Arun Murthyfef77642010-11-11 14:05:28 -080014 unsigned int lth_brightness;
eric miao42796d32008-04-14 09:35:08 +010015 unsigned int pwm_period_ns;
Thierry Reding3e3ed6c2011-12-16 21:25:29 +010016 unsigned int *levels;
Alexandre Courbot257462d2014-02-27 14:53:34 +090017 /* TODO remove once all users are switched to gpiod_* API */
Thierry Reding2b9b1622013-08-30 11:51:22 +020018 int enable_gpio;
Philipp Zabel3b731252008-05-22 14:18:40 +010019 int (*init)(struct device *dev);
Ben Dookscfc38992009-11-10 17:20:40 +000020 int (*notify)(struct device *dev, int brightness);
Dilan Leecc7993f2011-08-25 15:59:17 -070021 void (*notify_after)(struct device *dev, int brightness);
Philipp Zabel3b731252008-05-22 14:18:40 +010022 void (*exit)(struct device *dev);
Robert Morellef0a5e82011-03-22 16:30:31 -070023 int (*check_fb)(struct device *dev, struct fb_info *info);
eric miao42796d32008-04-14 09:35:08 +010024};
25
26#endif