Lines Matching refs:omap_kp

51 struct omap_kp {  struct
68 static void set_col_gpio_val(struct omap_kp *omap_kp, u8 value) in set_col_gpio_val() argument
72 for (col = 0; col < omap_kp->cols; col++) in set_col_gpio_val()
76 static u8 get_row_gpio_val(struct omap_kp *omap_kp) in get_row_gpio_val() argument
81 for (row = 0; row < omap_kp->rows; row++) { in get_row_gpio_val()
107 static void omap_kp_scan_keypad(struct omap_kp *omap_kp, unsigned char *state) in omap_kp_scan_keypad() argument
116 for (col = 0; col < omap_kp->cols; col++) { in omap_kp_scan_keypad()
120 udelay(omap_kp->delay); in omap_kp_scan_keypad()
131 struct omap_kp *omap_kp_data = (struct omap_kp *) data; in omap_kp_tasklet()
203 struct omap_kp *omap_kp = dev_get_drvdata(dev); in omap_kp_enable_store() local
215 enable_irq(omap_kp->irq); in omap_kp_enable_store()
217 disable_irq(omap_kp->irq); in omap_kp_enable_store()
248 struct omap_kp *omap_kp; in omap_kp_probe() local
262 omap_kp = kzalloc(sizeof(struct omap_kp) + in omap_kp_probe()
265 if (!omap_kp || !input_dev) { in omap_kp_probe()
266 kfree(omap_kp); in omap_kp_probe()
271 platform_set_drvdata(pdev, omap_kp); in omap_kp_probe()
273 omap_kp->input = input_dev; in omap_kp_probe()
279 omap_kp->delay = pdata->delay; in omap_kp_probe()
286 omap_kp->rows = pdata->rows; in omap_kp_probe()
287 omap_kp->cols = pdata->cols; in omap_kp_probe()
292 setup_timer(&omap_kp->timer, omap_kp_timer, (unsigned long)omap_kp); in omap_kp_probe()
296 kp_tasklet.data = (unsigned long) omap_kp; in omap_kp_probe()
317 omap_kp->keymap, input_dev); in omap_kp_probe()
321 ret = input_register_device(omap_kp->input); in omap_kp_probe()
331 omap_kp_scan_keypad(omap_kp, keypad_state); in omap_kp_probe()
332 omap_kp->irq = platform_get_irq(pdev, 0); in omap_kp_probe()
333 if (omap_kp->irq >= 0) { in omap_kp_probe()
334 if (request_irq(omap_kp->irq, omap_kp_interrupt, 0, in omap_kp_probe()
335 "omap-keypad", omap_kp) < 0) in omap_kp_probe()
343 input_unregister_device(omap_kp->input); in omap_kp_probe()
353 kfree(omap_kp); in omap_kp_probe()
361 struct omap_kp *omap_kp = platform_get_drvdata(pdev); in omap_kp_remove() local
366 free_irq(omap_kp->irq, omap_kp); in omap_kp_remove()
368 del_timer_sync(&omap_kp->timer); in omap_kp_remove()
372 input_unregister_device(omap_kp->input); in omap_kp_remove()
374 kfree(omap_kp); in omap_kp_remove()