1234567891011121314151617181920212223242526272829 |
- // SPDX-License-Identifier: GPL-2.0+
- /*
- * Copyright 2020 NXP
- */
- #include <common.h>
- #include <spl.h>
- char __data_save_start[0] __section(.__data_save_start);
- char __data_save_end[0] __section(.__data_save_end);
- u32 cold_reboot_flag = 1;
- void spl_save_restore_data(void)
- {
- u32 data_size = __data_save_end - __data_save_start;
- if (cold_reboot_flag == 1) {
- /* Save data section to data_save section */
- memcpy(__data_save_start, __data_save_start - data_size,
- data_size);
- } else {
- /* Restore the data_save section to data section */
- memcpy(__data_save_start - data_size, __data_save_start,
- data_size);
- }
- cold_reboot_flag++;
- }
|