atkbd 238 drivers/input/keyboard/atkbd.c static void (*atkbd_platform_fixup)(struct atkbd *, const void *data); atkbd 240 drivers/input/keyboard/atkbd.c static unsigned int (*atkbd_platform_scancode_fixup)(struct atkbd *, unsigned int); atkbd 249 drivers/input/keyboard/atkbd.c ssize_t (*handler)(struct atkbd *, char *)); atkbd 251 drivers/input/keyboard/atkbd.c ssize_t (*handler)(struct atkbd *, const char *, size_t)); atkbd 253 drivers/input/keyboard/atkbd.c static ssize_t atkbd_show_##_name(struct atkbd *, char *); \ atkbd 254 drivers/input/keyboard/atkbd.c static ssize_t atkbd_set_##_name(struct atkbd *, const char *, size_t); \ atkbd 276 drivers/input/keyboard/atkbd.c static ssize_t atkbd_show_##_name(struct atkbd *, char *); \ atkbd 330 drivers/input/keyboard/atkbd.c static void atkbd_calculate_xl_bit(struct atkbd *atkbd, unsigned char code) atkbd 337 drivers/input/keyboard/atkbd.c __clear_bit(i, &atkbd->xl_bit); atkbd 339 drivers/input/keyboard/atkbd.c __set_bit(i, &atkbd->xl_bit); atkbd 349 drivers/input/keyboard/atkbd.c static unsigned int atkbd_compat_scancode(struct atkbd *atkbd, unsigned int code) atkbd 351 drivers/input/keyboard/atkbd.c if (atkbd->set == 3) { atkbd 352 drivers/input/keyboard/atkbd.c if (atkbd->emul == 1) atkbd 356 drivers/input/keyboard/atkbd.c if (atkbd->emul == 1) atkbd 371 drivers/input/keyboard/atkbd.c struct atkbd *atkbd = serio_get_drvdata(serio); atkbd 372 drivers/input/keyboard/atkbd.c struct input_dev *dev = atkbd->dev; atkbd 381 drivers/input/keyboard/atkbd.c if ((flags & (SERIO_FRAME | SERIO_PARITY)) && (~flags & SERIO_TIMEOUT) && !atkbd->resend && atkbd->write) { atkbd 384 drivers/input/keyboard/atkbd.c atkbd->resend = true; atkbd 389 drivers/input/keyboard/atkbd.c atkbd->resend = false; atkbd 392 drivers/input/keyboard/atkbd.c if (unlikely(atkbd->ps2dev.flags & PS2_FLAG_ACK)) atkbd 393 drivers/input/keyboard/atkbd.c if (ps2_handle_ack(&atkbd->ps2dev, data)) atkbd 396 drivers/input/keyboard/atkbd.c if (unlikely(atkbd->ps2dev.flags & PS2_FLAG_CMD)) atkbd 397 drivers/input/keyboard/atkbd.c if (ps2_handle_response(&atkbd->ps2dev, data)) atkbd 402 drivers/input/keyboard/atkbd.c if (!atkbd->enabled) atkbd 408 drivers/input/keyboard/atkbd.c code = atkbd_platform_scancode_fixup(atkbd, code); atkbd 410 drivers/input/keyboard/atkbd.c if (atkbd->translated) { atkbd 412 drivers/input/keyboard/atkbd.c if (atkbd->emul || atkbd_need_xlate(atkbd->xl_bit, code)) { atkbd 413 drivers/input/keyboard/atkbd.c atkbd->release = code >> 7; atkbd 417 drivers/input/keyboard/atkbd.c if (!atkbd->emul) atkbd 418 drivers/input/keyboard/atkbd.c atkbd_calculate_xl_bit(atkbd, data); atkbd 423 drivers/input/keyboard/atkbd.c atkbd->enabled = false; atkbd 424 drivers/input/keyboard/atkbd.c serio_reconnect(atkbd->ps2dev.serio); atkbd 427 drivers/input/keyboard/atkbd.c atkbd->emul = 1; atkbd 430 drivers/input/keyboard/atkbd.c atkbd->emul = 2; atkbd 433 drivers/input/keyboard/atkbd.c atkbd->release = true; atkbd 444 drivers/input/keyboard/atkbd.c atkbd->err_count++; atkbd 450 drivers/input/keyboard/atkbd.c code = atkbd_compat_scancode(atkbd, code); atkbd 452 drivers/input/keyboard/atkbd.c if (atkbd->emul && --atkbd->emul) atkbd 455 drivers/input/keyboard/atkbd.c keycode = atkbd->keycode[code]; atkbd 457 drivers/input/keyboard/atkbd.c if (!(atkbd->release && test_bit(code, atkbd->force_release_mask))) atkbd 467 drivers/input/keyboard/atkbd.c atkbd->release ? "released" : "pressed", atkbd 468 drivers/input/keyboard/atkbd.c atkbd->translated ? "translated" : "raw", atkbd 469 drivers/input/keyboard/atkbd.c atkbd->set, code, serio->phys); atkbd 488 drivers/input/keyboard/atkbd.c click = !atkbd->release; atkbd 497 drivers/input/keyboard/atkbd.c if (atkbd->release) { atkbd 499 drivers/input/keyboard/atkbd.c atkbd->last = 0; atkbd 500 drivers/input/keyboard/atkbd.c } else if (!atkbd->softrepeat && test_bit(keycode, dev->key)) { atkbd 502 drivers/input/keyboard/atkbd.c value = time_before(jiffies, atkbd->time) && atkbd->last == code ? 1 : 2; atkbd 505 drivers/input/keyboard/atkbd.c atkbd->last = code; atkbd 506 drivers/input/keyboard/atkbd.c atkbd->time = jiffies + msecs_to_jiffies(dev->rep[REP_DELAY]) / 2; atkbd 512 drivers/input/keyboard/atkbd.c if (value && test_bit(code, atkbd->force_release_mask)) { atkbd 519 drivers/input/keyboard/atkbd.c if (atkbd->scroll) { atkbd 523 drivers/input/keyboard/atkbd.c atkbd->release ? -scroll : scroll); atkbd 528 drivers/input/keyboard/atkbd.c atkbd->release = false; atkbd 533 drivers/input/keyboard/atkbd.c static int atkbd_set_repeat_rate(struct atkbd *atkbd) atkbd 541 drivers/input/keyboard/atkbd.c struct input_dev *dev = atkbd->dev; atkbd 554 drivers/input/keyboard/atkbd.c return ps2_command(&atkbd->ps2dev, ¶m, ATKBD_CMD_SETREP); atkbd 557 drivers/input/keyboard/atkbd.c static int atkbd_set_leds(struct atkbd *atkbd) atkbd 559 drivers/input/keyboard/atkbd.c struct input_dev *dev = atkbd->dev; atkbd 565 drivers/input/keyboard/atkbd.c if (ps2_command(&atkbd->ps2dev, param, ATKBD_CMD_SETLEDS)) atkbd 568 drivers/input/keyboard/atkbd.c if (atkbd->extra) { atkbd 575 drivers/input/keyboard/atkbd.c if (ps2_command(&atkbd->ps2dev, param, ATKBD_CMD_EX_SETLEDS)) atkbd 590 drivers/input/keyboard/atkbd.c struct atkbd *atkbd = container_of(work, struct atkbd, event_work.work); atkbd 592 drivers/input/keyboard/atkbd.c mutex_lock(&atkbd->mutex); atkbd 594 drivers/input/keyboard/atkbd.c if (!atkbd->enabled) { atkbd 601 drivers/input/keyboard/atkbd.c schedule_delayed_work(&atkbd->event_work, atkbd 604 drivers/input/keyboard/atkbd.c if (test_and_clear_bit(ATKBD_LED_EVENT_BIT, &atkbd->event_mask)) atkbd 605 drivers/input/keyboard/atkbd.c atkbd_set_leds(atkbd); atkbd 607 drivers/input/keyboard/atkbd.c if (test_and_clear_bit(ATKBD_REP_EVENT_BIT, &atkbd->event_mask)) atkbd 608 drivers/input/keyboard/atkbd.c atkbd_set_repeat_rate(atkbd); atkbd 611 drivers/input/keyboard/atkbd.c mutex_unlock(&atkbd->mutex); atkbd 618 drivers/input/keyboard/atkbd.c static void atkbd_schedule_event_work(struct atkbd *atkbd, int event_bit) atkbd 622 drivers/input/keyboard/atkbd.c if (time_after(jiffies, atkbd->event_jiffies + delay)) atkbd 625 drivers/input/keyboard/atkbd.c atkbd->event_jiffies = jiffies; atkbd 626 drivers/input/keyboard/atkbd.c set_bit(event_bit, &atkbd->event_mask); atkbd 628 drivers/input/keyboard/atkbd.c schedule_delayed_work(&atkbd->event_work, delay); atkbd 640 drivers/input/keyboard/atkbd.c struct atkbd *atkbd = input_get_drvdata(dev); atkbd 642 drivers/input/keyboard/atkbd.c if (!atkbd->write) atkbd 648 drivers/input/keyboard/atkbd.c atkbd_schedule_event_work(atkbd, ATKBD_LED_EVENT_BIT); atkbd 652 drivers/input/keyboard/atkbd.c if (!atkbd->softrepeat) atkbd 653 drivers/input/keyboard/atkbd.c atkbd_schedule_event_work(atkbd, ATKBD_REP_EVENT_BIT); atkbd 666 drivers/input/keyboard/atkbd.c static inline void atkbd_enable(struct atkbd *atkbd) atkbd 668 drivers/input/keyboard/atkbd.c serio_pause_rx(atkbd->ps2dev.serio); atkbd 669 drivers/input/keyboard/atkbd.c atkbd->enabled = true; atkbd 670 drivers/input/keyboard/atkbd.c serio_continue_rx(atkbd->ps2dev.serio); atkbd 678 drivers/input/keyboard/atkbd.c static inline void atkbd_disable(struct atkbd *atkbd) atkbd 680 drivers/input/keyboard/atkbd.c serio_pause_rx(atkbd->ps2dev.serio); atkbd 681 drivers/input/keyboard/atkbd.c atkbd->enabled = false; atkbd 682 drivers/input/keyboard/atkbd.c serio_continue_rx(atkbd->ps2dev.serio); atkbd 685 drivers/input/keyboard/atkbd.c static int atkbd_activate(struct atkbd *atkbd) atkbd 687 drivers/input/keyboard/atkbd.c struct ps2dev *ps2dev = &atkbd->ps2dev; atkbd 708 drivers/input/keyboard/atkbd.c static void atkbd_deactivate(struct atkbd *atkbd) atkbd 710 drivers/input/keyboard/atkbd.c struct ps2dev *ps2dev = &atkbd->ps2dev; atkbd 722 drivers/input/keyboard/atkbd.c static int atkbd_probe(struct atkbd *atkbd) atkbd 724 drivers/input/keyboard/atkbd.c struct ps2dev *ps2dev = &atkbd->ps2dev; atkbd 757 drivers/input/keyboard/atkbd.c atkbd->id = 0xabba; atkbd 764 drivers/input/keyboard/atkbd.c atkbd->id = (param[0] << 8) | param[1]; atkbd 766 drivers/input/keyboard/atkbd.c if (atkbd->id == 0xaca1 && atkbd->translated) { atkbd 778 drivers/input/keyboard/atkbd.c atkbd_deactivate(atkbd); atkbd 789 drivers/input/keyboard/atkbd.c static int atkbd_select_set(struct atkbd *atkbd, int target_set, int allow_extra) atkbd 791 drivers/input/keyboard/atkbd.c struct ps2dev *ps2dev = &atkbd->ps2dev; atkbd 794 drivers/input/keyboard/atkbd.c atkbd->extra = false; atkbd 801 drivers/input/keyboard/atkbd.c if (atkbd->translated) atkbd 804 drivers/input/keyboard/atkbd.c if (atkbd->id == 0xaca1) { atkbd 813 drivers/input/keyboard/atkbd.c atkbd->extra = true; atkbd 827 drivers/input/keyboard/atkbd.c atkbd->id = param[0] << 8 | param[1]; atkbd 850 drivers/input/keyboard/atkbd.c static int atkbd_reset_state(struct atkbd *atkbd) atkbd 852 drivers/input/keyboard/atkbd.c struct ps2dev *ps2dev = &atkbd->ps2dev; atkbd 881 drivers/input/keyboard/atkbd.c struct atkbd *atkbd = serio_get_drvdata(serio); atkbd 883 drivers/input/keyboard/atkbd.c atkbd_disable(atkbd); atkbd 884 drivers/input/keyboard/atkbd.c ps2_command(&atkbd->ps2dev, NULL, ATKBD_CMD_RESET_DEF); atkbd 894 drivers/input/keyboard/atkbd.c struct atkbd *atkbd = serio_get_drvdata(serio); atkbd 898 drivers/input/keyboard/atkbd.c atkbd_disable(atkbd); atkbd 900 drivers/input/keyboard/atkbd.c input_unregister_device(atkbd->dev); atkbd 908 drivers/input/keyboard/atkbd.c cancel_delayed_work_sync(&atkbd->event_work); atkbd 912 drivers/input/keyboard/atkbd.c kfree(atkbd); atkbd 918 drivers/input/keyboard/atkbd.c static void atkbd_apply_forced_release_keylist(struct atkbd* atkbd, atkbd 924 drivers/input/keyboard/atkbd.c if (atkbd->set == 2) atkbd 926 drivers/input/keyboard/atkbd.c __set_bit(keys[i], atkbd->force_release_mask); atkbd 985 drivers/input/keyboard/atkbd.c static unsigned int atkbd_oqo_01plus_scancode_fixup(struct atkbd *atkbd, atkbd 988 drivers/input/keyboard/atkbd.c if (atkbd->translated && atkbd->emul == 1 && atkbd 990 drivers/input/keyboard/atkbd.c atkbd->emul = 0; atkbd 1002 drivers/input/keyboard/atkbd.c static void atkbd_set_keycode_table(struct atkbd *atkbd) atkbd 1007 drivers/input/keyboard/atkbd.c memset(atkbd->keycode, 0, sizeof(atkbd->keycode)); atkbd 1008 drivers/input/keyboard/atkbd.c bitmap_zero(atkbd->force_release_mask, ATKBD_KEYMAP_SIZE); atkbd 1010 drivers/input/keyboard/atkbd.c if (atkbd->translated) { atkbd 1013 drivers/input/keyboard/atkbd.c atkbd->keycode[i] = atkbd_set2_keycode[scancode]; atkbd 1014 drivers/input/keyboard/atkbd.c atkbd->keycode[i | 0x80] = atkbd_set2_keycode[scancode | 0x80]; atkbd 1015 drivers/input/keyboard/atkbd.c if (atkbd->scroll) atkbd 1018 drivers/input/keyboard/atkbd.c atkbd->keycode[i | 0x80] = atkbd_scroll_keys[j].keycode; atkbd 1020 drivers/input/keyboard/atkbd.c } else if (atkbd->set == 3) { atkbd 1021 drivers/input/keyboard/atkbd.c memcpy(atkbd->keycode, atkbd_set3_keycode, sizeof(atkbd->keycode)); atkbd 1023 drivers/input/keyboard/atkbd.c memcpy(atkbd->keycode, atkbd_set2_keycode, sizeof(atkbd->keycode)); atkbd 1025 drivers/input/keyboard/atkbd.c if (atkbd->scroll) atkbd 1028 drivers/input/keyboard/atkbd.c atkbd->keycode[scancode] = atkbd_scroll_keys[i].keycode; atkbd 1036 drivers/input/keyboard/atkbd.c scancode = atkbd_compat_scancode(atkbd, ATKBD_RET_HANGEUL); atkbd 1037 drivers/input/keyboard/atkbd.c atkbd->keycode[scancode] = KEY_HANGEUL; atkbd 1038 drivers/input/keyboard/atkbd.c __set_bit(scancode, atkbd->force_release_mask); atkbd 1040 drivers/input/keyboard/atkbd.c scancode = atkbd_compat_scancode(atkbd, ATKBD_RET_HANJA); atkbd 1041 drivers/input/keyboard/atkbd.c atkbd->keycode[scancode] = KEY_HANJA; atkbd 1042 drivers/input/keyboard/atkbd.c __set_bit(scancode, atkbd->force_release_mask); atkbd 1048 drivers/input/keyboard/atkbd.c atkbd_platform_fixup(atkbd, atkbd_platform_fixup_data); atkbd 1055 drivers/input/keyboard/atkbd.c static void atkbd_set_device_attrs(struct atkbd *atkbd) atkbd 1057 drivers/input/keyboard/atkbd.c struct input_dev *input_dev = atkbd->dev; atkbd 1060 drivers/input/keyboard/atkbd.c if (atkbd->extra) atkbd 1061 drivers/input/keyboard/atkbd.c snprintf(atkbd->name, sizeof(atkbd->name), atkbd 1064 drivers/input/keyboard/atkbd.c snprintf(atkbd->name, sizeof(atkbd->name), atkbd 1066 drivers/input/keyboard/atkbd.c atkbd->translated ? "Translated" : "Raw", atkbd->set); atkbd 1068 drivers/input/keyboard/atkbd.c snprintf(atkbd->phys, sizeof(atkbd->phys), atkbd 1069 drivers/input/keyboard/atkbd.c "%s/input0", atkbd->ps2dev.serio->phys); atkbd 1071 drivers/input/keyboard/atkbd.c input_dev->name = atkbd->name; atkbd 1072 drivers/input/keyboard/atkbd.c input_dev->phys = atkbd->phys; atkbd 1075 drivers/input/keyboard/atkbd.c input_dev->id.product = atkbd->translated ? 1 : atkbd->set; atkbd 1076 drivers/input/keyboard/atkbd.c input_dev->id.version = atkbd->id; atkbd 1078 drivers/input/keyboard/atkbd.c input_dev->dev.parent = &atkbd->ps2dev.serio->dev; atkbd 1080 drivers/input/keyboard/atkbd.c input_set_drvdata(input_dev, atkbd); atkbd 1085 drivers/input/keyboard/atkbd.c if (atkbd->write) { atkbd 1091 drivers/input/keyboard/atkbd.c if (atkbd->extra) atkbd 1096 drivers/input/keyboard/atkbd.c if (!atkbd->softrepeat) { atkbd 1101 drivers/input/keyboard/atkbd.c input_dev->mscbit[0] = atkbd->softraw ? BIT_MASK(MSC_SCAN) : atkbd 1104 drivers/input/keyboard/atkbd.c if (atkbd->scroll) { atkbd 1111 drivers/input/keyboard/atkbd.c input_dev->keycode = atkbd->keycode; atkbd 1116 drivers/input/keyboard/atkbd.c if (atkbd->keycode[i] != KEY_RESERVED && atkbd 1117 drivers/input/keyboard/atkbd.c atkbd->keycode[i] != ATKBD_KEY_NULL && atkbd 1118 drivers/input/keyboard/atkbd.c atkbd->keycode[i] < ATKBD_SPECIAL) { atkbd 1119 drivers/input/keyboard/atkbd.c __set_bit(atkbd->keycode[i], input_dev->keybit); atkbd 1133 drivers/input/keyboard/atkbd.c struct atkbd *atkbd; atkbd 1137 drivers/input/keyboard/atkbd.c atkbd = kzalloc(sizeof(struct atkbd), GFP_KERNEL); atkbd 1139 drivers/input/keyboard/atkbd.c if (!atkbd || !dev) atkbd 1142 drivers/input/keyboard/atkbd.c atkbd->dev = dev; atkbd 1143 drivers/input/keyboard/atkbd.c ps2_init(&atkbd->ps2dev, serio); atkbd 1144 drivers/input/keyboard/atkbd.c INIT_DELAYED_WORK(&atkbd->event_work, atkbd_event_work); atkbd 1145 drivers/input/keyboard/atkbd.c mutex_init(&atkbd->mutex); atkbd 1150 drivers/input/keyboard/atkbd.c atkbd->translated = true; atkbd 1155 drivers/input/keyboard/atkbd.c atkbd->write = true; atkbd 1159 drivers/input/keyboard/atkbd.c atkbd->softraw = atkbd_softraw; atkbd 1160 drivers/input/keyboard/atkbd.c atkbd->softrepeat = atkbd_softrepeat; atkbd 1161 drivers/input/keyboard/atkbd.c atkbd->scroll = atkbd_scroll; atkbd 1163 drivers/input/keyboard/atkbd.c if (atkbd->softrepeat) atkbd 1164 drivers/input/keyboard/atkbd.c atkbd->softraw = true; atkbd 1166 drivers/input/keyboard/atkbd.c serio_set_drvdata(serio, atkbd); atkbd 1172 drivers/input/keyboard/atkbd.c if (atkbd->write) { atkbd 1174 drivers/input/keyboard/atkbd.c if (atkbd_probe(atkbd)) { atkbd 1179 drivers/input/keyboard/atkbd.c atkbd->set = atkbd_select_set(atkbd, atkbd_set, atkbd_extra); atkbd 1180 drivers/input/keyboard/atkbd.c atkbd_reset_state(atkbd); atkbd 1183 drivers/input/keyboard/atkbd.c atkbd->set = 2; atkbd 1184 drivers/input/keyboard/atkbd.c atkbd->id = 0xab00; atkbd 1187 drivers/input/keyboard/atkbd.c atkbd_set_keycode_table(atkbd); atkbd 1188 drivers/input/keyboard/atkbd.c atkbd_set_device_attrs(atkbd); atkbd 1194 drivers/input/keyboard/atkbd.c atkbd_enable(atkbd); atkbd 1196 drivers/input/keyboard/atkbd.c atkbd_activate(atkbd); atkbd 1198 drivers/input/keyboard/atkbd.c err = input_register_device(atkbd->dev); atkbd 1208 drivers/input/keyboard/atkbd.c kfree(atkbd); atkbd 1219 drivers/input/keyboard/atkbd.c struct atkbd *atkbd = serio_get_drvdata(serio); atkbd 1223 drivers/input/keyboard/atkbd.c if (!atkbd || !drv) { atkbd 1229 drivers/input/keyboard/atkbd.c mutex_lock(&atkbd->mutex); atkbd 1231 drivers/input/keyboard/atkbd.c atkbd_disable(atkbd); atkbd 1233 drivers/input/keyboard/atkbd.c if (atkbd->write) { atkbd 1234 drivers/input/keyboard/atkbd.c if (atkbd_probe(atkbd)) atkbd 1237 drivers/input/keyboard/atkbd.c if (atkbd->set != atkbd_select_set(atkbd, atkbd->set, atkbd->extra)) atkbd 1247 drivers/input/keyboard/atkbd.c atkbd_set_leds(atkbd); atkbd 1248 drivers/input/keyboard/atkbd.c if (!atkbd->softrepeat) atkbd 1249 drivers/input/keyboard/atkbd.c atkbd_set_repeat_rate(atkbd); atkbd 1257 drivers/input/keyboard/atkbd.c atkbd->xl_bit = 0; atkbd 1258 drivers/input/keyboard/atkbd.c atkbd->emul = 0; atkbd 1260 drivers/input/keyboard/atkbd.c atkbd_enable(atkbd); atkbd 1261 drivers/input/keyboard/atkbd.c if (atkbd->write) atkbd 1262 drivers/input/keyboard/atkbd.c atkbd_activate(atkbd); atkbd 1267 drivers/input/keyboard/atkbd.c mutex_unlock(&atkbd->mutex); atkbd 1309 drivers/input/keyboard/atkbd.c ssize_t (*handler)(struct atkbd *, char *)) atkbd 1312 drivers/input/keyboard/atkbd.c struct atkbd *atkbd = serio_get_drvdata(serio); atkbd 1314 drivers/input/keyboard/atkbd.c return handler(atkbd, buf); atkbd 1318 drivers/input/keyboard/atkbd.c ssize_t (*handler)(struct atkbd *, const char *, size_t)) atkbd 1321 drivers/input/keyboard/atkbd.c struct atkbd *atkbd = serio_get_drvdata(serio); atkbd 1324 drivers/input/keyboard/atkbd.c retval = mutex_lock_interruptible(&atkbd->mutex); atkbd 1328 drivers/input/keyboard/atkbd.c atkbd_disable(atkbd); atkbd 1329 drivers/input/keyboard/atkbd.c retval = handler(atkbd, buf, count); atkbd 1330 drivers/input/keyboard/atkbd.c atkbd_enable(atkbd); atkbd 1332 drivers/input/keyboard/atkbd.c mutex_unlock(&atkbd->mutex); atkbd 1337 drivers/input/keyboard/atkbd.c static ssize_t atkbd_show_extra(struct atkbd *atkbd, char *buf) atkbd 1339 drivers/input/keyboard/atkbd.c return sprintf(buf, "%d\n", atkbd->extra ? 1 : 0); atkbd 1342 drivers/input/keyboard/atkbd.c static ssize_t atkbd_set_extra(struct atkbd *atkbd, const char *buf, size_t count) atkbd 1350 drivers/input/keyboard/atkbd.c if (!atkbd->write) atkbd 1360 drivers/input/keyboard/atkbd.c if (atkbd->extra != value) { atkbd 1366 drivers/input/keyboard/atkbd.c old_dev = atkbd->dev; atkbd 1367 drivers/input/keyboard/atkbd.c old_extra = atkbd->extra; atkbd 1368 drivers/input/keyboard/atkbd.c old_set = atkbd->set; atkbd 1374 drivers/input/keyboard/atkbd.c atkbd->dev = new_dev; atkbd 1375 drivers/input/keyboard/atkbd.c atkbd->set = atkbd_select_set(atkbd, atkbd->set, value); atkbd 1376 drivers/input/keyboard/atkbd.c atkbd_reset_state(atkbd); atkbd 1377 drivers/input/keyboard/atkbd.c atkbd_activate(atkbd); atkbd 1378 drivers/input/keyboard/atkbd.c atkbd_set_keycode_table(atkbd); atkbd 1379 drivers/input/keyboard/atkbd.c atkbd_set_device_attrs(atkbd); atkbd 1381 drivers/input/keyboard/atkbd.c err = input_register_device(atkbd->dev); atkbd 1385 drivers/input/keyboard/atkbd.c atkbd->dev = old_dev; atkbd 1386 drivers/input/keyboard/atkbd.c atkbd->set = atkbd_select_set(atkbd, old_set, old_extra); atkbd 1387 drivers/input/keyboard/atkbd.c atkbd_set_keycode_table(atkbd); atkbd 1388 drivers/input/keyboard/atkbd.c atkbd_set_device_attrs(atkbd); atkbd 1398 drivers/input/keyboard/atkbd.c static ssize_t atkbd_show_force_release(struct atkbd *atkbd, char *buf) atkbd 1401 drivers/input/keyboard/atkbd.c ATKBD_KEYMAP_SIZE, atkbd->force_release_mask); atkbd 1409 drivers/input/keyboard/atkbd.c static ssize_t atkbd_set_force_release(struct atkbd *atkbd, atkbd 1420 drivers/input/keyboard/atkbd.c memcpy(atkbd->force_release_mask, new_mask, sizeof(atkbd->force_release_mask)); atkbd 1425 drivers/input/keyboard/atkbd.c static ssize_t atkbd_show_scroll(struct atkbd *atkbd, char *buf) atkbd 1427 drivers/input/keyboard/atkbd.c return sprintf(buf, "%d\n", atkbd->scroll ? 1 : 0); atkbd 1430 drivers/input/keyboard/atkbd.c static ssize_t atkbd_set_scroll(struct atkbd *atkbd, const char *buf, size_t count) atkbd 1444 drivers/input/keyboard/atkbd.c if (atkbd->scroll != value) { atkbd 1445 drivers/input/keyboard/atkbd.c old_dev = atkbd->dev; atkbd 1446 drivers/input/keyboard/atkbd.c old_scroll = atkbd->scroll; atkbd 1452 drivers/input/keyboard/atkbd.c atkbd->dev = new_dev; atkbd 1453 drivers/input/keyboard/atkbd.c atkbd->scroll = value; atkbd 1454 drivers/input/keyboard/atkbd.c atkbd_set_keycode_table(atkbd); atkbd 1455 drivers/input/keyboard/atkbd.c atkbd_set_device_attrs(atkbd); atkbd 1457 drivers/input/keyboard/atkbd.c err = input_register_device(atkbd->dev); atkbd 1461 drivers/input/keyboard/atkbd.c atkbd->scroll = old_scroll; atkbd 1462 drivers/input/keyboard/atkbd.c atkbd->dev = old_dev; atkbd 1463 drivers/input/keyboard/atkbd.c atkbd_set_keycode_table(atkbd); atkbd 1464 drivers/input/keyboard/atkbd.c atkbd_set_device_attrs(atkbd); atkbd 1473 drivers/input/keyboard/atkbd.c static ssize_t atkbd_show_set(struct atkbd *atkbd, char *buf) atkbd 1475 drivers/input/keyboard/atkbd.c return sprintf(buf, "%d\n", atkbd->set); atkbd 1478 drivers/input/keyboard/atkbd.c static ssize_t atkbd_set_set(struct atkbd *atkbd, const char *buf, size_t count) atkbd 1486 drivers/input/keyboard/atkbd.c if (!atkbd->write) atkbd 1496 drivers/input/keyboard/atkbd.c if (atkbd->set != value) { atkbd 1497 drivers/input/keyboard/atkbd.c old_dev = atkbd->dev; atkbd 1498 drivers/input/keyboard/atkbd.c old_extra = atkbd->extra; atkbd 1499 drivers/input/keyboard/atkbd.c old_set = atkbd->set; atkbd 1505 drivers/input/keyboard/atkbd.c atkbd->dev = new_dev; atkbd 1506 drivers/input/keyboard/atkbd.c atkbd->set = atkbd_select_set(atkbd, value, atkbd->extra); atkbd 1507 drivers/input/keyboard/atkbd.c atkbd_reset_state(atkbd); atkbd 1508 drivers/input/keyboard/atkbd.c atkbd_activate(atkbd); atkbd 1509 drivers/input/keyboard/atkbd.c atkbd_set_keycode_table(atkbd); atkbd 1510 drivers/input/keyboard/atkbd.c atkbd_set_device_attrs(atkbd); atkbd 1512 drivers/input/keyboard/atkbd.c err = input_register_device(atkbd->dev); atkbd 1516 drivers/input/keyboard/atkbd.c atkbd->dev = old_dev; atkbd 1517 drivers/input/keyboard/atkbd.c atkbd->set = atkbd_select_set(atkbd, old_set, old_extra); atkbd 1518 drivers/input/keyboard/atkbd.c atkbd_set_keycode_table(atkbd); atkbd 1519 drivers/input/keyboard/atkbd.c atkbd_set_device_attrs(atkbd); atkbd 1528 drivers/input/keyboard/atkbd.c static ssize_t atkbd_show_softrepeat(struct atkbd *atkbd, char *buf) atkbd 1530 drivers/input/keyboard/atkbd.c return sprintf(buf, "%d\n", atkbd->softrepeat ? 1 : 0); atkbd 1533 drivers/input/keyboard/atkbd.c static ssize_t atkbd_set_softrepeat(struct atkbd *atkbd, const char *buf, size_t count) atkbd 1540 drivers/input/keyboard/atkbd.c if (!atkbd->write) atkbd 1550 drivers/input/keyboard/atkbd.c if (atkbd->softrepeat != value) { atkbd 1551 drivers/input/keyboard/atkbd.c old_dev = atkbd->dev; atkbd 1552 drivers/input/keyboard/atkbd.c old_softrepeat = atkbd->softrepeat; atkbd 1553 drivers/input/keyboard/atkbd.c old_softraw = atkbd->softraw; atkbd 1559 drivers/input/keyboard/atkbd.c atkbd->dev = new_dev; atkbd 1560 drivers/input/keyboard/atkbd.c atkbd->softrepeat = value; atkbd 1561 drivers/input/keyboard/atkbd.c if (atkbd->softrepeat) atkbd 1562 drivers/input/keyboard/atkbd.c atkbd->softraw = true; atkbd 1563 drivers/input/keyboard/atkbd.c atkbd_set_device_attrs(atkbd); atkbd 1565 drivers/input/keyboard/atkbd.c err = input_register_device(atkbd->dev); atkbd 1569 drivers/input/keyboard/atkbd.c atkbd->dev = old_dev; atkbd 1570 drivers/input/keyboard/atkbd.c atkbd->softrepeat = old_softrepeat; atkbd 1571 drivers/input/keyboard/atkbd.c atkbd->softraw = old_softraw; atkbd 1572 drivers/input/keyboard/atkbd.c atkbd_set_device_attrs(atkbd); atkbd 1582 drivers/input/keyboard/atkbd.c static ssize_t atkbd_show_softraw(struct atkbd *atkbd, char *buf) atkbd 1584 drivers/input/keyboard/atkbd.c return sprintf(buf, "%d\n", atkbd->softraw ? 1 : 0); atkbd 1587 drivers/input/keyboard/atkbd.c static ssize_t atkbd_set_softraw(struct atkbd *atkbd, const char *buf, size_t count) atkbd 1601 drivers/input/keyboard/atkbd.c if (atkbd->softraw != value) { atkbd 1602 drivers/input/keyboard/atkbd.c old_dev = atkbd->dev; atkbd 1603 drivers/input/keyboard/atkbd.c old_softraw = atkbd->softraw; atkbd 1609 drivers/input/keyboard/atkbd.c atkbd->dev = new_dev; atkbd 1610 drivers/input/keyboard/atkbd.c atkbd->softraw = value; atkbd 1611 drivers/input/keyboard/atkbd.c atkbd_set_device_attrs(atkbd); atkbd 1613 drivers/input/keyboard/atkbd.c err = input_register_device(atkbd->dev); atkbd 1617 drivers/input/keyboard/atkbd.c atkbd->dev = old_dev; atkbd 1618 drivers/input/keyboard/atkbd.c atkbd->softraw = old_softraw; atkbd 1619 drivers/input/keyboard/atkbd.c atkbd_set_device_attrs(atkbd); atkbd 1628 drivers/input/keyboard/atkbd.c static ssize_t atkbd_show_err_count(struct atkbd *atkbd, char *buf) atkbd 1630 drivers/input/keyboard/atkbd.c return sprintf(buf, "%lu\n", atkbd->err_count);