diff --git a/bl1/aarch32/bl1_arch_setup.c b/bl1/aarch32/bl1_arch_setup.c index 23a6564..ce04aaa 100644 --- a/bl1/aarch32/bl1_arch_setup.c +++ b/bl1/aarch32/bl1_arch_setup.c @@ -4,6 +4,7 @@ * SPDX-License-Identifier: BSD-3-Clause */ +#include "../bl1_private.h" /******************************************************************************* * TODO: Function that does the first bit of architectural setup. diff --git a/bl1/aarch32/bl1_context_mgmt.c b/bl1/aarch32/bl1_context_mgmt.c index cbf5cb6..6623dfc 100644 --- a/bl1/aarch32/bl1_context_mgmt.c +++ b/bl1/aarch32/bl1_context_mgmt.c @@ -11,6 +11,7 @@ #include #include #include +#include "../bl1_private.h" /* * Following arrays will be used for context management. @@ -26,13 +27,13 @@ static void *bl1_next_smc_context_ptr; /* Following functions are used for SMC context handling */ -void *smc_get_ctx(int security_state) +void *smc_get_ctx(unsigned int security_state) { assert(sec_state_is_valid(security_state)); return &bl1_smc_context[security_state]; } -void smc_set_next_ctx(int security_state) +void smc_set_next_ctx(unsigned int security_state) { assert(sec_state_is_valid(security_state)); bl1_next_smc_context_ptr = &bl1_smc_context[security_state]; diff --git a/bl1/aarch64/bl1_arch_setup.c b/bl1/aarch64/bl1_arch_setup.c index a7a4522..624bd80 100644 --- a/bl1/aarch64/bl1_arch_setup.c +++ b/bl1/aarch64/bl1_arch_setup.c @@ -6,6 +6,7 @@ #include #include +#include "../bl1_private.h" /******************************************************************************* * Function that does the first bit of architectural setup that affects diff --git a/bl1/aarch64/bl1_context_mgmt.c b/bl1/aarch64/bl1_context_mgmt.c index 2c7fe07..b9304dc 100644 --- a/bl1/aarch64/bl1_context_mgmt.c +++ b/bl1/aarch64/bl1_context_mgmt.c @@ -10,6 +10,7 @@ #include #include #include +#include "../bl1_private.h" /* * Following array will be used for context management. diff --git a/bl1/bl1_fwu.c b/bl1/bl1_fwu.c index 85eee1a..8dfc55f 100644 --- a/bl1/bl1_fwu.c +++ b/bl1/bl1_fwu.c @@ -52,8 +52,6 @@ /* Authentication status of each image. */ extern unsigned int auth_img_flags[]; -void cm_set_next_context(void *cpu_context); - /******************************************************************************* * Top level handler for servicing FWU SMCs. ******************************************************************************/ diff --git a/bl32/sp_min/sp_min_main.c b/bl32/sp_min/sp_min_main.c index d27c023..1c83cbe 100644 --- a/bl32/sp_min/sp_min_main.c +++ b/bl32/sp_min/sp_min_main.c @@ -34,13 +34,13 @@ /****************************************************************************** * Define the smcc helper library API's *****************************************************************************/ -void *smc_get_ctx(int security_state) +void *smc_get_ctx(unsigned int security_state) { assert(security_state == NON_SECURE); return &sp_min_smc_context[plat_my_core_pos()]; } -void smc_set_next_ctx(int security_state) +void smc_set_next_ctx(unsigned int security_state) { assert(security_state == NON_SECURE); /* SP_MIN stores only non secure smc context. Nothing to do here */ diff --git a/drivers/delay_timer/delay_timer.c b/drivers/delay_timer/delay_timer.c index 403c60f..43f5af7 100644 --- a/drivers/delay_timer/delay_timer.c +++ b/drivers/delay_timer/delay_timer.c @@ -19,10 +19,10 @@ ***********************************************************/ void udelay(uint32_t usec) { - assert(ops != 0 && + assert(ops != NULL && (ops->clk_mult != 0) && (ops->clk_div != 0) && - (ops->get_timer_value != 0)); + (ops->get_timer_value != NULL)); uint32_t start, delta, total_delta; @@ -57,10 +57,10 @@ ***********************************************************/ void timer_init(const timer_ops_t *ops_ptr) { - assert(ops_ptr != 0 && + assert(ops_ptr != NULL && (ops_ptr->clk_mult != 0) && (ops_ptr->clk_div != 0) && - (ops_ptr->get_timer_value != 0)); + (ops_ptr->get_timer_value != NULL)); ops = ops_ptr; } diff --git a/drivers/delay_timer/generic_delay_timer.c b/drivers/delay_timer/generic_delay_timer.c index 6a9d314..8a36c8a 100644 --- a/drivers/delay_timer/generic_delay_timer.c +++ b/drivers/delay_timer/generic_delay_timer.c @@ -9,6 +9,7 @@ #include #include #include +#include #include /* Ticks elapsed in one second by a signal of 1 MHz */ diff --git a/drivers/io/io_dummy.c b/drivers/io/io_dummy.c index a06aeb9..d4020e3 100644 --- a/drivers/io/io_dummy.c +++ b/drivers/io/io_dummy.c @@ -7,6 +7,7 @@ #include #include #include +#include #include #include @@ -18,7 +19,7 @@ static struct file_state current_file = {0}; /* Identify the device type as dummy */ -io_type_t device_type_dummy(void) +static io_type_t device_type_dummy(void) { return IO_TYPE_DUMMY; } diff --git a/drivers/io/io_storage.c b/drivers/io/io_storage.c index fe65423..0918de0 100644 --- a/drivers/io/io_storage.c +++ b/drivers/io/io_storage.c @@ -94,7 +94,7 @@ static int find_first_entity(const io_entity_t *entity, unsigned int *index_out) { int result = -ENOENT; - for (int index = 0; index < MAX_IO_HANDLES; ++index) { + for (unsigned int index = 0; index < MAX_IO_HANDLES; ++index) { if (entity_map[index] == entity) { result = 0; *index_out = index; diff --git a/include/lib/aarch32/smcc_helpers.h b/include/lib/aarch32/smcc_helpers.h index 5fb5a96..1bc8438 100644 --- a/include/lib/aarch32/smcc_helpers.h +++ b/include/lib/aarch32/smcc_helpers.h @@ -144,10 +144,10 @@ */ /* Get the pointer to `smc_ctx_t` corresponding to the security state. */ -void *smc_get_ctx(int security_state); +void *smc_get_ctx(unsigned int security_state); /* Set the next `smc_ctx_t` corresponding to the security state. */ -void smc_set_next_ctx(int security_state); +void smc_set_next_ctx(unsigned int security_state); /* Get the pointer to next `smc_ctx_t` already set by `smc_set_next_ctx()`. */ void *smc_get_next_ctx(void); diff --git a/include/lib/el3_runtime/context_mgmt.h b/include/lib/el3_runtime/context_mgmt.h index 9479869..eb7a953 100644 --- a/include/lib/el3_runtime/context_mgmt.h +++ b/include/lib/el3_runtime/context_mgmt.h @@ -86,6 +86,7 @@ #else void *cm_get_next_context(void); +void cm_set_next_context(void *context); #endif /* AARCH32 */ #endif /* __CM_H__ */ diff --git a/lib/psci/psci_system_off.c b/lib/psci/psci_system_off.c index f523791..4a55248 100644 --- a/lib/psci/psci_system_off.c +++ b/lib/psci/psci_system_off.c @@ -12,7 +12,7 @@ #include #include "psci_private.h" -void psci_system_off(void) +void __dead2 psci_system_off(void) { psci_print_power_domain_map(); @@ -31,7 +31,7 @@ /* This function does not return. We should never get here */ } -void psci_system_reset(void) +void __dead2 psci_system_reset(void) { psci_print_power_domain_map();