Lines Matching refs:bl

71 static int lp8788_backlight_configure(struct lp8788_bl *bl)
73 struct lp8788_backlight_platform_data *pdata = bl->pdata;
93 ret = lp8788_write_byte(bl->lp, LP8788_BL_RAMP, val);
112 dev_err(bl->lp->dev, "invalid mode: %d\n", cfg->bl_mode);
116 bl->mode = cfg->bl_mode;
118 return lp8788_write_byte(bl->lp, LP8788_BL_CONFIG, val);
121 static void lp8788_pwm_ctrl(struct lp8788_bl *bl, int br, int max_br)
128 if (!bl->pdata)
131 period = bl->pdata->period_ns;
133 dev = bl->lp->dev;
136 if (!bl->pwm) {
143 bl->pwm = pwm;
152 pwm_config(bl->pwm, duty, period);
154 pwm_enable(bl->pwm);
156 pwm_disable(bl->pwm);
161 struct lp8788_bl *bl = bl_get_data(bl_dev);
162 enum lp8788_bl_ctrl_mode mode = bl->mode;
171 lp8788_pwm_ctrl(bl, brt, max);
175 lp8788_write_byte(bl->lp, LP8788_BL_BRIGHTNESS, brt);
186 static int lp8788_backlight_register(struct lp8788_bl *bl)
190 struct lp8788_backlight_platform_data *pdata = bl->pdata;
213 bl_dev = backlight_device_register(name, bl->lp->dev, bl,
218 bl->bl_dev = bl_dev;
223 static void lp8788_backlight_unregister(struct lp8788_bl *bl)
225 struct backlight_device *bl_dev = bl->bl_dev;
233 struct lp8788_bl *bl = dev_get_drvdata(dev);
234 enum lp8788_bl_ctrl_mode mode = bl->mode;
261 struct lp8788_bl *bl;
264 bl = devm_kzalloc(lp->dev, sizeof(struct lp8788_bl), GFP_KERNEL);
265 if (!bl)
268 bl->lp = lp;
270 bl->pdata = lp->pdata->bl_pdata;
272 platform_set_drvdata(pdev, bl);
274 ret = lp8788_backlight_configure(bl);
280 ret = lp8788_backlight_register(bl);
292 backlight_update_status(bl->bl_dev);
297 lp8788_backlight_unregister(bl);
304 struct lp8788_bl *bl = platform_get_drvdata(pdev);
305 struct backlight_device *bl_dev = bl->bl_dev;
310 lp8788_backlight_unregister(bl);