[PATCH v11 1/8] powerpc: Fix compiler warnings and errors

From: Lakshmi Ramasubramanian
Date: Mon Dec 14 2020 - 14:26:33 EST


The function prototype for the functions defined in ima.c for powerpc
are given in the header file ima.h. But this header file is not
included in ima.c resulting in compilation errors such as given below.

arch/powerpc/kexec/ima.c:56:5: error: no previous prototype for 'ima_get_kexec_buffer' [-Werror=missing-prototypes]
56 | int ima_get_kexec_buffer(void **addr, size_t *size)
| ^~~~~~~~~~~~~~~~~~~~

The function parameters for remove_ima_buffer() and
arch_ima_add_kexec_buffer() are not described in the function header
resulting in warnings such as given below.

arch/powerpc/kexec/ima.c:111: warning: Function parameter or member 'fdt' not described in 'remove_ima_buffer'

Include ima.h in ima.c for powerpc. Describe the function parameters for
remove_ima_buffer() and arch_ima_add_kexec_buffer().

Co-developed-by: Prakhar Srivastava <prsriva@xxxxxxxxxxxxxxxxxxx>
Signed-off-by: Prakhar Srivastava <prsriva@xxxxxxxxxxxxxxxxxxx>
Signed-off-by: Lakshmi Ramasubramanian <nramas@xxxxxxxxxxxxxxxxxxx>
Reviewed-by: Mimi Zohar <zohar@xxxxxxxxxxxxx>
Reviewed-by: Thiago Jung Bauermann <bauerman@xxxxxxxxxxxxx>
---
arch/powerpc/kexec/ima.c | 8 ++++++++
1 file changed, 8 insertions(+)

diff --git a/arch/powerpc/kexec/ima.c b/arch/powerpc/kexec/ima.c
index 720e50e490b6..a36c39db4b1a 100644
--- a/arch/powerpc/kexec/ima.c
+++ b/arch/powerpc/kexec/ima.c
@@ -11,6 +11,7 @@
#include <linux/of.h>
#include <linux/memblock.h>
#include <linux/libfdt.h>
+#include <asm/ima.h>

static int get_addr_size_cells(int *addr_cells, int *size_cells)
{
@@ -103,6 +104,9 @@ int ima_free_kexec_buffer(void)
/**
* remove_ima_buffer - remove the IMA buffer property and reservation from @fdt
*
+ * @fdt: Flattened Device Tree to update
+ * @chosen_node: Offset to the chosen node in the device tree
+ *
* The IMA measurement buffer is of no use to a subsequent kernel, so we always
* remove it from the device tree.
*/
@@ -131,6 +135,10 @@ void remove_ima_buffer(void *fdt, int chosen_node)
/**
* arch_ima_add_kexec_buffer - do arch-specific steps to add the IMA buffer
*
+ * @image: kimage struct to set IMA buffer data
+ * @load_addr: Starting address where IMA buffer is loaded at
+ * @size: Number of bytes in the IMA buffer
+ *
* Architectures should use this function to pass on the IMA buffer
* information to the next kernel.
*
--
2.29.2