Lines Matching defs:led

9 #include <linux/led-class-multicolor.h>
604 static void lpg_brightness_set(struct lpg_led *led, struct led_classdev *cdev,
613 struct lpg *lpg = led->lpg;
616 for (i = 0; i < led->num_channels; i++) {
617 chan = led->channels[i];
659 struct lpg_led *led = container_of(cdev, struct lpg_led, cdev);
662 mutex_lock(&led->lpg->lock);
665 lpg_brightness_set(led, cdev, &info);
667 mutex_unlock(&led->lpg->lock);
676 struct lpg_led *led = container_of(mc, struct lpg_led, mcdev);
678 mutex_lock(&led->lpg->lock);
681 lpg_brightness_set(led, cdev, mc->subled_info);
683 mutex_unlock(&led->lpg->lock);
688 static int lpg_blink_set(struct lpg_led *led,
694 struct lpg *lpg = led->lpg;
706 for (i = 0; i < led->num_channels; i++) {
707 chan = led->channels[i];
723 chan = led->channels[0];
734 struct lpg_led *led = container_of(cdev, struct lpg_led, cdev);
737 mutex_lock(&led->lpg->lock);
739 ret = lpg_blink_set(led, delay_on, delay_off);
741 mutex_unlock(&led->lpg->lock);
750 struct lpg_led *led = container_of(mc, struct lpg_led, mcdev);
753 mutex_lock(&led->lpg->lock);
755 ret = lpg_blink_set(led, delay_on, delay_off);
757 mutex_unlock(&led->lpg->lock);
762 static int lpg_pattern_set(struct lpg_led *led, struct led_pattern *led_pattern,
766 struct lpg *lpg = led->lpg;
887 for (i = 0; i < led->num_channels; i++) {
888 chan = led->channels[i];
913 struct lpg_led *led = container_of(cdev, struct lpg_led, cdev);
916 ret = lpg_pattern_set(led, pattern, len, repeat);
930 struct lpg_led *led = container_of(mc, struct lpg_led, mcdev);
933 ret = lpg_pattern_set(led, pattern, len, repeat);
938 lpg_brightness_set(led, cdev, mc->subled_info);
943 static int lpg_pattern_clear(struct lpg_led *led)
946 struct lpg *lpg = led->lpg;
951 chan = led->channels[0];
954 for (i = 0; i < led->num_channels; i++) {
955 chan = led->channels[i];
967 struct lpg_led *led = container_of(cdev, struct lpg_led, cdev);
969 return lpg_pattern_clear(led);
975 struct lpg_led *led = container_of(mc, struct lpg_led, mcdev);
977 return lpg_pattern_clear(led);
1142 struct lpg_led *led;
1160 led = devm_kzalloc(lpg->dev, struct_size(led, channels, num_channels), GFP_KERNEL);
1161 if (!led)
1164 led->lpg = lpg;
1165 led->num_channels = num_channels;
1173 ret = lpg_parse_channel(lpg, child, &led->channels[i]);
1179 info[i].color_index = led->channels[i]->color;
1184 led->mcdev.subled_info = info;
1185 led->mcdev.num_colors = num_channels;
1187 cdev = &led->mcdev.led_cdev;
1197 ret = lpg_parse_channel(lpg, np, &led->channels[0]);
1201 cdev = &led->cdev;
1226 ret = devm_led_classdev_multicolor_register_ext(lpg->dev, &led->mcdev, &init_data);
1228 ret = devm_led_classdev_register_ext(lpg->dev, &led->cdev, &init_data);