New rewritten serial driver + dev interface

This commit is contained in:
2025-10-04 21:31:45 +02:00
parent 0117080b61
commit acbf051dbc
16 changed files with 139 additions and 16 deletions

View File

@ -27,8 +27,10 @@ int32_t SYSCALL5(sys_devctl, devh1, cmd1, buffer1, len1, extra1) {
goto done;
}
spinlock_acquire(&DEVTABLE.spinlock);
Dev *founddev;
HSHTB_GET(DEVTABLE.devs, ident, ident, founddev);
spinlock_release(&DEVTABLE.spinlock);
if (founddev == NULL) {
ret = E_NOENTRY;
@ -66,7 +68,9 @@ int32_t SYSCALL5(sys_devctl, devh1, cmd1, buffer1, len1, extra1) {
ret = E_NOENTRY;
goto done;
}
spinlock_acquire(&dev->spinlock);
ret = dev->fns[cmd]((uint8_t *)buffer1, (size_t)len1, (void *)extra1);
spinlock_release(&dev->spinlock);
} break;
}