diff mbox series

hw/arm/virt: Fix non-secure flash mode

Message ID 20190712075002.14326-1-david.engraf@sysgo.com
State New
Headers show
Series hw/arm/virt: Fix non-secure flash mode | expand

Commit Message

David Engraf July 12, 2019, 7:50 a.m. UTC
Using the whole 128 MiB flash in non-secure mode is not working because
virt_flash_fdt() expects the same address for secure_sysmem and sysmem.
This is not correctly handled by caller because it forwards NULL for
secure_sysmem in non-secure flash mode.

Fixed by using sysmem when secure_sysmem is NULL.

Signed-off-by: David Engraf <david.engraf@sysgo.com>
---
 hw/arm/virt.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Peter Maydell July 12, 2019, 3:34 p.m. UTC | #1
On Fri, 12 Jul 2019 at 08:53, David Engraf <david.engraf@sysgo.com> wrote:
>
> Using the whole 128 MiB flash in non-secure mode is not working because
> virt_flash_fdt() expects the same address for secure_sysmem and sysmem.
> This is not correctly handled by caller because it forwards NULL for
> secure_sysmem in non-secure flash mode.
>
> Fixed by using sysmem when secure_sysmem is NULL.
>
> Signed-off-by: David Engraf <david.engraf@sysgo.com>

Nice catch; applied to target-arm.next for 4.1.

thanks
-- PMM
diff mbox series

Patch

diff --git a/hw/arm/virt.c b/hw/arm/virt.c
index 0b5138cb22..d9496c9363 100644
--- a/hw/arm/virt.c
+++ b/hw/arm/virt.c
@@ -1674,7 +1674,7 @@  static void machvirt_init(MachineState *machine)
                                     &machine->device_memory->mr);
     }
 
-    virt_flash_fdt(vms, sysmem, secure_sysmem);
+    virt_flash_fdt(vms, sysmem, secure_sysmem ?: sysmem);
 
     create_gic(vms, pic);