diff options
| author | Felix Morgner <felix.morgner@ost.ch> | 2026-07-26 02:52:16 +0200 |
|---|---|---|
| committer | Felix Morgner <felix.morgner@ost.ch> | 2026-07-26 02:52:16 +0200 |
| commit | cbae92965caf0653e8f32794db3ab4173b54504d (patch) | |
| tree | 895209f76b2300bd92b2ae40c602a8fb8470d373 | |
| parent | 59f54d012c71e782966e9d083f1ee9459fd3fd70 (diff) | |
| download | kernel-cbae92965caf0653e8f32794db3ab4173b54504d.tar.xz kernel-cbae92965caf0653e8f32794db3ab4173b54504d.zip | |
chore: minor cleanups after refactoring
| -rw-r--r-- | arch/x86_64/arch/bus/isa.cpp | 6 | ||||
| -rw-r--r-- | kapi/kapi/devices/bus.hpp | 5 | ||||
| -rw-r--r-- | kernel/kapi/devices/driver.tests.cpp | 16 | ||||
| -rw-r--r-- | kernel/kapi/devices/driver_registry.tests.cpp | 20 | ||||
| -rw-r--r-- | kernel/kernel/bus/boot_modules.cpp | 4 |
5 files changed, 20 insertions, 31 deletions
diff --git a/arch/x86_64/arch/bus/isa.cpp b/arch/x86_64/arch/bus/isa.cpp index 8e17c186..4df86a6d 100644 --- a/arch/x86_64/arch/bus/isa.cpp +++ b/arch/x86_64/arch/bus/isa.cpp @@ -14,8 +14,6 @@ namespace arch::bus { struct isa_protocol final : kapi::devices::bus_protocol { - constexpr auto static id = kapi::capabilities::facet_id{"isa_protocol"}; - auto enumerate(kapi::devices::bus &) -> void override { // NOTE: ISA does not support enumeration, but we need to fulfill the interface. @@ -48,9 +46,9 @@ namespace arch::bus auto isa::query_facet(kapi::capabilities::facet_id id) -> void * { - if (id == isa_protocol::id || id == kapi::devices::bus_protocol::id) + if (id == kapi::devices::bus_protocol::id) { - return &protocol_instance; + return static_cast<kapi::devices::bus_protocol *>(&protocol_instance); } return bus::query_facet(id); diff --git a/kapi/kapi/devices/bus.hpp b/kapi/kapi/devices/bus.hpp index 6c42d1de..0d679c4e 100644 --- a/kapi/kapi/devices/bus.hpp +++ b/kapi/kapi/devices/bus.hpp @@ -42,11 +42,6 @@ namespace kapi::devices //! @return A vector of all children attached to this bus. [[nodiscard]] auto children() const -> std::span<kstd::shared_ptr<device> const>; - // //! Get this bus's protocol facet, if present. - // //! - // //! @return this bus's protocol facet if it has one, nullptr otherwise. - // [[nodiscard]] virtual auto protocol() -> struct bus_protocol *; - protected: //! All busses have the "bus" facet. auto query_facet(kapi::capabilities::facet_id facet) -> void * override; diff --git a/kernel/kapi/devices/driver.tests.cpp b/kernel/kapi/devices/driver.tests.cpp index 560cc1bc..b935cc57 100644 --- a/kernel/kapi/devices/driver.tests.cpp +++ b/kernel/kapi/devices/driver.tests.cpp @@ -30,8 +30,6 @@ namespace struct controller_protocol : kapi::devices::bus_protocol { - constexpr auto static id = kapi::capabilities::facet_id{"stacking_test_controller_protocol"}; - auto enumerate(kapi::devices::bus &) -> void override {} [[nodiscard]] auto match(kapi::devices::device const & dev, kapi::devices::driver const & drv) const @@ -51,14 +49,14 @@ namespace { using kapi::devices::bus::bus; - [[nodiscard]] auto query_facet(kapi::capabilities::facet_id id) -> void * override + [[nodiscard]] auto query_facet(kapi::capabilities::facet_id facet) -> void * override { - if (id == controller_protocol::id || id == kapi::devices::bus_protocol::id) + if (facet == kapi::devices::bus_protocol::id) { - return &controller_protocol_instance; + return static_cast<kapi::devices::bus_protocol *>(&controller_protocol_instance); } - return kapi::devices::bus::query_facet(id); + return kapi::devices::bus::query_facet(facet); } }; @@ -148,9 +146,9 @@ namespace [[nodiscard]] auto query_facet(kapi::capabilities::facet_id id) -> void * override { - if (id == leaf_protocol::id || id == kapi::devices::bus_protocol::id) + if (id == kapi::devices::bus_protocol::id) { - return &leaf_protocol_instance; + return static_cast<kapi::devices::bus_protocol *>(&leaf_protocol_instance); } return kapi::devices::bus::query_facet(id); @@ -164,7 +162,7 @@ namespace auto self_as_bus = kstd::static_pointer_cast<kapi::devices::bus>(dev.shared_from_this()); auto leaf = kstd::make_shared<leaf_bus>("stacking_test_leaf_bus"); self_as_bus->add_child(leaf); - leaf->facet<leaf_protocol>()->enumerate(*leaf); + leaf->facet<kapi::devices::bus_protocol>()->enumerate(*leaf); return kstd::success(); } diff --git a/kernel/kapi/devices/driver_registry.tests.cpp b/kernel/kapi/devices/driver_registry.tests.cpp index c7d1744d..7375bd4d 100644 --- a/kernel/kapi/devices/driver_registry.tests.cpp +++ b/kernel/kapi/devices/driver_registry.tests.cpp @@ -13,11 +13,11 @@ namespace { - struct test_identification + struct test_claim { constexpr auto static id = kapi::capabilities::facet_id{"test_identification"}; - virtual ~test_identification() = default; + virtual ~test_claim() = default; [[nodiscard]] virtual auto priority() const noexcept -> std::uint32_t = 0; [[nodiscard]] virtual auto probe_succeeds() const noexcept -> bool = 0; @@ -38,7 +38,7 @@ namespace { ++*match_calls; - auto const * identification = driver.facet<test_identification>(); + auto const * identification = driver.facet<test_claim>(); if (!identification) { return kstd::failure(kapi::devices::driver_match_errc::no_match); @@ -54,14 +54,14 @@ namespace { using kapi::devices::bus::bus; - [[nodiscard]] auto query_facet(kapi::capabilities::facet_id id) -> void * override + [[nodiscard]] auto query_facet(kapi::capabilities::facet_id facet) -> void * override { - if (id == test_protocol::id || id == kapi::devices::bus_protocol::id) + if (facet == kapi::devices::bus_protocol::id) { - return &bus_protocol; + return static_cast<kapi::devices::bus_protocol *>(&bus_protocol); } - return kapi::devices::bus::query_facet(id); + return kapi::devices::bus::query_facet(facet); } unsigned match_calls{}; @@ -73,7 +73,7 @@ namespace using kapi::devices::device::device; }; - struct test_driver final : kapi::devices::driver, test_identification + struct test_driver final : kapi::devices::driver, test_claim { test_driver(std::uint32_t priority, bool probe_succeeds) : probe_calls{} @@ -115,9 +115,9 @@ namespace protected: auto query_facet(kapi::capabilities::facet_id facet) -> void * override { - if (facet == test_identification::id) + if (facet == test_claim::id) { - return static_cast<test_identification *>(this); + return static_cast<test_claim *>(this); } return kapi::devices::driver::query_facet(facet); diff --git a/kernel/kernel/bus/boot_modules.cpp b/kernel/kernel/bus/boot_modules.cpp index be507eb5..1f02125b 100644 --- a/kernel/kernel/bus/boot_modules.cpp +++ b/kernel/kernel/bus/boot_modules.cpp @@ -29,8 +29,6 @@ namespace kernel::bus struct boot_modules_protocol : kapi::devices::bus_protocol { - constexpr auto static id = kapi::capabilities::facet_id{"boot_modules_bus"}; - auto enumerate(kapi::devices::bus &) -> void override { // The boot modules virtual bus does not support enumeration. @@ -66,7 +64,7 @@ namespace kernel::bus auto boot_modules::query_facet(kapi::capabilities::facet_id id) -> void * { - if (id == boot_modules_protocol::id || id == kapi::devices::bus_protocol::id) + if (id == kapi::devices::bus_protocol::id) { return static_cast<kapi::devices::bus_protocol *>(&protocol_instance); } |
