aboutsummaryrefslogtreecommitdiff
path: root/kernel/kernel/filesystems/devfs/module.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/kernel/filesystems/devfs/module.cpp')
-rw-r--r--kernel/kernel/filesystems/devfs/module.cpp28
1 files changed, 28 insertions, 0 deletions
diff --git a/kernel/kernel/filesystems/devfs/module.cpp b/kernel/kernel/filesystems/devfs/module.cpp
new file mode 100644
index 00000000..2048caa1
--- /dev/null
+++ b/kernel/kernel/filesystems/devfs/module.cpp
@@ -0,0 +1,28 @@
+#include <kernel/filesystems/devfs/filesystem.hpp>
+#include <kernel/vfs/driver_registry.hpp>
+#include <kernel/vfs/filesystem.hpp>
+
+#include <kstd/memory.hpp>
+
+#include <string_view>
+
+namespace
+{
+
+ struct descriptor final : kernel::vfs::driver_descriptor
+ {
+ [[nodiscard]] auto name() const noexcept -> std::string_view override
+ {
+ return "devfs";
+ }
+
+ [[nodiscard]] auto make_instance() const -> kernel::vfs::filesystem::filesystem_ptr override
+ {
+ return kstd::make_shared<kernel::filesystems::devfs::filesystem>();
+ }
+ };
+
+ [[gnu::used]]
+ constexpr auto registration = kernel::vfs::driver_module<descriptor>{};
+
+} // namespace \ No newline at end of file