37#ifndef BSP_CLOCK_ARMV7M_H
38#define BSP_CLOCK_ARMV7M_H
60#ifdef ARM_MULTILIB_ARCH_V7M
67extern ARMV7M_Timecounter _ARMV7M_TC;
69static inline uint32_t _ARMV7M_Clock_frequency(
void)
71#ifdef BSP_ARMV7M_SYSTICK_FREQUENCY
72 return BSP_ARMV7M_SYSTICK_FREQUENCY;
74 volatile ARMV7M_Systick *systick = _ARMV7M_Systick;
75 return ARMV7M_SYSTICK_CALIB_TENMS_GET(systick->calib) * 100;
79static uint32_t _ARMV7M_Clock_counter(ARMV7M_Timecounter *tc)
81 volatile ARMV7M_Systick *systick;
89 systick = _ARMV7M_Systick;
90 counter = systick->cvr;
92 interval = systick->rvr;
96 counter = systick->cvr;
101 counter = interval - counter + ticks;
This header file provides interfaces of the ARMv7-M architecture support.
#define RTEMS_PREDICT_FALSE(_exp)
Evaluates the integral expression and tells the compiler that the predicted value is false (0).
Definition: basedefs.h:732
ISR_Level rtems_interrupt_level
This integer type represents interrupt levels.
Definition: intr.h:111
#define rtems_interrupt_enable(_isr_cookie)
Restores the previous interrupt level on the current processor.
Definition: intr.h:311
#define rtems_interrupt_disable(_isr_cookie)
Disables the maskable interrupts on the current processor.
Definition: intr.h:264
This header file provides the Timecounter Support API.