Lines Matching refs:gameport
55 struct gameport *gameport; member
84 static int grip_gpp_read_packet(struct gameport *gameport, int shift, unsigned int *data) in grip_gpp_read_packet() argument
91 int strobe = gameport_time(gameport, GRIP_STROBE_GPP); in grip_gpp_read_packet()
99 v = gameport_read(gameport) >> shift; in grip_gpp_read_packet()
103 u = v; v = (gameport_read(gameport) >> shift) & 3; in grip_gpp_read_packet()
124 static int grip_xt_read_packet(struct gameport *gameport, int shift, unsigned int *data) in grip_xt_read_packet() argument
132 int strobe = gameport_time(gameport, GRIP_STROBE_XT); in grip_xt_read_packet()
140 v = w = (gameport_read(gameport) >> shift) & 3; in grip_xt_read_packet()
144 u = (gameport_read(gameport) >> shift) & 3; in grip_xt_read_packet()
182 static void grip_poll(struct gameport *gameport) in grip_poll() argument
184 struct grip *grip = gameport_get_drvdata(gameport); in grip_poll()
201 if (grip_gpp_read_packet(grip->gameport, (i << 1) + 4, data)) { in grip_poll()
217 if (grip_xt_read_packet(grip->gameport, (i << 1) + 4, data)) { in grip_poll()
236 if (grip_xt_read_packet(grip->gameport, (i << 1) + 4, data)) { in grip_poll()
258 if (grip_xt_read_packet(grip->gameport, (i << 1) + 4, data)) { in grip_poll()
287 gameport_start_polling(grip->gameport); in grip_open()
295 gameport_stop_polling(grip->gameport); in grip_close()
298 static int grip_connect(struct gameport *gameport, struct gameport_driver *drv) in grip_connect() argument
309 grip->gameport = gameport; in grip_connect()
311 gameport_set_drvdata(gameport, grip); in grip_connect()
313 err = gameport_open(gameport, drv, GAMEPORT_MODE_RAW); in grip_connect()
318 if (!grip_gpp_read_packet(gameport, (i << 1) + 4, data)) { in grip_connect()
322 if (!grip_xt_read_packet(gameport, (i << 1) + 4, data)) { in grip_connect()
341 gameport_set_poll_handler(gameport, grip_poll); in grip_connect()
342 gameport_set_poll_interval(gameport, 20); in grip_connect()
355 "%s/input%d", gameport->phys, i); in grip_connect()
363 input_dev->dev.parent = &gameport->dev; in grip_connect()
397 fail2: gameport_close(gameport); in grip_connect()
398 fail1: gameport_set_drvdata(gameport, NULL); in grip_connect()
403 static void grip_disconnect(struct gameport *gameport) in grip_disconnect() argument
405 struct grip *grip = gameport_get_drvdata(gameport); in grip_disconnect()
411 gameport_close(gameport); in grip_disconnect()
412 gameport_set_drvdata(gameport, NULL); in grip_disconnect()