- .type = SERIO_8042,
- .open = rpckbd_open,
- .close = rpckbd_close,
- .write = rpckbd_write,
- .name = "RiscPC PS/2 kbd port",
- .phys = "rpckbd/serio0",
-};
+ struct serio *serio;
+
+ serio = kmalloc(sizeof(struct serio), GFP_KERNEL);
+ if (serio) {
+ memset(serio, 0, sizeof(struct serio));
+ serio->type = SERIO_8042;
+ serio->write = rpckbd_write;
+ serio->open = rpckbd_open;
+ serio->close = rpckbd_close;
+ serio->dev.parent = &rpckbd_device->dev;
+ strlcpy(serio->name, "RiscPC PS/2 kbd port", sizeof(serio->name));
+ strlcpy(serio->phys, "rpckbd/serio0", sizeof(serio->phys));
+ }
+
+ return serio;
+}