Lines Matching refs:led_dat
39 struct gpio_led_data *led_dat = in gpio_led_work() local
42 if (led_dat->blinking) { in gpio_led_work()
43 led_dat->platform_gpio_blink_set(led_dat->gpio, in gpio_led_work()
44 led_dat->new_level, in gpio_led_work()
46 led_dat->blinking = 0; in gpio_led_work()
48 gpio_set_value_cansleep(led_dat->gpio, led_dat->new_level); in gpio_led_work()
54 struct gpio_led_data *led_dat = in gpio_led_set() local
63 if (led_dat->active_low) in gpio_led_set()
70 if (led_dat->can_sleep) { in gpio_led_set()
71 led_dat->new_level = level; in gpio_led_set()
72 schedule_work(&led_dat->work); in gpio_led_set()
74 if (led_dat->blinking) { in gpio_led_set()
75 led_dat->platform_gpio_blink_set(led_dat->gpio, level, in gpio_led_set()
77 led_dat->blinking = 0; in gpio_led_set()
79 gpio_set_value(led_dat->gpio, level); in gpio_led_set()
86 struct gpio_led_data *led_dat = in gpio_blink_set() local
89 led_dat->blinking = 1; in gpio_blink_set()
90 return led_dat->platform_gpio_blink_set(led_dat->gpio, GPIO_LED_BLINK, in gpio_blink_set()
95 struct gpio_led_data *led_dat, struct device *parent, in create_gpio_led() argument
100 led_dat->gpio = -1; in create_gpio_led()
113 led_dat->cdev.name = template->name; in create_gpio_led()
114 led_dat->cdev.default_trigger = template->default_trigger; in create_gpio_led()
115 led_dat->gpio = template->gpio; in create_gpio_led()
116 led_dat->can_sleep = gpio_cansleep(template->gpio); in create_gpio_led()
117 led_dat->active_low = template->active_low; in create_gpio_led()
118 led_dat->blinking = 0; in create_gpio_led()
120 led_dat->platform_gpio_blink_set = blink_set; in create_gpio_led()
121 led_dat->cdev.blink_set = gpio_blink_set; in create_gpio_led()
123 led_dat->cdev.brightness_set = gpio_led_set; in create_gpio_led()
125 state = !!gpio_get_value_cansleep(led_dat->gpio) ^ led_dat->active_low; in create_gpio_led()
128 led_dat->cdev.brightness = state ? LED_FULL : LED_OFF; in create_gpio_led()
130 led_dat->cdev.flags |= LED_CORE_SUSPENDRESUME; in create_gpio_led()
132 ret = gpio_direction_output(led_dat->gpio, led_dat->active_low ^ state); in create_gpio_led()
136 INIT_WORK(&led_dat->work, gpio_led_work); in create_gpio_led()
138 ret = led_classdev_register(parent, &led_dat->cdev); in create_gpio_led()
144 gpio_free(led_dat->gpio); in create_gpio_led()