mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-06-23 07:01:38 +00:00
arm: make save_boot_params_ret prototype visible for AArch64
The save_boot_params_ret() prototype (for those of us, that have a valid SP on entry and can implement save_boot_params() in C), was previously only defined for !defined(CONFIG_ARM64). This moves the declaration to a common block to ensure the prototype is available to everyone that might need it. Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Tested-by: Andy Yan <andy.yan@rock-chips.com>
This commit is contained in:
parent
b377d22264
commit
7776cc011d
1 changed files with 31 additions and 31 deletions
|
@ -332,37 +332,6 @@ void psci_arch_init(void);
|
||||||
|
|
||||||
#ifndef __ASSEMBLY__
|
#ifndef __ASSEMBLY__
|
||||||
|
|
||||||
/**
|
|
||||||
* save_boot_params() - Save boot parameters before starting reset sequence
|
|
||||||
*
|
|
||||||
* If you provide this function it will be called immediately U-Boot starts,
|
|
||||||
* both for SPL and U-Boot proper.
|
|
||||||
*
|
|
||||||
* All registers are unchanged from U-Boot entry. No registers need be
|
|
||||||
* preserved.
|
|
||||||
*
|
|
||||||
* This is not a normal C function. There is no stack. Return by branching to
|
|
||||||
* save_boot_params_ret.
|
|
||||||
*
|
|
||||||
* void save_boot_params(u32 r0, u32 r1, u32 r2, u32 r3);
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* save_boot_params_ret() - Return from save_boot_params()
|
|
||||||
*
|
|
||||||
* If you provide save_boot_params(), then you should jump back to this
|
|
||||||
* function when done. Try to preserve all registers.
|
|
||||||
*
|
|
||||||
* If your implementation of save_boot_params() is in C then it is acceptable
|
|
||||||
* to simply call save_boot_params_ret() at the end of your function. Since
|
|
||||||
* there is no link register set up, you cannot just exit the function. U-Boot
|
|
||||||
* will return to the (initialised) value of lr, and likely crash/hang.
|
|
||||||
*
|
|
||||||
* If your implementation of save_boot_params() is in assembler then you
|
|
||||||
* should use 'b' or 'bx' to return to save_boot_params_ret.
|
|
||||||
*/
|
|
||||||
void save_boot_params_ret(void);
|
|
||||||
|
|
||||||
#ifdef CONFIG_ARMV7_LPAE
|
#ifdef CONFIG_ARMV7_LPAE
|
||||||
void switch_to_hypervisor_ret(void);
|
void switch_to_hypervisor_ret(void);
|
||||||
#endif
|
#endif
|
||||||
|
@ -555,6 +524,37 @@ void mmu_page_table_flush(unsigned long start, unsigned long stop);
|
||||||
#endif /* CONFIG_ARM64 */
|
#endif /* CONFIG_ARM64 */
|
||||||
|
|
||||||
#ifndef __ASSEMBLY__
|
#ifndef __ASSEMBLY__
|
||||||
|
/**
|
||||||
|
* save_boot_params() - Save boot parameters before starting reset sequence
|
||||||
|
*
|
||||||
|
* If you provide this function it will be called immediately U-Boot starts,
|
||||||
|
* both for SPL and U-Boot proper.
|
||||||
|
*
|
||||||
|
* All registers are unchanged from U-Boot entry. No registers need be
|
||||||
|
* preserved.
|
||||||
|
*
|
||||||
|
* This is not a normal C function. There is no stack. Return by branching to
|
||||||
|
* save_boot_params_ret.
|
||||||
|
*
|
||||||
|
* void save_boot_params(u32 r0, u32 r1, u32 r2, u32 r3);
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* save_boot_params_ret() - Return from save_boot_params()
|
||||||
|
*
|
||||||
|
* If you provide save_boot_params(), then you should jump back to this
|
||||||
|
* function when done. Try to preserve all registers.
|
||||||
|
*
|
||||||
|
* If your implementation of save_boot_params() is in C then it is acceptable
|
||||||
|
* to simply call save_boot_params_ret() at the end of your function. Since
|
||||||
|
* there is no link register set up, you cannot just exit the function. U-Boot
|
||||||
|
* will return to the (initialised) value of lr, and likely crash/hang.
|
||||||
|
*
|
||||||
|
* If your implementation of save_boot_params() is in assembler then you
|
||||||
|
* should use 'b' or 'bx' to return to save_boot_params_ret.
|
||||||
|
*/
|
||||||
|
void save_boot_params_ret(void);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Change the cache settings for a region.
|
* Change the cache settings for a region.
|
||||||
*
|
*
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue