From 0b7c2e0d6091e6f48b4b3b2a345fd588eb95ddfc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Manuel=20Hern=C3=A1ndez=20M=C3=A9ndez?= Date: Tue, 8 Jul 2025 20:09:14 +0200 Subject: [PATCH] platform: openpiton: fix uninitialized plic_data struct MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The plic_data struct was uninitialized. This led to misfunction behavior since it was subsequently assigned to the global plic struct, and some struct fields, such as flags and irqchip, contained random values. The fix proposes to initialize the plic_data to the global plic struct, so, after parsing the fdt, the fields of the struct will be set to the default values set in global plic struct definition, or the parsed values in the fdt, or zero. Fixes: 4c37451 ("platform: openpiton: Read the device configurations from device tree") Signed-off-by: Manuel Hernández Méndez Reviewed-by: Xiang W Reviewed-by: Anup Patel Link: https://lore.kernel.org/r/20250708180914.1131-1-maherme.dev@gmail.com Signed-off-by: Anup Patel --- platform/fpga/openpiton/platform.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/platform/fpga/openpiton/platform.c b/platform/fpga/openpiton/platform.c index d2cf3e32..faa299ce 100644 --- a/platform/fpga/openpiton/platform.c +++ b/platform/fpga/openpiton/platform.c @@ -79,7 +79,7 @@ static int openpiton_early_init(bool cold_boot) { const void *fdt; struct platform_uart_data uart_data = { 0 }; - struct plic_data plic_data; + struct plic_data plic_data = plic; unsigned long aclint_freq; uint64_t clint_addr; int rc;