/linux-6.8/Documentation/input/ |
D | gamepad.rst | 44 4 buttons in diamonds-shape (on the right side). The buttons are 48 4 buttons (on the left side) that point up, down, left and right. 50 Different constellations, but most-times 2 buttons: SELECT - START 52 special system-button. It often looks different to the other buttons and 60 Not all devices provide them, but the upper buttons are normally named 61 Left- and Right-Triggers, the lower buttons Z-Left and Z-Right. 83 the buttons from this protocol. However, they try to do this in a compatible 84 fashion. For example, the "Nintendo Wii Nunchuk" provides two trigger buttons 86 analog stick and two trigger buttons on the right side. 101 Every gamepad device has at least 2 action buttons. This means, that every [all …]
|
D | gameport-programming.rst | 75 int my_cooked_read(struct gameport *gameport, int *axes, int *buttons) 81 buttons[0] = my_mmio[4]; 175 Read the buttons and ns558 oneshot bits. If set to NULL, inb(io) will be 180 int (*cooked_read)(struct gameport *, int *axes, int *buttons); 184 and buttons[0] with four bits representing the buttons.
|
/linux-6.8/tools/testing/selftests/hid/tests/ |
D | test_gamepad.py | 36 buttons = {} 39 buttons[button] = True 40 r = uhdev.event(buttons=buttons) 47 buttons[button] = False 48 r = uhdev.event(buttons=buttons) 59 for b in uhdev.buttons: 63 """check for button reliability when pressing 2 buttons""" 69 b1 = uhdev.buttons[0] 71 b2 = uhdev.buttons[1] 74 buttons = {b1: True, b2: True} [all …]
|
D | test_wacom_generic.py | 80 class Buttons: class 84 Describes the state of each of the buttons / "side switches" that 85 may be present on a stylus. Buttons set to 'None' indicate the 96 return Buttons(False, False, False) 169 self.buttons = Buttons.clear() 192 self, x, y, pressure, buttons=None, toolid=None, proximity=None, reportID=None argument 200 :param buttons: stylus button state. Use ``None`` for unchanged. 207 if buttons is not None: 208 self.buttons = buttons 209 buttons = self.buttons [all …]
|
/linux-6.8/drivers/input/joystick/ |
D | maplecontrol.c | 29 unsigned short buttons; in dc_pad_callback() local 35 buttons = ~le16_to_cpup((__le16 *)(res + 8)); in dc_pad_callback() 38 (buttons & 0x0010 ? -1 : 0) + (buttons & 0x0020 ? 1 : 0)); in dc_pad_callback() 40 (buttons & 0x0040 ? -1 : 0) + (buttons & 0x0080 ? 1 : 0)); in dc_pad_callback() 42 (buttons & 0x1000 ? -1 : 0) + (buttons & 0x2000 ? 1 : 0)); in dc_pad_callback() 44 (buttons & 0x4000 ? -1 : 0) + (buttons & 0x8000 ? 1 : 0)); in dc_pad_callback() 46 input_report_key(dev, BTN_C, buttons & 0x0001); in dc_pad_callback() 47 input_report_key(dev, BTN_B, buttons & 0x0002); in dc_pad_callback() 48 input_report_key(dev, BTN_A, buttons & 0x0004); in dc_pad_callback() 49 input_report_key(dev, BTN_START, buttons & 0x0008); in dc_pad_callback() [all …]
|
D | analog.c | 94 short *buttons; member 110 int buttons; member 119 static void analog_decode(struct analog *analog, int *axes, int *initial, int buttons) in analog_decode() argument 127 buttons |= 1 << (i + 14); in analog_decode() 133 input_report_key(dev, analog->buttons[j++], (buttons >> i) & 1); in analog_decode() 137 input_report_key(dev, analog->buttons[j++], (buttons >> (i + 10)) & 1); in analog_decode() 155 ((buttons >> ((i << 2) + 7)) & 1) - ((buttons >> ((i << 2) + 9)) & 1)); in analog_decode() 157 ((buttons >> ((i << 2) + 8)) & 1) - ((buttons >> ((i << 2) + 6)) & 1)); in analog_decode() 226 port->buttons = (~u >> 4) & 0xf; in analog_button_read() 230 port->buttons = 0; in analog_button_read() [all …]
|
D | twidjoy.c | 14 * The Twiddler is a one-handed chording keyboard featuring twelve buttons on 15 * the front, six buttons on the top, and a built-in tilt sensor. The buttons 16 * on the front, which are grouped as four rows of three buttons, are pressed 18 * at the same time) and the buttons on the top are for the thumb. The tilt 26 * controller with amazing 18 buttons :-) 55 int buttons[3]; member 101 input_report_key(dev, bp->buttons[i], i+1 == value); in twidjoy_process_packet() 196 set_bit(bp->buttons[i], input_dev->keybit); in twidjoy_connect()
|
/linux-6.8/drivers/mfd/ |
D | ucb1x00-assabet.c | 42 static struct gpio_keys_button buttons[6]; in ucb1x00_assabet_add() local 45 memset(buttons, 0, sizeof(buttons)); in ucb1x00_assabet_add() 48 for (i = 0; i < ARRAY_SIZE(buttons); i++) { in ucb1x00_assabet_add() 49 buttons[i].code = BTN_0 + i; in ucb1x00_assabet_add() 50 buttons[i].gpio = ucb->gpio.base + i; in ucb1x00_assabet_add() 51 buttons[i].type = EV_KEY; in ucb1x00_assabet_add() 52 buttons[i].can_disable = true; in ucb1x00_assabet_add() 55 keys.buttons = buttons; in ucb1x00_assabet_add() 56 keys.nbuttons = ARRAY_SIZE(buttons); in ucb1x00_assabet_add()
|
/linux-6.8/Documentation/input/devices/ |
D | xpad.rst | 10 Due to backwards compatibility all buttons are reported as digital. 12 have only digital face buttons. 23 The number of buttons/axes reported varies based on 3 things: 28 module configuration for "Map D-PAD to buttons rather than axes for unknown 33 If you said Y it will map the d-pad to buttons, which is needed for dance 47 axes and 10 buttons. 54 All of the 10 buttons work (in digital mode). The six buttons on the 66 When using a known dance pad, jstest will report 6 axes and 14 buttons. 73 Known dance pads automatically map the d-pad to buttons and will work 77 of buttons, see section 0.3 - Unknown Controllers [all …]
|
/linux-6.8/drivers/input/mouse/ |
D | logibm.c | 61 unsigned char buttons; in logibm_interrupt() local 70 buttons = inb(LOGIBM_DATA_PORT); in logibm_interrupt() 71 dy |= (buttons & 0xf) << 4; in logibm_interrupt() 72 buttons = ~buttons >> 5; in logibm_interrupt() 76 input_report_key(logibm_dev, BTN_RIGHT, buttons & 1); in logibm_interrupt() 77 input_report_key(logibm_dev, BTN_MIDDLE, buttons & 2); in logibm_interrupt() 78 input_report_key(logibm_dev, BTN_LEFT, buttons & 4); in logibm_interrupt()
|
D | atarimouse.c | 65 int buttons, dx, dy; in atamouse_interrupt() local 67 buttons = (buf[0] & 1) | ((buf[0] & 2) << 1); in atamouse_interrupt() 69 buttons |= atari_mouse_buttons & 2; in atamouse_interrupt() 70 atari_mouse_buttons = buttons; in atamouse_interrupt() 80 input_report_key(atamouse_dev, BTN_LEFT, buttons & 0x4); in atamouse_interrupt() 81 input_report_key(atamouse_dev, BTN_MIDDLE, buttons & 0x2); in atamouse_interrupt() 82 input_report_key(atamouse_dev, BTN_RIGHT, buttons & 0x1); in atamouse_interrupt()
|
D | maplemouse.c | 29 int buttons, relx, rely, relz; in dc_mouse_callback() local 35 buttons = ~res[8]; in dc_mouse_callback() 40 input_report_key(dev, BTN_LEFT, buttons & 4); in dc_mouse_callback() 41 input_report_key(dev, BTN_MIDDLE, buttons & 9); in dc_mouse_callback() 42 input_report_key(dev, BTN_RIGHT, buttons & 2); in dc_mouse_callback()
|
D | inport.c | 69 unsigned char buttons; in inport_interrupt() local 81 buttons = inb(INPORT_DATA_PORT); in inport_interrupt() 83 input_report_key(inport_dev, BTN_MIDDLE, buttons & 1); in inport_interrupt() 84 input_report_key(inport_dev, BTN_LEFT, buttons & 2); in inport_interrupt() 85 input_report_key(inport_dev, BTN_RIGHT, buttons & 4); in inport_interrupt()
|
/linux-6.8/drivers/misc/ibmasm/ |
D | remote.c | 125 unsigned char buttons = input->mouse_buttons; in print_input() local 128 (buttons) ? " -- buttons:" : "", in print_input() 129 (buttons & REMOTE_BUTTON_LEFT) ? "left " : "", in print_input() 130 (buttons & REMOTE_BUTTON_MIDDLE) ? "middle " : "", in print_input() 131 (buttons & REMOTE_BUTTON_RIGHT) ? "right" : "" in print_input() 146 unsigned char buttons = input->mouse_buttons; in send_mouse_event() local 150 input_report_key(dev, BTN_LEFT, buttons & REMOTE_BUTTON_LEFT); in send_mouse_event() 151 input_report_key(dev, BTN_MIDDLE, buttons & REMOTE_BUTTON_MIDDLE); in send_mouse_event() 152 input_report_key(dev, BTN_RIGHT, buttons & REMOTE_BUTTON_RIGHT); in send_mouse_event()
|
/linux-6.8/drivers/input/ |
D | mousedev.c | 55 unsigned long buttons; member 90 unsigned long buttons; member 253 set_bit(index, &mousedev->packet.buttons); in mousedev_key_event() 254 set_bit(index, &mousedev_mix->packet.buttons); in mousedev_key_event() 256 clear_bit(index, &mousedev->packet.buttons); in mousedev_key_event() 257 clear_bit(index, &mousedev_mix->packet.buttons); in mousedev_key_event() 276 if (client->ready && p->buttons != mousedev->packet.buttons) { in mousedev_notify_readers() 300 p->buttons = mousedev->packet.buttons; in mousedev_notify_readers() 303 p->buttons != client->last_buttons) in mousedev_notify_readers() 330 set_bit(0, &mousedev->packet.buttons); in mousedev_touchpad_touch() [all …]
|
/linux-6.8/drivers/input/keyboard/ |
D | cros_ec_keyb.c | 45 * @bs_idev: The input device for non-matrix buttons and switches (or NULL). 87 /* Buttons */ 218 * cros_ec_keyb_report_bs - Report non-matrixed buttons or switches 220 * This takes a bitmap of buttons or switches from the EC and reports events, 225 * @mask: A bitmap of buttons from the EC. 291 &ckdev->ec->event_data.data.buttons); in cros_ec_keyb_work() 399 * kernel. Note that we don't query for buttons because they are more 444 * cros_ec_keyb_register_bs - Register non-matrix buttons/switches 446 * Handles all the bits of the keyboard driver related to non-matrix buttons 450 * If this device has no support for buttons and switches we'll return no error [all …]
|
D | gpio_keys_polled.c | 3 * Driver for buttons on GPIO lines not capable of generating interrupts 101 gpio_keys_button_event(input, &pdata->buttons[i], in gpio_keys_polled_poll() 104 gpio_keys_polled_check_state(input, &pdata->buttons[i], in gpio_keys_polled_poll() 161 pdata->buttons = button; in gpio_keys_polled_get_devtree_pdata() 208 const struct gpio_keys_button *button = &pdata->buttons[i]; in gpio_keys_polled_set_abs_params() 280 const struct gpio_keys_button *button = &pdata->buttons[i]; in gpio_keys_polled_probe() 363 /* report initial state of the buttons */ in gpio_keys_polled_probe() 365 gpio_keys_polled_check_state(input, &pdata->buttons[i], in gpio_keys_polled_probe() 384 MODULE_DESCRIPTION("Polled GPIO Buttons driver");
|
D | tca6416-keypad.c | 51 struct tca6416_button buttons[]; member 106 struct tca6416_button *button = &chip->buttons[pin_index]; in tca6416_keys_scan() 205 struct_size(chip, buttons, pdata->nbuttons), in tca6416_keypad_probe() 238 chip->buttons[i] = pdata->buttons[i]; in tca6416_keypad_probe() 239 type = (pdata->buttons[i].type) ?: EV_KEY; in tca6416_keypad_probe() 240 input_set_capability(input, type, pdata->buttons[i].code); in tca6416_keypad_probe()
|
D | Kconfig | 17 tristate "ADC Ladder Buttons" 20 This driver implements support for buttons connected 23 Say Y here if your device has such buttons connected to an ADC. Your 25 for mapping voltages to buttons. 235 tristate "GPIO Buttons" 238 This driver implements support for buttons connected 241 Say Y here if your device has buttons connected 250 tristate "Polled GPIO buttons" 253 This driver implements support for buttons connected 256 Say Y here if your device has buttons connected [all …]
|
/linux-6.8/include/linux/ |
D | gpio_keys.h | 43 * @buttons: pointer to array of &gpio_keys_button structures 44 * describing buttons attached to the device 45 * @nbuttons: number of elements in @buttons array 53 const struct gpio_keys_button *buttons; member
|
/linux-6.8/drivers/media/rc/keymaps/ |
D | rc-reddo.c | 20 * 2) Reddo remote has less buttons. Missing buttons are: colored buttons, 21 * navigation buttons and main power button.
|
/linux-6.8/Documentation/ABI/obsolete/ |
D | sysfs-driver-hid-roccat-kovaplus | 66 press of a button. A profile is split in settings and buttons. 69 buttons back to the mouse. The data has to be 23 bytes long. 81 press of a button. A profile is split in settings and buttons. 83 When read, these files return the respective profile buttons. 93 press of a button. A profile is split in settings and buttons. 109 press of a button. A profile is split in settings and buttons.
|
D | sysfs-driver-hid-roccat-pyra | 55 press of a button. A profile is split in settings and buttons. 58 buttons back to the mouse. The data has to be 19 bytes long. 70 press of a button. A profile is split in settings and buttons. 72 When read, these files return the respective profile buttons. 82 press of a button. A profile is split in settings and buttons. 98 press of a button. A profile is split in settings and buttons.
|
/linux-6.8/Documentation/devicetree/bindings/input/ |
D | google,cros-ec-keyb.yaml | 19 switches/buttons like power and volume buttons. 24 - description: ChromeOS EC with only buttons/switches 26 - description: ChromeOS EC with keyboard and possibly buttons/switches 136 /* No matrix keyboard, just buttons/switches */
|
/linux-6.8/drivers/platform/x86/x86-android-tablets/ |
D | core.c | 155 static struct gpio_keys_button *buttons; variable 292 kfree(buttons); in x86_android_tablet_remove() 419 buttons = kcalloc(dev_info->gpio_button_count, sizeof(*buttons), GFP_KERNEL); in x86_android_tablet_probe() 420 if (!buttons) { in x86_android_tablet_probe() 435 buttons[i] = dev_info->gpio_button[i].button; in x86_android_tablet_probe() 436 buttons[i].gpio = desc_to_gpio(gpiod); in x86_android_tablet_probe() 441 pdata.buttons = buttons; in x86_android_tablet_probe()
|