Lines Matching refs:serio

151 	struct serio *serio;  member
176 struct serio *serio);
191 struct serio *serio)) in i8042_install_filter() argument
212 struct serio *port)) in i8042_remove_filter()
360 static int i8042_kbd_write(struct serio *port, unsigned char c) in i8042_kbd_write()
381 static int i8042_aux_write(struct serio *serio, unsigned char c) in i8042_aux_write() argument
383 struct i8042_port *port = serio->port_data; in i8042_aux_write()
396 static void i8042_port_close(struct serio *serio) in i8042_port_close() argument
402 if (serio == i8042_ports[I8042_AUX_PORT_NO].serio) { in i8042_port_close()
435 static int i8042_start(struct serio *serio) in i8042_start() argument
437 struct i8042_port *port = serio->port_data; in i8042_start()
451 static void i8042_stop(struct serio *serio) in i8042_stop() argument
453 struct i8042_port *port = serio->port_data; in i8042_stop()
457 port->serio = NULL; in i8042_stop()
477 struct serio *serio) in i8042_filter() argument
488 if (i8042_platform_filter && i8042_platform_filter(data, str, serio)) { in i8042_filter()
505 struct serio *serio; in i8042_interrupt() local
574 serio = port->exists ? port->serio : NULL; in i8042_interrupt()
576 if (irq && serio) in i8042_interrupt()
577 pm_wakeup_event(&serio->dev, 0); in i8042_interrupt()
584 filtered = i8042_filter(data, str, serio); in i8042_interrupt()
588 if (likely(serio && !filtered)) in i8042_interrupt()
589 serio_interrupt(serio, data, dfl); in i8042_interrupt()
1198 } else if (i8042_ports[I8042_AUX_PORT_NO].serio) in i8042_controller_resume()
1201 if (i8042_ports[I8042_KBD_PORT_NO].serio) in i8042_controller_resume()
1223 struct serio *serio = i8042_ports[i].serio; in i8042_pm_suspend() local
1225 if (serio && device_may_wakeup(&serio->dev)) in i8042_pm_suspend()
1246 struct serio *serio = i8042_ports[i].serio; in i8042_pm_resume() local
1248 if (serio && device_may_wakeup(&serio->dev)) in i8042_pm_resume()
1312 struct serio *serio; in i8042_create_kbd_port() local
1315 serio = kzalloc(sizeof(struct serio), GFP_KERNEL); in i8042_create_kbd_port()
1316 if (!serio) in i8042_create_kbd_port()
1319 serio->id.type = i8042_direct ? SERIO_8042 : SERIO_8042_XL; in i8042_create_kbd_port()
1320 serio->write = i8042_dumbkbd ? NULL : i8042_kbd_write; in i8042_create_kbd_port()
1321 serio->start = i8042_start; in i8042_create_kbd_port()
1322 serio->stop = i8042_stop; in i8042_create_kbd_port()
1323 serio->close = i8042_port_close; in i8042_create_kbd_port()
1324 serio->ps2_cmd_mutex = &i8042_mutex; in i8042_create_kbd_port()
1325 serio->port_data = port; in i8042_create_kbd_port()
1326 serio->dev.parent = &i8042_platform_device->dev; in i8042_create_kbd_port()
1327 strlcpy(serio->name, "i8042 KBD port", sizeof(serio->name)); in i8042_create_kbd_port()
1328 strlcpy(serio->phys, I8042_KBD_PHYS_DESC, sizeof(serio->phys)); in i8042_create_kbd_port()
1329 strlcpy(serio->firmware_id, i8042_kbd_firmware_id, in i8042_create_kbd_port()
1330 sizeof(serio->firmware_id)); in i8042_create_kbd_port()
1332 port->serio = serio; in i8042_create_kbd_port()
1340 struct serio *serio; in i8042_create_aux_port() local
1344 serio = kzalloc(sizeof(struct serio), GFP_KERNEL); in i8042_create_aux_port()
1345 if (!serio) in i8042_create_aux_port()
1348 serio->id.type = SERIO_8042; in i8042_create_aux_port()
1349 serio->write = i8042_aux_write; in i8042_create_aux_port()
1350 serio->start = i8042_start; in i8042_create_aux_port()
1351 serio->stop = i8042_stop; in i8042_create_aux_port()
1352 serio->ps2_cmd_mutex = &i8042_mutex; in i8042_create_aux_port()
1353 serio->port_data = port; in i8042_create_aux_port()
1354 serio->dev.parent = &i8042_platform_device->dev; in i8042_create_aux_port()
1356 strlcpy(serio->name, "i8042 AUX port", sizeof(serio->name)); in i8042_create_aux_port()
1357 strlcpy(serio->phys, I8042_AUX_PHYS_DESC, sizeof(serio->phys)); in i8042_create_aux_port()
1358 strlcpy(serio->firmware_id, i8042_aux_firmware_id, in i8042_create_aux_port()
1359 sizeof(serio->firmware_id)); in i8042_create_aux_port()
1360 serio->close = i8042_port_close; in i8042_create_aux_port()
1362 snprintf(serio->name, sizeof(serio->name), "i8042 AUX%d port", idx); in i8042_create_aux_port()
1363 snprintf(serio->phys, sizeof(serio->phys), I8042_MUX_PHYS_DESC, idx + 1); in i8042_create_aux_port()
1364 strlcpy(serio->firmware_id, i8042_aux_firmware_id, in i8042_create_aux_port()
1365 sizeof(serio->firmware_id)); in i8042_create_aux_port()
1368 port->serio = serio; in i8042_create_aux_port()
1377 kfree(i8042_ports[I8042_KBD_PORT_NO].serio); in i8042_free_kbd_port()
1378 i8042_ports[I8042_KBD_PORT_NO].serio = NULL; in i8042_free_kbd_port()
1386 kfree(i8042_ports[i].serio); in i8042_free_aux_ports()
1387 i8042_ports[i].serio = NULL; in i8042_free_aux_ports()
1396 struct serio *serio = i8042_ports[i].serio; in i8042_register_ports() local
1398 if (!serio) in i8042_register_ports()
1402 serio->name, in i8042_register_ports()
1406 serio_register_port(serio); in i8042_register_ports()
1407 device_set_wakeup_capable(&serio->dev, true); in i8042_register_ports()
1417 device_set_wakeup_enable(&serio->dev, true); in i8042_register_ports()
1426 if (i8042_ports[i].serio) { in i8042_unregister_ports()
1427 serio_unregister_port(i8042_ports[i].serio); in i8042_unregister_ports()
1428 i8042_ports[i].serio = NULL; in i8042_unregister_ports()
1515 struct serio *serio = to_serio_port(dev); in i8042_kbd_bind_notifier() local
1516 struct i8042_port *port = serio->port_data; in i8042_kbd_bind_notifier()
1518 if (serio != i8042_ports[I8042_KBD_PORT_NO].serio) in i8042_kbd_bind_notifier()