acrn-hypervisor/hypervisor/boot/include/reloc.h

25 lines
661 B
C
Raw Normal View History

/*
* Copyright (C) <2018> Intel Corporation
* SPDX-License-Identifier: BSD-3-Clause
*/
#ifndef RELOCATE_H
#define RELOCATE_H
extern void _relocate(void);
extern uint64_t get_hv_image_delta(void);
extern uint64_t get_hv_image_base(void);
extern uint64_t trampoline_relo_addr(void *addr);
extern uint64_t read_trampoline_sym(void *sym);
extern void write_trampoline_sym(void *sym, uint64_t val);
/* external symbols that are helpful for relocation */
extern uint8_t _DYNAMIC[];
extern uint8_t cpu_primary_start_32[];
extern uint8_t cpu_primary_start_64[];
extern uint8_t trampoline_spinlock_ptr[];
#endif /* RELOCATE_H */