Lines Matching refs:gpio_data
34 struct gpio_trig_data *gpio_data = led->trigger_data; in gpio_trig_irq() local
37 schedule_work(&gpio_data->work); in gpio_trig_irq()
44 struct gpio_trig_data *gpio_data = container_of(work, in gpio_trig_work() local
48 if (!gpio_data->gpio) in gpio_trig_work()
51 tmp = gpio_get_value_cansleep(gpio_data->gpio); in gpio_trig_work()
52 if (gpio_data->inverted) in gpio_trig_work()
56 if (gpio_data->desired_brightness) in gpio_trig_work()
57 led_set_brightness_async(gpio_data->led, in gpio_trig_work()
58 gpio_data->desired_brightness); in gpio_trig_work()
60 led_set_brightness_async(gpio_data->led, LED_FULL); in gpio_trig_work()
62 led_set_brightness_async(gpio_data->led, LED_OFF); in gpio_trig_work()
70 struct gpio_trig_data *gpio_data = led->trigger_data; in gpio_trig_brightness_show() local
72 return sprintf(buf, "%u\n", gpio_data->desired_brightness); in gpio_trig_brightness_show()
79 struct gpio_trig_data *gpio_data = led->trigger_data; in gpio_trig_brightness_store() local
89 gpio_data->desired_brightness = desired_brightness; in gpio_trig_brightness_store()
100 struct gpio_trig_data *gpio_data = led->trigger_data; in gpio_trig_inverted_show() local
102 return sprintf(buf, "%u\n", gpio_data->inverted); in gpio_trig_inverted_show()
109 struct gpio_trig_data *gpio_data = led->trigger_data; in gpio_trig_inverted_store() local
120 gpio_data->inverted = inverted; in gpio_trig_inverted_store()
123 schedule_work(&gpio_data->work); in gpio_trig_inverted_store()
134 struct gpio_trig_data *gpio_data = led->trigger_data; in gpio_trig_gpio_show() local
136 return sprintf(buf, "%u\n", gpio_data->gpio); in gpio_trig_gpio_show()
143 struct gpio_trig_data *gpio_data = led->trigger_data; in gpio_trig_gpio_store() local
150 flush_work(&gpio_data->work); in gpio_trig_gpio_store()
154 if (gpio_data->gpio == gpio) in gpio_trig_gpio_store()
158 if (gpio_data->gpio != 0) in gpio_trig_gpio_store()
159 free_irq(gpio_to_irq(gpio_data->gpio), led); in gpio_trig_gpio_store()
160 gpio_data->gpio = 0; in gpio_trig_gpio_store()
170 if (gpio_data->gpio != 0) in gpio_trig_gpio_store()
171 free_irq(gpio_to_irq(gpio_data->gpio), led); in gpio_trig_gpio_store()
172 gpio_data->gpio = gpio; in gpio_trig_gpio_store()
181 struct gpio_trig_data *gpio_data; in gpio_trig_activate() local
184 gpio_data = kzalloc(sizeof(*gpio_data), GFP_KERNEL); in gpio_trig_activate()
185 if (!gpio_data) in gpio_trig_activate()
200 gpio_data->led = led; in gpio_trig_activate()
201 led->trigger_data = gpio_data; in gpio_trig_activate()
202 INIT_WORK(&gpio_data->work, gpio_trig_work); in gpio_trig_activate()
214 kfree(gpio_data); in gpio_trig_activate()
219 struct gpio_trig_data *gpio_data = led->trigger_data; in gpio_trig_deactivate() local
225 flush_work(&gpio_data->work); in gpio_trig_deactivate()
226 if (gpio_data->gpio != 0) in gpio_trig_deactivate()
227 free_irq(gpio_to_irq(gpio_data->gpio), led); in gpio_trig_deactivate()
228 kfree(gpio_data); in gpio_trig_deactivate()