Lines Matching refs:button
46 const struct gpio_keys_button *button, in gpio_keys_button_event() argument
51 unsigned int type = button->type ?: EV_KEY; in gpio_keys_button_event()
55 input_event(input, type, button->code, button->value); in gpio_keys_button_event()
56 __set_bit(button->code, bdev->rel_axis_seen); in gpio_keys_button_event()
60 input_event(input, type, button->code, button->value); in gpio_keys_button_event()
61 __set_bit(button->code, bdev->abs_axis_seen); in gpio_keys_button_event()
64 input_event(input, type, button->code, state); in gpio_keys_button_event()
70 const struct gpio_keys_button *button, in gpio_keys_polled_check_state() argument
80 gpio_keys_button_event(dev, button, state); in gpio_keys_polled_check_state()
147 struct gpio_keys_button *button; in gpio_keys_polled_get_devtree_pdata() local
155 pdata = devm_kzalloc(dev, sizeof(*pdata) + nbuttons * sizeof(*button), in gpio_keys_polled_get_devtree_pdata()
160 button = (struct gpio_keys_button *)(pdata + 1); in gpio_keys_polled_get_devtree_pdata()
162 pdata->buttons = button; in gpio_keys_polled_get_devtree_pdata()
172 &button->code)) { in gpio_keys_polled_get_devtree_pdata()
178 fwnode_property_read_string(child, "label", &button->desc); in gpio_keys_polled_get_devtree_pdata()
181 &button->type)) in gpio_keys_polled_get_devtree_pdata()
182 button->type = EV_KEY; in gpio_keys_polled_get_devtree_pdata()
185 (u32 *)&button->value)) in gpio_keys_polled_get_devtree_pdata()
186 button->value = 1; in gpio_keys_polled_get_devtree_pdata()
188 button->wakeup = in gpio_keys_polled_get_devtree_pdata()
194 &button->debounce_interval)) in gpio_keys_polled_get_devtree_pdata()
195 button->debounce_interval = 5; in gpio_keys_polled_get_devtree_pdata()
197 button++; in gpio_keys_polled_get_devtree_pdata()
209 const struct gpio_keys_button *button = &pdata->buttons[i]; in gpio_keys_polled_set_abs_params() local
211 if (button->type != EV_ABS || button->code != code) in gpio_keys_polled_set_abs_params()
214 if (button->value < min) in gpio_keys_polled_set_abs_params()
215 min = button->value; in gpio_keys_polled_set_abs_params()
216 if (button->value > max) in gpio_keys_polled_set_abs_params()
217 max = button->value; in gpio_keys_polled_set_abs_params()
285 const struct gpio_keys_button *button = &pdata->buttons[i]; in gpio_keys_polled_probe() local
287 unsigned int type = button->type ?: EV_KEY; in gpio_keys_polled_probe()
289 if (button->wakeup) { in gpio_keys_polled_probe()
306 button->desc); in gpio_keys_polled_probe()
316 } else if (gpio_is_valid(button->gpio)) { in gpio_keys_polled_probe()
323 if (button->active_low) in gpio_keys_polled_probe()
326 error = devm_gpio_request_one(dev, button->gpio, in gpio_keys_polled_probe()
327 flags, button->desc ? : DRV_NAME); in gpio_keys_polled_probe()
331 button->gpio, error); in gpio_keys_polled_probe()
335 bdata->gpiod = gpio_to_desc(button->gpio); in gpio_keys_polled_probe()
339 button->gpio); in gpio_keys_polled_probe()
345 bdata->threshold = DIV_ROUND_UP(button->debounce_interval, in gpio_keys_polled_probe()
348 input_set_capability(input, type, button->code); in gpio_keys_polled_probe()
351 button->code); in gpio_keys_polled_probe()