mirror of
https://github.com/riscv-software-src/opensbi.git
synced 2025-08-24 15:31:22 +01:00
platform: openpiton: fix uninitialized plic_data struct
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 <maherme.dev@gmail.com>
Reviewed-by: Xiang W <wxjstz@126.com>
Reviewed-by: Anup Patel <anup@brainfault.org>
Link: https://lore.kernel.org/r/20250708180914.1131-1-maherme.dev@gmail.com
Signed-off-by: Anup Patel <anup@brainfault.org>
This commit is contained in:

committed by
Anup Patel

parent
e10a45752f
commit
0b7c2e0d60
@@ -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;
|
||||
|
Reference in New Issue
Block a user