From 609e053caabf0807a71243eec11f49120eaaab61 Mon Sep 17 00:00:00 2001 From: Ambroise Vincent Date: Wed, 13 Feb 2019 15:58:00 +0000 Subject: [PATCH] Remove several warnings reported with W=1 Improved support for W=1 compilation flag by solving missing-prototypes and old-style-definition warnings. The libraries are compiling with warnings (which turn into errors with the Werror flag). Outside of libraries, some warnings cannot be fixed without heavy structural changes. Change-Id: I1668cf99123ac4195c2a6a1d48945f7a64c67f16 Signed-off-by: Ambroise Vincent --- drivers/io/io_fip.c | 4 ++-- include/drivers/arm/css/scmi.h | 4 ++-- include/drivers/console.h | 9 +++++---- include/plat/arm/common/plat_arm.h | 1 + lib/libc/memchr.c | 3 ++- lib/libc/memcmp.c | 3 ++- lib/libc/memcpy.c | 3 ++- lib/libc/memset.c | 3 ++- plat/arm/board/fvp/fvp_pm.c | 1 + plat/arm/board/fvp/fvp_private.h | 3 +-- plat/arm/board/juno/juno_err.c | 3 ++- plat/arm/board/juno/juno_topology.c | 4 ++-- plat/arm/board/sgi575/sgi575_plat.c | 4 +++- plat/arm/board/sgi575/sgi575_security.c | 3 ++- plat/arm/css/sgi/sgi_bl31_setup.c | 5 +++-- plat/arm/css/sgi/sgi_interconnect.c | 3 ++- plat/arm/css/sgi/sgi_topology.c | 1 + plat/common/plat_spm_rd.c | 3 ++- plat/common/plat_spm_sp.c | 3 ++- services/std_svc/spm/spm_buffers.c | 4 +++- services/std_svc/spm/spm_main.c | 3 ++- 21 files changed, 44 insertions(+), 26 deletions(-) diff --git a/drivers/io/io_fip.c b/drivers/io/io_fip.c index eaaf09096..544b37dbe 100644 --- a/drivers/io/io_fip.c +++ b/drivers/io/io_fip.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014-2018, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2014-2019, ARM Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -48,7 +48,7 @@ typedef struct { uintptr_t dev_spec; } fip_dev_state_t; -static const uuid_t uuid_null = { {0} }; +static const uuid_t uuid_null; /* * Only one file can be open across all FIP device * as backends like io_memmap don't support diff --git a/include/drivers/arm/css/scmi.h b/include/drivers/arm/css/scmi.h index df259f76d..1f8dc6cce 100644 --- a/include/drivers/arm/css/scmi.h +++ b/include/drivers/arm/css/scmi.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2018, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2017-2019, ARM Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -162,7 +162,7 @@ int scmi_ap_core_set_reset_addr(void *p, uint64_t reset_addr, uint32_t attr); int scmi_ap_core_get_reset_addr(void *p, uint64_t *reset_addr, uint32_t *attr); /* API to get the platform specific SCMI channel information. */ -scmi_channel_plat_info_t *plat_css_get_scmi_info(); +scmi_channel_plat_info_t *plat_css_get_scmi_info(void); /* API to override default PSCI callbacks for platforms that support SCMI. */ const plat_psci_ops_t *css_scmi_override_pm_ops(plat_psci_ops_t *ops); diff --git a/include/drivers/console.h b/include/drivers/console.h index 24887f908..4f26ccef2 100644 --- a/include/drivers/console.h +++ b/include/drivers/console.h @@ -49,11 +49,12 @@ typedef struct console { #include /* - * NOTE: There is no publicly accessible console_register() function. Consoles - * are registered by directly calling the register function of a specific - * implementation, e.g. console_16550_register() from . Consoles - * registered that way can be unregistered/reconfigured with below functions. + * Add a console_t instance to the console list. This should only be called by + * console drivers after they have initialized all fields in the console + * structure. Platforms seeking to register a new console need to call the + * respective console__register() function instead. */ +int console_register(console_t *console); /* Remove a single console_t instance from the console list. Return a pointer to * the console that was removed if it was found, or NULL if not. */ console_t *console_unregister(console_t *console); diff --git a/include/plat/arm/common/plat_arm.h b/include/plat/arm/common/plat_arm.h index 9d6786f5e..527375f6a 100644 --- a/include/plat/arm/common/plat_arm.h +++ b/include/plat/arm/common/plat_arm.h @@ -187,6 +187,7 @@ void arm_bl2_platform_setup(void); void arm_bl2_plat_arch_setup(void); uint32_t arm_get_spsr_for_bl32_entry(void); uint32_t arm_get_spsr_for_bl33_entry(void); +int arm_bl2_plat_handle_post_image_load(unsigned int image_id); int arm_bl2_handle_post_image_load(unsigned int image_id); struct bl_params *arm_get_next_bl_params(void); diff --git a/lib/libc/memchr.c b/lib/libc/memchr.c index 2eba47c95..0fe05358b 100644 --- a/lib/libc/memchr.c +++ b/lib/libc/memchr.c @@ -1,10 +1,11 @@ /* - * Copyright (c) 2013-2018, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2013-2019, ARM Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ #include +#include void *memchr(const void *src, int c, size_t len) { diff --git a/lib/libc/memcmp.c b/lib/libc/memcmp.c index a4c798b09..cd5f0df0c 100644 --- a/lib/libc/memcmp.c +++ b/lib/libc/memcmp.c @@ -1,10 +1,11 @@ /* - * Copyright (c) 2013-2018, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2013-2019, ARM Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ #include +#include int memcmp(const void *s1, const void *s2, size_t len) { diff --git a/lib/libc/memcpy.c b/lib/libc/memcpy.c index fc0c9fe89..158df9b79 100644 --- a/lib/libc/memcpy.c +++ b/lib/libc/memcpy.c @@ -1,10 +1,11 @@ /* - * Copyright (c) 2013-2018, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2013-2019, ARM Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ #include +#include void *memcpy(void *dst, const void *src, size_t len) { diff --git a/lib/libc/memset.c b/lib/libc/memset.c index 03aa80966..d8007d8e9 100644 --- a/lib/libc/memset.c +++ b/lib/libc/memset.c @@ -1,10 +1,11 @@ /* - * Copyright (c) 2013-2018, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2013-2019, ARM Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ #include +#include void *memset(void *dst, int val, size_t count) { diff --git a/plat/arm/board/fvp/fvp_pm.c b/plat/arm/board/fvp/fvp_pm.c index ecf0b0135..42dec8dfc 100644 --- a/plat/arm/board/fvp/fvp_pm.c +++ b/plat/arm/board/fvp/fvp_pm.c @@ -20,6 +20,7 @@ #include #include "fvp_private.h" +#include "../drivers/arm/gic/v3/gicv3_private.h" #if ARM_RECOM_STATE_ID_ENC diff --git a/plat/arm/board/fvp/fvp_private.h b/plat/arm/board/fvp/fvp_private.h index 3d9653739..5067d3a2f 100644 --- a/plat/arm/board/fvp/fvp_private.h +++ b/plat/arm/board/fvp/fvp_private.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014-2018, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2014-2019, ARM Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -20,5 +20,4 @@ void fvp_interconnect_enable(void); void fvp_interconnect_disable(void); void tsp_early_platform_setup(void); - #endif /* FVP_PRIVATE_H */ diff --git a/plat/arm/board/juno/juno_err.c b/plat/arm/board/juno/juno_err.c index f80ff2452..700b96cb1 100644 --- a/plat/arm/board/juno/juno_err.c +++ b/plat/arm/board/juno/juno_err.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015-2018, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2015-2019, ARM Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -7,6 +7,7 @@ #include #include +#include #include #include diff --git a/plat/arm/board/juno/juno_topology.c b/plat/arm/board/juno/juno_topology.c index ca5c344d6..052ab9f8a 100644 --- a/plat/arm/board/juno/juno_topology.c +++ b/plat/arm/board/juno/juno_topology.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016-2018, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2016-2019, ARM Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -20,7 +20,7 @@ static scmi_channel_plat_info_t juno_scmi_plat_info = { .ring_doorbell = &mhu_ring_doorbell, }; -scmi_channel_plat_info_t *plat_css_get_scmi_info() +scmi_channel_plat_info_t *plat_css_get_scmi_info(void) { return &juno_scmi_plat_info; } diff --git a/plat/arm/board/sgi575/sgi575_plat.c b/plat/arm/board/sgi575/sgi575_plat.c index d1a1fbf46..0d3fd16ab 100644 --- a/plat/arm/board/sgi575/sgi575_plat.c +++ b/plat/arm/board/sgi575/sgi575_plat.c @@ -1,11 +1,13 @@ /* - * Copyright (c) 2018, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2018-2019, ARM Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ #include +#include + unsigned int plat_arm_sgi_get_platform_id(void) { return mmio_read_32(SSC_VERSION) & SSC_VERSION_PART_NUM_MASK; diff --git a/plat/arm/board/sgi575/sgi575_security.c b/plat/arm/board/sgi575/sgi575_security.c index 8417e1008..440f18d55 100644 --- a/plat/arm/board/sgi575/sgi575_security.c +++ b/plat/arm/board/sgi575/sgi575_security.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2018-2019, ARM Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -8,6 +8,7 @@ #include #include +#include uintptr_t sgi575_dmc_base[] = { SGI575_DMC620_BASE0, diff --git a/plat/arm/css/sgi/sgi_bl31_setup.c b/plat/arm/css/sgi/sgi_bl31_setup.c index 8fa5b01b2..ba050d5f1 100644 --- a/plat/arm/css/sgi/sgi_bl31_setup.c +++ b/plat/arm/css/sgi/sgi_bl31_setup.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include @@ -35,7 +36,7 @@ static scmi_channel_plat_info_t rd_n1e1_edge_scmi_plat_info = { .ring_doorbell = &mhuv2_ring_doorbell, }; -scmi_channel_plat_info_t *plat_css_get_scmi_info() +scmi_channel_plat_info_t *plat_css_get_scmi_info(void) { if (sgi_plat_info.platform_id == RD_N1E1_EDGE_SID_VER_PART_NUM) return &rd_n1e1_edge_scmi_plat_info; @@ -43,7 +44,7 @@ scmi_channel_plat_info_t *plat_css_get_scmi_info() return &sgi575_scmi_plat_info; else panic(); -}; +} void bl31_early_platform_setup2(u_register_t arg0, u_register_t arg1, u_register_t arg2, u_register_t arg3) diff --git a/plat/arm/css/sgi/sgi_interconnect.c b/plat/arm/css/sgi/sgi_interconnect.c index e86c760d1..e9cd81256 100644 --- a/plat/arm/css/sgi/sgi_interconnect.c +++ b/plat/arm/css/sgi/sgi_interconnect.c @@ -1,11 +1,12 @@ /* - * Copyright (c) 2018, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2018-2019, ARM Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ #include #include +#include /* * For SGI575 which support FCM (with automatic interconnect enter/exit), diff --git a/plat/arm/css/sgi/sgi_topology.c b/plat/arm/css/sgi/sgi_topology.c index f9dbdefe9..7aa9e40d3 100644 --- a/plat/arm/css/sgi/sgi_topology.c +++ b/plat/arm/css/sgi/sgi_topology.c @@ -5,6 +5,7 @@ */ #include +#include #include diff --git a/plat/common/plat_spm_rd.c b/plat/common/plat_spm_rd.c index 0c72cb7aa..ebd3e6dc6 100644 --- a/plat/common/plat_spm_rd.c +++ b/plat/common/plat_spm_rd.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018, Arm Limited. All rights reserved. + * Copyright (c) 2018-2019, Arm Limited. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -14,6 +14,7 @@ #include #include #include +#include #include /******************************************************************************* diff --git a/plat/common/plat_spm_sp.c b/plat/common/plat_spm_sp.c index ce4827992..bc3d6a015 100644 --- a/plat/common/plat_spm_sp.c +++ b/plat/common/plat_spm_sp.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018, Arm Limited. All rights reserved. + * Copyright (c) 2018-2019, Arm Limited. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -9,6 +9,7 @@ #include #include +#include #include static unsigned int sp_next; diff --git a/services/std_svc/spm/spm_buffers.c b/services/std_svc/spm/spm_buffers.c index 0c26a74ba..736b23001 100644 --- a/services/std_svc/spm/spm_buffers.c +++ b/services/std_svc/spm/spm_buffers.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018, Arm Limited. All rights reserved. + * Copyright (c) 2018-2019, Arm Limited. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -9,6 +9,8 @@ #include #include +#include "./spm_private.h" + /******************************************************************************* * Secure Service response global array. All the responses to the requests done * to the Secure Partition are stored here. They are removed from the array as diff --git a/services/std_svc/spm/spm_main.c b/services/std_svc/spm/spm_main.c index adfffd58c..6cd77e3d9 100644 --- a/services/std_svc/spm/spm_main.c +++ b/services/std_svc/spm/spm_main.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2018, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2017-2019, ARM Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -20,6 +20,7 @@ #include #include #include +#include #include #include