Lines Matching refs:leds
8 #include <linux/leds.h>
156 struct mt6323_leds *leds = led->parent;
157 const struct mt6323_regs *regs = leds->pdata->regs;
158 struct regmap *regmap = leds->hw->regmap;
181 struct mt6323_leds *leds = led->parent;
182 const struct mt6323_regs *regs = leds->pdata->regs;
183 struct regmap *regmap = leds->hw->regmap;
207 struct mt6323_leds *leds = led->parent;
208 const struct mt6323_regs *regs = leds->pdata->regs;
209 struct regmap *regmap = leds->hw->regmap;
239 struct mt6323_leds *leds = led->parent;
240 const struct mt6323_regs *regs = leds->pdata->regs;
241 struct regmap *regmap = leds->hw->regmap;
294 struct mt6323_leds *leds = led->parent;
295 const struct mt6323_regs *regs = leds->pdata->regs;
296 const struct mt6323_hwspec *spec = leds->pdata->spec;
297 struct regmap *regmap = leds->hw->regmap;
332 mutex_lock(&leds->lock);
354 mutex_unlock(&leds->lock);
363 struct mt6323_leds *leds = led->parent;
366 mutex_lock(&leds->lock);
384 mutex_unlock(&leds->lock);
392 struct mt6323_leds *leds = led->parent;
393 const struct mt6323_regs *regs = leds->pdata->regs;
394 struct regmap *regmap = leds->hw->regmap;
426 struct mt6323_leds *leds = led->parent;
427 const struct mt6323_regs *regs = leds->pdata->regs;
428 struct regmap *regmap = leds->hw->regmap;
457 struct mt6323_leds *leds = led->parent;
458 const struct mt6323_regs *regs = leds->pdata->regs;
459 struct regmap *regmap = leds->hw->regmap;
477 struct mt6323_leds *leds = led->parent;
480 mutex_lock(&leds->lock);
495 mutex_unlock(&leds->lock);
532 struct mt6323_leds *leds;
541 leds = devm_kzalloc(dev, sizeof(*leds), GFP_KERNEL);
542 if (!leds)
545 platform_set_drvdata(pdev, leds);
546 leds->dev = dev;
547 leds->pdata = device_get_match_data(dev);
548 regs = leds->pdata->regs;
549 spec = leds->pdata->spec;
553 * leds->hw points to the underlying bus for the register
556 leds->hw = hw;
557 mutex_init(&leds->lock);
560 ret = regmap_update_bits(leds->hw->regmap, regs->top_ckpdn[0],
563 dev_err(leds->dev,
579 leds->led[reg]) {
593 leds->led[reg] = led;
594 leds->led[reg]->id = reg;
595 leds->led[reg]->cdev.max_brightness = spec->max_brightness;
598 leds->led[reg]->cdev.brightness_set_blocking =
600 leds->led[reg]->cdev.brightness_get =
603 leds->led[reg]->cdev.brightness_set_blocking =
605 leds->led[reg]->cdev.blink_set = mt6323_led_set_blink;
606 leds->led[reg]->cdev.brightness_get =
609 leds->led[reg]->parent = leds;
611 ret = mt6323_led_set_dt_default(&leds->led[reg]->cdev, child);
613 dev_err(leds->dev,
620 ret = devm_led_classdev_register_ext(dev, &leds->led[reg]->cdev,
637 struct mt6323_leds *leds = platform_get_drvdata(pdev);
638 const struct mt6323_regs *regs = leds->pdata->regs;
642 for (i = 0 ; leds->led[i] ; i++)
643 mt6323_led_hw_off(&leds->led[i]->cdev);
645 regmap_update_bits(leds->hw->regmap, regs->top_ckpdn[0],
649 mutex_destroy(&leds->lock);