This is an automated email from the ASF dual-hosted git repository.

xiaoxiang781216 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git


The following commit(s) were added to refs/heads/master by this push:
     new 45657b976b2 arch/nrf53: fix HFXO trim field extraction
45657b976b2 is described below

commit 45657b976b25b978f0f26db1287127f17a4a775b
Author: raiden00pl <[email protected]>
AuthorDate: Thu Aug 13 12:22:36 2026 +0200

    arch/nrf53: fix HFXO trim field extraction
    
    fix HFXO trim field extraction
    
    Signed-off-by: raiden00pl <[email protected]>
---
 arch/arm/src/nrf53/nrf53_oscconfig.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/arch/arm/src/nrf53/nrf53_oscconfig.c 
b/arch/arm/src/nrf53/nrf53_oscconfig.c
index 62f8f6aba31..06bf0bbd2e6 100644
--- a/arch/arm/src/nrf53/nrf53_oscconfig.c
+++ b/arch/arm/src/nrf53/nrf53_oscconfig.c
@@ -68,13 +68,14 @@ static void nrf53_hfxo_intcap(void)
 
   trim = getreg32(NRF53_FICR_XOSC32MTRIM);
 
-  slope_field = (trim & FICR_XOSC32MTRIM_OFFSET_MASK);
-  slope_mask = FICR_XOSC32MTRIM_OFFSET_MASK;
+  slope_field = ((trim & FICR_XOSC32MTRIM_SLOPE_MASK) >>
+                 FICR_XOSC32MTRIM_SLOPE_SHIFT);
+  slope_mask = (FICR_XOSC32MTRIM_SLOPE_MASK >>
+                FICR_XOSC32MTRIM_SLOPE_SHIFT);
   slope_sign = (slope_mask - (slope_mask >> 1));
   slope = (int32_t)(slope_field ^ slope_sign) - (int32_t)slope_sign;
 
-  offset = ((trim & FICR_XOSC32MTRIM_SLOPE_MASK) >>
-            FICR_XOSC32MTRIM_SLOPE_SHIFT);
+  offset = trim & FICR_XOSC32MTRIM_OFFSET_MASK;
 
   /* CAPVALUE = (((FICR->XOSC32MTRIM.SLOPE+56)*(CAPACITANCE*2-14))
    *            +((FICR->XOSC32MTRIM.OFFSET-8)<<4)+32)>>6;

Reply via email to