X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/a36758a5018f6a3792c164cd2a313d4f61b7111e..f6ab9c9ababa2cf6e5c723b83ffb9362094054e8:/lunaix-os/kernel/device/input.c?ds=sidebyside diff --git a/lunaix-os/kernel/device/input.c b/lunaix-os/kernel/device/input.c index a96cb00..0680fef 100644 --- a/lunaix-os/kernel/device/input.c +++ b/lunaix-os/kernel/device/input.c @@ -1,5 +1,6 @@ #include #include +#include #include #include #include @@ -14,6 +15,13 @@ void input_init() { input_devcat = device_addcat(NULL, "input"); + + int i; + ptr_t input_dev_init; + ldga_foreach(inputdev, ptr_t, i, input_dev_init) + { + ((void (*)())input_dev_init)(); + } } void @@ -83,8 +91,8 @@ input_add_device(char* name_fmt, ...) device_add(input_devcat, idev, name_fmt, DEV_IFSEQ, args); 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);