Lines Matching full:serio
13 #include <linux/serio.h>
32 static int rpckbd_write(struct serio *port, unsigned char val) in rpckbd_write()
44 struct serio *port = dev_id; in rpckbd_rx()
62 static int rpckbd_open(struct serio *port) in rpckbd_open()
85 static void rpckbd_close(struct serio *port) in rpckbd_close()
94 * Allocate and initialize serio structure for subsequent registration
95 * with serio core.
100 struct serio *serio; in rpckbd_probe() local
111 serio = kzalloc(sizeof(*serio), GFP_KERNEL); in rpckbd_probe()
113 if (!serio || !rpckbd) { in rpckbd_probe()
115 kfree(serio); in rpckbd_probe()
122 serio->id.type = SERIO_8042; in rpckbd_probe()
123 serio->write = rpckbd_write; in rpckbd_probe()
124 serio->open = rpckbd_open; in rpckbd_probe()
125 serio->close = rpckbd_close; in rpckbd_probe()
126 serio->dev.parent = &dev->dev; in rpckbd_probe()
127 serio->port_data = rpckbd; in rpckbd_probe()
128 strscpy(serio->name, "RiscPC PS/2 kbd port", sizeof(serio->name)); in rpckbd_probe()
129 strscpy(serio->phys, "rpckbd/serio0", sizeof(serio->phys)); in rpckbd_probe()
131 platform_set_drvdata(dev, serio); in rpckbd_probe()
132 serio_register_port(serio); in rpckbd_probe()
138 struct serio *serio = platform_get_drvdata(dev); in rpckbd_remove() local
139 struct rpckbd_data *rpckbd = serio->port_data; in rpckbd_remove()
141 serio_unregister_port(serio); in rpckbd_remove()