LCOV - code coverage report
Current view: top level - zephyr/arch/arm - arch_inlines.h Coverage Total Hit
Test: new.info Lines: 0.0 % 3 0
Test Date: 2025-03-11 06:50:38

            Line data    Source code
       1            0 : /*
       2              :  * Copyright 2022 IoT.bzh
       3              :  *
       4              :  * SPDX-License-Identifier: Apache-2.0
       5              :  */
       6              : 
       7              : #ifndef ZEPHYR_INCLUDE_ARCH_ARM_ARCH_INLINES_H
       8              : #define ZEPHYR_INCLUDE_ARCH_ARM_ARCH_INLINES_H
       9              : 
      10              : #include <zephyr/kernel_structs.h>
      11              : #if defined(CONFIG_CPU_AARCH32_CORTEX_R) || defined(CONFIG_CPU_AARCH32_CORTEX_A)
      12              : #include <zephyr/arch/arm/cortex_a_r/lib_helpers.h>
      13              : #include <zephyr/arch/arm/cortex_a_r/tpidruro.h>
      14              : 
      15              : static ALWAYS_INLINE _cpu_t *arch_curr_cpu(void)
      16              : {
      17              :         return (_cpu_t *)(read_tpidruro() & TPIDRURO_CURR_CPU);
      18              : }
      19              : #else
      20              : 
      21              : #ifndef CONFIG_SMP
      22              : static ALWAYS_INLINE _cpu_t *arch_curr_cpu(void)
      23              : {
      24              :         /* Dummy implementation always return the first cpu */
      25              :         return &_kernel.cpus[0];
      26              : }
      27              : #endif
      28              : #endif
      29              : 
      30            0 : static ALWAYS_INLINE uint32_t arch_proc_id(void)
      31              : {
      32              :         /*
      33              :          * Placeholder implementation to be replaced with an architecture
      34              :          * specific call to get processor ID
      35              :          */
      36              :         return arch_curr_cpu()->id;
      37              : }
      38              : 
      39            0 : static ALWAYS_INLINE unsigned int arch_num_cpus(void)
      40              : {
      41              :         return CONFIG_MP_MAX_NUM_CPUS;
      42              : }
      43              : 
      44              : #endif /* ZEPHYR_INCLUDE_ARCH_ARM_ARCH_INLINES_H */
        

Generated by: LCOV version 2.0-1