diff options
| author | Alice Ryhl <aliceryhl@google.com> | 2025-11-12 09:48:35 +0000 |
|---|---|---|
| committer | Danilo Krummrich <dakr@kernel.org> | 2025-11-13 20:17:24 +1100 |
| commit | dd6ff5cf56fb183fce605ca6a5bfce228cd8888b (patch) | |
| tree | decc11adecfeeda5ce4c07fab60604d0d07327d5 /rust/kernel/io/resource.rs | |
| parent | ee2776e54b2666f99ef5e3ad0b60889e1500dada (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.rs | 9 |
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 } |