From a1ae003be9792473f2e409bfa705ff2091e43bcd Mon Sep 17 00:00:00 2001 From: Javi Merino Date: Sat, 5 Nov 2022 11:48:26 +0000 Subject: [PATCH 1/2] Add all memory barrier variants (#50) The Arm A-profile A64 Instruction Set Architecture[0] specifies many memory barrier variants. In the 2022-09 version of the document, they are in pages 348 and 351 for the DMB and DSB respectively. The cortex-a crate only supports SY, ISH and ISHST currently. Add the rest. [0] https://developer.arm.com/documentation/ddi0602/ --- src/asm/barrier.rs | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/src/asm/barrier.rs b/src/asm/barrier.rs index 5322d65..dec0e12 100644 --- a/src/asm/barrier.rs +++ b/src/asm/barrier.rs @@ -55,12 +55,30 @@ macro_rules! dmb_dsb { } pub struct SY; +pub struct ST; +pub struct LD; pub struct ISH; pub struct ISHST; +pub struct ISHLD; +pub struct NSH; +pub struct NSHST; +pub struct NSHLD; +pub struct OSH; +pub struct OSHST; +pub struct OSHLD; +dmb_dsb!(SY); +dmb_dsb!(ST); +dmb_dsb!(LD); dmb_dsb!(ISH); dmb_dsb!(ISHST); -dmb_dsb!(SY); +dmb_dsb!(ISHLD); +dmb_dsb!(NSH); +dmb_dsb!(NSHST); +dmb_dsb!(NSHLD); +dmb_dsb!(OSH); +dmb_dsb!(OSHST); +dmb_dsb!(OSHLD); impl sealed::Isb for SY { #[inline(always)] From 2c496c164b866ce19c2508be5ff743f1e1cf1ab6 Mon Sep 17 00:00:00 2001 From: Andre Richter Date: Sat, 5 Nov 2022 12:50:18 +0100 Subject: [PATCH 2/2] Bump version to 8.1.0 --- Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index 774a13d..0137c99 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cortex-a" -version = "8.0.0" +version = "8.1.0" authors = ["Andre Richter "] description = "Low level access to Cortex-A processors" homepage = "https://github.com/rust-embedded/cortex-a" pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy