diff options
89 files changed, 254 insertions, 290 deletions
diff --git a/bl1/aarch64/bl1_arch_setup.c b/bl1/aarch64/bl1_arch_setup.c index 417a5366..758b8e8f 100644 --- a/bl1/aarch64/bl1_arch_setup.c +++ b/bl1/aarch64/bl1_arch_setup.c @@ -28,9 +28,8 @@ * POSSIBILITY OF SUCH DAMAGE. */ +#include <arch.h> #include <arch_helpers.h> -#include <platform.h> -#include <assert.h> /******************************************************************************* * Function that does the first bit of architectural setup that affects diff --git a/bl1/aarch64/bl1_exceptions.S b/bl1/aarch64/bl1_exceptions.S index e57f2288..68d088b7 100644 --- a/bl1/aarch64/bl1_exceptions.S +++ b/bl1/aarch64/bl1_exceptions.S @@ -29,11 +29,9 @@ */ #include <arch.h> +#include <asm_macros.S> #include <bl_common.h> -#include <bl1.h> -#include <platform.h> #include <runtime_svc.h> -#include <asm_macros.S> .globl bl1_exceptions diff --git a/bl1/bl1_main.c b/bl1/bl1_main.c index 05af75a8..de7bc318 100644 --- a/bl1/bl1_main.c +++ b/bl1/bl1_main.c @@ -28,13 +28,13 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <stdio.h> -#include <string.h> -#include <assert.h> +#include <arch.h> #include <arch_helpers.h> -#include <platform.h> -#include <semihosting.h> +#include <assert.h> +#include <bl_common.h> #include <bl1.h> +#include <platform.h> +#include <stdio.h> #include "bl1_private.h" /******************************************************************************* diff --git a/bl2/aarch64/bl2_arch_setup.c b/bl2/aarch64/bl2_arch_setup.c index 7ecf669b..0eafd159 100644 --- a/bl2/aarch64/bl2_arch_setup.c +++ b/bl2/aarch64/bl2_arch_setup.c @@ -28,8 +28,8 @@ * POSSIBILITY OF SUCH DAMAGE. */ +#include <arch.h> #include <arch_helpers.h> -#include <platform.h> /******************************************************************************* * Place holder function to perform any S-EL1 specific architectural setup. At diff --git a/bl2/aarch64/bl2_entrypoint.S b/bl2/aarch64/bl2_entrypoint.S index 6bc779a0..b8af9a55 100644 --- a/bl2/aarch64/bl2_entrypoint.S +++ b/bl2/aarch64/bl2_entrypoint.S @@ -28,9 +28,9 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <bl_common.h> #include <arch.h> #include <asm_macros.S> +#include <bl_common.h> .globl bl2_entrypoint diff --git a/bl2/bl2_main.c b/bl2/bl2_main.c index 6f6ea51b..ac285591 100644 --- a/bl2/bl2_main.c +++ b/bl2/bl2_main.c @@ -28,16 +28,14 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <stdio.h> -#include <string.h> -#include <assert.h> +#include <arch.h> #include <arch_helpers.h> -#include <console.h> -#include <platform.h> -#include <semihosting.h> +#include <assert.h> #include <bl_common.h> #include <bl2.h> #include <debug.h> +#include <platform.h> +#include <stdio.h> #include "bl2_private.h" /******************************************************************************* diff --git a/bl31/aarch64/bl31_arch_setup.c b/bl31/aarch64/bl31_arch_setup.c index 793b8958..acaa6b57 100644 --- a/bl31/aarch64/bl31_arch_setup.c +++ b/bl31/aarch64/bl31_arch_setup.c @@ -28,9 +28,12 @@ * POSSIBILITY OF SUCH DAMAGE. */ +#include <arch.h> #include <arch_helpers.h> -#include <platform.h> #include <assert.h> +#include <bl_common.h> +#include <bl31.h> +#include <platform.h> /******************************************************************************* * This duplicates what the primary cpu did after a cold boot in BL1. The same diff --git a/bl31/aarch64/bl31_entrypoint.S b/bl31/aarch64/bl31_entrypoint.S index c04bc181..39fa605e 100644 --- a/bl31/aarch64/bl31_entrypoint.S +++ b/bl31/aarch64/bl31_entrypoint.S @@ -28,10 +28,9 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <bl_common.h> -#include <platform.h> #include <arch.h> #include <asm_macros.S> +#include <bl_common.h> #include <cm_macros.S> diff --git a/bl31/aarch64/context.S b/bl31/aarch64/context.S index 2b2e7bf8..45d4a225 100644 --- a/bl31/aarch64/context.S +++ b/bl31/aarch64/context.S @@ -28,8 +28,9 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <context.h> +#include <arch.h> #include <asm_macros.S> +#include <context.h> /* ----------------------------------------------------- * The following function strictly follows the AArch64 diff --git a/bl31/aarch64/runtime_exceptions.S b/bl31/aarch64/runtime_exceptions.S index b89a7689..53cc176e 100644 --- a/bl31/aarch64/runtime_exceptions.S +++ b/bl31/aarch64/runtime_exceptions.S @@ -29,11 +29,11 @@ */ #include <arch.h> -#include <runtime_svc.h> -#include <platform.h> -#include <context.h> #include <asm_macros.S> #include <cm_macros.S> +#include <context.h> +#include <platform.h> +#include <runtime_svc.h> .globl runtime_exceptions .globl el3_exit diff --git a/bl31/bl31_main.c b/bl31/bl31_main.c index 907c4877..cf826d01 100644 --- a/bl31/bl31_main.c +++ b/bl31/bl31_main.c @@ -28,17 +28,14 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <stdio.h> -#include <string.h> -#include <assert.h> +#include <arch.h> #include <arch_helpers.h> -#include <console.h> -#include <platform.h> -#include <semihosting.h> +#include <assert.h> #include <bl_common.h> #include <bl31.h> -#include <runtime_svc.h> #include <context_mgmt.h> +#include <runtime_svc.h> +#include <stdio.h> /******************************************************************************* diff --git a/bl31/context_mgmt.c b/bl31/context_mgmt.c index 09b3bb8b..8d1396e2 100644 --- a/bl31/context_mgmt.c +++ b/bl31/context_mgmt.c @@ -28,15 +28,13 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <stdio.h> -#include <errno.h> -#include <string.h> -#include <assert.h> #include <arch_helpers.h> -#include <platform.h> +#include <assert.h> #include <bl_common.h> -#include <runtime_svc.h> +#include <context.h> #include <context_mgmt.h> +#include <platform.h> +#include <runtime_svc.h> /******************************************************************************* * Data structure which holds the pointers to non-secure and secure security diff --git a/bl31/runtime_svc.c b/bl31/runtime_svc.c index 8ec2f0b2..9a68e50f 100644 --- a/bl31/runtime_svc.c +++ b/bl31/runtime_svc.c @@ -28,20 +28,10 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <stdio.h> -#include <string.h> +#include <debug.h> #include <errno.h> -#include <assert.h> -#include <arch_helpers.h> -#include <console.h> -#include <platform.h> -#include <semihosting.h> -#include <bl_common.h> -#include <psci.h> #include <runtime_svc.h> -#include <context.h> -#include <debug.h> -#include <context_mgmt.h> +#include <string.h> /******************************************************************************* * The 'rt_svc_descs' array holds the runtime service descriptors exported by diff --git a/bl32/tsp/aarch64/tsp_entrypoint.S b/bl32/tsp/aarch64/tsp_entrypoint.S index 8bfe454a..97d54f65 100644 --- a/bl32/tsp/aarch64/tsp_entrypoint.S +++ b/bl32/tsp/aarch64/tsp_entrypoint.S @@ -28,10 +28,9 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <bl_common.h> #include <arch.h> -#include <tsp.h> #include <asm_macros.S> +#include <tsp.h> .globl tsp_entrypoint diff --git a/bl32/tsp/aarch64/tsp_request.S b/bl32/tsp/aarch64/tsp_request.S index da7d6e6a..6aa08736 100644 --- a/bl32/tsp/aarch64/tsp_request.S +++ b/bl32/tsp/aarch64/tsp_request.S @@ -28,8 +28,8 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <tsp.h> #include <asm_macros.S> +#include <tsp.h> .globl tsp_get_magic diff --git a/bl32/tsp/tsp_main.c b/bl32/tsp/tsp_main.c index 083c4309..a667ffc2 100644 --- a/bl32/tsp/tsp_main.c +++ b/bl32/tsp/tsp_main.c @@ -28,13 +28,14 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <bl32.h> -#include <tsp.h> #include <arch_helpers.h> -#include <stdio.h> -#include <platform.h> +#include <bl_common.h> +#include <bl32.h> #include <debug.h> +#include <platform.h> #include <spinlock.h> +#include <stdio.h> +#include <tsp.h> /******************************************************************************* * Lock to control access to the console diff --git a/common/aarch64/early_exceptions.S b/common/aarch64/early_exceptions.S index 41bff97f..90f5421b 100644 --- a/common/aarch64/early_exceptions.S +++ b/common/aarch64/early_exceptions.S @@ -28,11 +28,8 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <arch.h> -#include <bl_common.h> -#include <platform.h> -#include <runtime_svc.h> #include <asm_macros.S> +#include <runtime_svc.h> .globl early_exceptions diff --git a/common/bl_common.c b/common/bl_common.c index e96bfa05..af2b7b74 100644 --- a/common/bl_common.c +++ b/common/bl_common.c @@ -28,17 +28,14 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <stdio.h> -#include <string.h> -#include <errno.h> -#include <assert.h> +#include <arch.h> #include <arch_helpers.h> -#include <console.h> -#include <platform.h> -#include <semihosting.h> +#include <assert.h> #include <bl_common.h> -#include <io_storage.h> #include <debug.h> +#include <io_storage.h> +#include <platform.h> +#include <stdio.h> unsigned long page_align(unsigned long value, unsigned dir) { diff --git a/drivers/arm/cci400/cci400.c b/drivers/arm/cci400/cci400.c index 4ca55b18..02f7f955 100644 --- a/drivers/arm/cci400/cci400.c +++ b/drivers/arm/cci400/cci400.c @@ -28,9 +28,9 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <assert.h> -#include <platform.h> #include <cci400.h> +#include <mmio.h> +#include <platform.h> static inline unsigned long get_slave_iface_base(unsigned long mpidr) { diff --git a/drivers/arm/gic/gic_v3.c b/drivers/arm/gic/gic_v3.c index d658a61b..f4296629 100644 --- a/drivers/arm/gic/gic_v3.c +++ b/drivers/arm/gic/gic_v3.c @@ -28,11 +28,9 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <stdint.h> #include <arch.h> -#include <platform.h> -#include <gic_v3.h> #include <debug.h> +#include <gic_v3.h> uintptr_t gicv3_get_rdist(uintptr_t gicr_base, uint64_t mpidr) { diff --git a/drivers/arm/pl011/pl011.c b/drivers/arm/pl011/pl011.c index 8288cd81..f12bd23d 100644 --- a/drivers/arm/pl011/pl011.c +++ b/drivers/arm/pl011/pl011.c @@ -28,9 +28,9 @@ * POSSIBILITY OF SUCH DAMAGE. */ +#include <assert.h> #include <platform.h> #include <pl011.h> -#include <assert.h> void pl011_setbaudrate(unsigned long base_addr, unsigned int baudrate) { diff --git a/drivers/arm/pl011/pl011_console.c b/drivers/arm/pl011/pl011_console.c index 1a684ff6..3b0e237f 100644 --- a/drivers/arm/pl011/pl011_console.c +++ b/drivers/arm/pl011/pl011_console.c @@ -28,10 +28,10 @@ * POSSIBILITY OF SUCH DAMAGE. */ +#include <assert.h> #include <console.h> #include <platform.h> #include <pl011.h> -#include <assert.h> static unsigned long uart_base; diff --git a/drivers/arm/tzc400/tzc400.c b/drivers/arm/tzc400/tzc400.c index 56c6dea7..c1716db4 100644 --- a/drivers/arm/tzc400/tzc400.c +++ b/drivers/arm/tzc400/tzc400.c @@ -29,10 +29,10 @@ */ #include <assert.h> -#include <arch_helpers.h> -#include <tzc400.h> -#include <mmio.h> #include <debug.h> +#include <mmio.h> +#include <stddef.h> +#include <tzc400.h> static uint32_t tzc_read_build_config(uint64_t base) { diff --git a/drivers/io/io_fip.c b/drivers/io/io_fip.c index 482e0684..b2dcfccf 100644 --- a/drivers/io/io_fip.c +++ b/drivers/io/io_fip.c @@ -28,17 +28,17 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <stdint.h> -#include <uuid.h> -#include <errno.h> -#include <string.h> #include <assert.h> -#include <platform.h> +#include <debug.h> +#include <errno.h> #include <firmware_image_package.h> -#include <io_storage.h> #include <io_driver.h> #include <io_fip.h> -#include <debug.h> +#include <io_storage.h> +#include <platform.h> +#include <stdint.h> +#include <string.h> +#include <uuid.h> /* Useful for printing UUIDs when debugging.*/ #define PRINT_UUID2(x) \ diff --git a/drivers/io/io_memmap.c b/drivers/io/io_memmap.c index 2e70e969..a40e6120 100644 --- a/drivers/io/io_memmap.c +++ b/drivers/io/io_memmap.c @@ -29,10 +29,10 @@ */ #include <assert.h> -#include <string.h> -#include <io_storage.h> -#include <io_driver.h> #include <debug.h> +#include <io_driver.h> +#include <io_storage.h> +#include <string.h> /* As we need to be able to keep state for seek, only one file can be open * at a time. Make this a structure and point to the entity->info. When we diff --git a/drivers/io/io_semihosting.c b/drivers/io/io_semihosting.c index 89c844b2..a37693df 100644 --- a/drivers/io/io_semihosting.c +++ b/drivers/io/io_semihosting.c @@ -29,8 +29,8 @@ */ #include <assert.h> -#include <io_storage.h> #include <io_driver.h> +#include <io_storage.h> #include <semihosting.h> diff --git a/include/bl1/bl1.h b/include/bl1/bl1.h index 1750a1f0..d8afae46 100644 --- a/include/bl1/bl1.h +++ b/include/bl1/bl1.h @@ -31,16 +31,16 @@ #ifndef __BL1_H__ #define __BL1_H__ -#include <bl_common.h> -#ifndef __ASSEMBLY__ +/****************************************** + * Forward declarations + *****************************************/ +struct meminfo; /****************************************** * Function prototypes *****************************************/ extern void bl1_platform_setup(void); -extern meminfo_t *bl1_plat_sec_mem_layout(void); - -#endif /*__ASSEMBLY__*/ +extern struct meminfo *bl1_plat_sec_mem_layout(void); #endif /* __BL1_H__ */ diff --git a/include/bl2/bl2.h b/include/bl2/bl2.h index 9a5094ff..25b6f9cd 100644 --- a/include/bl2/bl2.h +++ b/include/bl2/bl2.h @@ -31,18 +31,22 @@ #ifndef __BL2_H__ #define __BL2_H__ -#include <bl_common.h> - /****************************************** * Data declarations *****************************************/ extern unsigned long long bl2_entrypoint; /****************************************** + * Forward declarations + *****************************************/ +struct meminfo; +struct bl31_args; + +/****************************************** * Function prototypes *****************************************/ extern void bl2_platform_setup(void); -extern meminfo_t *bl2_plat_sec_mem_layout(void); -extern bl31_args_t *bl2_get_bl31_args_ptr(void); +extern struct meminfo *bl2_plat_sec_mem_layout(void); +extern struct bl31_args *bl2_get_bl31_args_ptr(void); #endif /* __BL2_H__ */ diff --git a/include/bl31/bl31.h b/include/bl31/bl31.h index 6dd75964..b60e32ce 100644 --- a/include/bl31/bl31.h +++ b/include/bl31/bl31.h @@ -31,13 +31,19 @@ #ifndef __BL31_H__ #define __BL31_H__ -#include <bl_common.h> +#include <stdint.h> /******************************************************************************* * Data declarations ******************************************************************************/ extern unsigned long bl31_entrypoint; +/****************************************** + * Forward declarations + *****************************************/ +struct meminfo; +struct el_change_info; + /******************************************************************************* * Function prototypes ******************************************************************************/ @@ -46,9 +52,10 @@ extern void bl31_next_el_arch_setup(uint32_t security_state); extern void bl31_set_next_image_type(uint32_t type); extern uint32_t bl31_get_next_image_type(void); extern void bl31_prepare_next_image_entry(); -extern el_change_info_t *bl31_get_next_image_info(uint32_t type); +extern struct el_change_info *bl31_get_next_image_info(uint32_t type); extern void bl31_platform_setup(void); -extern meminfo_t *bl31_plat_get_bl32_mem_layout(void); -extern meminfo_t *bl31_plat_sec_mem_layout(void); -extern void bl31_register_bl32_init(int32_t (*)(meminfo_t *)); +extern struct meminfo *bl31_plat_get_bl32_mem_layout(void); +extern struct meminfo *bl31_plat_sec_mem_layout(void); +extern void bl31_register_bl32_init(int32_t (*)(struct meminfo *)); + #endif /* __BL31_H__ */ diff --git a/include/bl31/cm_macros.S b/include/bl31/cm_macros.S index 9eeec189..d2649566 100644 --- a/include/bl31/cm_macros.S +++ b/include/bl31/cm_macros.S @@ -27,6 +27,11 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. */ + +#include <arch.h> +#include <context.h> + + /* --------------------------------------------- * Zero out the callee saved register to prevent * leakage of secure state into the normal world diff --git a/include/bl31/context.h b/include/bl31/context.h index c7eda7df..989b2e6a 100644 --- a/include/bl31/context.h +++ b/include/bl31/context.h @@ -31,9 +31,6 @@ #ifndef __CONTEXT_H__ #define __CONTEXT_H__ -#include <arch.h> -#include <cassert.h> - /******************************************************************************* * Constants that allow assembler code to access members of and the 'gp_regs' * structure at their correct offsets. @@ -171,6 +168,9 @@ #ifndef __ASSEMBLY__ +#include <cassert.h> +#include <stdint.h> + /* * Common constants to help define the 'cpu_context' structure and its * members below. diff --git a/include/bl31/context_mgmt.h b/include/bl31/context_mgmt.h index 35f7c8cc..efcdcd28 100644 --- a/include/bl31/context_mgmt.h +++ b/include/bl31/context_mgmt.h @@ -31,9 +31,8 @@ #ifndef __CM_H__ #define __CM_H__ -#include <context.h> +#include <stdint.h> -#ifndef __ASSEMBLY__ /******************************************************************************* * Function & variable prototypes ******************************************************************************/ @@ -51,5 +50,5 @@ extern void cm_set_el3_eret_context(uint32_t security_state, uint64_t entrypoint extern void cm_set_el3_elr(uint32_t security_state, uint64_t entrypoint); extern void cm_set_next_eret_context(uint32_t security_state); extern void cm_init_exception_stack(uint64_t mpidr, uint32_t security_state); -#endif /*__ASSEMBLY__*/ + #endif /* __CM_H__ */ diff --git a/include/bl31/runtime_svc.h b/include/bl31/runtime_svc.h index ac85fa3f..12b5db8b 100644 --- a/include/bl31/runtime_svc.h +++ b/include/bl31/runtime_svc.h @@ -30,8 +30,6 @@ #ifndef __RUNTIME_SVC_H__ #define __RUNTIME_SVC_H__ -#include <psci.h> -#include <cassert.h> /******************************************************************************* * Bit definitions inside the function id as per the SMC calling convention @@ -122,6 +120,10 @@ #ifndef __ASSEMBLY__ +#include <cassert.h> +#include <context.h> +#include <stdint.h> + /* Various flags passed to SMC handlers */ #define SMC_FROM_SECURE (0 << 0) #define SMC_FROM_NON_SECURE (1 << 0) diff --git a/include/bl31/services/psci.h b/include/bl31/services/psci.h index ab7b7bdd..570fe5b8 100644 --- a/include/bl31/services/psci.h +++ b/include/bl31/services/psci.h @@ -31,6 +31,7 @@ #ifndef __PSCI_H__ #define __PSCI_H__ + /******************************************************************************* * Defines for runtime services func ids ******************************************************************************/ @@ -131,6 +132,10 @@ #define PSCI_NUM_AFFS 32ull #ifndef __ASSEMBLY__ + +#include <stdint.h> + + /******************************************************************************* * Structure populated by platform specific code to export routines which * perform common low level pm functions diff --git a/include/bl32/bl32.h b/include/bl32/bl32.h index e4698819..32394876 100644 --- a/include/bl32/bl32.h +++ b/include/bl32/bl32.h @@ -31,15 +31,18 @@ #ifndef __BL32_H__ #define __BL32_H__ -#ifndef __ASSEMBLY__ #include <stdint.h> -#include <bl_common.h> +/****************************************** + * Forward declarations + *****************************************/ +struct meminfo; +/****************************************** + * Function prototypes + *****************************************/ extern void bl32_platform_setup(void); -extern meminfo_t *bl32_plat_sec_mem_layout(void); +extern struct meminfo *bl32_plat_sec_mem_layout(void); extern uint64_t bl32_main(void); -#endif /* __ASSEMBLY__ */ - #endif /* __BL32_H__ */ diff --git a/include/bl32/payloads/tsp.h b/include/bl32/payloads/tsp.h index 4ac7a1aa..1f542d53 100644 --- a/include/bl32/payloads/tsp.h +++ b/include/bl32/payloads/tsp.h @@ -31,9 +31,6 @@ #ifndef __TSP_H__ #define __TSP_H__ -#include <platform.h> -#include <cassert.h> - /* * SMC function IDs that TSP uses to signal various forms of completions * to the secure payload dispatcher. @@ -86,6 +83,9 @@ #define TSP_ARGS_END 0x40 #ifndef __ASSEMBLY__ + +#include <cassert.h> +#include <platform.h> /* For CACHE_WRITEBACK_GRANULE */ #include <stdint.h> typedef void (*tsp_generic_fptr_t)(uint64_t arg0, diff --git a/include/common/asm_macros.S b/include/common/asm_macros.S index 8bcb7d28..6cf1a19f 100644 --- a/include/common/asm_macros.S +++ b/include/common/asm_macros.S @@ -28,6 +28,9 @@ * POSSIBILITY OF SUCH DAMAGE. */ +#include <arch.h> + + .macro func_prologue stp x29, x30, [sp, #-0x10]! mov x29,sp diff --git a/include/common/bl_common.h b/include/common/bl_common.h index 1eb6d79a..9fba9c06 100644 --- a/include/common/bl_common.h +++ b/include/common/bl_common.h @@ -58,7 +58,8 @@ #ifndef __ASSEMBLY__ -#include <stdio.h> + +#include <cdefs.h> /* For __dead2 */ /******************************************************************************* * Structure used for telling the next BL how much of a particular type of diff --git a/include/common/debug.h b/include/common/debug.h index f8294777..e4fa31e5 100644 --- a/include/common/debug.h +++ b/include/common/debug.h @@ -31,9 +31,6 @@ #ifndef __DEBUG_H__ #define __DEBUG_H__ -/* Do not try to call this from ASM code. */ -#ifndef __ASSEMBLY__ - #include <stdio.h> /* If building the project with DEBUG disabled the INFO and WARN macros @@ -66,5 +63,4 @@ static inline void __attribute__((noreturn)) panic(void) ; } -#endif /* __ASSEMBLY__ */ #endif /* __DEBUG_H__ */ diff --git a/include/drivers/arm/pl011.h b/include/drivers/arm/pl011.h index 5ad2fc7d..28aef54a 100644 --- a/include/drivers/arm/pl011.h +++ b/include/drivers/arm/pl011.h @@ -31,6 +31,9 @@ #ifndef __PL011_H__ #define __PL011_H__ +#include <mmio.h> + + /* PL011 Registers */ #define UARTDR 0x000 #define UARTRSR 0x004 diff --git a/include/drivers/arm/tzc400.h b/include/drivers/arm/tzc400.h index 7ac82ae6..b4aa3ba5 100644 --- a/include/drivers/arm/tzc400.h +++ b/include/drivers/arm/tzc400.h @@ -147,8 +147,6 @@ /* Filters are bit mapped 0 to 3. */ #define TZC400_COMPONENT_ID 0xb105f00d -#ifndef __ASSEMBLY__ - /******************************************************************************* * Function & variable prototypes ******************************************************************************/ @@ -205,6 +203,5 @@ void tzc_enable_filters(const tzc_instance_t *controller); void tzc_disable_filters(const tzc_instance_t *controller); void tzc_set_action(const tzc_instance_t *controller, tzc_action_t action); -#endif /*__ASSEMBLY__*/ #endif /* __TZC400__ */ diff --git a/include/drivers/io_driver.h b/include/drivers/io_driver.h index cade5e70..cc01d3b2 100644 --- a/include/drivers/io_driver.h +++ b/include/drivers/io_driver.h @@ -31,7 +31,9 @@ #ifndef __IO_DRIVER_H__ #define __IO_DRIVER_H__ +#include <io_storage.h> #include <platform.h> /* For MAX_IO_DEVICES */ +#include <stdint.h> /* Generic IO entity structure,representing an accessible IO construct on the diff --git a/include/drivers/io_fip.h b/include/drivers/io_fip.h index 56dd1e0f..212570d8 100644 --- a/include/drivers/io_fip.h +++ b/include/drivers/io_fip.h @@ -31,6 +31,8 @@ #ifndef __IO_FIP_H__ #define __IO_FIP_H__ +struct io_dev_connector; + int register_io_dev_fip(struct io_dev_connector **dev_con); #endif /* __IO_FIP_H__ */ diff --git a/include/drivers/io_memmap.h b/include/drivers/io_memmap.h index 5fa7bc98..0e59ecbd 100644 --- a/include/drivers/io_memmap.h +++ b/include/drivers/io_memmap.h @@ -31,6 +31,8 @@ #ifndef __IO_MEMMAP_H__ #define __IO_MEMMAP_H__ +struct io_dev_connector; + int register_io_dev_memmap(struct io_dev_connector **dev_con); #endif /* __IO_MEMMAP_H__ */ diff --git a/include/drivers/io_semihosting.h b/include/drivers/io_semihosting.h index 7dc632dd..eab290a7 100644 --- a/include/drivers/io_semihosting.h +++ b/include/drivers/io_semihosting.h @@ -31,6 +31,8 @@ #ifndef __IO_SH_H__ #define __IO_SH_H__ +struct io_dev_connector; + int register_io_dev_sh(struct io_dev_connector **dev_con); #endif /* __IO_SH_H__ */ diff --git a/include/lib/aarch64/arch.h b/include/lib/aarch64/arch.h index 32167eb3..d7e65b38 100644 --- a/include/lib/aarch64/arch.h +++ b/include/lib/aarch64/arch.h @@ -31,7 +31,6 @@ #ifndef __ARCH_H__ #define __ARCH_H__ -#include <bl_common.h> /******************************************************************************* * MIDR bit definitions diff --git a/include/lib/aarch64/arch_helpers.h b/include/lib/aarch64/arch_helpers.h index f55c0033..565b1b48 100644 --- a/include/lib/aarch64/arch_helpers.h +++ b/include/lib/aarch64/arch_helpers.h @@ -31,10 +31,8 @@ #ifndef __ARCH_HELPERS_H__ #define __ARCH_HELPERS_H__ -#include <arch.h> +#include <cdefs.h> /* For __dead2 */ -#ifndef __ASSEMBLY__ -#include <stdio.h> /******************************************************************************* * Aarch64 translation tables manipulation helper prototypes @@ -268,6 +266,5 @@ extern void write_cpuectlr(unsigned long); extern void write_cptr_el2(unsigned long); extern void write_cptr_el3(unsigned long); -#endif /*__ASSEMBLY__*/ #endif /* __ARCH_HELPERS_H__ */ diff --git a/include/lib/bakery_lock.h b/include/lib/bakery_lock.h index 0def0674..e6744a51 100644 --- a/include/lib/bakery_lock.h +++ b/include/lib/bakery_lock.h @@ -35,7 +35,6 @@ #define BAKERY_LOCK_MAX_CPUS PLATFORM_CORE_COUNT -#ifndef __ASSEMBLY__ typedef struct bakery_lock { int owner; volatile char entering[BAKERY_LOCK_MAX_CPUS]; @@ -48,6 +47,5 @@ void bakery_lock_init(bakery_lock_t *bakery); void bakery_lock_get(unsigned long mpidr, bakery_lock_t *bakery); void bakery_lock_release(unsigned long mpidr, bakery_lock_t *bakery); int bakery_lock_try(unsigned long mpidr, bakery_lock_t *bakery); -#endif /*__ASSEMBLY__*/ #endif /* __BAKERY_LOCK_H__ */ diff --git a/include/lib/io_storage.h b/include/lib/io_storage.h index 59fd3f47..b6c5f9f5 100644 --- a/include/lib/io_storage.h +++ b/include/lib/io_storage.h @@ -31,10 +31,7 @@ #ifndef __IO_H__ #define __IO_H__ -#ifndef __ASSEMBLY__ - -#include <stdint.h> -#include <stdio.h> /* For ssize_t */ +#include <stdio.h> /* For ssize_t */ /* Device type which can be used to enable policy decisions about which device @@ -128,5 +125,4 @@ int io_write(io_handle handle, const void *buffer, size_t length, int io_close(io_handle handle); -#endif /* __ASSEMBLY__ */ #endif /* __IO_H__ */ diff --git a/include/lib/mmio.h b/include/lib/mmio.h index c79c3f5c..d3c2cae5 100644 --- a/include/lib/mmio.h +++ b/include/lib/mmio.h @@ -31,8 +31,6 @@ #ifndef __MMIO_H__ #define __MMIO_H__ -#ifndef __ASSEMBLY__ - #include <stdint.h> extern void mmio_write_8(uintptr_t addr, uint8_t value); @@ -44,6 +42,4 @@ extern uint32_t mmio_read_32(uintptr_t addr); extern void mmio_write_64(uintptr_t addr, uint64_t value); extern uint64_t mmio_read_64(uintptr_t addr); -#endif /*__ASSEMBLY__*/ - #endif /* __MMIO_H__ */ diff --git a/include/lib/semihosting.h b/include/lib/semihosting.h index e688618a..9d0b39f7 100644 --- a/include/lib/semihosting.h +++ b/include/lib/semihosting.h @@ -31,6 +31,9 @@ #ifndef __SEMIHOSTING_H__ #define __SEMIHOSTING_H__ +#include <stdio.h> /* For ssize_t */ + + #define SEMIHOSTING_SYS_OPEN 0x01 #define SEMIHOSTING_SYS_CLOSE 0x02 #define SEMIHOSTING_SYS_WRITE0 0x04 diff --git a/lib/aarch64/cache_helpers.S b/lib/aarch64/cache_helpers.S index 2696d901..2649ad0e 100644 --- a/lib/aarch64/cache_helpers.S +++ b/lib/aarch64/cache_helpers.S @@ -28,7 +28,7 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <arch_helpers.h> +#include <arch.h> #include <asm_macros.S> .globl dcisw diff --git a/lib/aarch64/misc_helpers.S b/lib/aarch64/misc_helpers.S index e3b4ab58..e7b23313 100644 --- a/lib/aarch64/misc_helpers.S +++ b/lib/aarch64/misc_helpers.S @@ -28,8 +28,7 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <arch_helpers.h> -#include <runtime_svc.h> +#include <arch.h> #include <asm_macros.S> .globl enable_irq diff --git a/lib/aarch64/sysreg_helpers.S b/lib/aarch64/sysreg_helpers.S index 8e816f03..61468f95 100644 --- a/lib/aarch64/sysreg_helpers.S +++ b/lib/aarch64/sysreg_helpers.S @@ -28,7 +28,7 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <arch_helpers.h> +#include <arch.h> #include <asm_macros.S> .globl read_vbar_el1 diff --git a/lib/aarch64/tlb_helpers.S b/lib/aarch64/tlb_helpers.S index 42449747..ec1558b0 100644 --- a/lib/aarch64/tlb_helpers.S +++ b/lib/aarch64/tlb_helpers.S @@ -28,7 +28,6 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <arch_helpers.h> #include <asm_macros.S> .globl tlbialle1 diff --git a/lib/aarch64/xlat_helpers.c b/lib/aarch64/xlat_helpers.c index 87d24ec9..d401ffc4 100644 --- a/lib/aarch64/xlat_helpers.c +++ b/lib/aarch64/xlat_helpers.c @@ -28,9 +28,8 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <string.h> -#include <assert.h> #include <arch.h> +#include <assert.h> /******************************************************************************* * Helper to create a level 1/2 table descriptor which points to a level 2/3 diff --git a/lib/io_storage.c b/lib/io_storage.c index c3b94bb0..01ca1c68 100644 --- a/lib/io_storage.c +++ b/lib/io_storage.c @@ -28,11 +28,10 @@ * POSSIBILITY OF SUCH DAMAGE. */ - -#include <stddef.h> #include <assert.h> -#include <io_storage.h> #include <io_driver.h> +#include <io_storage.h> +#include <stddef.h> #define MAX_DEVICES(plat_data) \ diff --git a/lib/locks/bakery/bakery_lock.c b/lib/locks/bakery/bakery_lock.c index 3cb9248e..6d4ab87b 100644 --- a/lib/locks/bakery/bakery_lock.c +++ b/lib/locks/bakery/bakery_lock.c @@ -28,11 +28,10 @@ * POSSIBILITY OF SUCH DAMAGE. */ +#include <arch_helpers.h> #include <assert.h> -#include <string.h> - #include <bakery_lock.h> -#include <arch_helpers.h> +#include <string.h> /* * Functions in this file implement Bakery Algorithm for mutual exclusion. diff --git a/lib/semihosting/semihosting.c b/lib/semihosting/semihosting.c index 3232cd54..1bce377c 100644 --- a/lib/semihosting/semihosting.c +++ b/lib/semihosting/semihosting.c @@ -29,10 +29,9 @@ */ #include <assert.h> -#include <string.h> #include <errno.h> -#include <stdio.h> #include <semihosting.h> +#include <string.h> #ifndef SEMIHOSTING_SUPPORTED #define SEMIHOSTING_SUPPORTED 1 diff --git a/plat/common/aarch64/platform_helpers.S b/plat/common/aarch64/platform_helpers.S index 29268ba4..7e201213 100644 --- a/plat/common/aarch64/platform_helpers.S +++ b/plat/common/aarch64/platform_helpers.S @@ -29,8 +29,8 @@ */ #include <arch.h> -#include <platform.h> #include <asm_macros.S> +#include <platform.h> .weak platform_get_core_pos diff --git a/plat/common/aarch64/platform_mp_stack.S b/plat/common/aarch64/platform_mp_stack.S index 1438814e..ebbf509b 100644 --- a/plat/common/aarch64/platform_mp_stack.S +++ b/plat/common/aarch64/platform_mp_stack.S @@ -29,8 +29,8 @@ */ #include <arch.h> -#include <platform.h> #include <asm_macros.S> +#include <platform.h> .local pcpu_dv_mem_stack diff --git a/plat/common/aarch64/platform_up_stack.S b/plat/common/aarch64/platform_up_stack.S index b321a4e2..880793d8 100644 --- a/plat/common/aarch64/platform_up_stack.S +++ b/plat/common/aarch64/platform_up_stack.S @@ -29,8 +29,8 @@ */ #include <arch.h> -#include <platform.h> #include <asm_macros.S> +#include <platform.h> .local pcpu_dv_mem_stack diff --git a/plat/fvp/aarch64/bl1_plat_helpers.S b/plat/fvp/aarch64/bl1_plat_helpers.S index 64f230db..92075ea4 100644 --- a/plat/fvp/aarch64/bl1_plat_helpers.S +++ b/plat/fvp/aarch64/bl1_plat_helpers.S @@ -29,9 +29,9 @@ */ #include <arch.h> -#include <platform.h> -#include <gic_v2.h> #include <asm_macros.S> +#include <gic_v2.h> +#include <platform.h> #include "../drivers/pwrc/fvp_pwrc.h" .globl platform_get_entrypoint diff --git a/plat/fvp/aarch64/plat_common.c b/plat/fvp/aarch64/plat_common.c index 40e6b324..c8e529d4 100644 --- a/plat/fvp/aarch64/plat_common.c +++ b/plat/fvp/aarch64/plat_common.c @@ -28,9 +28,12 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <assert.h> +#include <arch.h> #include <arch_helpers.h> +#include <assert.h> +#include <bl_common.h> #include <debug.h> +#include <mmio.h> #include <platform.h> #include <xlat_tables.h> diff --git a/plat/fvp/aarch64/plat_helpers.S b/plat/fvp/aarch64/plat_helpers.S index ab826f4c..00579035 100644 --- a/plat/fvp/aarch64/plat_helpers.S +++ b/plat/fvp/aarch64/plat_helpers.S @@ -29,8 +29,9 @@ */ #include <arch.h> -#include <platform.h> #include <asm_macros.S> +#include <bl_common.h> +#include <platform.h> .globl plat_report_exception diff --git a/plat/fvp/bl1_plat_setup.c b/plat/fvp/bl1_plat_setup.c index 818c4e3f..e92303de 100644 --- a/plat/fvp/bl1_plat_setup.c +++ b/plat/fvp/bl1_plat_setup.c @@ -28,12 +28,14 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <assert.h> #include <arch_helpers.h> -#include <platform.h> +#include <assert.h> +#include <bl_common.h> #include <bl1.h> #include <console.h> #include <cci400.h> +#include <mmio.h> +#include <platform.h> /******************************************************************************* * Declarations of linker defined symbols which will help us find the layout diff --git a/plat/fvp/bl2_plat_setup.c b/plat/fvp/bl2_plat_setup.c index 8517497e..a4960aa1 100644 --- a/plat/fvp/bl2_plat_setup.c +++ b/plat/fvp/bl2_plat_setup.c @@ -28,12 +28,12 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <assert.h> #include <arch_helpers.h> -#include <platform.h> -#include <bl2.h> +#include <assert.h> #include <bl_common.h> +#include <bl2.h> #include <console.h> +#include <platform.h> /******************************************************************************* * Declarations of linker defined symbols which will help us find the layout diff --git a/plat/fvp/bl31_plat_setup.c b/plat/fvp/bl31_plat_setup.c index 5abe2368..aa7b2d86 100644 --- a/plat/fvp/bl31_plat_setup.c +++ b/plat/fvp/bl31_plat_setup.c @@ -28,9 +28,13 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <platform.h> #include <arch.h> +#include <bl_common.h> +#include <bl31.h> #include <console.h> +#include <mmio.h> +#include <platform.h> +#include <stddef.h> #include "drivers/pwrc/fvp_pwrc.h" /******************************************************************************* diff --git a/plat/fvp/bl32_plat_setup.c b/plat/fvp/bl32_plat_setup.c index 3226ea23..b71800e4 100644 --- a/plat/fvp/bl32_plat_setup.c +++ b/plat/fvp/bl32_plat_setup.c @@ -28,13 +28,11 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <string.h> -#include <assert.h> #include <arch_helpers.h> -#include <platform.h> -#include <bl32.h> #include <bl_common.h> +#include <bl32.h> #include <console.h> +#include <platform.h> /******************************************************************************* * Declarations of linker defined symbols which will help us find the layout diff --git a/plat/fvp/drivers/pwrc/fvp_pwrc.c b/plat/fvp/drivers/pwrc/fvp_pwrc.c index 175d41c0..7a7f5168 100644 --- a/plat/fvp/drivers/pwrc/fvp_pwrc.c +++ b/plat/fvp/drivers/pwrc/fvp_pwrc.c @@ -28,13 +28,8 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <string.h> -#include <stdio.h> -#include <errno.h> -#include <assert.h> -#include <arch_helpers.h> -#include <platform.h> #include <bakery_lock.h> +#include <mmio.h> #include "fvp_pwrc.h" /* diff --git a/plat/fvp/plat_gic.c b/plat/fvp/plat_gic.c index be892ac3..8457af1a 100644 --- a/plat/fvp/plat_gic.c +++ b/plat/fvp/plat_gic.c @@ -28,12 +28,12 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <stdint.h> #include <arch_helpers.h> -#include <platform.h> +#include <debug.h> #include <gic_v2.h> #include <gic_v3.h> -#include <debug.h> +#include <platform.h> +#include <stdint.h> /******************************************************************************* diff --git a/plat/fvp/plat_io_storage.c b/plat/fvp/plat_io_storage.c index 371f5671..3727d26a 100644 --- a/plat/fvp/plat_io_storage.c +++ b/plat/fvp/plat_io_storage.c @@ -29,15 +29,15 @@ */ #include <assert.h> -#include <string.h> -#include <platform.h> -#include <io_storage.h> +#include <debug.h> #include <io_driver.h> -#include <io_semihosting.h> -#include <semihosting.h> /* For FOPEN_MODE_... */ #include <io_fip.h> #include <io_memmap.h> -#include <debug.h> +#include <io_storage.h> +#include <io_semihosting.h> +#include <platform.h> +#include <semihosting.h> /* For FOPEN_MODE_... */ +#include <string.h> /* IO devices */ static io_plat_data_t io_data; diff --git a/plat/fvp/plat_pm.c b/plat/fvp/plat_pm.c index da940c1f..c80d315b 100644 --- a/plat/fvp/plat_pm.c +++ b/plat/fvp/plat_pm.c @@ -28,18 +28,12 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <stdio.h> -#include <string.h> -#include <assert.h> #include <arch_helpers.h> -#include <console.h> -#include <platform.h> -#include <bl_common.h> -#include <bl31.h> +#include <assert.h> #include <bakery_lock.h> #include <cci400.h> -#include <gic_v2.h> -/* Only included for error codes */ +#include <mmio.h> +#include <platform.h> #include <psci.h> #include "drivers/pwrc/fvp_pwrc.h" diff --git a/plat/fvp/plat_topology.c b/plat/fvp/plat_topology.c index 99f32594..04b409ec 100644 --- a/plat/fvp/plat_topology.c +++ b/plat/fvp/plat_topology.c @@ -28,7 +28,6 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <string.h> #include <assert.h> #include <platform.h> /* TODO: Reusing psci error codes & state information. Get our own! */ diff --git a/plat/fvp/platform.h b/plat/fvp/platform.h index 098f499d..1ffdc982 100644 --- a/plat/fvp/platform.h +++ b/plat/fvp/platform.h @@ -32,10 +32,6 @@ #define __PLATFORM_H__ #include <arch.h> -#include <mmio.h> -#include <psci.h> -#include <bl_common.h> -#include <io_storage.h> /******************************************************************************* @@ -340,12 +336,22 @@ #ifndef __ASSEMBLY__ +#include <stdint.h> + + typedef volatile struct mailbox { unsigned long value __attribute__((__aligned__(CACHE_WRITEBACK_GRANULE))); } mailbox_t; /******************************************************************************* + * Forward declarations + ******************************************************************************/ +struct plat_pm_ops; +struct meminfo; +struct io_dev_info; + +/******************************************************************************* * Function and variable prototypes ******************************************************************************/ extern unsigned long *bl1_normal_ram_base; @@ -364,11 +370,11 @@ extern unsigned long warm_boot_entrypoint; extern void bl1_plat_arch_setup(void); extern void bl2_plat_arch_setup(void); extern void bl31_plat_arch_setup(void); -extern int platform_setup_pm(plat_pm_ops_t **); +extern int platform_setup_pm(struct plat_pm_ops **); extern unsigned int platform_get_core_pos(unsigned long mpidr); extern void disable_mmu(void); extern void enable_mmu(void); -extern void configure_mmu(meminfo_t *, +extern void configure_mmu(struct meminfo *, unsigned long, unsigned long, unsigned long, @@ -395,7 +401,7 @@ extern unsigned int plat_get_aff_state(unsigned int, unsigned long); /* Declarations for plat_io_storage.c */ extern void io_setup(void); extern int plat_get_image_source(const char *image_name, - io_dev_handle *dev_handle, void **image_spec); + struct io_dev_info **dev_handle, void **image_spec); /* Declarations for plat_security.c */ extern void plat_security_setup(void); diff --git a/services/spd/tspd/tspd_common.c b/services/spd/tspd/tspd_common.c index 181f2c8a..13023d2e 100644 --- a/services/spd/tspd/tspd_common.c +++ b/services/spd/tspd/tspd_common.c @@ -28,15 +28,12 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <stdio.h> -#include <errno.h> -#include <string.h> -#include <assert.h> #include <arch_helpers.h> -#include <platform.h> +#include <assert.h> #include <bl_common.h> -#include <runtime_svc.h> #include <context_mgmt.h> +#include <platform.h> +#include <string.h> #include "tspd_private.h" /******************************************************************************* diff --git a/services/spd/tspd/tspd_helpers.S b/services/spd/tspd/tspd_helpers.S index f9a32aa0..dd3b07b4 100644 --- a/services/spd/tspd/tspd_helpers.S +++ b/services/spd/tspd/tspd_helpers.S @@ -28,9 +28,7 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <context.h> #include <asm_macros.S> -#include <cm_macros.S> #include "tspd_private.h" .global tspd_enter_sp diff --git a/services/spd/tspd/tspd_main.c b/services/spd/tspd/tspd_main.c index c8fc9f12..9fda3074 100644 --- a/services/spd/tspd/tspd_main.c +++ b/services/spd/tspd/tspd_main.c @@ -38,18 +38,14 @@ * handle the request locally or delegate it to the Secure Payload. It is also * responsible for initialising and maintaining communication with the SP. ******************************************************************************/ -#include <stdio.h> -#include <string.h> -#include <assert.h> #include <arch_helpers.h> -#include <console.h> -#include <platform.h> +#include <assert.h> +#include <bl_common.h> +#include <bl31.h> #include <context_mgmt.h> #include <runtime_svc.h> -#include <bl31.h> +#include <stddef.h> #include <tsp.h> -#include <psci.h> -#include <debug.h> #include <uuid.h> #include "tspd_private.h" diff --git a/services/spd/tspd/tspd_pm.c b/services/spd/tspd/tspd_pm.c index cc01a728..2447d9e8 100644 --- a/services/spd/tspd/tspd_pm.c +++ b/services/spd/tspd/tspd_pm.c @@ -28,18 +28,12 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <stdio.h> -#include <string.h> -#include <assert.h> #include <arch_helpers.h> -#include <console.h> -#include <platform.h> +#include <assert.h> +#include <bl_common.h> #include <context_mgmt.h> -#include <runtime_svc.h> -#include <bl31.h> -#include <bl32.h> -#include <psci.h> #include <debug.h> +#include <tsp.h> #include "tspd_private.h" /******************************************************************************* diff --git a/services/spd/tspd/tspd_private.h b/services/spd/tspd/tspd_private.h index 8b768766..81484e1c 100644 --- a/services/spd/tspd/tspd_private.h +++ b/services/spd/tspd/tspd_private.h @@ -28,14 +28,13 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#ifndef __SPD_PRIVATE_H__ -#define __SPD_PRIVATE_H__ +#ifndef __TSPD_PRIVATE_H__ +#define __TSPD_PRIVATE_H__ -#include <context.h> #include <arch.h> +#include <context.h> +#include <platform.h> #include <psci.h> -#include <tsp.h> -#include <cassert.h> /******************************************************************************* * Secure Payload PM state information e.g. SP is suspended, uninitialised etc @@ -91,6 +90,9 @@ #ifndef __ASSEMBLY__ +#include <cassert.h> +#include <stdint.h> + /* AArch64 callee saved general purpose register context structure. */ DEFINE_REG_STRUCT(c_rt_regs, TSPD_C_RT_CTX_ENTRIES); @@ -121,6 +123,11 @@ typedef struct tsp_context { extern const spd_pm_ops_t tspd_pm; /******************************************************************************* + * Forward declarations + ******************************************************************************/ +struct entry_info; + +/******************************************************************************* * Function & Data prototypes ******************************************************************************/ extern uint64_t tspd_enter_sp(uint64_t *c_rt_ctx); @@ -132,7 +139,7 @@ extern int32_t tspd_init_secure_context(uint64_t entrypoint, uint64_t mpidr, tsp_context_t *tsp_ctx); extern tsp_context_t tspd_sp_context[TSPD_CORE_COUNT]; -extern entry_info_t *tsp_entry_info; +extern struct entry_info *tsp_entry_info; #endif /*__ASSEMBLY__*/ -#endif /* __SPD_PRIVATE_H__ */ +#endif /* __TSPD_PRIVATE_H__ */ diff --git a/services/std_svc/psci/psci_afflvl_off.c b/services/std_svc/psci/psci_afflvl_off.c index b3959125..e007bc30 100644 --- a/services/std_svc/psci/psci_afflvl_off.c +++ b/services/std_svc/psci/psci_afflvl_off.c @@ -28,14 +28,10 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <stdio.h> -#include <string.h> -#include <assert.h> -#include <debug.h> +#include <arch.h> #include <arch_helpers.h> -#include <console.h> -#include <platform.h> -#include <psci.h> +#include <assert.h> +#include <string.h> #include "psci_private.h" typedef int (*afflvl_off_handler_t)(unsigned long, aff_map_node_t *); diff --git a/services/std_svc/psci/psci_afflvl_on.c b/services/std_svc/psci/psci_afflvl_on.c index a1c12a88..8f9bb4de 100644 --- a/services/std_svc/psci/psci_afflvl_on.c +++ b/services/std_svc/psci/psci_afflvl_on.c @@ -28,18 +28,14 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <stdio.h> -#include <stdint.h> -#include <string.h> +#include <arch.h> +#include <arch_helpers.h> #include <assert.h> +#include <bl_common.h> #include <bl31.h> -#include <debug.h> -#include <arch_helpers.h> -#include <console.h> -#include <platform.h> -#include <psci.h> #include <context_mgmt.h> #include <runtime_svc.h> +#include <stddef.h> #include "psci_private.h" typedef int (*afflvl_on_handler_t)(unsigned long, diff --git a/services/std_svc/psci/psci_afflvl_suspend.c b/services/std_svc/psci/psci_afflvl_suspend.c index a8d09892..dc12f7a3 100644 --- a/services/std_svc/psci/psci_afflvl_suspend.c +++ b/services/std_svc/psci/psci_afflvl_suspend.c @@ -28,16 +28,14 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <stdio.h> -#include <string.h> #include <assert.h> -#include <debug.h> +#include <bl_common.h> +#include <arch.h> #include <arch_helpers.h> -#include <console.h> -#include <platform.h> -#include <psci.h> +#include <context.h> #include <context_mgmt.h> #include <runtime_svc.h> +#include <stddef.h> #include "psci_private.h" typedef int (*afflvl_suspend_handler_t)(unsigned long, diff --git a/services/std_svc/psci/psci_common.c b/services/std_svc/psci/psci_common.c index 1ce28dc7..1d5c3621 100644 --- a/services/std_svc/psci/psci_common.c +++ b/services/std_svc/psci/psci_common.c @@ -28,15 +28,12 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <stdio.h> -#include <string.h> -#include <assert.h> +#include <arch.h> #include <arch_helpers.h> -#include <console.h> -#include <platform.h> -#include <psci.h> +#include <assert.h> +#include <bl_common.h> +#include <context.h> #include <context_mgmt.h> -#include <runtime_svc.h> #include <debug.h> #include "psci_private.h" diff --git a/services/std_svc/psci/psci_entry.S b/services/std_svc/psci/psci_entry.S index 51d9b570..e2c690db 100644 --- a/services/std_svc/psci/psci_entry.S +++ b/services/std_svc/psci/psci_entry.S @@ -29,11 +29,9 @@ */ #include <arch.h> -#include <platform.h> -#include <runtime_svc.h> #include <asm_macros.S> #include <cm_macros.S> -#include "psci_private.h" +#include <psci.h> .globl psci_aff_on_finish_entry .globl psci_aff_suspend_finish_entry diff --git a/services/std_svc/psci/psci_main.c b/services/std_svc/psci/psci_main.c index fd20ad5b..1bcf2166 100644 --- a/services/std_svc/psci/psci_main.c +++ b/services/std_svc/psci/psci_main.c @@ -28,15 +28,11 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <stdio.h> -#include <string.h> -#include <assert.h> +#include <arch.h> #include <arch_helpers.h> -#include <console.h> -#include <platform.h> +#include <assert.h> #include <runtime_svc.h> #include <debug.h> -#include <context_mgmt.h> #include "psci_private.h" /******************************************************************************* diff --git a/services/std_svc/psci/psci_private.h b/services/std_svc/psci/psci_private.h index e34ccfc7..b0b5cc9f 100644 --- a/services/std_svc/psci/psci_private.h +++ b/services/std_svc/psci/psci_private.h @@ -33,8 +33,8 @@ #include <arch.h> #include <bakery_lock.h> +#include <psci.h> -#ifndef __ASSEMBLY__ /******************************************************************************* * The following two data structures hold the generic information to bringup * a suspended/hotplugged out cpu @@ -156,6 +156,5 @@ extern int psci_afflvl_suspend(unsigned long, int); extern unsigned int psci_afflvl_suspend_finish(unsigned long, int, int); -#endif /*__ASSEMBLY__*/ #endif /* __PSCI_PRIVATE_H__ */ diff --git a/services/std_svc/psci/psci_setup.c b/services/std_svc/psci/psci_setup.c index 960c4b8b..71d3f1e7 100644 --- a/services/std_svc/psci/psci_setup.c +++ b/services/std_svc/psci/psci_setup.c @@ -28,14 +28,14 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <stdio.h> -#include <string.h> -#include <assert.h> +#include <arch.h> #include <arch_helpers.h> -#include <console.h> -#include <platform.h> +#include <assert.h> +#include <bl_common.h> +#include <context.h> #include <context_mgmt.h> -#include <runtime_svc.h> +#include <platform.h> +#include <stddef.h> #include "psci_private.h" /******************************************************************************* diff --git a/services/std_svc/std_svc_setup.c b/services/std_svc/std_svc_setup.c index 40d70960..6cb03199 100644 --- a/services/std_svc/std_svc_setup.c +++ b/services/std_svc/std_svc_setup.c @@ -28,13 +28,12 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <stdint.h> -#include <uuid.h> -#include <context_mgmt.h> +#include <debug.h> +#include <psci.h> #include <runtime_svc.h> #include <std_svc.h> -#include <psci.h> -#include <debug.h> +#include <stdint.h> +#include <uuid.h> /* Standard Service UUID */ DEFINE_SVC_UUID(arm_svc_uid, |