dev: implement driver objects to organise and identify devices

This commit is contained in:
2023-06-02 19:35:07 +01:00
parent 577abf3bba
commit b7b0691b8f
17 changed files with 349 additions and 74 deletions

View File

@@ -182,31 +182,19 @@ void kernel_init(uintptr_t arg)
printk("kernel_init() running on processor %u", this_cpu());
run_all_tests();
create_kernel_thread(background_thread);
struct object *kbd;
status = object_namespace_get_object(global_namespace(), "/dev/system/misc/input0", &kbd);
run_all_tests();
status = object_namespace_get_object(global_namespace(), "/dev/input/input0", &kbd);
if (status != KERN_OK) {
printk("no keyboard available");
hang();
}
#if 0
struct device *kbd_dev = cast_to_device(kbd_obj);
if (!kbd_dev) {
printk("no keyboard available");
hang();
}
struct input_device *kbd = INPUT_DEVICE(kbd_dev);
if (!kbd) {
printk("no keyboard available");
hang();
}
#endif
while (1) {
struct input_event ev;
size_t r;