From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 001EE81EB1 for ; Fri, 2 Dec 2016 01:47:01 -0800 (PST) Received: from int-mx09.intmail.prod.int.phx2.redhat.com (int-mx09.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 685818F290; Fri, 2 Dec 2016 09:47:01 +0000 (UTC) Received: from lacos-laptop-7.usersys.redhat.com (ovpn-116-74.phx2.redhat.com [10.3.116.74]) by int-mx09.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id uB29kwYc031732; Fri, 2 Dec 2016 04:46:59 -0500 To: "Zeng, Star" , "Yao, Jiewen" , edk2-devel-01 References: <20161201175556.2479-1-lersek@redhat.com> <74D8A39837DF1E4DA445A8C0B3885C50386DF380@shsmsx102.ccr.corp.intel.com> <315be37c-ddd0-1ddf-0953-bacf0624d67f@intel.com> Cc: "Kinney, Michael D" , "Tian, Feng" , "Gao, Liming" , "Wei, David" From: Laszlo Ersek Message-ID: <2fd9e769-1456-3892-41b3-5f4c1d1d360a@redhat.com> Date: Fri, 2 Dec 2016 10:46:58 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1 MIME-Version: 1.0 In-Reply-To: <315be37c-ddd0-1ddf-0953-bacf0624d67f@intel.com> X-Scanned-By: MIMEDefang 2.68 on 10.5.11.22 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.26]); Fri, 02 Dec 2016 09:47:01 +0000 (UTC) Subject: Re: [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Dec 2016 09:47:02 -0000 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit On 12/02/16 05:54, Zeng, Star wrote: > On 2016/12/2 9:53, Yao, Jiewen wrote: >> HI Laszlo >> Thank you to raise this long time existing issue. :-) >> >> There is historic reason that we inherit this undocumented API from >> EDK-I to EDKII. >> >> I do not object your update. Thanks! >> I am thinking if it is time to create a new API which can match PI >> specification, and suggest all consumers use the new API. >> >> RETURN_STATUS >> EFIAPI >> S3BootScriptSavePiMemPoll ( >> IN S3_BOOT_SCRIPT_LIB_WIDTH Width, >> IN UINT64 Address, >> IN VOID *Data, >> IN VOID *DataMask, >> IN UINT64 Delay, >> ); > > If the new API is introduced, the old one could be marked as deprecated > by DISABLE_NEW_DEPRECATED_INTERFACES. That's cool, but until then, can we please accept these patches? :) Thanks! Laszlo > Thanks, > Star > >> >> Thank you >> Yao Jiewen >> >> >>> -----Original Message----- >>> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of >>> Laszlo Ersek >>> Sent: Friday, December 2, 2016 1:56 AM >>> To: edk2-devel-01 >>> Cc: Tian, Feng ; Gao, Liming >>> ; >>> Kinney, Michael D ; Zeng, Star >>> ; Wei, David >>> Subject: [edk2] [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: >>> 64-bit LoopTimes in S3 MEM_POLL >>> >>> While working on S3 boot script related stuff in OVMF, I wanted to see >>> if infinite blocking was possible in the various POLL opcodes. While >>> edk2's implementation of IO_POLL, PCI_CONFIG_POLL and >>> PCI_CONFIG2_POLL >>> follows the PI spec vol5 closely, even internally (using 100ns delay >>> units), the MEM_POLL internals differ -- they are microseconds based. >>> >>> That's not a problem per se (it's just a different internal opcode >>> representation, which is fine); the problem is that the current >>> internals don't conform to the spec: in 32-bit builds, the UINT64 number >>> of 100ns units that the caller intends to wait for is silently >>> truncated, for no good reason. This issue is not hard to fix (we can >>> even keep the microseconds-based internals), so let's fix it. >>> >>> Repo: https://github.com/lersek/edk2/ >>> Branch: mempoll_looptimes_64bit >>> >>> Cc: David Wei >>> Cc: Feng Tian >>> Cc: Liming Gao >>> Cc: Mang Guo >>> Cc: Michael D Kinney >>> Cc: Star Zeng >>> >>> Thanks >>> Laszlo >>> >>> Laszlo Ersek (3): >>> MdePkg, MdeModulePkg: S3BootScriptSaveMemPoll(): accept 64-bit >>> LoopTimes >>> MdeModulePkg: S3SaveStateDxe, SmmS3SaveState: save 64-bit >>> LoopTimes >>> Vlv2TbltDevicePkg/BootScriptSaveDxe: save 64-bit LoopTimes >>> >>> MdeModulePkg/Library/PiDxeS3BootScriptLib/BootScriptSave.c | 2 +- >>> MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveState.c | 8 >>> ++++---- >>> MdeModulePkg/Universal/Acpi/SmmS3SaveState/SmmS3SaveState.c | 8 >>> ++++---- >>> MdePkg/Include/Library/S3BootScriptLib.h | 2 +- >>> MdePkg/Library/BaseS3BootScriptLibNull/BootScriptLib.c | 2 +- >>> Vlv2TbltDevicePkg/BootScriptSaveDxe/ScriptSave.c | 4 ++-- >>> 6 files changed, 13 insertions(+), 13 deletions(-) >>> >>> -- >>> 2.9.2 >>> >>> _______________________________________________ >>> edk2-devel mailing list >>> edk2-devel@lists.01.org >>> https://lists.01.org/mailman/listinfo/edk2-devel >