Lines Matching refs:guillemot

47 struct guillemot {
104 struct guillemot *guillemot = gameport_get_drvdata(gameport);
105 struct input_dev *dev = guillemot->dev;
109 guillemot->reads++;
111 if (guillemot_read_packet(guillemot->gameport, data) != GUILLEMOT_MAX_LENGTH * 8 ||
113 guillemot->bads++;
116 for (i = 0; i < 6 && guillemot->type->abs[i] >= 0; i++)
117 input_report_abs(dev, guillemot->type->abs[i], data[i + 5]);
119 if (guillemot->type->hat) {
124 for (i = 0; i < 16 && guillemot->type->btn[i] >= 0; i++)
125 input_report_key(dev, guillemot->type->btn[i], (data[2 + (i >> 3)] >> (i & 7)) & 1);
137 struct guillemot *guillemot = input_get_drvdata(dev);
139 gameport_start_polling(guillemot->gameport);
149 struct guillemot *guillemot = input_get_drvdata(dev);
151 gameport_stop_polling(guillemot->gameport);
160 struct guillemot *guillemot;
166 guillemot = kzalloc(sizeof(struct guillemot), GFP_KERNEL);
168 if (!guillemot || !input_dev) {
173 guillemot->gameport = gameport;
174 guillemot->dev = input_dev;
176 gameport_set_drvdata(gameport, guillemot);
194 printk(KERN_WARNING "guillemot.c: Unknown joystick on %s. [ %02x%02x:%04x, ver %d.%02d ]\n",
203 snprintf(guillemot->phys, sizeof(guillemot->phys), "%s/input0", gameport->phys);
204 guillemot->type = guillemot_type + i;
207 input_dev->phys = guillemot->phys;
214 input_set_drvdata(input_dev, guillemot);
221 for (i = 0; (t = guillemot->type->abs[i]) >= 0; i++)
224 if (guillemot->type->hat) {
229 for (i = 0; (t = guillemot->type->btn[i]) >= 0; i++)
232 err = input_register_device(guillemot->dev);
241 kfree(guillemot);
247 struct guillemot *guillemot = gameport_get_drvdata(gameport);
249 printk(KERN_INFO "guillemot.c: Failed %d reads out of %d on %s\n", guillemot->reads, guillemot->bads, guillemot->phys);
250 input_unregister_device(guillemot->dev);
252 kfree(guillemot);
257 .name = "guillemot",