2022-08-27 07:25:47 +03:00
|
|
|
#pragma once
|
|
|
|
#include <stdint.h>
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief Init sector cache system
|
|
|
|
*/
|
2024-03-19 17:43:52 +03:00
|
|
|
void sector_cache_init(void);
|
2022-08-27 07:25:47 +03:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief Get sector data from cache
|
|
|
|
* @param n_sector Sector number
|
|
|
|
* @return Pointer to sector data or NULL if not found
|
|
|
|
*/
|
|
|
|
uint8_t* sector_cache_get(uint32_t n_sector);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief Put sector data to cache
|
|
|
|
* @param n_sector Sector number
|
|
|
|
* @param data Pointer to sector data
|
|
|
|
*/
|
|
|
|
void sector_cache_put(uint32_t n_sector, uint8_t* data);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief Invalidate sector cache for given range
|
|
|
|
* @param start_sector Start sector number
|
|
|
|
* @param end_sector End sector number
|
|
|
|
*/
|
|
|
|
void sector_cache_invalidate_range(uint32_t start_sector, uint32_t end_sector);
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|