aboutsummaryrefslogtreecommitdiff
path: root/kernel/kapi/boot_modules/device.cpp
diff options
context:
space:
mode:
authorFelix Morgner <felix.morgner@ost.ch>2026-07-24 23:12:23 +0200
committerFelix Morgner <felix.morgner@ost.ch>2026-07-24 23:12:23 +0200
commit8ac3b7c5dfd6917eac1ffb117ee48231032ce754 (patch)
treecd1203a908b6f449db2e321207b6e0e77962fa57 /kernel/kapi/boot_modules/device.cpp
parenta1f1ddabf24fb6dfb1bcfc6257c44b6a2bfba8ab (diff)
downloadkernel-8ac3b7c5dfd6917eac1ffb117ee48231032ce754.tar.xz
kernel-8ac3b7c5dfd6917eac1ffb117ee48231032ce754.zip
kernel: remove boot modules registry
Diffstat (limited to 'kernel/kapi/boot_modules/device.cpp')
-rw-r--r--kernel/kapi/boot_modules/device.cpp39
1 files changed, 39 insertions, 0 deletions
diff --git a/kernel/kapi/boot_modules/device.cpp b/kernel/kapi/boot_modules/device.cpp
new file mode 100644
index 00000000..84a43c1c
--- /dev/null
+++ b/kernel/kapi/boot_modules/device.cpp
@@ -0,0 +1,39 @@
+#include <kapi/boot_modules/device.hpp>
+
+#include <kapi/boot_modules/module.hpp>
+#include <kapi/devices.hpp>
+
+#include <kstd/format.hpp>
+
+#include <cstddef>
+#include <string_view>
+
+namespace kapi::boot_modules
+{
+
+ device::device(std::size_t index, kapi::boot_modules::module const & module)
+ : kapi::devices::device{kstd::format("device{}", index)}
+ , m_module(module)
+ {}
+
+ auto device::command_line() const -> std::string_view
+ {
+ return m_module.name;
+ }
+
+ auto device::module() const -> boot_modules::module const &
+ {
+ return m_module;
+ }
+
+ auto device::query_interface(kapi::devices::interface_id interface) -> void *
+ {
+ if (interface == boot_module_signature::id)
+ {
+ return static_cast<boot_module_signature *>(this);
+ }
+
+ return kapi::devices::device::query_interface(interface);
+ }
+
+} // namespace kapi::boot_modules \ No newline at end of file