diff options
| author | Dario Nieuwenhuis <[email protected]> | 2022-01-19 15:59:06 +0100 |
|---|---|---|
| committer | Dario Nieuwenhuis <[email protected]> | 2022-01-19 17:31:32 +0100 |
| commit | b640c72092ff803dc0a70c02a82351156ceee9fd (patch) | |
| tree | 4c7bc68c8e7606da2f8eb2819db1bb6c3d5e5fc9 | |
| parent | a607cf6142b24bf34a5a43e46f8e4764d34f4387 (diff) | |
nrf: return ptr in slice_ptr_parts
| -rw-r--r-- | embassy-nrf/src/util.rs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/embassy-nrf/src/util.rs b/embassy-nrf/src/util.rs index 76162b701..b24bc452f 100644 --- a/embassy-nrf/src/util.rs +++ b/embassy-nrf/src/util.rs | |||
| @@ -4,18 +4,18 @@ const SRAM_LOWER: usize = 0x2000_0000; | |||
| 4 | const SRAM_UPPER: usize = 0x3000_0000; | 4 | const SRAM_UPPER: usize = 0x3000_0000; |
| 5 | 5 | ||
| 6 | // TODO: replace transmutes with core::ptr::metadata once it's stable | 6 | // TODO: replace transmutes with core::ptr::metadata once it's stable |
| 7 | 7 | pub(crate) fn slice_ptr_parts<T>(slice: *const [T]) -> (*const T, usize) { | |
| 8 | pub(crate) fn slice_ptr_parts<T>(slice: *const [T]) -> (usize, usize) { | ||
| 9 | unsafe { mem::transmute(slice) } | 8 | unsafe { mem::transmute(slice) } |
| 10 | } | 9 | } |
| 11 | 10 | ||
| 12 | pub(crate) fn slice_ptr_parts_mut<T>(slice: *mut [T]) -> (usize, usize) { | 11 | pub(crate) fn slice_ptr_parts_mut<T>(slice: *mut [T]) -> (*mut T, usize) { |
| 13 | unsafe { mem::transmute(slice) } | 12 | unsafe { mem::transmute(slice) } |
| 14 | } | 13 | } |
| 15 | 14 | ||
| 16 | /// Does this slice reside entirely within RAM? | 15 | /// Does this slice reside entirely within RAM? |
| 17 | pub(crate) fn slice_in_ram<T>(slice: *const [T]) -> bool { | 16 | pub(crate) fn slice_in_ram<T>(slice: *const [T]) -> bool { |
| 18 | let (ptr, len) = slice_ptr_parts(slice); | 17 | let (ptr, len) = slice_ptr_parts(slice); |
| 18 | let ptr = ptr as usize; | ||
| 19 | ptr >= SRAM_LOWER && (ptr + len * core::mem::size_of::<T>()) < SRAM_UPPER | 19 | ptr >= SRAM_LOWER && (ptr + len * core::mem::size_of::<T>()) < SRAM_UPPER |
| 20 | } | 20 | } |
| 21 | 21 | ||
