Kernel: Start making device numbers unique for each device

This commit is contained in:
2024-02-22 15:53:48 +02:00
parent 7a4ec7f7a3
commit 9594ee8e47
22 changed files with 92 additions and 57 deletions

View File

@@ -1,5 +1,6 @@
#include <BAN/Array.h>
#include <kernel/CriticalScope.h>
#include <kernel/Device/DeviceNumbers.h>
#include <kernel/FS/DevFS/FileSystem.h>
#include <kernel/IDT.h>
#include <kernel/InterruptController.h>
@@ -42,9 +43,8 @@ namespace Kernel
static dev_t next_rdev()
{
static dev_t major = DevFileSystem::get().get_next_dev();
static dev_t minor = 0;
return makedev(major, minor++);
return makedev(DeviceNumber::Serial, minor++);
}
void Serial::initialize()

View File

@@ -2,6 +2,7 @@
#include <BAN/ScopeGuard.h>
#include <BAN/UTF8.h>
#include <kernel/Debug.h>
#include <kernel/Device/DeviceNumbers.h>
#include <kernel/FS/DevFS/FileSystem.h>
#include <kernel/LockGuard.h>
#include <kernel/Process.h>
@@ -26,9 +27,8 @@ namespace Kernel
static dev_t next_rdev()
{
static dev_t major = DevFileSystem::get().get_next_dev();
static dev_t minor = 0;
return makedev(major, minor++);
return makedev(DeviceNumber::TTY, minor++);
}
BAN::ErrorOr<BAN::RefPtr<VirtualTTY>> VirtualTTY::create(TerminalDriver* driver)