/linux/drivers/input/keyboard/ |
A D | imx_keypad.c | 173 keypad->keycodes[code], in imx_keypad_fire_events() 185 struct imx_keypad *keypad = from_timer(keypad, t, check_matrix_timer); in imx_keypad_check_for_events() local 216 keypad->stable_count = 0; in imx_keypad_check_for_events() 218 keypad->stable_count++; in imx_keypad_check_for_events() 300 if (keypad->enabled) { in imx_keypad_irq_handler() 370 keypad->enabled = false; in imx_keypad_close() 393 keypad->enabled = true; in imx_keypad_open() 398 if ((readw(keypad->mmio_base + KPDR) & keypad->rows_en_mask) == 0) { in imx_keypad_open() 433 keypad = devm_kzalloc(&pdev->dev, sizeof(*keypad), GFP_KERNEL); in imx_keypad_probe() 434 if (!keypad) { in imx_keypad_probe() [all …]
|
A D | samsung-keypad.c | 140 memcpy(keypad->row_state, row_state, sizeof(keypad->row_state)); in samsung_keypad_report() 162 wait_event_timeout(keypad->wait, keypad->stopped, in samsung_keypad_irq() 201 keypad->stopped = true; in samsung_keypad_stop() 202 wake_up(&keypad->wait); in samsung_keypad_stop() 351 keypad = devm_kzalloc(&pdev->dev, sizeof(*keypad) + keymap_size, in samsung_keypad_probe() 362 if (!keypad->base) in samsung_keypad_probe() 378 keypad->pdev = pdev; in samsung_keypad_probe() 413 if (keypad->irq < 0) { in samsung_keypad_probe() 414 error = keypad->irq; in samsung_keypad_probe() 469 if (keypad->stopped) in samsung_keypad_runtime_suspend() [all …]
|
A D | ep93xx_keypad.c | 98 if (keypad->key1 && key1 != keypad->key1 && key2 != keypad->key1) in ep93xx_keypad_irq_handler() 101 if (keypad->key2 && key1 != keypad->key2 && key2 != keypad->key2) in ep93xx_keypad_irq_handler() 107 keypad->key1 = key1; in ep93xx_keypad_irq_handler() 108 keypad->key2 = key2; in ep93xx_keypad_irq_handler() 111 if (keypad->key1 && key1 != keypad->key1) in ep93xx_keypad_irq_handler() 114 if (keypad->key2 && key1 != keypad->key2) in ep93xx_keypad_irq_handler() 120 keypad->key2 = 0; in ep93xx_keypad_irq_handler() 126 keypad->key1 = keypad->key2 = 0; in ep93xx_keypad_irq_handler() 237 keypad = devm_kzalloc(&pdev->dev, sizeof(*keypad), GFP_KERNEL); in ep93xx_keypad_probe() 238 if (!keypad) in ep93xx_keypad_probe() [all …]
|
A D | nomadik-ske-keypad.c | 257 keypad->irq = irq; in ske_keypad_probe() 258 keypad->board = plat; in ske_keypad_probe() 259 keypad->input = input; in ske_keypad_probe() 320 keypad->board->init(); in ske_keypad_probe() 350 free_irq(keypad->irq, keypad); in ske_keypad_probe() 356 clk_put(keypad->clk); in ske_keypad_probe() 358 clk_put(keypad->pclk); in ske_keypad_probe() 365 kfree(keypad); in ske_keypad_probe() 374 free_irq(keypad->irq, keypad); in ske_keypad_remove() 379 clk_put(keypad->clk); in ske_keypad_remove() [all …]
|
A D | pxa27x_keypad.c | 326 keypad->pdata = pdata; in pxa27x_keypad_build_keycode_from_dt() 580 clear_wakeup_event(keypad); in pxa27x_keypad_irq_handler() 650 pxa27x_keypad_config(keypad); in pxa27x_keypad_open() 720 struct pxa27x_keypad *keypad; in pxa27x_keypad_probe() local 739 keypad = devm_kzalloc(&pdev->dev, sizeof(*keypad), in pxa27x_keypad_probe() 741 if (!keypad) in pxa27x_keypad_probe() 748 keypad->pdata = pdata; in pxa27x_keypad_probe() 750 keypad->irq = irq; in pxa27x_keypad_probe() 757 if (IS_ERR(keypad->clk)) { in pxa27x_keypad_probe() 786 pdata = keypad->pdata; in pxa27x_keypad_probe() [all …]
|
A D | nspire-keypad.c | 61 int_sts = readl(keypad->reg_base + KEYPAD_INT) & keypad->int_mask; in nspire_keypad_irq() 69 if (keypad->active_low) in nspire_keypad_irq() 76 keypad->state[row] = bits; in nspire_keypad_irq() 127 keypad->int_mask = 1 << 1; in nspire_keypad_open() 128 writel(keypad->int_mask, keypad->reg_base + KEYPAD_INTMSK); in nspire_keypad_open() 148 struct nspire_keypad *keypad; in nspire_keypad_probe() local 160 if (!keypad) { in nspire_keypad_probe() 175 &keypad->row_delay); in nspire_keypad_probe() 184 if (IS_ERR(keypad->clk)) { in nspire_keypad_probe() 186 return PTR_ERR(keypad->clk); in nspire_keypad_probe() [all …]
|
A D | matrix_keypad.c | 168 enable_row_irqs(keypad); in matrix_keypad_scan() 184 if (unlikely(keypad->scan_pending || keypad->stopped)) in matrix_keypad_interrupt() 187 disable_row_irqs(keypad); in matrix_keypad_interrupt() 201 keypad->stopped = false; in matrix_keypad_start() 218 keypad->stopped = true; in matrix_keypad_stop() 226 disable_row_irqs(keypad); in matrix_keypad_stop() 362 disable_row_irqs(keypad); in matrix_keypad_init_gpio() 505 keypad->pdata = pdata; in matrix_keypad_probe() 507 keypad->stopped = true; in matrix_keypad_probe() 548 kfree(keypad); in matrix_keypad_probe() [all …]
|
A D | stmpe-keypad.c | 220 if (keypad->cols & (1 << i)) { in stmpe_keypad_altfunc_init() 231 if (keypad->rows & (1 << i)) in stmpe_keypad_altfunc_init() 295 keypad->rows >> 8); in stmpe_keypad_chip_init() 323 keypad->rows |= 1 << row; in stmpe_keypad_fill_used_pins() 324 keypad->cols |= 1 << col; in stmpe_keypad_fill_used_pins() 334 struct stmpe_keypad *keypad; in stmpe_keypad_probe() local 347 if (!keypad) in stmpe_keypad_probe() 350 keypad->stmpe = stmpe; in stmpe_keypad_probe() 370 keypad->keymap, input); in stmpe_keypad_probe() 375 if (!keypad->no_autorepeat) in stmpe_keypad_probe() [all …]
|
A D | st-keyscan.c | 41 struct st_keyscan *keypad = dev_id; in keyscan_isr() local 48 keypad->last_state = state; in keyscan_isr() 54 input_sync(keypad->input_dev); in keyscan_isr() 63 error = clk_enable(keypad->clk); in keyscan_start() 67 writel(keypad->debounce_us * (clk_get_rate(keypad->clk) / 1000000), in keyscan_start() 83 clk_disable(keypad->clk); in keyscan_stop() 90 return keyscan_start(keypad); in keyscan_open() 97 keyscan_stop(keypad); in keyscan_close() 223 enable_irq_wake(keypad->irq); in keyscan_suspend() 225 keyscan_stop(keypad); in keyscan_suspend() [all …]
|
A D | tc3589x-keypad.c | 191 struct tc_keypad *keypad = dev; in tc3589x_keypad_irq() local 212 input_report_key(keypad->input, keypad->keymap[code], !up); in tc3589x_keypad_irq() 213 input_sync(keypad->input); in tc3589x_keypad_irq() 287 keypad->keypad_stopped = true; in tc3589x_keypad_disable() 377 struct tc_keypad *keypad; in tc3589x_keypad_probe() local 394 if (!keypad) in tc3589x_keypad_probe() 403 keypad->board = plat; in tc3589x_keypad_probe() 404 keypad->input = input; in tc3589x_keypad_probe() 405 keypad->tc3589x = tc3589x; in tc3589x_keypad_probe() 466 if (keypad->keypad_stopped) in tc3589x_keypad_suspend() [all …]
|
A D | max7359_keypad.c | 87 struct max7359_keypad *keypad = dev_id; in max7359_interrupt() local 98 dev_dbg(&keypad->client->dev, in max7359_interrupt() 131 max7359_take_catnap(keypad->client); in max7359_open() 163 struct max7359_keypad *keypad; in max7359_probe() local 184 if (!keypad) { in max7359_probe() 195 keypad->client = client; in max7359_probe() 196 keypad->input_dev = input_dev; in max7359_probe() 207 input_dev->keycode = keypad->keycodes; in max7359_probe() 210 input_set_drvdata(input_dev, keypad); in max7359_probe() 215 keypad->keycodes, in max7359_probe() [all …]
|
A D | Makefile | 16 obj-$(CONFIG_KEYBOARD_BCM) += bcm-keypad.o 18 obj-$(CONFIG_KEYBOARD_CLPS711X) += clps711x-keypad.o 27 obj-$(CONFIG_KEYBOARD_TCA6416) += tca6416-keypad.o 49 obj-$(CONFIG_KEYBOARD_NOMADIK) += nomadik-ske-keypad.o 50 obj-$(CONFIG_KEYBOARD_NSPIRE) += nspire-keypad.o 51 obj-$(CONFIG_KEYBOARD_OMAP) += omap-keypad.o 52 obj-$(CONFIG_KEYBOARD_OMAP4) += omap4-keypad.o 54 obj-$(CONFIG_KEYBOARD_PMIC8XXX) += pmic8xxx-keypad.o 60 obj-$(CONFIG_KEYBOARD_SAMSUNG) += samsung-keypad.o 64 obj-$(CONFIG_KEYBOARD_STMPE) += stmpe-keypad.o [all …]
|
/linux/Documentation/devicetree/bindings/input/ |
A D | samsung-keypad.txt | 4 keypad device. The keypad controller supports multiple row and column lines. 11 - "samsung,s3c6410-keypad": For controllers compatible with s3c6410 keypad 13 - "samsung,s5pv210-keypad": For controllers compatible with s5pv210 keypad 22 - samsung,keypad-num-rows: Number of row lines connected to the keypad 26 keypad controller. 48 keypad@100a0000 { 61 keypad,row = <0>; 62 keypad,column = <3>; 67 keypad,row = <0>; 68 keypad,column = <4>; [all …]
|
A D | omap-keypad.txt | 4 keypad device. The keypad controller supports multiple row and column lines. 6 The keypad controller can sense a key-press and key-release and report the 12 keypad,num-rows and keypad,num-columns are required. 16 - "ti,omap4-keypad": For controllers compatible with omap4 keypad 20 - linux,keypad-no-autorepeat: do no enable autorepeat feature. 23 keypad@4ae1c000{ 24 compatible = "ti,omap4-keypad"; 25 keypad,num-rows = <2>; 26 keypad,num-columns = <8>; 27 linux,keypad-no-autorepeat;
|
A D | twl4030-keypad.txt | 4 keypad device. The keypad controller supports multiple row and column lines. 6 The keypad controller can sense a key-press and key-release and report the 12 * keypad,num-rows and keypad,num-columns are required. 16 - "ti,twl4030-keypad": For controllers compatible with twl4030 keypad 19 - <1>: For controllers compatible with twl4030 keypad controller. 22 twl_keypad: keypad { 23 compatible = "ti,twl4030-keypad"; 25 keypad,num-rows = <8>; 26 keypad,num-columns = <8>;
|
A D | brcm,bcm-keypad.txt | 4 keypad device. The keypad controller supports multiple row and column lines. 12 keypad,num-rows and keypad,num-columns are required. 15 - compatible: should be "brcm,bcm-keypad" 23 - keypad,num-rows: Number of row lines connected to the keypad 26 - keypad,num-columns: Number of column lines connected to the 27 keypad controller. 56 If specified implies the keypad scan pull-up has been enabled. 68 keypad: keypad@180ac000 { 70 compatible = "brcm,bcm-keypad"; 73 keypad,num-rows = <5>; [all …]
|
A D | qcom,pm8xxx-keypad.txt | 9 "qcom,pm8058-keypad" 10 "qcom,pm8921-keypad" 15 Definition: address of keypad control register 31 - linux,keypad-no-autorepeat: 39 Definition: use any event on keypad as wakeup event. 42 - keypad,num-rows: 48 - keypad,num-columns: 74 keypad@148 { 75 compatible = "qcom,pm8921-keypad"; 85 keypad,num-rows = <1>; [all …]
|
A D | gpio-matrix-keypad.txt | 1 * GPIO driven matrix keypad device tree bindings 3 GPIO driven matrix keypad is used to interface a SoC with a matrix keypad. 4 The matrix keypad supports multiple row and column lines, a key can be 6 keypad can sense a key-press and key-release by means of GPIO lines and 10 - compatible: Should be "gpio-matrix-keypad" 22 - wakeup-source: use any event on keypad as wakeup event. 26 before we can scan keypad after activating column gpio 31 matrix-keypad { 32 compatible = "gpio-matrix-keypad";
|
A D | matrix-keymap.yaml | 30 keypad,num-rows: 32 description: Number of row lines connected to the keypad controller. 34 keypad,num-columns: 36 description: Number of column lines connected to the keypad controller. 42 keypad { 46 keypad,num-rows = <2>; 47 keypad,num-columns = <8>;
|
/linux/arch/arm/boot/dts/ |
A D | exynos4412-smdk4412.dts | 65 &keypad { 75 keypad,row = <1>; 81 keypad,row = <1>; 87 keypad,row = <1>; 93 keypad,row = <1>; 99 keypad,row = <1>; 105 keypad,row = <2>; 111 keypad,row = <2>; 117 keypad,row = <0>; 123 keypad,row = <2>; [all …]
|
A D | exynos4210-smdkv310.dts | 84 &keypad { 94 keypad,row = <0>; 100 keypad,row = <0>; 106 keypad,row = <0>; 112 keypad,row = <0>; 118 keypad,row = <0>; 124 keypad,row = <1>; 130 keypad,row = <1>; 136 keypad,row = <1>; 142 keypad,row = <1>; [all …]
|
A D | s5pv210-smdkv210.dts | 65 &keypad { 80 keypad,row = <0>; 86 keypad,row = <0>; 92 keypad,row = <0>; 98 keypad,row = <0>; 104 keypad,row = <0 111 keypad,row = <1>; 116 keypad,row = <1>; 122 keypad,row = <1>; 128 keypad,row = <1>; [all …]
|
A D | s3c64xx-pinctrl.dtsi | 448 keypad_col0_0: keypad-col0-0 { 454 keypad_col1_0: keypad-col1-0 { 460 keypad_col2_0: keypad-col2-0 { 466 keypad_col3_0: keypad-col3-0 { 472 keypad_col4_0: keypad-col4-0 { 478 keypad_col5_0: keypad-col5-0 { 484 keypad_col6_0: keypad-col6-0 { 490 keypad_col7_0: keypad-col7-0 { 496 keypad_col0_1: keypad-col0-1 { 502 keypad_col1_1: keypad-col1-1 { [all …]
|
A D | s5pv210-aquila.dts | 270 &keypad { 281 keypad,row = <0>; 282 keypad,column = <1>; 287 keypad,row = <0>; 288 keypad,column = <2>; 293 keypad,row = <1>; 294 keypad,column = <1>; 299 keypad,row = <1>; 300 keypad,column = <2>; 305 keypad,row = <2>; [all …]
|
/linux/drivers/auxdisplay/ |
A D | ht16k33.c | 403 input_sync(keypad->dev); in ht16k33_keypad_scan() 404 memcpy(keypad->last_key_state, new_state, sizeof(u16) * keypad->cols); in ht16k33_keypad_scan() 414 wait_event_timeout(keypad->wait, keypad->stopped, in ht16k33_keypad_irq_thread() 416 if (keypad->stopped) in ht16k33_keypad_irq_thread() 438 keypad->stopped = true; in ht16k33_keypad_stop() 440 wake_up(&keypad->wait); in ht16k33_keypad_stop() 528 if (!keypad->dev) in ht16k33_keypad_probe() 531 input_set_drvdata(keypad->dev, keypad); in ht16k33_keypad_probe() 558 keypad->rows = rows; in ht16k33_keypad_probe() 559 keypad->cols = cols; in ht16k33_keypad_probe() [all …]
|