Lines Matching refs:interact
53 struct interact { struct
130 struct interact *interact = gameport_get_drvdata(gameport); in interact_poll() local
131 struct input_dev *dev = interact->dev; in interact_poll()
135 interact->reads++; in interact_poll()
137 if (interact_read_packet(interact->gameport, interact->length, data) < interact->length) { in interact_poll()
138 interact->bads++; in interact_poll()
142 data[i] <<= INTERACT_MAX_LENGTH - interact->length; in interact_poll()
144 switch (interact->type) { in interact_poll()
185 struct interact *interact = input_get_drvdata(dev); in interact_open() local
187 gameport_start_polling(interact->gameport); in interact_open()
197 struct interact *interact = input_get_drvdata(dev); in interact_close() local
199 gameport_stop_polling(interact->gameport); in interact_close()
208 struct interact *interact; in interact_connect() local
214 interact = kzalloc(sizeof(struct interact), GFP_KERNEL); in interact_connect()
216 if (!interact || !input_dev) { in interact_connect()
221 interact->gameport = gameport; in interact_connect()
222 interact->dev = input_dev; in interact_connect()
224 gameport_set_drvdata(gameport, interact); in interact_connect()
251 snprintf(interact->phys, sizeof(interact->phys), "%s/input0", gameport->phys); in interact_connect()
253 interact->type = i; in interact_connect()
254 interact->length = interact_type[i].length; in interact_connect()
257 input_dev->phys = interact->phys; in interact_connect()
264 input_set_drvdata(input_dev, interact); in interact_connect()
271 for (i = 0; (t = interact_type[interact->type].abs[i]) >= 0; i++) { in interact_connect()
272 if (i < interact_type[interact->type].b8) in interact_connect()
278 for (i = 0; (t = interact_type[interact->type].btn[i]) >= 0; i++) in interact_connect()
281 err = input_register_device(interact->dev); in interact_connect()
290 kfree(interact); in interact_connect()
296 struct interact *interact = gameport_get_drvdata(gameport); in interact_disconnect() local
298 input_unregister_device(interact->dev); in interact_disconnect()
301 kfree(interact); in interact_disconnect()