Lines Matching refs:desc

119 	struct sso_led_desc desc;
236 struct sso_led_desc *desc;
242 desc = &led->desc;
244 desc->brightness = brightness;
245 regmap_write(priv->mmap, DUTY_CYCLE(desc->pin), brightness);
253 if (desc->hw_blink && !val && desc->blinking) {
254 desc->blinking = 0;
255 regmap_update_bits(priv->mmap, SSO_CON2, BIT(desc->pin), 0);
256 } else if (desc->hw_blink && val && !desc->blinking) {
257 desc->blinking = 1;
258 regmap_update_bits(priv->mmap, SSO_CON2, BIT(desc->pin),
259 1 << desc->pin);
262 if (!desc->hw_trig)
270 return (enum led_brightness)led->desc.brightness;
315 sso_led_freq_set(priv, led->desc.pin, freq_idx);
316 regmap_update_bits(priv->mmap, SSO_CON2, BIT(led->desc.pin),
317 1 << led->desc.pin);
318 led->desc.freq_idx = freq_idx;
319 led->desc.blink_rate = priv->freq[freq_idx];
320 led->desc.blinking = 1;
327 struct sso_led_desc *desc = &led->desc;
330 if (desc->hw_blink) {
331 sso_led_freq_set(priv, desc->pin, desc->freq_idx);
332 regmap_update_bits(priv->mmap, SSO_CON2, BIT(desc->pin),
333 1 << desc->pin);
336 if (desc->hw_trig)
337 regmap_update_bits(priv->mmap, SSO_CON3, BIT(desc->pin),
338 1 << desc->pin);
341 regmap_write(priv->mmap, DUTY_CYCLE(desc->pin), desc->brightness);
344 if (!desc->hw_trig && desc->brightness)
351 struct sso_led_desc *desc = &led->desc;
359 led->cdev.default_trigger = desc->default_trigger;
362 led->cdev.brightness = desc->brightness;
365 if (desc->retain_state_shutdown)
367 if (desc->retain_state_suspended)
369 if (desc->panic_indicator)
372 if (desc->hw_blink)
610 if (led->desc.hw_trig)
611 regmap_update_bits(priv->mmap, SSO_CON3, BIT(led->desc.pin), 0);
621 struct sso_led_desc *desc;
636 desc = &led->desc;
647 &desc->default_trigger);
651 desc->retain_state_suspended = 1;
655 desc->retain_state_shutdown = 1;
658 desc->panic_indicator = 1;
668 desc->pin = prop;
671 desc->hw_blink = 1;
673 desc->hw_trig = fwnode_property_read_bool(fwnode_child,
675 if (desc->hw_trig) {
676 desc->default_trigger = NULL;
677 desc->retain_state_shutdown = 0;
678 desc->retain_state_suspended = 0;
679 desc->panic_indicator = 0;
680 desc->hw_blink = 0;
686 desc->freq_idx = 0;
687 desc->blink_rate = priv->freq[desc->freq_idx];
689 desc->freq_idx = sso_get_blink_rate_idx(priv, prop);
690 if (desc->freq_idx == -1)
691 desc->freq_idx = MAX_FREQ_RANK - 1;
693 desc->blink_rate = priv->freq[desc->freq_idx];
698 desc->brightness = LED_FULL;