summaryrefslogtreecommitdiff
path: root/rust/kernel
diff options
context:
space:
mode:
authorOnur Özkan <work@onurozkan.dev>2025-08-21 12:07:20 +0300
committerMark Brown <broonie@kernel.org>2025-08-28 11:08:39 +0200
commite2ab5f600bb01d3625d667d97b3eb7538e388336 (patch)
tree832e9f89d710310da17cead94ce3659c51343340 /rust/kernel
parentec0be3cdf40b5302248f3fb27a911cc630e8b855 (diff)
rust: regulator: use `to_result` for error handling
Simplifies error handling by replacing the manual check of the return value with the `to_result` helper. Signed-off-by: Onur Özkan <work@onurozkan.dev> Reviewed-by: Daniel Almeida <daniel.almeida@collabora.com> Message-ID: <20250821090720.23939-1-work@onurozkan.dev> Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'rust/kernel')
-rw-r--r--rust/kernel/regulator.rs7
1 files changed, 2 insertions, 5 deletions
diff --git a/rust/kernel/regulator.rs b/rust/kernel/regulator.rs
index 704147e18bfc..34bb24ec8d4d 100644
--- a/rust/kernel/regulator.rs
+++ b/rust/kernel/regulator.rs
@@ -267,11 +267,8 @@ impl<T: RegulatorState> Regulator<T> {
pub fn get_voltage(&self) -> Result<Voltage> {
// SAFETY: Safe as per the type invariants of `Regulator`.
let voltage = unsafe { bindings::regulator_get_voltage(self.inner.as_ptr()) };
- if voltage < 0 {
- Err(kernel::error::Error::from_errno(voltage))
- } else {
- Ok(Voltage::from_microvolts(voltage))
- }
+
+ to_result(voltage).map(|()| Voltage::from_microvolts(voltage))
}
fn get_internal(dev: &Device, name: &CStr) -> Result<Regulator<T>> {