Lines Matching refs:adi_get_bits
200 * adi_get_bits() gathers bits from the data packet.
203 static inline int adi_get_bits(struct adi *adi, int count)
224 if (adi->ret < adi->length || adi->id != (adi_get_bits(adi, 4) | (adi_get_bits(adi, 4) << 4)))
228 input_report_abs(dev, *abs++, adi_get_bits(adi, 10));
231 input_report_abs(dev, *abs++, adi_get_bits(adi, 8));
235 t = adi_get_bits(adi, 4);
239 input_report_key(dev, *key++, adi_get_bits(adi, 1));
243 if ((t = adi_get_bits(adi, 4)) > 8) t = 0;
249 input_report_key(dev, *key++, adi_get_bits(adi, 1));
338 if (adi->ret < (t = adi_get_bits(adi, 10))) {
343 adi->id = adi_get_bits(adi, 4) | (adi_get_bits(adi, 4) << 4);
345 if ((t = adi_get_bits(adi, 4)) & ADI_FLAG_HAT) adi->hats++;
347 adi->length = adi_get_bits(adi, 10);
355 adi->axes8 = adi_get_bits(adi, 4);
356 adi->buttons = adi_get_bits(adi, 6);
358 if (adi_get_bits(adi, 6) != 8 && adi->hats) {
364 adi->buttons += adi_get_bits(adi, 6);
365 adi->hats += adi_get_bits(adi, 4);
367 i = adi_get_bits(adi, 4);
374 t = adi_get_bits(adi, 4);
377 adi->cname[i] = adi_get_bits(adi, 8);
495 adi_move_bits(port, adi_get_bits(port->adi, 10));