Lines Matching refs:cobra

47 struct cobra {  struct
112 struct cobra *cobra = gameport_get_drvdata(gameport); in cobra_poll() local
117 cobra->reads++; in cobra_poll()
119 if ((r = cobra_read_packet(gameport, data)) != cobra->exists) { in cobra_poll()
120 cobra->bads++; in cobra_poll()
125 if (cobra->exists & r & (1 << i)) { in cobra_poll()
127 dev = cobra->dev[i]; in cobra_poll()
142 struct cobra *cobra = input_get_drvdata(dev); in cobra_open() local
144 gameport_start_polling(cobra->gameport); in cobra_open()
150 struct cobra *cobra = input_get_drvdata(dev); in cobra_close() local
152 gameport_stop_polling(cobra->gameport); in cobra_close()
157 struct cobra *cobra; in cobra_connect() local
163 cobra = kzalloc(sizeof(struct cobra), GFP_KERNEL); in cobra_connect()
164 if (!cobra) in cobra_connect()
167 cobra->gameport = gameport; in cobra_connect()
169 gameport_set_drvdata(gameport, cobra); in cobra_connect()
175 cobra->exists = cobra_read_packet(gameport, data); in cobra_connect()
178 if ((cobra->exists >> i) & data[i] & 1) { in cobra_connect()
181 cobra->exists &= ~(1 << i); in cobra_connect()
184 if (!cobra->exists) { in cobra_connect()
193 if (~(cobra->exists >> i) & 1) in cobra_connect()
196 cobra->dev[i] = input_dev = input_allocate_device(); in cobra_connect()
202 snprintf(cobra->phys[i], sizeof(cobra->phys[i]), in cobra_connect()
206 input_dev->phys = cobra->phys[i]; in cobra_connect()
213 input_set_drvdata(input_dev, cobra); in cobra_connect()
224 err = input_register_device(cobra->dev[i]); in cobra_connect()
231 fail4: input_free_device(cobra->dev[i]); in cobra_connect()
233 if (cobra->dev[i]) in cobra_connect()
234 input_unregister_device(cobra->dev[i]); in cobra_connect()
237 kfree(cobra); in cobra_connect()
243 struct cobra *cobra = gameport_get_drvdata(gameport); in cobra_disconnect() local
247 if ((cobra->exists >> i) & 1) in cobra_disconnect()
248 input_unregister_device(cobra->dev[i]); in cobra_disconnect()
251 kfree(cobra); in cobra_disconnect()