diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/nvmem_vars.c | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/test/nvmem_vars.c b/test/nvmem_vars.c index 1ea2a312c6..56b96ef054 100644 --- a/test/nvmem_vars.c +++ b/test/nvmem_vars.c @@ -21,15 +21,29 @@ uint32_t nvmem_user_sizes[] = { }; BUILD_ASSERT(ARRAY_SIZE(nvmem_user_sizes) == NVMEM_NUM_USERS); -/* Internal functions exported for test */ -void release_local_copy(void); - /****************************************************************************/ /* Mock the flash storage */ static uint8_t ram_buffer[CONFIG_FLASH_NVMEM_VARS_USER_SIZE]; static uint8_t flash_buffer[CONFIG_FLASH_NVMEM_VARS_USER_SIZE]; +extern char *rbuf; + +/* Internal functions exported for test */ +void release_local_copy(void) +{ + rbuf = NULL; +} + +int get_local_copy(void) +{ + if (!rbuf) { + memcpy(ram_buffer, flash_buffer, sizeof(ram_buffer)); + rbuf = (char *)ram_buffer; + } + return EC_SUCCESS; +} + int nvmem_read(uint32_t startOffset, uint32_t size, void *data_, enum nvmem_users user) { |