Lines Matching refs:serio
24 #include <linux/serio.h>
28 #define DRIVER_NAME "ams-delta-serio"
35 struct serio *serio;
40 static int check_data(struct serio *serio, int data)
46 dev_warn(&serio->dev, "invalid stop bit, data=0x%X\n", data);
56 dev_warn(&serio->dev,
75 * and then pass it on the serio
85 dfl = check_data(priv->serio, data);
87 serio_interrupt(priv->serio, scancode, dfl);
92 static int ams_delta_serio_open(struct serio *serio)
94 struct ams_delta_serio *priv = serio->port_data;
100 static void ams_delta_serio_close(struct serio *serio)
102 struct ams_delta_serio *priv = serio->port_data;
111 struct serio *serio;
153 serio = kzalloc(sizeof(*serio), GFP_KERNEL);
154 if (!serio)
157 priv->serio = serio;
159 serio->id.type = SERIO_8042;
160 serio->open = ams_delta_serio_open;
161 serio->close = ams_delta_serio_close;
162 strlcpy(serio->name, "AMS DELTA keyboard adapter", sizeof(serio->name));
163 strlcpy(serio->phys, dev_name(&pdev->dev), sizeof(serio->phys));
164 serio->dev.parent = &pdev->dev;
165 serio->port_data = priv;
167 serio_register_port(serio);
171 dev_info(&serio->dev, "%s\n", serio->name);
180 serio_unregister_port(priv->serio);