Symbol: locomokbd
drivers/input/keyboard/locomokbd.c
112
static void locomokbd_scankeyboard(struct locomokbd *locomokbd)
drivers/input/keyboard/locomokbd.c
116
unsigned long membase = locomokbd->base;
drivers/input/keyboard/locomokbd.c
118
guard(spinlock_irqsave)(&locomokbd->lock);
drivers/input/keyboard/locomokbd.c
134
key = locomokbd->keycode[scancode];
drivers/input/keyboard/locomokbd.c
136
input_report_key(locomokbd->input, key, pressed);
drivers/input/keyboard/locomokbd.c
147
locomokbd->suspend_jiffies + HZ))
drivers/input/keyboard/locomokbd.c
149
if (locomokbd->count_cancel++
drivers/input/keyboard/locomokbd.c
152
input_event(locomokbd->input, EV_PWR,
drivers/input/keyboard/locomokbd.c
154
locomokbd->suspend_jiffies = jiffies;
drivers/input/keyboard/locomokbd.c
156
locomokbd->count_cancel = 0;
drivers/input/keyboard/locomokbd.c
162
input_sync(locomokbd->input);
drivers/input/keyboard/locomokbd.c
166
mod_timer(&locomokbd->timer, jiffies + SCAN_INTERVAL);
drivers/input/keyboard/locomokbd.c
168
locomokbd->count_cancel = 0;
drivers/input/keyboard/locomokbd.c
176
struct locomokbd *locomokbd = dev_id;
drivers/input/keyboard/locomokbd.c
179
r = locomo_readl(locomokbd->base + LOCOMO_KIC);
drivers/input/keyboard/locomokbd.c
183
locomo_writel(r & ~0x0100, locomokbd->base + LOCOMO_KIC); /* Ack */
drivers/input/keyboard/locomokbd.c
188
locomokbd_scankeyboard(locomokbd);
drivers/input/keyboard/locomokbd.c
197
struct locomokbd *locomokbd = timer_container_of(locomokbd, t, timer);
drivers/input/keyboard/locomokbd.c
199
locomokbd_scankeyboard(locomokbd);
drivers/input/keyboard/locomokbd.c
204
struct locomokbd *locomokbd = input_get_drvdata(dev);
drivers/input/keyboard/locomokbd.c
207
r = locomo_readl(locomokbd->base + LOCOMO_KIC) | 0x0010;
drivers/input/keyboard/locomokbd.c
208
locomo_writel(r, locomokbd->base + LOCOMO_KIC);
drivers/input/keyboard/locomokbd.c
214
struct locomokbd *locomokbd = input_get_drvdata(dev);
drivers/input/keyboard/locomokbd.c
217
r = locomo_readl(locomokbd->base + LOCOMO_KIC) & ~0x0010;
drivers/input/keyboard/locomokbd.c
218
locomo_writel(r, locomokbd->base + LOCOMO_KIC);
drivers/input/keyboard/locomokbd.c
223
struct locomokbd *locomokbd;
drivers/input/keyboard/locomokbd.c
227
locomokbd = kzalloc_obj(*locomokbd);
drivers/input/keyboard/locomokbd.c
229
if (!locomokbd || !input_dev) {
drivers/input/keyboard/locomokbd.c
243
locomo_set_drvdata(dev, locomokbd);
drivers/input/keyboard/locomokbd.c
245
locomokbd->base = (unsigned long) dev->mapbase;
drivers/input/keyboard/locomokbd.c
247
spin_lock_init(&locomokbd->lock);
drivers/input/keyboard/locomokbd.c
249
timer_setup(&locomokbd->timer, locomokbd_timer_callback, 0);
drivers/input/keyboard/locomokbd.c
251
locomokbd->suspend_jiffies = jiffies;
drivers/input/keyboard/locomokbd.c
253
locomokbd->input = input_dev;
drivers/input/keyboard/locomokbd.c
254
strcpy(locomokbd->phys, "locomokbd/input0");
drivers/input/keyboard/locomokbd.c
257
input_dev->phys = locomokbd->phys;
drivers/input/keyboard/locomokbd.c
268
input_dev->keycode = locomokbd->keycode;
drivers/input/keyboard/locomokbd.c
272
input_set_drvdata(input_dev, locomokbd);
drivers/input/keyboard/locomokbd.c
274
memcpy(locomokbd->keycode, locomokbd_keycode, sizeof(locomokbd->keycode));
drivers/input/keyboard/locomokbd.c
276
set_bit(locomokbd->keycode[i], input_dev->keybit);
drivers/input/keyboard/locomokbd.c
280
err = request_irq(dev->irq[0], locomokbd_interrupt, 0, "locomokbd", locomokbd);
drivers/input/keyboard/locomokbd.c
286
err = input_register_device(locomokbd->input);
drivers/input/keyboard/locomokbd.c
293
free_irq(dev->irq[0], locomokbd);
drivers/input/keyboard/locomokbd.c
299
kfree(locomokbd);
drivers/input/keyboard/locomokbd.c
306
struct locomokbd *locomokbd = locomo_get_drvdata(dev);
drivers/input/keyboard/locomokbd.c
308
free_irq(dev->irq[0], locomokbd);
drivers/input/keyboard/locomokbd.c
310
timer_shutdown_sync(&locomokbd->timer);
drivers/input/keyboard/locomokbd.c
312
input_unregister_device(locomokbd->input);
drivers/input/keyboard/locomokbd.c
317
kfree(locomokbd);