diff options
Diffstat (limited to 'kernel/devices/src/storage/ram_disk')
| -rw-r--r-- | kernel/devices/src/storage/ram_disk/ram_disk_device.cpp | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/kernel/devices/src/storage/ram_disk/ram_disk_device.cpp b/kernel/devices/src/storage/ram_disk/ram_disk_device.cpp index 3bd3967..8e9988d 100644 --- a/kernel/devices/src/storage/ram_disk/ram_disk_device.cpp +++ b/kernel/devices/src/storage/ram_disk/ram_disk_device.cpp @@ -7,21 +7,33 @@ #include <kstd/cstring> +#include <array> #include <cstddef> +#include <string_view> namespace devices::storage::ram_disk { namespace { constexpr size_t RAM_DISK_BLOCK_SIZE = 512uz; // TODO BA-FS26 really correct / good?? + + // TODO BA-FS26 @Felix + // TODO BA-FS26 currently only names for 9 minor devices + constinit std::array<char, 5> NAME = {'r', 'a', 'm', '0', '\0'}; + + auto determine_device_name(size_t minor) -> std::string_view + { + NAME[3] = '0' + minor; + return std::string_view{NAME}; + } } // namespace ram_disk_device::ram_disk_device() // TODO BA-FS26 remove when kstd::vector is available - : block_device(0, 0, RAM_DISK_BLOCK_SIZE) + : block_device(0, 0, determine_device_name(0), RAM_DISK_BLOCK_SIZE) {} ram_disk_device::ram_disk_device(kapi::boot_modules::boot_module const & module, size_t major, size_t minor) - : block_device(major, minor, RAM_DISK_BLOCK_SIZE) + : block_device(major, minor, determine_device_name(minor), RAM_DISK_BLOCK_SIZE) , m_boot_module(module) {} |
