Lines Matching refs:adi_get_bits
180 * adi_get_bits() gathers bits from the data packet.
183 static inline int adi_get_bits(struct adi *adi, int count)
204 if (adi->ret < adi->length || adi->id != (adi_get_bits(adi, 4) | (adi_get_bits(adi, 4) << 4)))
208 input_report_abs(dev, *abs++, adi_get_bits(adi, 10));
211 input_report_abs(dev, *abs++, adi_get_bits(adi, 8));
215 t = adi_get_bits(adi, 4);
219 input_report_key(dev, *key++, adi_get_bits(adi, 1));
223 if ((t = adi_get_bits(adi, 4)) > 8) t = 0;
229 input_report_key(dev, *key++, adi_get_bits(adi, 1));
318 if (adi->ret < (t = adi_get_bits(adi, 10))) {
323 adi->id = adi_get_bits(adi, 4) | (adi_get_bits(adi, 4) << 4);
325 if ((t = adi_get_bits(adi, 4)) & ADI_FLAG_HAT) adi->hats++;
327 adi->length = adi_get_bits(adi, 10);
335 adi->axes8 = adi_get_bits(adi, 4);
336 adi->buttons = adi_get_bits(adi, 6);
338 if (adi_get_bits(adi, 6) != 8 && adi->hats) {
344 adi->buttons += adi_get_bits(adi, 6);
345 adi->hats += adi_get_bits(adi, 4);
347 i = adi_get_bits(adi, 4);
354 t = adi_get_bits(adi, 4);
357 adi->cname[i] = adi_get_bits(adi, 8);
475 adi_move_bits(port, adi_get_bits(port->adi, 10));