Lines Matching refs:button
97 * it seems that 0xFE indicates that a button is still hold
98 * down, while 0xff indicates that no button is hold down.
526 const struct em28xx_button *button;
528 button = &dev->board.buttons[j];
530 /* Check if button uses the current address */
531 if (button->reg_r != dev->button_polling_addresses[i]) {
535 /* Determine if button is and was pressed last time */
536 is_pressed = regval & button->mask;
538 & button->mask;
539 if (button->inverted) {
543 /* Clear button state (if needed) */
544 if (is_pressed && button->reg_clearing)
545 em28xx_write_reg(dev, button->reg_clearing,
546 (~regval & button->mask)
547 | (regval & ~button->mask));
548 /* Handle button state */
553 switch (button->role) {
572 WARN_ONCE(1, "BUG: unhandled button role.");
574 /* Next button */
591 dev_info(&dev->intf->dev, "Registering snapshot button...\n");
601 input_dev->name = "em28xx snapshot button";
629 const struct em28xx_button *button = &dev->board.buttons[i];
634 if (button->reg_r == dev->button_polling_addresses[j]) {
642 WARN_ONCE(1, "BUG: maximum number of button polling addresses exceeded.");
646 if (button->role == EM28XX_BUTTON_SNAPSHOT) {
650 } else if (button->role == EM28XX_BUTTON_ILLUMINATION) {
654 "BUG: illumination button defined, but no illumination LED.\n");
662 dev->button_polling_addresses[index] = button->reg_r;
666 if (!button->reg_clearing)
670 /* Next button */
691 dev_info(&dev->intf->dev, "Deregistering snapshot button\n");