Lines Matching defs:gameport
34 #include <linux/gameport.h>
68 struct gameport *gameport;
85 static int guillemot_read_packet(struct gameport *gameport, u8 *data)
96 t = gameport_time(gameport, GUILLEMOT_MAX_START);
97 s = gameport_time(gameport, GUILLEMOT_MAX_STROBE);
100 gameport_trigger(gameport);
101 v = gameport_read(gameport);
105 u = v; v = gameport_read(gameport);
122 static void guillemot_poll(struct gameport *gameport)
124 struct guillemot *guillemot = gameport_get_drvdata(gameport);
131 if (guillemot_read_packet(guillemot->gameport, data) != GUILLEMOT_MAX_LENGTH * 8 ||
159 gameport_start_polling(guillemot->gameport);
171 gameport_stop_polling(guillemot->gameport);
178 static int guillemot_connect(struct gameport *gameport, struct gameport_driver *drv)
193 guillemot->gameport = gameport;
196 gameport_set_drvdata(gameport, guillemot);
198 err = gameport_open(gameport, drv, GAMEPORT_MODE_RAW);
202 i = guillemot_read_packet(gameport, data);
215 gameport->phys, data[12], data[13], data[11], data[14], data[15]);
220 gameport_set_poll_handler(gameport, guillemot_poll);
221 gameport_set_poll_interval(gameport, 20);
223 snprintf(guillemot->phys, sizeof(guillemot->phys), "%s/input0", gameport->phys);
232 input_dev->dev.parent = &gameport->dev;
258 fail2: gameport_close(gameport);
259 fail1: gameport_set_drvdata(gameport, NULL);
265 static void guillemot_disconnect(struct gameport *gameport)
267 struct guillemot *guillemot = gameport_get_drvdata(gameport);
271 gameport_close(gameport);