Lines Matching refs:bl

75 static int lp8788_backlight_configure(struct lp8788_bl *bl)  in lp8788_backlight_configure()  argument
77 struct lp8788_backlight_platform_data *pdata = bl->pdata; in lp8788_backlight_configure()
97 ret = lp8788_write_byte(bl->lp, LP8788_BL_RAMP, val); in lp8788_backlight_configure()
116 dev_err(bl->lp->dev, "invalid mode: %d\n", cfg->bl_mode); in lp8788_backlight_configure()
120 bl->mode = cfg->bl_mode; in lp8788_backlight_configure()
122 return lp8788_write_byte(bl->lp, LP8788_BL_CONFIG, val); in lp8788_backlight_configure()
125 static void lp8788_pwm_ctrl(struct lp8788_bl *bl, int br, int max_br) in lp8788_pwm_ctrl() argument
132 if (!bl->pdata) in lp8788_pwm_ctrl()
135 period = bl->pdata->period_ns; in lp8788_pwm_ctrl()
137 dev = bl->lp->dev; in lp8788_pwm_ctrl()
140 if (!bl->pwm) { in lp8788_pwm_ctrl()
147 bl->pwm = pwm; in lp8788_pwm_ctrl()
150 pwm_config(bl->pwm, duty, period); in lp8788_pwm_ctrl()
152 pwm_enable(bl->pwm); in lp8788_pwm_ctrl()
154 pwm_disable(bl->pwm); in lp8788_pwm_ctrl()
159 struct lp8788_bl *bl = bl_get_data(bl_dev); in lp8788_bl_update_status() local
160 enum lp8788_bl_ctrl_mode mode = bl->mode; in lp8788_bl_update_status()
169 lp8788_pwm_ctrl(bl, brt, max); in lp8788_bl_update_status()
173 lp8788_write_byte(bl->lp, LP8788_BL_BRIGHTNESS, brt); in lp8788_bl_update_status()
184 static int lp8788_backlight_register(struct lp8788_bl *bl) in lp8788_backlight_register() argument
188 struct lp8788_backlight_platform_data *pdata = bl->pdata; in lp8788_backlight_register()
210 bl_dev = backlight_device_register(name, bl->lp->dev, bl, in lp8788_backlight_register()
215 bl->bl_dev = bl_dev; in lp8788_backlight_register()
220 static void lp8788_backlight_unregister(struct lp8788_bl *bl) in lp8788_backlight_unregister() argument
222 struct backlight_device *bl_dev = bl->bl_dev; in lp8788_backlight_unregister()
230 struct lp8788_bl *bl = dev_get_drvdata(dev); in lp8788_get_bl_ctl_mode() local
231 enum lp8788_bl_ctrl_mode mode = bl->mode; in lp8788_get_bl_ctl_mode()
258 struct lp8788_bl *bl; in lp8788_backlight_probe() local
261 bl = devm_kzalloc(lp->dev, sizeof(struct lp8788_bl), GFP_KERNEL); in lp8788_backlight_probe()
262 if (!bl) in lp8788_backlight_probe()
265 bl->lp = lp; in lp8788_backlight_probe()
267 bl->pdata = lp->pdata->bl_pdata; in lp8788_backlight_probe()
269 platform_set_drvdata(pdev, bl); in lp8788_backlight_probe()
271 ret = lp8788_backlight_configure(bl); in lp8788_backlight_probe()
277 ret = lp8788_backlight_register(bl); in lp8788_backlight_probe()
289 backlight_update_status(bl->bl_dev); in lp8788_backlight_probe()
294 lp8788_backlight_unregister(bl); in lp8788_backlight_probe()
301 struct lp8788_bl *bl = platform_get_drvdata(pdev); in lp8788_backlight_remove() local
302 struct backlight_device *bl_dev = bl->bl_dev; in lp8788_backlight_remove()
307 lp8788_backlight_unregister(bl); in lp8788_backlight_remove()