/linux/drivers/platform/x86/ |
H A D | wireless-hotkey.c | 3 * Airplane mode button for AMD, HP & Xiaomi laptops 17 MODULE_DESCRIPTION("Airplane mode button for AMD, HP & Xiaomi laptops"); 40 struct wl_button *button = acpi_driver_data(device); in wireless_input_setup() local 43 button->input_dev = input_allocate_device(); in wireless_input_setup() 44 if (!button->input_dev) in wireless_input_setup() 47 snprintf(button->phys, sizeof(button->phys), "%s/input0", acpi_device_hid(device)); in wireless_input_setup() 49 button->input_dev->name = "Wireless hotkeys"; in wireless_input_setup() 50 button->input_dev->phys = button->phys; in wireless_input_setup() 51 button->input_dev->id.bustype = BUS_HOST; in wireless_input_setup() 52 button->input_dev->evbit[0] = BIT(EV_KEY); in wireless_input_setup() [all …]
|
H A D | xo15-ebook.c | 4 * (based on generic ACPI button driver) 45 struct ebook_switch *button = acpi_driver_data(device); in ebook_send_state() local 54 input_report_switch(button->input, SW_TABLET_MODE, !state); in ebook_send_state() 55 input_sync(button->input); in ebook_send_state() 85 struct ebook_switch *button; in ebook_switch_add() local 90 button = kzalloc(sizeof(struct ebook_switch), GFP_KERNEL); in ebook_switch_add() 91 if (!button) in ebook_switch_add() 94 device->driver_data = button; in ebook_switch_add() 96 button->input = input = input_allocate_device(); in ebook_switch_add() 115 snprintf(button->phys, sizeof(button->phys), "%s/button/input0", id->id); in ebook_switch_add() [all …]
|
/linux/drivers/input/keyboard/ |
H A D | gpio_keys_polled.c | 45 const struct gpio_keys_button *button, in gpio_keys_button_event() argument 49 unsigned int type = button->type ?: EV_KEY; in gpio_keys_button_event() 53 input_event(input, type, button->code, button->value); in gpio_keys_button_event() 54 __set_bit(button->code, bdev->rel_axis_seen); in gpio_keys_button_event() 58 input_event(input, type, button->code, button->value); in gpio_keys_button_event() 59 __set_bit(button->code, bdev->abs_axis_seen); in gpio_keys_button_event() 62 input_event(input, type, button->code, state); in gpio_keys_button_event() 68 const struct gpio_keys_button *button, in gpio_keys_polled_check_state() argument 78 gpio_keys_button_event(input, button, state); in gpio_keys_polled_check_state() 146 struct gpio_keys_button *button; in gpio_keys_polled_get_devtree_pdata() local [all …]
|
H A D | gpio_keys.c | 34 const struct gpio_keys_button *button; member 102 * @type: type of button (%EV_KEY, %EV_SW) 117 * @type: type of button (%EV_KEY, %EV_SW) 143 * gpio_keys_disable_button() - disables given GPIO button 144 * @bdata: button data for button to be disabled 146 * Disables button pointed by @bdata. This is done by masking 147 * IRQ line. After this function is called, button won't generate 168 * gpio_keys_enable_button() - enables given GPIO button 169 * @bdata: button data for button to be disabled 171 * Enables given button pointed by @bdata. [all …]
|
H A D | qt1050.c | 309 struct qt1050_key *button = &ts->keys[0]; in qt1050_apply_fw_data() local 320 for (i = 0; i < QT1050_MAX_KEYS; i++, button++) { in qt1050_apply_fw_data() 322 if (button->keycode == KEY_RESERVED) in qt1050_apply_fw_data() 325 err = qt1050_set_key(map, button->num, 1); in qt1050_apply_fw_data() 329 key_regs = qt1050_get_key_regs(button->num); in qt1050_apply_fw_data() 332 (button->samples << 4) | (button->scale)); in qt1050_apply_fw_data() 335 err = regmap_write(map, key_regs->csd, button->charge_delay); in qt1050_apply_fw_data() 338 err = regmap_write(map, key_regs->nthr, button->thr_cnt); in qt1050_apply_fw_data() 356 struct qt1050_key button; in qt1050_parse_fw() local 360 &button.keycode)) { in qt1050_parse_fw() [all …]
|
/linux/drivers/acpi/ |
H A D | button.c | 3 * button.c - ACPI Button Driver 9 #define pr_fmt(fmt) "ACPI: button: " fmt 22 #include <acpi/button.h> 24 #define ACPI_BUTTON_CLASS "button" 30 #define ACPI_BUTTON_DEVICE_NAME_POWER "Power Button" 34 #define ACPI_BUTTON_DEVICE_NAME_SLEEP "Sleep Button" 56 MODULE_DESCRIPTION("ACPI Button Driver"); 160 .name = "button", 206 struct acpi_button *button = acpi_driver_data(device); in acpi_lid_notify_state() local 218 button->last_state != !!state) in acpi_lid_notify_state() [all …]
|
/linux/drivers/input/misc/ |
H A D | cpcap-pwrbutton.c | 3 * CPCAP Power Button Input Driver 30 struct cpcap_power_button *button = _button; in powerbutton_irq() local 33 val = cpcap_sense_virq(button->regmap, irq); in powerbutton_irq() 35 dev_err(button->dev, "irq read failed: %d", val); in powerbutton_irq() 39 pm_wakeup_event(button->dev, 0); in powerbutton_irq() 40 input_report_key(button->idev, KEY_POWER, val); in powerbutton_irq() 41 input_sync(button->idev); in powerbutton_irq() 48 struct cpcap_power_button *button; in cpcap_power_button_probe() local 56 button = devm_kmalloc(&pdev->dev, sizeof(*button), GFP_KERNEL); in cpcap_power_button_probe() 57 if (!button) in cpcap_power_button_probe() [all …]
|
H A D | palmas-pwrbutton.c | 3 * Texas Instruments' Palmas Power Button Input Driver 42 * @pwron_debounce_val: value for debounce of power button 50 * palmas_power_button_work() - Detects the button release event 51 * @work: work item to detect button release 68 /* The button is released, report event. */ in palmas_power_button_work() 72 /* The button is still depressed, keep checking. */ in palmas_power_button_work() 79 * pwron_irq() - button press isr 102 * @dev: palmas button device 151 * @pdev: platform device for the button 173 dev_err(dev, "Can't allocate power button\n"); in palmas_pwron_probe() [all …]
|
/linux/drivers/platform/surface/ |
H A D | surfacepro3_button.c | 3 * power/home/volume button support for 16 #include <acpi/button.h> 44 MODULE_DESCRIPTION("Surface Pro3 Button Driver"); 48 * Power button, Home button, Volume buttons support is supposed to 76 struct surface_button *button = acpi_driver_data(device); in surface_button_notify() local 82 /* Power button press,release handle */ in surface_button_notify() 89 /* Home button press,release handle */ in surface_button_notify() 96 /* Volume up button press,release handle */ in surface_button_notify() 103 /* Volume down button press,release handle */ in surface_button_notify() 118 input = button->input; in surface_button_notify() [all …]
|
/linux/Documentation/input/devices/ |
H A D | sentelic.rst | 15 A) MSID 4: Scrolling wheel mode plus Forward page(4th button) and Backward 16 page (5th button) 37 Bit2 => Middle Button, 1 is pressed, 0 is not pressed. 38 Bit1 => Right Button, 1 is pressed, 0 is not pressed. 39 Bit0 => Left Button, 1 is pressed, 0 is not pressed. 44 Bit4 => 1 = 4th mouse button is pressed, Forward one page. 45 0 = 4th mouse button is not pressed. 46 Bit5 => 1 = 5th mouse button is pressed, Backward one page. 47 0 = 5th mouse button is not pressed. 69 Bit2 => Middle Button, 1 is pressed, 0 is not pressed. [all …]
|
H A D | joystick-parport.rst | 170 | +----> Button 190 | | +----> Button | | | +----> Button 1 191 | +------> Power | | +------> Button 2 208 | | +----> Button 1 | | | +----> Button 209 | +------> Button 2 | | +------> Power 215 +-----------> Up +-----------> Button 3 226 | | | +----> Right | | | +----> Button 1 229 +----------> Down +----------> Button 2 240 For the basic 1-button Multisystem joystick you connect its wires to the 250 (pin 6) -----> Button 1 [all …]
|
H A D | atarikbd.rst | 42 mouse button states) 71 button being pressed or released, or motion in either axis exceeding a 84 ; where y is the right button state 85 ; and x is the left button state 89 Note that the value of the button state bits should be valid even if the 90 MOUSE BUTTON ACTION has set the buttons to act like part of the keyboard. 155 Fire Button Monitoring 159 this mode the ikbd monitors the state of the Joystick 1 fire button at the 163 only stops the output but also temporarily stops scanning the button (samples 208 received while port 0 is presumed to be a mouse, the button is logically [all …]
|
/linux/drivers/soc/loongson/ |
H A D | loongson2_pm.c | 100 struct input_dev *button; in loongson2_power_button_init() local 102 button = input_allocate_device(); in loongson2_power_button_init() 106 button->name = "Power Button"; in loongson2_power_button_init() 107 button->phys = "pm/button/input0"; in loongson2_power_button_init() 108 button->id.bustype = BUS_HOST; in loongson2_power_button_init() 109 button->dev.parent = NULL; in loongson2_power_button_init() 110 input_set_capability(button, EV_KEY, KEY_POWER); in loongson2_power_button_init() 112 ret = input_register_device(button); in loongson2_power_button_init() 116 dev_pm_set_wake_irq(&button->dev, irq); in loongson2_power_button_init() 117 device_set_wakeup_capable(&button->dev, true); in loongson2_power_button_init() [all …]
|
/linux/Documentation/input/ |
H A D | gamepad.rst | 11 having user-space deal with different button-mappings for each gamepad, this 51 Furthermore, many gamepads have a fancy branded button that is used as 52 special system-button. It often looks different to the other buttons and 57 Analog-sticks may also provide a digital button if you press them. 106 Please note that 2- and 3-button pads are fairly rare and old. You might 109 - 2-Button Pad: 112 BTN_EAST. For vertical layouts, the upper button is BTN_EAST. For 113 horizontal layouts, the button more on the right is BTN_EAST. 115 - 3-Button Pad: 122 - 4-Button Pad: [all …]
|
/linux/drivers/hid/ |
H A D | hid-elecom.c | 28 * Certain ELECOM mice misreport their button count meaning that they only work 49 hid_info(hdev, "Fixing up Elecom mouse button count\n"); in mouse_button_fixup() 71 * 20: button bit count in elecom_report_fixup() 73 * 22: button report size in elecom_report_fixup() 74 * 14: button usage maximum in elecom_report_fixup() 83 * 12: button bit count in elecom_report_fixup() 85 * 14: button report size in elecom_report_fixup() 86 * 20: button usage maximum in elecom_report_fixup() 96 * 12: button bit count in elecom_report_fixup() 98 * 14: button report size in elecom_report_fixup() [all …]
|
/linux/arch/mips/boot/dts/ingenic/ |
H A D | gcw0.dts | 135 button-0 { 142 button-1 { 149 button-2 { 156 button-3 { 163 button-4 { 164 label = "Button A"; 170 button-5 { 171 label = "Button B"; 177 button-6 { 178 label = "Button Y"; [all …]
|
/linux/scripts/kconfig/lxdialog/ |
H A D | inputbox.c | 35 int input_x = 0, key = 0, button = -1; in dialog_inputbox() local 109 if (button == -1) { /* Input box selected */ in dialog_inputbox() 232 switch (button) { in dialog_inputbox() 234 button = 1; /* Indicates "Help" button is selected */ in dialog_inputbox() 238 button = -1; /* Indicates input box is selected */ in dialog_inputbox() 244 button = 0; /* Indicates "OK" button is selected */ in dialog_inputbox() 252 switch (button) { in dialog_inputbox() 254 button = 0; /* Indicates "OK" button is selected */ in dialog_inputbox() 258 button = 1; /* Indicates "Help" button is selected */ in dialog_inputbox() 262 button = -1; /* Indicates input box is selected */ in dialog_inputbox() [all …]
|
/linux/arch/arm64/boot/dts/allwinner/ |
H A D | sun50i-h700-anbernic-rg35xx-2024.dts | 37 button-a { 44 button-b { 51 button-down { 58 button-l1 { 65 button-l2 { 72 button-left { 79 button-menu { 86 button-r1 { 93 button-r2 { 100 button-right { [all …]
|
/linux/Documentation/hid/ |
H A D | hidintro.rst | 124 # 0x05, 0x09, // Usage Page (Button) 10 126 what follows is a button :: 131 first button is button number 1, last button is button number 3 :: 136 each button can send values from 0 up to including 1 141 each button is sent as exactly one bit :: 207 The sequence of bytes sent by clicking and releasing button 1, then button 2, then button 3 is:: 215 # Button: 1 0 0 | # | X: 0 | Y: 0 | Wheel: 0 217 # Button: 0 0 0 | # | X: 0 | Y: 0 | Wheel: 0 219 # Button: 0 1 0 | # | X: 0 | Y: 0 | Wheel: 0 221 # Button: 0 0 0 | # | X: 0 | Y: 0 | Wheel: 0 [all …]
|
/linux/drivers/platform/x86/intel/ |
H A D | hid.c | 3 * Intel HID event & 5 button array driver 30 "Enable 5 Button Array support. " 84 /* 5 button array notification value. */ 348 /* Enable|disable features - power button is always enabled */ in intel_hid_set_enable() 370 dev_warn(device, "failed to get button capability\n"); in intel_button_array_enable() 374 /* Enable|disable features - power button is always enabled */ in intel_button_array_enable() 377 dev_warn(device, "failed to set button capability\n"); in intel_button_array_enable() 452 /* Setup input device for 5 button array */ in intel_button_array_input_setup() 461 priv->array->name = "Intel HID 5 button array"; in intel_button_array_input_setup() 542 * platforms that don't expose the 5-button array, but still in notify_handler() [all …]
|
/linux/drivers/media/usb/em28xx/ |
H A D | em28xx-input.c | 87 * it seems that 0xFE indicates that a button is still hold in em28xx_get_key_terratec() 88 * down, while 0xff indicates that no button is hold down. in em28xx_get_key_terratec() 516 const struct em28xx_button *button; in em28xx_query_buttons() local 518 button = &dev->board.buttons[j]; in em28xx_query_buttons() 520 /* Check if button uses the current address */ in em28xx_query_buttons() 521 if (button->reg_r != dev->button_polling_addresses[i]) { in em28xx_query_buttons() 525 /* Determine if button is and was pressed last time */ in em28xx_query_buttons() 526 is_pressed = regval & button->mask; in em28xx_query_buttons() 528 & button->mask; in em28xx_query_buttons() 529 if (button->inverted) { in em28xx_query_buttons() [all …]
|
/linux/Documentation/input/joydev/ |
H A D | joystick.rst | 150 with CH Flightstick Pro, ThrustMaster FCS or 6 and 8 button gamepads. Saitek 156 * 2-axis, 4-button joystick 157 * 3-axis, 4-button joystick 158 * 4-axis, 4-button joystick 177 2btn 2-button n-axis joystick 178 y-joy Two 2-button 2-axis joysticks on an Y-cable 179 y-pad Two 2-button 2-axis gamepads on an Y-cable 183 gamepad 4/6-button n-axis gamepad 184 gamepad8 8-button 2-axis gamepad 199 4 Button A [all …]
|
/linux/Documentation/firmware-guide/acpi/ |
H A D | acpi-lid.rst | 52 The ACPI button driver exports the lid state to the userspace via the 55 /proc/acpi/button/lid/LID0/state 62 The ACPI button driver emits the following input event to the userspace: 68 button driver uses the following 3 modes in order not to trigger issues. 74 A. button.lid_init_state=method: 75 When this option is specified, the ACPI button driver reports the 87 B. button.lid_init_state=open: 88 When this option is specified, the ACPI button driver always reports the 100 C. button.lid_init_state=ignore: 101 When this option is specified, the ACPI button driver never reports the [all …]
|
/linux/drivers/input/rmi4/ |
H A D | rmi_f3a.c | 39 struct f3a_data *f3a, unsigned int button) in rmi_f3a_report_button() argument 41 u16 key_code = f3a->gpio_key_map[button]; in rmi_f3a_report_button() 42 bool key_down = !(f3a->data_regs[0] & BIT(button)); in rmi_f3a_report_button() 45 button >= TRACKSTICK_RANGE_START && in rmi_f3a_report_button() 46 button <= TRACKSTICK_RANGE_END) { in rmi_f3a_report_button() 115 static bool rmi_f3a_is_valid_button(int button, struct f3a_data *f3a, in rmi_f3a_is_valid_button() argument 119 return (query1_regs[0] & BIT(button)) && !(ctrl1_regs[0] & BIT(button)); in rmi_f3a_is_valid_button() 128 unsigned int button = BTN_LEFT; in rmi_f3a_map_gpios() local 152 f3a->gpio_key_map[i] = button; in rmi_f3a_map_gpios() 153 input_set_capability(input, EV_KEY, button++); in rmi_f3a_map_gpios() [all …]
|
/linux/arch/arm/boot/dts/allwinner/ |
H A D | sun8i-v3s-anbernic-rg-nano.dts | 33 button-a { 39 button-b { 45 button-down { 51 button-left { 57 button-right { 63 button-se { 69 button-st { 75 button-tl { 81 button-tr { 87 button-up { [all …]
|