qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCHv2] add optee dts entry for secure machine


From: Maxim Uvarov
Subject: Re: [PATCHv2] add optee dts entry for secure machine
Date: Thu, 30 Apr 2020 00:22:30 +0300

Kindly ping to merge this patch.
For more detail. This patch creates a dtb entry to load the optee
driver which is needed for secure boot (atf+optee+uboot+linux). Kernel
part is already there:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/tee/optee/core.c?h=v5.7-rc3#n705
.compatible = "linaro,optee-tz"

Thank you,
Maxim.

On Wed, 22 Apr 2020 at 16:07, Maxim Uvarov <address@hidden> wrote:
>
> Add optee compatible string for dtb to force linux
> to boot optee module.
>
> Signed-off-by: Maxim Uvarov <address@hidden>
> ---
>  v2: added method.
>  hw/arm/virt.c | 18 ++++++++++++++++++
>  1 file changed, 18 insertions(+)
>
> diff --git a/hw/arm/virt.c b/hw/arm/virt.c
> index 656b008..c937a82 100644
> --- a/hw/arm/virt.c
> +++ b/hw/arm/virt.c
> @@ -1335,6 +1335,23 @@ static void create_platform_bus(VirtMachineState *vms)
>                                  sysbus_mmio_get_region(s, 0));
>  }
>
> +static void create_secure_tee(VirtMachineState *vms)
> +{
> +    char *firmware;
> +    char *optee;
> +
> +    firmware = g_strdup_printf("/firmware");
> +    qemu_fdt_add_subnode(vms->fdt, firmware);
> +
> +    optee = g_strdup_printf("/firmware/optee");
> +    qemu_fdt_add_subnode(vms->fdt, optee);
> +    qemu_fdt_setprop_string(vms->fdt, optee, "compatible", 
> "linaro,optee-tz");
> +    qemu_fdt_setprop_string(vms->fdt, optee, "method", "smc");
> +
> +    g_free(optee);
> +    g_free(firmware);
> +}
> +
>  static void create_secure_ram(VirtMachineState *vms,
>                                MemoryRegion *secure_sysmem)
>  {
> @@ -1720,6 +1737,7 @@ static void machvirt_init(MachineState *machine)
>      if (vms->secure) {
>          create_secure_ram(vms, secure_sysmem);
>          create_uart(vms, VIRT_SECURE_UART, secure_sysmem, serial_hd(1));
> +        create_secure_tee(vms);
>      }
>
>      vms->highmem_ecam &= vms->highmem && (!firmware_loaded || aarch64);
> --
> 2.17.1
>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]