diff options
Diffstat (limited to 'kernel/kapi')
| -rw-r--r-- | kernel/kapi/devices/driver.tests.cpp | 10 | ||||
| -rw-r--r-- | kernel/kapi/devices/driver_registry.cpp | 12 | ||||
| -rw-r--r-- | kernel/kapi/devices/driver_registry.tests.cpp | 6 |
3 files changed, 23 insertions, 5 deletions
diff --git a/kernel/kapi/devices/driver.tests.cpp b/kernel/kapi/devices/driver.tests.cpp index dcf26336..e65e48e0 100644 --- a/kernel/kapi/devices/driver.tests.cpp +++ b/kernel/kapi/devices/driver.tests.cpp @@ -157,6 +157,11 @@ namespace return names; } + [[nodiscard]] auto name() const noexcept -> std::string_view override + { + return "Generic BHT Test Controller"; + } + protected: auto query_interface(kapi::devices::interface_id interface) -> void * override { @@ -184,6 +189,11 @@ namespace return names; } + [[nodiscard]] auto name() const noexcept -> std::string_view override + { + return "Generic BHT Leaf Device"; + } + protected: auto query_interface(kapi::devices::interface_id interface) -> void * override { diff --git a/kernel/kapi/devices/driver_registry.cpp b/kernel/kapi/devices/driver_registry.cpp index 2ba9a485..cb101d27 100644 --- a/kernel/kapi/devices/driver_registry.cpp +++ b/kernel/kapi/devices/driver_registry.cpp @@ -96,8 +96,8 @@ namespace kapi::devices } else if (match.error() != kstd::errc::not_supported) { - kstd::println(kstd::print_sink::stderr, "[OS:DRV] match() failed for device {}: {}", device->name(), - match.error().message()); + kstd::println(kstd::print_sink::stderr, "[OS:DRV] match() failed for device '{}' and driver '{}': {}", + device->name(), driver->name(), match.error().message()); } } @@ -112,14 +112,16 @@ namespace kapi::devices if (probed) { device->set_state(state::bound); - kstd::println("[OS:DRV] Bound device {} (priority {})", device->name(), candidate.priority); + kstd::println("[OS:DRV] Bound driver '{}' to device '{}' (priority {})", candidate.driver_handle->name(), + device->name(), candidate.priority); return; } device->bind_driver(kstd::weak_ptr<driver>{}); - kstd::println(kstd::print_sink::stderr, "[OS:DRV] probe() failed for device {} (priority {}): {}", device->name(), - candidate.priority, probed.error().message()); + kstd::println(kstd::print_sink::stderr, + "[OS:DRV] probe() failed for device '{}' and driver '{}' (priority {}): {}", device->name(), + candidate.driver_handle->name(), candidate.priority, probed.error().message()); } if (!candidates.empty()) diff --git a/kernel/kapi/devices/driver_registry.tests.cpp b/kernel/kapi/devices/driver_registry.tests.cpp index e51b706e..d4d8a174 100644 --- a/kernel/kapi/devices/driver_registry.tests.cpp +++ b/kernel/kapi/devices/driver_registry.tests.cpp @@ -8,6 +8,7 @@ #include <catch2/catch_test_macros.hpp> #include <cstdint> +#include <string_view> namespace { @@ -97,6 +98,11 @@ namespace return m_probe_succeeds; } + auto name() const noexcept -> std::string_view override + { + return "Driver Registry Test Device"; + } + mutable unsigned probe_calls; protected: |
