Lines Matching refs:gameport
38 struct gameport *gameport; member
75 static int interact_read_packet(struct gameport *gameport, int length, u32 *data) in interact_read_packet() argument
84 t = gameport_time(gameport, INTERACT_MAX_START); in interact_read_packet()
85 s = gameport_time(gameport, INTERACT_MAX_STROBE); in interact_read_packet()
88 gameport_trigger(gameport); in interact_read_packet()
89 v = gameport_read(gameport); in interact_read_packet()
93 u = v; v = gameport_read(gameport); in interact_read_packet()
112 static void interact_poll(struct gameport *gameport) in interact_poll() argument
114 struct interact *interact = gameport_get_drvdata(gameport); in interact_poll()
121 if (interact_read_packet(interact->gameport, interact->length, data) < interact->length) { in interact_poll()
171 gameport_start_polling(interact->gameport); in interact_open()
183 gameport_stop_polling(interact->gameport); in interact_close()
190 static int interact_connect(struct gameport *gameport, struct gameport_driver *drv) in interact_connect() argument
205 interact->gameport = gameport; in interact_connect()
208 gameport_set_drvdata(gameport, interact); in interact_connect()
210 err = gameport_open(gameport, drv, GAMEPORT_MODE_RAW); in interact_connect()
214 i = interact_read_packet(gameport, INTERACT_MAX_LENGTH * 2, data); in interact_connect()
227 gameport->phys, i, data[0], data[1], data[2]); in interact_connect()
232 gameport_set_poll_handler(gameport, interact_poll); in interact_connect()
233 gameport_set_poll_interval(gameport, 20); in interact_connect()
235 snprintf(interact->phys, sizeof(interact->phys), "%s/input0", gameport->phys); in interact_connect()
246 input_dev->dev.parent = &gameport->dev; in interact_connect()
271 fail2: gameport_close(gameport); in interact_connect()
272 fail1: gameport_set_drvdata(gameport, NULL); in interact_connect()
278 static void interact_disconnect(struct gameport *gameport) in interact_disconnect() argument
280 struct interact *interact = gameport_get_drvdata(gameport); in interact_disconnect()
283 gameport_close(gameport); in interact_disconnect()
284 gameport_set_drvdata(gameport, NULL); in interact_disconnect()