Lines Matching refs:wm
106 static void wm97xx_acc_pen_up(struct wm97xx *wm) in wm97xx_acc_pen_up() argument
114 static void wm97xx_acc_pen_up(struct wm97xx *wm) in wm97xx_acc_pen_up() argument
125 static int wm97xx_acc_pen_down(struct wm97xx *wm) in wm97xx_acc_pen_down() argument
155 dev_dbg(wm->dev, "Raw coordinates: x=%x, y=%x, p=%x\n", in wm97xx_acc_pen_down()
166 input_report_abs(wm->input_dev, ABS_X, x & 0xfff); in wm97xx_acc_pen_down()
167 input_report_abs(wm->input_dev, ABS_Y, y & 0xfff); in wm97xx_acc_pen_down()
168 input_report_abs(wm->input_dev, ABS_PRESSURE, p & 0xfff); in wm97xx_acc_pen_down()
169 input_report_key(wm->input_dev, BTN_TOUCH, (p != 0)); in wm97xx_acc_pen_down()
170 input_sync(wm->input_dev); in wm97xx_acc_pen_down()
177 static int wm97xx_acc_startup(struct wm97xx *wm) in wm97xx_acc_startup() argument
182 if (wm->ac97 == NULL) in wm97xx_acc_startup()
187 if (wm->id != cinfo[idx].id) in wm97xx_acc_startup()
193 wm->acc_rate = cinfo[sp_idx].code; in wm97xx_acc_startup()
194 wm->acc_slot = ac97_touch_slot; in wm97xx_acc_startup()
195 dev_info(wm->dev, in wm97xx_acc_startup()
205 wm->variant = WM97xx_WM1613; in wm97xx_acc_startup()
220 wm->pen_irq = gpio_to_irq(irq); in wm97xx_acc_startup()
221 irq_set_irq_type(wm->pen_irq, IRQ_TYPE_EDGE_BOTH); in wm97xx_acc_startup()
227 switch (wm->id) { in wm97xx_acc_startup()
233 wm97xx_config_gpio(wm, WM97XX_GPIO_13, WM97XX_GPIO_IN, in wm97xx_acc_startup()
237 wm97xx_config_gpio(wm, WM97XX_GPIO_2, WM97XX_GPIO_OUT, in wm97xx_acc_startup()
243 dev_err(wm->dev, in wm97xx_acc_startup()
254 static void wm97xx_acc_shutdown(struct wm97xx *wm) in wm97xx_acc_shutdown() argument
260 wm->pen_irq = 0; in wm97xx_acc_shutdown()
264 static void wm97xx_irq_enable(struct wm97xx *wm, int enable) in wm97xx_irq_enable() argument
267 enable_irq(wm->pen_irq); in wm97xx_irq_enable()
269 disable_irq_nosync(wm->pen_irq); in wm97xx_irq_enable()
284 struct wm97xx *wm = platform_get_drvdata(pdev); in mainstone_wm97xx_probe() local
286 return wm97xx_register_mach_ops(wm, &mainstone_mach_ops); in mainstone_wm97xx_probe()
291 struct wm97xx *wm = platform_get_drvdata(pdev); in mainstone_wm97xx_remove() local
293 wm97xx_unregister_mach_ops(wm); in mainstone_wm97xx_remove()