aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelix Morgner <felix.morgner@ost.ch>2026-07-26 02:52:16 +0200
committerFelix Morgner <felix.morgner@ost.ch>2026-07-26 02:52:16 +0200
commitcbae92965caf0653e8f32794db3ab4173b54504d (patch)
tree895209f76b2300bd92b2ae40c602a8fb8470d373
parent59f54d012c71e782966e9d083f1ee9459fd3fd70 (diff)
downloadkernel-cbae92965caf0653e8f32794db3ab4173b54504d.tar.xz
kernel-cbae92965caf0653e8f32794db3ab4173b54504d.zip
chore: minor cleanups after refactoring
-rw-r--r--arch/x86_64/arch/bus/isa.cpp6
-rw-r--r--kapi/kapi/devices/bus.hpp5
-rw-r--r--kernel/kapi/devices/driver.tests.cpp16
-rw-r--r--kernel/kapi/devices/driver_registry.tests.cpp20
-rw-r--r--kernel/kernel/bus/boot_modules.cpp4
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);
}