I'm migrating my code from the MESH SDK 3.1.0 to 4.0.0
I'm using the following function to initialize a persistance storage controller
uint32_t pers_data_init(void)
{
/* Adding custom data to flash for persistent storage */
// 1) Flash manager is already initialized
// 2) Add a new flash manager instance. NB: should not overlap (in region) the instance used by mesh.
flash_manager_config_t custom_data_manager_config;
custom_data_manager_config.write_complete_cb = write_complete_cb;
custom_data_manager_config.invalidate_complete_cb = write_invalidate_cb;
custom_data_manager_config.remove_complete_cb = remove_completed_cb;
custom_data_manager_config.min_available_space = WORD_SIZE;
// The new instance of flash manager should use an unused region of flash:
custom_data_manager_config.p_area = (const flash_manager_page_t *)(((const uint8_t *)dsm_flash_area_get()) - (ACCESS_FLASH_PAGE_COUNT * PAGE_SIZE) - (NET_FLASH_PAGE_COUNT * PAGE_SIZE));
custom_data_manager_config.page_count = APPLICATION_DATA_FLASH_PAGE_COUNT;
uint32_t ret_code = flash_manager_add(&m_application_data_flash_manager, &custom_data_manager_config);
if (NRF_SUCCESS != ret_code)
{
__LOG(LOG_SRC_APP, LOG_LEVEL_INFO, "Flash error: no memory\n", ret_code);
}
return ret_code;
}
The new SDK doesn't use the ACCESS_FLASH_PAGE_COUNT and the NET_FLASH_PAGE_COUNT Macros.
It doesn't support morevoer the dsm_flash_area_get() function.
How can i manage my persistent data with the new SDK?
Thanks