diff options
| author | Felix Morgner <felix.morgner@ost.ch> | 2026-07-26 10:28:44 +0200 |
|---|---|---|
| committer | Felix Morgner <felix.morgner@ost.ch> | 2026-07-26 10:28:44 +0200 |
| commit | ad43e9c9eac69b862789f2e132201cd5ceebaffa (patch) | |
| tree | c73a942e507f646aa952f61da97cedccf7db09dd /kernel/kapi/devices/bus.cpp | |
| parent | 390cac20bfb3040900a5569c4e9dfa1972f8d2bd (diff) | |
| download | kernel-ad43e9c9eac69b862789f2e132201cd5ceebaffa.tar.xz kernel-ad43e9c9eac69b862789f2e132201cd5ceebaffa.zip | |
kapi: move protocol pointer to base bus
Diffstat (limited to 'kernel/kapi/devices/bus.cpp')
| -rw-r--r-- | kernel/kapi/devices/bus.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/kernel/kapi/devices/bus.cpp b/kernel/kapi/devices/bus.cpp index 9eecced0..dad90a15 100644 --- a/kernel/kapi/devices/bus.cpp +++ b/kernel/kapi/devices/bus.cpp @@ -1,6 +1,7 @@ #include <kapi/devices/bus.hpp> #include <kapi/devices.hpp> +#include <kapi/devices/bus_protocol.hpp> #include <kapi/devices/driver_registry.hpp> #include <kapi/system.hpp> @@ -17,6 +18,11 @@ namespace kapi::devices : device{name} {} + bus::bus(kstd::string const & name, bus_protocol & protocol) + : device{name} + , m_protocol{&protocol} + {} + auto bus::add_child(kstd::shared_ptr<device> child) -> void { child->set_parent(kstd::static_pointer_cast<bus>(shared_from_this())); @@ -43,6 +49,10 @@ namespace kapi::devices { return this; } + else if (facet == bus_protocol::id) + { + return m_protocol; + } return device::query_facet(facet); } |
