Symbol: adi
arch/sparc/include/asm/mman.h
36
if (!current->mm->context.adi) {
arch/sparc/include/asm/mman.h
39
current->mm->context.adi = true;
arch/sparc/include/asm/mmu_64.h
115
bool adi;
arch/sparc/include/asm/mmu_context_64.h
179
if (current && current->mm && current->mm->context.adi) {
drivers/input/joystick/adi.c
110
struct adi adi[2];
drivers/input/joystick/adi.c
121
struct adi *adi = port->adi;
drivers/input/joystick/adi.c
128
adi[i].ret = -1;
drivers/input/joystick/adi.c
144
if ((w & 0x30) < 0x30 && adi[i].ret < ADI_MAX_LENGTH && t[i] > 0) {
drivers/input/joystick/adi.c
145
adi[i].data[++adi[i].ret] = w;
drivers/input/joystick/adi.c
165
struct adi *adi = port->adi;
drivers/input/joystick/adi.c
167
adi[0].idx = adi[1].idx = 0;
drivers/input/joystick/adi.c
169
if (adi[0].ret <= 0 || adi[1].ret <= 0) return;
drivers/input/joystick/adi.c
170
if (adi[0].data[0] & 0x20 || ~adi[1].data[0] & 0x20) return;
drivers/input/joystick/adi.c
172
for (i = 1; i <= adi[1].ret; i++)
drivers/input/joystick/adi.c
173
adi[0].data[((length - 1) >> 1) + i + 1] = adi[1].data[i];
drivers/input/joystick/adi.c
175
adi[0].ret += adi[1].ret;
drivers/input/joystick/adi.c
176
adi[1].ret = -1;
drivers/input/joystick/adi.c
183
static inline int adi_get_bits(struct adi *adi, int count)
drivers/input/joystick/adi.c
187
if ((adi->idx += count) > adi->ret) return 0;
drivers/input/joystick/adi.c
189
bits |= ((adi->data[adi->idx - i] >> 5) & 1) << i;
drivers/input/joystick/adi.c
197
static int adi_decode(struct adi *adi)
drivers/input/joystick/adi.c
199
struct input_dev *dev = adi->dev;
drivers/input/joystick/adi.c
200
char *abs = adi->abs;
drivers/input/joystick/adi.c
201
short *key = adi->key;
drivers/input/joystick/adi.c
204
if (adi->ret < adi->length || adi->id != (adi_get_bits(adi, 4) | (adi_get_bits(adi, 4) << 4)))
drivers/input/joystick/adi.c
207
for (i = 0; i < adi->axes10; i++)
drivers/input/joystick/adi.c
208
input_report_abs(dev, *abs++, adi_get_bits(adi, 10));
drivers/input/joystick/adi.c
210
for (i = 0; i < adi->axes8; i++)
drivers/input/joystick/adi.c
211
input_report_abs(dev, *abs++, adi_get_bits(adi, 8));
drivers/input/joystick/adi.c
213
for (i = 0; i < adi->buttons && i < 63; i++) {
drivers/input/joystick/adi.c
214
if (i == adi->pad) {
drivers/input/joystick/adi.c
215
t = adi_get_bits(adi, 4);
drivers/input/joystick/adi.c
219
input_report_key(dev, *key++, adi_get_bits(adi, 1));
drivers/input/joystick/adi.c
222
for (i = 0; i < adi->hats; i++) {
drivers/input/joystick/adi.c
223
if ((t = adi_get_bits(adi, 4)) > 8) t = 0;
drivers/input/joystick/adi.c
228
for (i = 63; i < adi->buttons; i++)
drivers/input/joystick/adi.c
229
input_report_key(dev, *key++, adi_get_bits(adi, 1));
drivers/input/joystick/adi.c
246
adi_move_bits(port, port->adi[0].length);
drivers/input/joystick/adi.c
249
if (port->adi[i].length)
drivers/input/joystick/adi.c
250
result |= adi_decode(port->adi + i);
drivers/input/joystick/adi.c
311
static void adi_id_decode(struct adi *adi, struct adi_port *port)
drivers/input/joystick/adi.c
315
if (adi->ret < ADI_MIN_ID_LENGTH) /* Minimum ID packet length */
drivers/input/joystick/adi.c
318
if (adi->ret < (t = adi_get_bits(adi, 10))) {
drivers/input/joystick/adi.c
319
printk(KERN_WARNING "adi: Short ID packet: reported: %d != read: %d\n", t, adi->ret);
drivers/input/joystick/adi.c
323
adi->id = adi_get_bits(adi, 4) | (adi_get_bits(adi, 4) << 4);
drivers/input/joystick/adi.c
325
if ((t = adi_get_bits(adi, 4)) & ADI_FLAG_HAT) adi->hats++;
drivers/input/joystick/adi.c
327
adi->length = adi_get_bits(adi, 10);
drivers/input/joystick/adi.c
329
if (adi->length >= ADI_MAX_LENGTH || adi->length < ADI_MIN_LENGTH) {
drivers/input/joystick/adi.c
330
printk(KERN_WARNING "adi: Bad data packet length (%d).\n", adi->length);
drivers/input/joystick/adi.c
331
adi->length = 0;
drivers/input/joystick/adi.c
335
adi->axes8 = adi_get_bits(adi, 4);
drivers/input/joystick/adi.c
336
adi->buttons = adi_get_bits(adi, 6);
drivers/input/joystick/adi.c
338
if (adi_get_bits(adi, 6) != 8 && adi->hats) {
drivers/input/joystick/adi.c
340
adi->length = 0;
drivers/input/joystick/adi.c
344
adi->buttons += adi_get_bits(adi, 6);
drivers/input/joystick/adi.c
345
adi->hats += adi_get_bits(adi, 4);
drivers/input/joystick/adi.c
347
i = adi_get_bits(adi, 4);
drivers/input/joystick/adi.c
350
adi->axes10 = adi->axes8 - i;
drivers/input/joystick/adi.c
351
adi->axes8 = i;
drivers/input/joystick/adi.c
354
t = adi_get_bits(adi, 4);
drivers/input/joystick/adi.c
357
adi->cname[i] = adi_get_bits(adi, 8);
drivers/input/joystick/adi.c
358
adi->cname[i] = 0;
drivers/input/joystick/adi.c
360
t = 8 + adi->buttons + adi->axes10 * 10 + adi->axes8 * 8 + adi->hats * 4;
drivers/input/joystick/adi.c
361
if (adi->length != t && adi->length != t + (t & 1)) {
drivers/input/joystick/adi.c
362
printk(KERN_WARNING "adi: Expected length %d != data length %d\n", t, adi->length);
drivers/input/joystick/adi.c
363
adi->length = 0;
drivers/input/joystick/adi.c
367
switch (adi->id) {
drivers/input/joystick/adi.c
369
adi->pad = 4;
drivers/input/joystick/adi.c
370
adi->buttons -= 4;
drivers/input/joystick/adi.c
373
adi->pad = 0;
drivers/input/joystick/adi.c
374
adi->buttons -= 4;
drivers/input/joystick/adi.c
377
adi->pad = -1;
drivers/input/joystick/adi.c
382
static int adi_init_input(struct adi *adi, struct adi_port *port, int half)
drivers/input/joystick/adi.c
388
adi->dev = input_dev = input_allocate_device();
drivers/input/joystick/adi.c
392
t = adi->id < ADI_ID_MAX ? adi->id : ADI_ID_MAX;
drivers/input/joystick/adi.c
394
snprintf(buf, ADI_MAX_PHYS_LENGTH, adi_names[t], adi->id);
drivers/input/joystick/adi.c
395
snprintf(adi->name, ADI_MAX_NAME_LENGTH, "Logitech %s [%s]", buf, adi->cname);
drivers/input/joystick/adi.c
396
snprintf(adi->phys, ADI_MAX_PHYS_LENGTH, "%s/input%d", port->gameport->phys, half);
drivers/input/joystick/adi.c
398
adi->abs = adi_abs[t];
drivers/input/joystick/adi.c
399
adi->key = adi_key[t];
drivers/input/joystick/adi.c
401
input_dev->name = adi->name;
drivers/input/joystick/adi.c
402
input_dev->phys = adi->phys;
drivers/input/joystick/adi.c
405
input_dev->id.product = adi->id;
drivers/input/joystick/adi.c
416
for (i = 0; i < adi->axes10 + adi->axes8 + (adi->hats + (adi->pad != -1)) * 2; i++)
drivers/input/joystick/adi.c
417
set_bit(adi->abs[i], input_dev->absbit);
drivers/input/joystick/adi.c
419
for (i = 0; i < adi->buttons; i++)
drivers/input/joystick/adi.c
420
set_bit(adi->key[i], input_dev->keybit);
drivers/input/joystick/adi.c
425
static void adi_init_center(struct adi *adi)
drivers/input/joystick/adi.c
429
if (!adi->length)
drivers/input/joystick/adi.c
432
for (i = 0; i < adi->axes10 + adi->axes8 + (adi->hats + (adi->pad != -1)) * 2; i++) {
drivers/input/joystick/adi.c
434
t = adi->abs[i];
drivers/input/joystick/adi.c
435
x = input_abs_get_val(adi->dev, t);
drivers/input/joystick/adi.c
437
if (t == ABS_THROTTLE || t == ABS_RUDDER || adi->id == ADI_ID_WGPE)
drivers/input/joystick/adi.c
438
x = i < adi->axes10 ? 512 : 128;
drivers/input/joystick/adi.c
440
if (i < adi->axes10)
drivers/input/joystick/adi.c
441
input_set_abs_params(adi->dev, t, 64, x * 2 - 64, 2, 16);
drivers/input/joystick/adi.c
442
else if (i < adi->axes10 + adi->axes8)
drivers/input/joystick/adi.c
443
input_set_abs_params(adi->dev, t, 48, x * 2 - 48, 1, 16);
drivers/input/joystick/adi.c
445
input_set_abs_params(adi->dev, t, -1, 1, 0, 0);
drivers/input/joystick/adi.c
474
if (port->adi[0].ret >= ADI_MIN_LEN_LENGTH)
drivers/input/joystick/adi.c
475
adi_move_bits(port, adi_get_bits(port->adi, 10));
drivers/input/joystick/adi.c
478
adi_id_decode(port->adi + i, port);
drivers/input/joystick/adi.c
480
if (!port->adi[i].length)
drivers/input/joystick/adi.c
483
err = adi_init_input(port->adi + i, port, i);
drivers/input/joystick/adi.c
488
if (!port->adi[0].length && !port->adi[1].length) {
drivers/input/joystick/adi.c
503
if (port->adi[i].length > 0) {
drivers/input/joystick/adi.c
504
adi_init_center(port->adi + i);
drivers/input/joystick/adi.c
505
err = input_register_device(port->adi[i].dev);
drivers/input/joystick/adi.c
513
if (port->adi[i].length > 0) {
drivers/input/joystick/adi.c
514
input_unregister_device(port->adi[i].dev);
drivers/input/joystick/adi.c
515
port->adi[i].dev = NULL;
drivers/input/joystick/adi.c
519
input_free_device(port->adi[i].dev);
drivers/input/joystick/adi.c
532
if (port->adi[i].length > 0)
drivers/input/joystick/adi.c
533
input_unregister_device(port->adi[i].dev);
drivers/pinctrl/renesas/pfc-r8a7791.c
5409
SH_PFC_FUNCTION(adi),