9#ifndef _FSL_COMMON_DSP_H_
10#define _FSL_COMMON_DSP_H_
24#define USEC_TO_COUNT(us, clockFreqInHz) (uint64_t)(((uint64_t)(us) * (clockFreqInHz)) / 1000000U)
26#define COUNT_TO_USEC(count, clockFreqInHz) (uint64_t)((uint64_t)(count) * 1000000U / (clockFreqInHz))
29#define MSEC_TO_COUNT(ms, clockFreqInHz) (uint64_t)((uint64_t)(ms) * (clockFreqInHz) / 1000U)
31#define COUNT_TO_MSEC(count, clockFreqInHz) (uint64_t)((uint64_t)(count) * 1000U / (clockFreqInHz))
34#define SDK_ISR_EXIT_BARRIER
39#define SDK_ALIGN(var, alignbytes) var __attribute__((aligned(alignbytes)))
42#if defined(FSL_FEATURE_L1DCACHE_LINESIZE_BYTE)
43#define SDK_L1DCACHE_ALIGN(var) SDK_ALIGN(var, FSL_FEATURE_L1DCACHE_LINESIZE_BYTE)
47#if defined(FSL_FEATURE_L2CACHE_LINESIZE_BYTE)
48#define SDK_L2CACHE_ALIGN(var) SDK_ALIGN(var, FSL_FEATURE_L2CACHE_LINESIZE_BYTE)
52#define SDK_SIZEALIGN(var, alignbytes) \
53 ((unsigned int)((var) + ((alignbytes)-1U)) & (unsigned int)(~(unsigned int)((alignbytes)-1U)))
64#define AT_NONCACHEABLE_SECTION_INIT(var) __attribute__((section("NonCacheable.init"))) var
65#define AT_NONCACHEABLE_SECTION(var) __attribute__((section("NonCacheable"))) var
66#define AT_NONCACHEABLE_SECTION_ALIGN_INIT(var, alignbytes) \
67 __attribute__((section("NonCacheable.init"))) var __attribute__((aligned(alignbytes)))
68#define AT_NONCACHEABLE_SECTION_ALIGN(var, alignbytes) \
69 __attribute__((section("NonCacheable"))) var __attribute__((aligned(alignbytes)))
77#if (defined(FSL_SDK_DRIVER_QUICK_ACCESS_ENABLE) && FSL_SDK_DRIVER_QUICK_ACCESS_ENABLE)
79#define AT_QUICKACCESS_SECTION_CODE(func) __attribute__((section("CodeQuickAccess"), __noinline__)) func
80#define AT_QUICKACCESS_SECTION_DATA(func) __attribute__((section("DataQuickAccess"))) func
84#define AT_QUICKACCESS_SECTION_CODE(func) func
85#define AT_QUICKACCESS_SECTION_DATA(func) func
91#define NVIC_SetPriorityGrouping(value) do {} while(0)
92#define NVIC_GetPriorityGrouping() do {} while(0)
93#define NVIC_EnableIRQ(value) do {} while(0)
94#define NVIC_GetEnableIRQ(value) do {} while(0)
95#define NVIC_DisableIRQ(value) do {} while(0)
96#define NVIC_GetPendingIRQ(value) do {} while(0)
97#define NVIC_SetPendingIRQ(value) do {} while(0)
98#define NVIC_ClearPendingIRQ(value) do {} while(0)
99#define NVIC_GetActive(value) do {} while(0)
105#include "fsl_clock.h"
111#if defined(__cplusplus)
148static inline uint32_t DisableGlobalIRQ(
void)
160static inline void EnableGlobalIRQ(uint32_t primask)
164#if defined(__cplusplus)
IRQn_Type
STM32H7XX Interrupt Number Definition, according to the selected device in Library_configuration_sect...
Definition: stm32h723xx.h:49
int32_t status_t
Type used for all status and error return values.
Definition: fsl_common.h:225
@ kStatus_Success
Definition: fsl_common.h:211