#include <linux/serio.h>
#include <linux/workqueue.h>
+#define DRIVER_DESC "LK keyboard driver"
+
MODULE_AUTHOR ("Jan-Benedict Glaw <jbglaw@lug-owl.de>");
-MODULE_DESCRIPTION ("LK keyboard driver");
+MODULE_DESCRIPTION (DRIVER_DESC);
MODULE_LICENSE ("GPL");
/*
* lkkbd_connect() probes for a LK keyboard and fills the necessary structures.
*/
static void
-lkkbd_connect (struct serio *serio, struct serio_dev *dev)
+lkkbd_connect (struct serio *serio, struct serio_driver *drv)
{
struct lkkbd *lk;
int i;
serio->private = lk;
- if (serio_open (serio, dev)) {
+ if (serio_open (serio, drv)) {
kfree (lk);
return;
}
kfree (lk);
}
-static struct serio_dev lkkbd_dev = {
- .connect = lkkbd_connect,
- .disconnect = lkkbd_disconnect,
- .interrupt = lkkbd_interrupt,
+static struct serio_driver lkkbd_drv = {
+ .driver = {
+ .name = "lkkbd",
+ },
+ .description = DRIVER_DESC,
+ .connect = lkkbd_connect,
+ .disconnect = lkkbd_disconnect,
+ .interrupt = lkkbd_interrupt,
};
/*
int __init
lkkbd_init (void)
{
- serio_register_device (&lkkbd_dev);
+ serio_register_driver(&lkkbd_drv);
return 0;
}
void __exit
lkkbd_exit (void)
{
- serio_unregister_device (&lkkbd_dev);
+ serio_unregister_driver(&lkkbd_drv);
}
module_init (lkkbd_init);