Home
last modified time | relevance | path

Searched refs:keypad (Results 1 – 25 of 25) sorted by relevance

/drivers/input/keyboard/
Dep93xx_keypad.c86 struct ep93xx_keypad *keypad = dev_id; in ep93xx_keypad_irq_handler() local
87 struct input_dev *input_dev = keypad->input_dev; in ep93xx_keypad_irq_handler()
91 status = __raw_readl(keypad->mmio_base + KEY_REG); in ep93xx_keypad_irq_handler()
94 key1 = keypad->keycodes[keycode]; in ep93xx_keypad_irq_handler()
97 key2 = keypad->keycodes[keycode]; in ep93xx_keypad_irq_handler()
100 if (keypad->key1 && key1 != keypad->key1 && key2 != keypad->key1) in ep93xx_keypad_irq_handler()
101 input_report_key(input_dev, keypad->key1, 0); in ep93xx_keypad_irq_handler()
103 if (keypad->key2 && key1 != keypad->key2 && key2 != keypad->key2) in ep93xx_keypad_irq_handler()
104 input_report_key(input_dev, keypad->key2, 0); in ep93xx_keypad_irq_handler()
109 keypad->key1 = key1; in ep93xx_keypad_irq_handler()
[all …]
Dimx_keypad.c82 static void imx_keypad_scan_matrix(struct imx_keypad *keypad, in imx_keypad_scan_matrix() argument
89 if ((keypad->cols_en_mask & (1 << col)) == 0) in imx_keypad_scan_matrix()
97 reg_val = readw(keypad->mmio_base + KPDR); in imx_keypad_scan_matrix()
99 writew(reg_val, keypad->mmio_base + KPDR); in imx_keypad_scan_matrix()
101 reg_val = readw(keypad->mmio_base + KPCR); in imx_keypad_scan_matrix()
102 reg_val &= ~((keypad->cols_en_mask & 0xff) << 8); in imx_keypad_scan_matrix()
103 writew(reg_val, keypad->mmio_base + KPCR); in imx_keypad_scan_matrix()
107 reg_val = readw(keypad->mmio_base + KPCR); in imx_keypad_scan_matrix()
108 reg_val |= (keypad->cols_en_mask & 0xff) << 8; in imx_keypad_scan_matrix()
109 writew(reg_val, keypad->mmio_base + KPCR); in imx_keypad_scan_matrix()
[all …]
Dsamsung-keypad.c83 static void samsung_keypad_scan(struct samsung_keypad *keypad, in samsung_keypad_scan() argument
89 for (col = 0; col < keypad->cols; col++) { in samsung_keypad_scan()
90 if (keypad->type == KEYPAD_TYPE_S5PV210) { in samsung_keypad_scan()
98 writel(val, keypad->base + SAMSUNG_KEYIFCOL); in samsung_keypad_scan()
101 val = readl(keypad->base + SAMSUNG_KEYIFROW); in samsung_keypad_scan()
102 row_state[col] = ~val & ((1 << keypad->rows) - 1); in samsung_keypad_scan()
106 writel(0, keypad->base + SAMSUNG_KEYIFCOL); in samsung_keypad_scan()
109 static bool samsung_keypad_report(struct samsung_keypad *keypad, in samsung_keypad_report() argument
112 struct input_dev *input_dev = keypad->input_dev; in samsung_keypad_report()
119 for (col = 0; col < keypad->cols; col++) { in samsung_keypad_report()
[all …]
Dnomadik-ske-keypad.c74 static void ske_keypad_set_bits(struct ske_keypad *keypad, u16 addr, in ske_keypad_set_bits() argument
79 spin_lock(&keypad->ske_keypad_lock); in ske_keypad_set_bits()
81 ret = readl(keypad->reg_base + addr); in ske_keypad_set_bits()
84 writel(ret, keypad->reg_base + addr); in ske_keypad_set_bits()
86 spin_unlock(&keypad->ske_keypad_lock); in ske_keypad_set_bits()
94 static int __init ske_keypad_chip_init(struct ske_keypad *keypad) in ske_keypad_chip_init() argument
97 int timeout = keypad->board->debounce_ms; in ske_keypad_chip_init()
100 while ((readl(keypad->reg_base + SKE_RIS) != 0x00000000) && timeout--) in ske_keypad_chip_init()
111 spin_lock(&keypad->ske_keypad_lock); in ske_keypad_chip_init()
112 value = readl(keypad->reg_base + SKE_DBCR); in ske_keypad_chip_init()
[all …]
Dpxa27x_keypad.c93 #define keypad_readl(off) __raw_readl(keypad->mmio_base + (off))
94 #define keypad_writel(off, v) __raw_writel((v), keypad->mmio_base + (off))
121 static int pxa27x_keypad_matrix_key_parse_dt(struct pxa27x_keypad *keypad, in pxa27x_keypad_matrix_key_parse_dt() argument
124 struct input_dev *input_dev = keypad->input_dev; in pxa27x_keypad_matrix_key_parse_dt()
144 keypad->keycodes, input_dev); in pxa27x_keypad_matrix_key_parse_dt()
151 static int pxa27x_keypad_direct_key_parse_dt(struct pxa27x_keypad *keypad, in pxa27x_keypad_direct_key_parse_dt() argument
154 struct input_dev *input_dev = keypad->input_dev; in pxa27x_keypad_direct_key_parse_dt()
204 keypad->keycodes[MAX_MATRIX_KEY_NUM + i] = code; in pxa27x_keypad_direct_key_parse_dt()
211 static int pxa27x_keypad_rotary_parse_dt(struct pxa27x_keypad *keypad, in pxa27x_keypad_rotary_parse_dt() argument
220 struct input_dev *input_dev = keypad->input_dev; in pxa27x_keypad_rotary_parse_dt()
[all …]
Dmatrix_keypad.c89 static void enable_row_irqs(struct matrix_keypad *keypad) in enable_row_irqs() argument
91 const struct matrix_keypad_platform_data *pdata = keypad->pdata; in enable_row_irqs()
102 static void disable_row_irqs(struct matrix_keypad *keypad) in disable_row_irqs() argument
104 const struct matrix_keypad_platform_data *pdata = keypad->pdata; in disable_row_irqs()
120 struct matrix_keypad *keypad = in matrix_keypad_scan() local
122 struct input_dev *input_dev = keypad->input_dev; in matrix_keypad_scan()
124 const struct matrix_keypad_platform_data *pdata = keypad->pdata; in matrix_keypad_scan()
148 bits_changed = keypad->last_key_state[col] ^ new_state[col]; in matrix_keypad_scan()
156 code = MATRIX_SCAN_CODE(row, col, keypad->row_shift); in matrix_keypad_scan()
165 memcpy(keypad->last_key_state, new_state, sizeof(new_state)); in matrix_keypad_scan()
[all …]
Dnspire-keypad.c55 struct nspire_keypad *keypad = dev_id; in nspire_keypad_irq() local
56 struct input_dev *input = keypad->input; in nspire_keypad_irq()
64 int_sts = readl(keypad->reg_base + KEYPAD_INT) & keypad->int_mask; in nspire_keypad_irq()
68 memcpy_fromio(state, keypad->reg_base + KEYPAD_DATA, sizeof(state)); in nspire_keypad_irq()
72 if (keypad->active_low) in nspire_keypad_irq()
75 changed = bits ^ keypad->state[row]; in nspire_keypad_irq()
79 keypad->state[row] = bits; in nspire_keypad_irq()
85 code = MATRIX_SCAN_CODE(row, col, keypad->row_shift); in nspire_keypad_irq()
94 writel(0x3, keypad->reg_base + KEYPAD_INT); in nspire_keypad_irq()
99 static int nspire_keypad_chip_init(struct nspire_keypad *keypad) in nspire_keypad_chip_init() argument
[all …]
Dw90p910_keypad.c57 static void w90p910_keypad_scan_matrix(struct w90p910_keypad *keypad, in w90p910_keypad_scan_matrix() argument
60 struct input_dev *input_dev = keypad->input_dev; in w90p910_keypad_scan_matrix()
64 unsigned int key = keypad->keymap[code]; in w90p910_keypad_scan_matrix()
77 struct w90p910_keypad *keypad = dev_id; in w90p910_keypad_irq_handler() local
80 kstatus = __raw_readl(keypad->mmio_base + KPI_STATUS); in w90p910_keypad_irq_handler()
85 w90p910_keypad_scan_matrix(keypad, kstatus); in w90p910_keypad_irq_handler()
92 struct w90p910_keypad *keypad = input_get_drvdata(dev); in w90p910_keypad_open() local
93 const struct w90p910_keypad_platform_data *pdata = keypad->pdata; in w90p910_keypad_open()
97 clk_enable(keypad->clk); in w90p910_keypad_open()
99 val = __raw_readl(keypad->mmio_base + KPI_CONF); in w90p910_keypad_open()
[all …]
Dstmpe-keypad.c132 static int stmpe_keypad_read_data(struct stmpe_keypad *keypad, u8 *data) in stmpe_keypad_read_data() argument
134 const struct stmpe_keypad_variant *variant = keypad->variant; in stmpe_keypad_read_data()
135 struct stmpe *stmpe = keypad->stmpe; in stmpe_keypad_read_data()
156 struct stmpe_keypad *keypad = dev; in stmpe_keypad_irq() local
157 struct input_dev *input = keypad->input; in stmpe_keypad_irq()
158 const struct stmpe_keypad_variant *variant = keypad->variant; in stmpe_keypad_irq()
163 ret = stmpe_keypad_read_data(keypad, fifo); in stmpe_keypad_irq()
179 input_report_key(input, keypad->keymap[code], !up); in stmpe_keypad_irq()
186 static int stmpe_keypad_altfunc_init(struct stmpe_keypad *keypad) in stmpe_keypad_altfunc_init() argument
188 const struct stmpe_keypad_variant *variant = keypad->variant; in stmpe_keypad_altfunc_init()
[all …]
Dst-keyscan.c44 struct st_keyscan *keypad = dev_id; in keyscan_isr() local
45 unsigned short *keycode = keypad->input_dev->keycode; in keyscan_isr()
49 state = readl(keypad->base + KEYSCAN_MATRIX_STATE_OFF) & 0xffff; in keyscan_isr()
50 change = keypad->last_state ^ state; in keyscan_isr()
51 keypad->last_state = state; in keyscan_isr()
54 input_report_key(keypad->input_dev, in keyscan_isr()
57 input_sync(keypad->input_dev); in keyscan_isr()
62 static int keyscan_start(struct st_keyscan *keypad) in keyscan_start() argument
66 error = clk_enable(keypad->clk); in keyscan_start()
70 writel(keypad->debounce_us * (clk_get_rate(keypad->clk) / 1000000), in keyscan_start()
[all …]
Dtc3589x-keypad.c115 static int tc3589x_keypad_init_key_hardware(struct tc_keypad *keypad) in tc3589x_keypad_init_key_hardware() argument
118 struct tc3589x *tc3589x = keypad->tc3589x; in tc3589x_keypad_init_key_hardware()
119 const struct tc3589x_keypad_platform_data *board = keypad->board; in tc3589x_keypad_init_key_hardware()
192 struct tc_keypad *keypad = dev; in tc3589x_keypad_irq() local
193 struct tc3589x *tc3589x = keypad->tc3589x; in tc3589x_keypad_irq()
212 input_event(keypad->input, EV_MSC, MSC_SCAN, code); in tc3589x_keypad_irq()
213 input_report_key(keypad->input, keypad->keymap[code], !up); in tc3589x_keypad_irq()
214 input_sync(keypad->input); in tc3589x_keypad_irq()
227 static int tc3589x_keypad_enable(struct tc_keypad *keypad) in tc3589x_keypad_enable() argument
229 struct tc3589x *tc3589x = keypad->tc3589x; in tc3589x_keypad_enable()
[all …]
Dmax7359_keypad.c90 struct max7359_keypad *keypad = dev_id; in max7359_interrupt() local
91 struct input_dev *input_dev = keypad->input_dev; in max7359_interrupt()
94 val = max7359_read_reg(keypad->client, MAX7359_REG_KEYFIFO); in max7359_interrupt()
101 dev_dbg(&keypad->client->dev, in max7359_interrupt()
105 input_report_key(input_dev, keypad->keycodes[code], !release); in max7359_interrupt()
132 struct max7359_keypad *keypad = input_get_drvdata(dev); in max7359_open() local
134 max7359_take_catnap(keypad->client); in max7359_open()
141 struct max7359_keypad *keypad = input_get_drvdata(dev); in max7359_close() local
143 max7359_fall_deepsleep(keypad->client); in max7359_close()
166 struct max7359_keypad *keypad; in max7359_probe() local
[all …]
DMakefile15 obj-$(CONFIG_KEYBOARD_BCM) += bcm-keypad.o
18 obj-$(CONFIG_KEYBOARD_CLPS711X) += clps711x-keypad.o
26 obj-$(CONFIG_KEYBOARD_TCA6416) += tca6416-keypad.o
45 obj-$(CONFIG_KEYBOARD_NOMADIK) += nomadik-ske-keypad.o
46 obj-$(CONFIG_KEYBOARD_NSPIRE) += nspire-keypad.o
47 obj-$(CONFIG_KEYBOARD_OMAP) += omap-keypad.o
48 obj-$(CONFIG_KEYBOARD_OMAP4) += omap4-keypad.o
50 obj-$(CONFIG_KEYBOARD_PMIC8XXX) += pmic8xxx-keypad.o
55 obj-$(CONFIG_KEYBOARD_SAMSUNG) += samsung-keypad.o
59 obj-$(CONFIG_KEYBOARD_STMPE) += stmpe-keypad.o
[all …]
DKconfig34 This option enables support for the keypad scan matrix
161 tristate "Blackfin BF54x keypad support"
164 Say Y here if you want to use the BF54x keypad.
175 Say Y here to enable the matrix keypad on the Cirrus Logic
179 module will be called clps711x-keypad.
209 Say Y here to enable the matrix keypad on the Cirrus EP93XX.
249 This driver implements basic keypad functionality
255 are used for keypad).
268 This driver implements basic keypad functionality
269 for keys connected through TCA8418 keypad decoder.
[all …]
/drivers/auxdisplay/
Dht16k33.c81 struct ht16k33_keypad keypad; member
253 static bool ht16k33_keypad_scan(struct ht16k33_keypad *keypad) in ht16k33_keypad_scan() argument
255 const unsigned short *keycodes = keypad->dev->keycode; in ht16k33_keypad_scan()
263 rc = i2c_smbus_read_i2c_block_data(keypad->client, 0x40, in ht16k33_keypad_scan()
266 dev_err(&keypad->client->dev, in ht16k33_keypad_scan()
271 for (col = 0; col < keypad->cols; col++) { in ht16k33_keypad_scan()
275 bits_changed = keypad->last_key_state[col] ^ new_state[col]; in ht16k33_keypad_scan()
278 code = MATRIX_SCAN_CODE(row, col, keypad->row_shift); in ht16k33_keypad_scan()
279 input_event(keypad->dev, EV_MSC, MSC_SCAN, code); in ht16k33_keypad_scan()
280 input_report_key(keypad->dev, keycodes[code], in ht16k33_keypad_scan()
[all …]
DKconfig177 keypad through /dev/keypad (10, 185). This code can either be
189 driver instance only supports one parallel port, so if your keypad
205 1 = 2x16 parallel LCD, old keypad
206 2 = 2x16 serial LCD (KS-0074), new keypad
207 3 = 2x16 parallel LCD (Hantronix), no keypad
208 4 = 2x16 parallel LCD (Nexcom NSA1045) with Nexcom's keypad
209 5 = 2x40 parallel LCD (old one), with old keypad
221 This enables and configures a keypad connected to the parallel port.
225 1 : old 6 keys keypad
226 2 : new 6 keys keypad, as used on the server at www.ant-computing.com
[all …]
Dpanel.c197 } keypad; variable
1401 if (keypad.enabled && keypad_initialized) { in panel_scan_timer()
1617 if (keypad.enabled) { in panel_attach()
1649 if (keypad.enabled) { in panel_detach()
1728 keypad.enabled = (selected_keypad_type > 0); in panel_init_module()
1767 if (!lcd.enabled && !keypad.enabled) { in panel_init_module()
/drivers/staging/speakup/
Dspkguide.txt118 Note: In this guide I will refer to the numeric keypad as the keypad.
120 manual uses the term keypad instead of numeric keypad. Also I'm lazy
121 and would rather only type one word. So keypad it is. Got it? Good.
123 Most of the Speakup review keys are located on the keypad at the far
125 to work. If you toggle the numlock on, the keypad will produce numbers,
139 bootup messages, just press the keypad enter key. This key is located
140 in the bottom right corner of the keypad. Speakup will shut up and stay
144 key on the keypad, which reads the current line. This also has the
145 effect of starting Speakup talking again, so you can press keypad enter
162 the speech with keypad enter, or use any of the Speakup review keys.
[all …]
DDefaultKeyAssignments6 We have remapped the insert or zero key on the keypad to act as a
9 hit the keypad period.
/drivers/leds/trigger/
DKconfig87 from there. One use case is n810's keypad LEDs that could
89 keypad.
/drivers/mfd/
Dtwl-core.c734 if (IS_ENABLED(CONFIG_KEYBOARD_TWL4030) && pdata->keypad) { in add_children()
736 pdata->keypad, sizeof(*pdata->keypad), in add_children()
DKconfig1154 Keypad: stmpe-keypad
1494 boards, providing power management, RTC, GPIO, keypad, a
/drivers/isdn/i4l/
DKconfig115 countries. The keypad protocol is still not implemented. CD should
/drivers/isdn/hisax/
DKconfig58 bool "Disable keypad protocol option"
62 using the keypad protocol, select this option.
/drivers/input/misc/
DKconfig572 Say Y here if you want to support a keypad connected via I2C