Lines Matching defs:gameport

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