| CMSIS-Core (Cortex-A) CMSIS-Core support for Cortex-A processor-based devices |

Loading...
Searching...
No Matches
Functions
L1 Cache Functions
Core Peripherals

L1 Cache Functions give support to enable, clean and invalidate level 1 instruction and data caches, as well as to enable branch target address cache. More...

## Functions
__STATIC_FORCEINLINE void | L1C_EnableCaches (void)
| Enable Caches by setting I and C bits in SCTLR register.
__STATIC_FORCEINLINE void | L1C_DisableCaches (void)
| Disable Caches by clearing I and C bits in SCTLR register.
__STATIC_FORCEINLINE void | L1C_EnableBTAC (void)
| Enable Branch Prediction by setting Z bit in SCTLR register.
__STATIC_FORCEINLINE void | L1C_DisableBTAC (void)
| Disable Branch Prediction by clearing Z bit in SCTLR register.
__STATIC_FORCEINLINE void | L1C_InvalidateBTAC (void)
| Invalidate entire branch predictor array.
__STATIC_FORCEINLINE void | L1C_InvalidateICacheAll (void)
| Invalidate the whole instruction cache.
__STATIC_FORCEINLINE void | L1C_CleanDCacheMVA (void *va)
| Clean data cache line by address.
__STATIC_FORCEINLINE void | L1C_InvalidateDCacheMVA (void *va)
| Invalidate data cache line by address.
__STATIC_FORCEINLINE void | L1C_CleanInvalidateDCacheMVA (void *va)
| Clean and Invalidate data cache by address.
__STATIC_FORCEINLINE void | L1C_CleanInvalidateCache (uint32_t op)
| Clean and Invalidate the entire data or unified cache.
__STATIC_FORCEINLINE void | L1C_InvalidateDCacheAll (void)
| Invalidate the whole data cache.
__STATIC_FORCEINLINE void | L1C_CleanDCacheAll (void)
| Clean the whole data cache.
__STATIC_FORCEINLINE void | L1C_CleanInvalidateDCacheAll (void)
| Clean and invalidate the whole data cache.

## Description

L1 Cache Functions give support to enable, clean and invalidate level 1 instruction and data caches, as well as to enable branch target address cache.

## Function Documentation

## ◆ L1C_CleanDCacheAll()

__STATIC_INLINE void L1C_CleanDCacheAll | ( | void |  | ) |

Clean the whole data cache.

## ◆ L1C_CleanDCacheMVA()

__STATIC_INLINE void L1C_CleanDCacheMVA | ( | void * | va | ) |

Clean data cache line by address.

Parameters

  [in] | va | Pointer to data to clear the cache for.

## ◆ L1C_CleanInvalidateCache()

__STATIC_INLINE void L1C_CleanInvalidateCache | ( | uint32_t | op | ) |

Clean and Invalidate the entire data or unified cache.

Parameters

  [in] | op | 0 - invalidate, 1 - clean, otherwise - invalidate and clean

Generic mechanism for cleaning/invalidating the entire data or unified cache to the point of coherency.

## ◆ L1C_CleanInvalidateDCacheAll()

__STATIC_INLINE void L1C_CleanInvalidateDCacheAll | ( | void |  | ) |

Clean and invalidate the whole data cache.

## ◆ L1C_CleanInvalidateDCacheMVA()

__STATIC_INLINE void L1C_CleanInvalidateDCacheMVA | ( | void * | va | ) |

Clean and Invalidate data cache by address.

Parameters

  [in] | va | Pointer to data to invalidate the cache for.

## ◆ L1C_DisableBTAC()

__STATIC_INLINE void L1C_DisableBTAC | ( | void |  | ) |

Disable Branch Prediction by clearing Z bit in SCTLR register.

## ◆ L1C_DisableCaches()

__STATIC_INLINE void L1C_DisableCaches | ( | void |  | ) |

Disable Caches by clearing I and C bits in SCTLR register.

## ◆ L1C_EnableBTAC()

__STATIC_INLINE void L1C_EnableBTAC | ( | void |  | ) |

Enable Branch Prediction by setting Z bit in SCTLR register.

## ◆ L1C_EnableCaches()

__STATIC_INLINE void L1C_EnableCaches | ( | void |  | ) |

Enable Caches by setting I and C bits in SCTLR register.

## ◆ L1C_InvalidateBTAC()

__STATIC_INLINE void L1C_InvalidateBTAC | ( | void |  | ) |

Invalidate entire branch predictor array.

## ◆ L1C_InvalidateDCacheAll()

__STATIC_INLINE void L1C_InvalidateDCacheAll | ( | void |  | ) |

Invalidate the whole data cache.

## ◆ L1C_InvalidateDCacheMVA()

__STATIC_INLINE void L1C_InvalidateDCacheMVA | ( | void * | va | ) |

Invalidate data cache line by address.

Parameters

  [in] | va | Pointer to data to invalidate the cache for.

## ◆ L1C_InvalidateICacheAll()

__STATIC_INLINE void L1C_InvalidateICacheAll | ( | void |  | ) |

Invalidate the whole instruction cache.