#include <lunaix/clock.h>
#include <lunaix/input.h>
+#include <lunaix/mm/page.h>
#include <lunaix/mm/valloc.h>
#include <lunaix/spike.h>
#include <lunaix/status.h>
}
struct input_device*
-input_add_device(char* name_fmt, ...)
+input_add_device(struct devclass* class, char* name_fmt, ...)
{
assert(input_devcat);
va_list args;
va_start(args, name_fmt);
- struct device* dev =
- device_add(input_devcat, idev, name_fmt, DEV_IFSEQ, args);
+ struct device* dev = device_allocseq(input_devcat, idev);
+
+ device_setname_vargs(dev, name_fmt, args);
+ device_register(dev, class, NULL);
idev->dev_if = dev;
- dev->read = __input_dev_read;
- dev->read_page = __input_dev_read_pg;
+ dev->ops.read = __input_dev_read;
+ dev->ops.read_page = __input_dev_read_pg;
va_end(args);