From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=2a00:1450:400c:c09::243; helo=mail-wm0-x243.google.com; envelope-from=leif.lindholm@linaro.org; receiver=edk2-devel@lists.01.org Received: from mail-wm0-x243.google.com (mail-wm0-x243.google.com [IPv6:2a00:1450:400c:c09::243]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 88750210D6CD4 for ; Thu, 31 May 2018 14:34:16 -0700 (PDT) Received: by mail-wm0-x243.google.com with SMTP id f8-v6so56495366wmc.4 for ; Thu, 31 May 2018 14:34:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=axZv7PuM28TM/VKrVC8b4fZFkHs4y0EJpxC/O/4Ct3M=; b=TBS00FqKT9ThgXdGMv8PR5tIZNdLXrUCKnZqH9viLxb1HaH9eW/Q5szms22fB/3djH de54ZXVvn6xSg9PE+oYTg7vIFGLqx3XLhV33BP2xoYOFSn85EruQCMIC9ZEFfMl1MwWn pftDMZxBP4F7q8cZ9QDtwUtP2I/81KlDtKwMg= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=axZv7PuM28TM/VKrVC8b4fZFkHs4y0EJpxC/O/4Ct3M=; b=UA+t0m2FjjV8+6RXpX/WDlhNzIb4aB7COEQdDYtWYfzOpsLNARKa9TsNN2QiZj/KnT aQevd2HtCwbbVdtaCerqW/OeUm8Z3xHuRhTDXDK0H2p47hoEs/7fOU7IzBrcNydea0Av 8Rpxm9CsY9vnSukiqW5pdxuB+EdoOsJ8m1lI+IDniR69O+GioGi4uc/cWljIM0rfy2qI GjyZ9cKqpwDYQWRo42Rt4QiXv6mXf3UEGSSKLaHz9gK40wyizSgVbhUkgH6qVZo2Y10q +HlzC3MpkjjUbniZgRkQWUmhLkB6z6MsCY464tAz4cQ0xI4gFiocSd5jxRsvFZrWF95d nz0w== X-Gm-Message-State: APt69E0Qc1RECcGolc40ca743sJVP1MTBOHFQyb2Rq3o7+2ZohLN0VgC Q8Qc8X2CUxkW6cytvExqlMCeWuDaWxg= X-Google-Smtp-Source: ADUXVKIRK3p2HZd+ufK7NgTAnzxaBvxX/EQkKy330IJQgyWROAK9JY6z4XeP+qOaVeEZhhsbalZRmQ== X-Received: by 2002:a1c:540c:: with SMTP id i12-v6mr938736wmb.131.1527802454906; Thu, 31 May 2018 14:34:14 -0700 (PDT) Received: from bivouac.eciton.net (bivouac.eciton.net. [2a00:1098:0:86:1000:23:0:2]) by smtp.gmail.com with ESMTPSA id b72-v6sm522050wmf.2.2018.05.31.14.34.12 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 31 May 2018 14:34:13 -0700 (PDT) Date: Thu, 31 May 2018 22:34:11 +0100 From: Leif Lindholm To: AlexeiFedorov Cc: edk2-devel@lists.01.org, Arvind Chauhan , Thomas Panakamattam Abraham , Ard.Biesheuvel@linaro.org, Matteo.Carlini@arm.com, Stephanie.Hughes-Fitt@arm.com, nd@arm.com, Evan.Lloyd@arm.com, Sami.Mujawar@arm.com Message-ID: <20180531213411.tndxn5oltr5vtsa2@bivouac.eciton.net> References: <1527083494-26148-1-git-send-email-Alexei.Fedorov@arm.com> MIME-Version: 1.0 In-Reply-To: <1527083494-26148-1-git-send-email-Alexei.Fedorov@arm.com> User-Agent: NeoMutt/20170113 (1.7.2) Subject: Re: [PATCH edk2-platforms v1] Platform/ARM: Declare FVP Generic Timer Frame #1 as Non-secure X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 31 May 2018 21:34:16 -0000 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Wed, May 23, 2018 at 02:51:34PM +0100, AlexeiFedorov wrote: > From: Alexei Fedorov > > Programming Reference for Base FVPs describes 2 Generic Memory-mapped > Timer frames with Non-secure access permitted to frame #1. > However ACPI GTDT lists both timer frames #0 and #1 with > Secure Timer flag being set in GTx Common Flags field: > #define FVP_GTX_COMMON_FLAGS > (GTX_TIMER_SAVE_CONTEXT | GTX_TIMER_SECURE) > Declaring both timer frames as Secure prevents OS running > in Non-secure state from accessing Generic Timer frame #1. > > This patch fixes the above issue by removal of FVP_GTX_COMMON_FLAGS > and adding two FVP_GTX_COMMON_FLAGS_S and FVP_GTX_COMMON_FLAGS_NS > definitions used for Secure frame #0 and Non-secure frame #1 > accordingly. > > Contributed-under: TianoCore Contribution Agreement 1.1 > Signed-off-by: Alexei Fedorov The patch looks good to me, so if Thomas agrees: Reviewed-by: Leif Lindholm Thomas? / Leif > --- > All the changes can be reviewed at: > https://github.com/AlexeiFedorov/edk2-platforms/tree/262_gtdt_timer_frame_ns_v1 > > Notes: > v1: > - remove FVP_GTX_COMMON_FLAGS [Alexei] > - define FVP_GTX_COMMON_FLAGS_S and FVP_GTX_COMMON_FLAGS_NS [Alexei] > - use FVP_GTX_COMMON_FLAGS_S for timer frame #0 and [Alexei] > FVP_GTX_COMMON_FLAGS_NS for frame #1 > > Platform/ARM/VExpressPkg/AcpiTables/Gtdt.aslc | 9 +++++---- > 1 file changed, 5 insertions(+), 4 deletions(-) > > diff --git a/Platform/ARM/VExpressPkg/AcpiTables/Gtdt.aslc b/Platform/ARM/VExpressPkg/AcpiTables/Gtdt.aslc > index 1cb4b498300cf1a08514835677154eace1dd1803..7a0b2b686ec849a8385ac5793e5d5855b9ba83ca 100644 > --- a/Platform/ARM/VExpressPkg/AcpiTables/Gtdt.aslc > +++ b/Platform/ARM/VExpressPkg/AcpiTables/Gtdt.aslc > @@ -1,7 +1,7 @@ > /** @file > * Generic Timer Description Table (GTDT) > * > -* Copyright (c) 2012 - 2017, ARM Limited. All rights reserved. > +* Copyright (c) 2012 - 2018, ARM Limited. All rights reserved. > * Copyright (c) 2016, Linaro Ltd. All rights reserved > * > * This program and the accompanying materials > @@ -61,7 +61,8 @@ > #define GTX_TIMER_SAVE_CONTEXT EFI_ACPI_6_1_GTDT_GT_BLOCK_COMMON_FLAG_ALWAYS_ON_CAPABILITY > #define GTX_TIMER_LOSE_CONTEXT 0 > > -#define FVP_GTX_COMMON_FLAGS (GTX_TIMER_SAVE_CONTEXT | GTX_TIMER_SECURE) > +#define FVP_GTX_COMMON_FLAGS_S (GTX_TIMER_SAVE_CONTEXT | GTX_TIMER_SECURE) > +#define FVP_GTX_COMMON_FLAGS_NS (GTX_TIMER_SAVE_CONTEXT | GTX_TIMER_NON_SECURE) > > #define FVP_SBSA_WATCHDOG_REFRESH_BASE 0x000000002a450000 > #define FVP_SBSA_WATCHDOG_CONTROL_BASE 0x000000002a440000 > @@ -136,7 +137,7 @@ FVP_GENERIC_TIMER_DESCRIPTION_TABLES Gtdt = { > FVP_GTX_TIMER_FLAGS, // UINT32 GTxPhysicalTimerFlags > 0, // UINT32 GTxVirtualTimerGSIV > 0, // UINT32 GTxVirtualTimerFlags > - FVP_GTX_COMMON_FLAGS // UINT32 GTxCommonFlags > + FVP_GTX_COMMON_FLAGS_S // UINT32 GTxCommonFlags > }, > { > 1, // UINT8 GTFrameNumber > @@ -149,7 +150,7 @@ FVP_GENERIC_TIMER_DESCRIPTION_TABLES Gtdt = { > FVP_GTX_TIMER_FLAGS, // UINT32 GTxPhysicalTimerFlags > 0, // UINT32 GTxVirtualTimerGSIV > 0, // UINT32 GTxVirtualTimerFlags > - FVP_GTX_COMMON_FLAGS // UINT32 GTxCommonFlags > + FVP_GTX_COMMON_FLAGS_NS // UINT32 GTxCommonFlags > } > }, > #if (FVP_WATCHDOG_COUNT != 0) > -- > 'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)' > >