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 062D281F4C for ; Fri, 2 Dec 2016 02:05:04 -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 6DBA88E670; Fri, 2 Dec 2016 10:05:03 +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 uB2A51aB009778; Fri, 2 Dec 2016 05:05:02 -0500 To: Jordan Justen , edk2-devel-01 References: <20161201175633.2538-1-lersek@redhat.com> <20161201175633.2538-4-lersek@redhat.com> <148062086103.26637.11038536785691900096@jljusten-ivb> <7b51a6a6-8d46-177c-9277-00c5af35816f@redhat.com> <148064046187.30145.7058829364051206838@jljusten-ivb> Cc: Ard Biesheuvel , "Leif Lindholm (Linaro address)" From: Laszlo Ersek Message-ID: <0648ce05-32d8-98ac-7b6d-5268f38b9dbd@redhat.com> Date: Fri, 2 Dec 2016 11:05:01 +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: <148064046187.30145.7058829364051206838@jljusten-ivb> 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.25]); Fri, 02 Dec 2016 10:05:03 +0000 (UTC) Subject: Re: [PATCH 3/5] OvmfPkg/IndustryStandard: add QemuFwCfgDma.h 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 10:05:04 -0000 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit On 12/02/16 02:01, Jordan Justen wrote: > On 2016-12-01 12:48:51, Laszlo Ersek wrote: >> On 12/01/16 20:34, Jordan Justen wrote: >>> On 2016-12-01 09:56:31, Laszlo Ersek wrote: >>>> Add the type and macro definitions related to QEMU's DMA-like fw_cfg >>>> access method in a dedicated header file. >>>> >>>> Cc: Ard Biesheuvel >>>> Cc: Jordan Justen >>>> Contributed-under: TianoCore Contribution Agreement 1.0 >>>> Signed-off-by: Laszlo Ersek >>>> --- >>>> OvmfPkg/Include/IndustryStandard/QemuFwCfgDma.h | 50 ++++++++++++++++++++ >>> >>> What do you think about just >>> OvmfPkg/Include/IndustryStandard/QemuFwCfg.h? >>> >>> Arguably, the FIRMWARE_CONFIG_ITEM enums could be moved there as >>> well... >>> >>> Then again, I think we could also just put this content into >>> OvmfPkg/Include/Library/QemuFwCfgLib.h. >> >> Adding this stuff to "OvmfPkg/Include/Library/QemuFwCfgLib.h" sounds >> good to me; I'll do that in v2. >> > > Ok. By the way, I looked over the series, and with that change you can > add Reviewed-by: Jordan Justen Thank you! > I'll let you decide if you want to send out a v2. Yes, I will; first I'd like you to at least skim v2, second, I need Ard's R-b for the ArmVirtPkg patches. Hm, Ard seems to be on vacation (good choice :)), so maybe I'll CC Leif as well. Then I'll use your R-b and hopefully Leif's in Ard's review's stead. Thanks! Laszlo > -Jordan > >> >>> -Jordan >>> >>>> 1 file changed, 50 insertions(+) >>>> >>>> diff --git a/OvmfPkg/Include/IndustryStandard/QemuFwCfgDma.h b/OvmfPkg/Include/IndustryStandard/QemuFwCfgDma.h >>>> new file mode 100644 >>>> index 000000000000..37a5804adb05 >>>> --- /dev/null >>>> +++ b/OvmfPkg/Include/IndustryStandard/QemuFwCfgDma.h >>>> @@ -0,0 +1,50 @@ >>>> +/** @file >>>> + Macro and type definitions related to QEMU's DMA-like fw_cfg access method, >>>> + based on "docs/specs/fw_cfg.txt" in the QEMU tree. >>>> + >>>> + Copyright (C) 2016, Red Hat, Inc. >>>> + >>>> + This program and the accompanying materials are licensed and made available >>>> + under the terms and conditions of the BSD License which accompanies this >>>> + distribution. The full text of the license may be found at >>>> + http://opensource.org/licenses/bsd-license.php >>>> + >>>> + THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT >>>> + WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. >>>> +**/ >>>> + >>>> + >>>> +#ifndef __FW_CFG_DMA__ >>>> +#define __FW_CFG_DMA__ >>>> + >>>> +#include >>>> + >>>> +// >>>> +// If the following bit is set in the UINT32 fw_cfg revision / feature bitmap >>>> +// -- read from key 0x0001 with the basic IO Port or MMIO method --, then the >>>> +// DMA interface is available. >>>> +// >>>> +#define FW_CFG_F_DMA BIT1 >>>> + >>>> +// >>>> +// Communication structure for the DMA access method. All fields are encoded in >>>> +// big endian. >>>> +// >>>> +#pragma pack (1) >>>> +typedef struct { >>>> + UINT32 Control; >>>> + UINT32 Length; >>>> + UINT64 Address; >>>> +} FW_CFG_DMA_ACCESS; >>>> +#pragma pack () >>>> + >>>> +// >>>> +// Macros for the FW_CFG_DMA_ACCESS.Control bitmap (in native encoding). >>>> +// >>>> +#define FW_CFG_DMA_CTL_ERROR BIT0 >>>> +#define FW_CFG_DMA_CTL_READ BIT1 >>>> +#define FW_CFG_DMA_CTL_SKIP BIT2 >>>> +#define FW_CFG_DMA_CTL_SELECT BIT3 >>>> +#define FW_CFG_DMA_CTL_WRITE BIT4 >>>> + >>>> +#endif >>>> -- >>>> 2.9.2 >>>> >>>> >>