Lines Matching refs:grip
38 struct grip {
168 struct grip *grip = gameport_get_drvdata(gameport);
175 dev = grip->dev[i];
179 grip->reads++;
181 switch (grip->mode[i]) {
185 if (grip_gpp_read_packet(grip->gameport, (i << 1) + 4, data)) {
186 grip->bads++;
201 if (grip_xt_read_packet(grip->gameport, (i << 1) + 4, data)) {
202 grip->bads++;
220 if (grip_xt_read_packet(grip->gameport, (i << 1) + 4, data)) {
221 grip->bads++;
242 if (grip_xt_read_packet(grip->gameport, (i << 1) + 4, data)) {
243 grip->bads++;
269 struct grip *grip = input_get_drvdata(dev);
271 gameport_start_polling(grip->gameport);
277 struct grip *grip = input_get_drvdata(dev);
279 gameport_stop_polling(grip->gameport);
284 struct grip *grip;
290 if (!(grip = kzalloc(sizeof(struct grip), GFP_KERNEL)))
293 grip->gameport = gameport;
295 gameport_set_drvdata(gameport, grip);
303 grip->mode[i] = GRIP_MODE_GPP;
308 grip->mode[i] = GRIP_MODE_BD;
312 grip->mode[i] = GRIP_MODE_XT;
315 grip->mode[i] = GRIP_MODE_DC;
320 if (!grip->mode[0] && !grip->mode[1]) {
329 if (!grip->mode[i])
332 grip->dev[i] = input_dev = input_allocate_device();
338 snprintf(grip->phys[i], sizeof(grip->phys[i]),
341 input_dev->name = grip_name[grip->mode[i]];
342 input_dev->phys = grip->phys[i];
345 input_dev->id.product = grip->mode[i];
349 input_set_drvdata(input_dev, grip);
356 for (j = 0; (t = grip_abs[grip->mode[i]][j]) >= 0; j++) {
358 if (j < grip_cen[grip->mode[i]])
360 else if (j < grip_anx[grip->mode[i]])
366 for (j = 0; (t = grip_btn[grip->mode[i]][j]) >= 0; j++)
370 err = input_register_device(grip->dev[i]);
377 fail4: input_free_device(grip->dev[i]);
379 if (grip->dev[i])
380 input_unregister_device(grip->dev[i]);
383 kfree(grip);
389 struct grip *grip = gameport_get_drvdata(gameport);
393 if (grip->dev[i])
394 input_unregister_device(grip->dev[i]);
397 kfree(grip);
402 .name = "grip",