diff options
author | Tom Rini <trini@konsulko.com> | 2020-05-11 09:46:43 -0400 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2020-05-11 09:46:43 -0400 |
commit | 1bccb23b7bb67e029cc6b22bf7d25243ef71c43c (patch) | |
tree | 9fe0b6397d88359177131348a077aad28836285d /arch/arm/cpu/armv8/spl_data.c | |
parent | 951db64186b2b9ad2e3ee30e2093deea005bdd8a (diff) | |
parent | d52a03b130565e6b01dcbe656ebeb611d5ee1aa1 (diff) |
Merge tag 'u-boot-imx-20200511' of https://gitlab.denx.de/u-boot/custodians/u-boot-imx
i.MX for 2020.07
----------------
- i.MX NAND and nandbxb for i.MX8M
- imx8MM : new beacon devkit
- imx8MQ : new pico-imx8MQ
- imx8QXP : extend to enable M4, fixes
- add thermal support
- caches in SPL (missing board)
- Fixes
Travis: https://travis-ci.org/github/sbabic/u-boot-imx/builds/685391011
Diffstat (limited to 'arch/arm/cpu/armv8/spl_data.c')
-rw-r--r-- | arch/arm/cpu/armv8/spl_data.c | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/arch/arm/cpu/armv8/spl_data.c b/arch/arm/cpu/armv8/spl_data.c new file mode 100644 index 0000000000..8fd986a67a --- /dev/null +++ b/arch/arm/cpu/armv8/spl_data.c @@ -0,0 +1,29 @@ +// 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++; +} |