14#ifndef MCUXCLOSCCASAFO_SFR_REGBANK_H_
15#define MCUXCLOSCCASAFO_SFR_REGBANK_H_
18#include <platform_specific_headers.h>
28static inline uint32_t * mcuxClOsccaSafo_Sfr_getAddrOfDataReg(uint32_t dataRegIndex)
30 MCUX_CSSL_ANALYSIS_START_PATTERN_HW_READ()
32 MCUX_CSSL_ANALYSIS_STOP_PATTERN_HW_READ()
37static inline uint32_t * mcuxClOsccaSafo_Sfr_getAddrOfKeyReg(uint32_t keyRegIndex)
39 MCUX_CSSL_ANALYSIS_START_PATTERN_HW_READ()
41 MCUX_CSSL_ANALYSIS_STOP_PATTERN_HW_READ()
46static inline
void mcuxClOsccaSafo_Sfr_writeKeyWord(uint32_t index, uint32_t value)
48 MCUX_CSSL_ANALYSIS_START_PATTERN_HW_WRITE()
50 MCUX_CSSL_ANALYSIS_START_SUPPRESS_OUT_OF_BOUNDS_ACCESS("Apply an index to the base address of a HW peripheral to access the correct SFR-word. The caller is responsible for ensuring that the index is valid.")
51 safoKeyWord[index] = value;
52 MCUX_CSSL_ANALYSIS_STOP_SUPPRESS_OUT_OF_BOUNDS_ACCESS()
53 MCUX_CSSL_ANALYSIS_STOP_PATTERN_HW_WRITE()
58static inline uint32_t mcuxClOsccaSafo_Sfr_readKeyWord(uint32_t index)
60 MCUX_CSSL_ANALYSIS_START_PATTERN_HW_READ()
62 MCUX_CSSL_ANALYSIS_START_SUPPRESS_OUT_OF_BOUNDS_ACCESS("Apply an index to the base address of a HW peripheral to access the correct SFR-word. The caller is responsible for ensuring that the index is valid.")
63 return safoKeyWord[index];
64 MCUX_CSSL_ANALYSIS_STOP_SUPPRESS_OUT_OF_BOUNDS_ACCESS()
65 MCUX_CSSL_ANALYSIS_STOP_PATTERN_HW_READ()
70static inline
void mcuxClOsccaSafo_Sfr_writeDatinWord(uint32_t index, uint32_t value)
72 MCUX_CSSL_ANALYSIS_START_PATTERN_HW_WRITE()
74 MCUX_CSSL_ANALYSIS_START_SUPPRESS_OUT_OF_BOUNDS_ACCESS("Apply an index to the base address of a HW peripheral to access the correct SFR-word. The caller is responsible for ensuring that the index is valid.")
75 safoDatinWord[index] = value;
76 MCUX_CSSL_ANALYSIS_STOP_SUPPRESS_OUT_OF_BOUNDS_ACCESS()
77 MCUX_CSSL_ANALYSIS_STOP_PATTERN_HW_WRITE()
80#ifdef MCUXCL_FEATURE_HW_SAFO_SM3
82static inline void mcuxClOsccaSafo_Sfr_writeFifoWord(uint32_t value)
90static inline uint32_t mcuxClOsccaSafo_Sfr_readDatinWord(uint32_t index)
92 MCUX_CSSL_ANALYSIS_START_PATTERN_HW_READ()
94 MCUX_CSSL_ANALYSIS_START_SUPPRESS_OUT_OF_BOUNDS_ACCESS("Apply an index to the base address of a HW peripheral to access the correct SFR-word. The caller is responsible for ensuring that the index is valid.")
95 return safoDatinWord[index];
96 MCUX_CSSL_ANALYSIS_STOP_SUPPRESS_OUT_OF_BOUNDS_ACCESS()
97 MCUX_CSSL_ANALYSIS_STOP_PATTERN_HW_READ()
102static inline uint32_t mcuxClOsccaSafo_Sfr_readDatoutWord(uint32_t index)
104 MCUX_CSSL_ANALYSIS_START_PATTERN_HW_READ()
106 MCUX_CSSL_ANALYSIS_START_SUPPRESS_OUT_OF_BOUNDS_ACCESS("Apply an index to the base address of a HW peripheral to access the correct SFR-word. The caller is responsible for ensuring that the index is valid.")
107 return safoDatoutWord[index];
108 MCUX_CSSL_ANALYSIS_STOP_SUPPRESS_OUT_OF_BOUNDS_ACCESS()
109 MCUX_CSSL_ANALYSIS_STOP_PATTERN_HW_READ()
Macros for abstracting SAFO hardware SFR access.
#define MCUXCLOSCCASAFO_SFR_READ(sfr)
Read from SAFO SFR.
Definition mcuxClOsccaSafo_SfrAccess.h:42
#define MCUXCLOSCCASAFO_SFR_WRITE(sfr, value)
Write to SAFO SFR.
Definition mcuxClOsccaSafo_SfrAccess.h:45
Provides the API for the CSSL flow protection mechanism.
#define MCUX_CSSL_FP_FUNCTION_DEF(...)
Definition of a flow protected function.
Definition mcuxCsslFlowProtection.h:159