summaryrefslogtreecommitdiff
path: root/rust/kernel/io/resource.rs
diff options
context:
space:
mode:
authorAlice Ryhl <aliceryhl@google.com>2025-11-12 09:48:35 +0000
committerDanilo Krummrich <dakr@kernel.org>2025-11-13 20:17:24 +1100
commitdd6ff5cf56fb183fce605ca6a5bfce228cd8888b (patch)
treedecc11adecfeeda5ce4c07fab60604d0d07327d5 /rust/kernel/io/resource.rs
parentee2776e54b2666f99ef5e3ad0b60889e1500dada (diff)
rust: io: add typedef for phys_addr_t
The C typedef phys_addr_t is missing an analogue in Rust, meaning that we end up using bindings::phys_addr_t or ResourceSize as a replacement in various places throughout the kernel. Fix that by introducing a new typedef on the Rust side. Place it next to the existing ResourceSize typedef since they're quite related to each other. Cc: stable@vger.kernel.org # for v6.18 [1] Signed-off-by: Alice Ryhl <aliceryhl@google.com> Link: https://patch.msgid.link/20251112-resource-phys-typedefs-v2-4-538307384f82@google.com Link: https://lore.kernel.org/all/20251112-resource-phys-typedefs-v2-0-538307384f82@google.com/ [1] Signed-off-by: Danilo Krummrich <dakr@kernel.org>
Diffstat (limited to 'rust/kernel/io/resource.rs')
-rw-r--r--rust/kernel/io/resource.rs9
1 files changed, 6 insertions, 3 deletions
diff --git a/rust/kernel/io/resource.rs b/rust/kernel/io/resource.rs
index eb25cf9b4c90..56cfde97ce87 100644
--- a/rust/kernel/io/resource.rs
+++ b/rust/kernel/io/resource.rs
@@ -16,7 +16,10 @@ use crate::{
types::Opaque, //
};
-pub use super::ResourceSize;
+pub use super::{
+ PhysAddr,
+ ResourceSize, //
+};
/// A region allocated from a parent [`Resource`].
///
@@ -97,7 +100,7 @@ impl Resource {
/// the region, or a part of it, is already in use.
pub fn request_region(
&self,
- start: ResourceSize,
+ start: PhysAddr,
size: ResourceSize,
name: CString,
flags: Flags,
@@ -131,7 +134,7 @@ impl Resource {
}
/// Returns the start address of the resource.
- pub fn start(&self) -> ResourceSize {
+ pub fn start(&self) -> PhysAddr {
let inner = self.0.get();
// SAFETY: Safe as per the invariants of `Resource`.
unsafe { (*inner).start }