sector_cache.h 745 B

123456789101112131415161718192021222324252627282930313233343536
  1. #pragma once
  2. #include <stdint.h>
  3. #ifdef __cplusplus
  4. extern "C" {
  5. #endif
  6. /**
  7. * @brief Init sector cache system
  8. */
  9. void sector_cache_init();
  10. /**
  11. * @brief Get sector data from cache
  12. * @param n_sector Sector number
  13. * @return Pointer to sector data or NULL if not found
  14. */
  15. uint8_t* sector_cache_get(uint32_t n_sector);
  16. /**
  17. * @brief Put sector data to cache
  18. * @param n_sector Sector number
  19. * @param data Pointer to sector data
  20. */
  21. void sector_cache_put(uint32_t n_sector, uint8_t* data);
  22. /**
  23. * @brief Invalidate sector cache for given range
  24. * @param start_sector Start sector number
  25. * @param end_sector End sector number
  26. */
  27. void sector_cache_invalidate_range(uint32_t start_sector, uint32_t end_sector);
  28. #ifdef __cplusplus
  29. }
  30. #endif