From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wr1-f67.google.com (mail-wr1-f67.google.com [209.85.221.67]) by mx.groups.io with SMTP id smtpd.web09.5046.1574693572853554535 for ; Mon, 25 Nov 2019 06:52:53 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@linaro.org header.s=google header.b=syrqQiyh; spf=pass (domain: linaro.org, ip: 209.85.221.67, mailfrom: ard.biesheuvel@linaro.org) Received: by mail-wr1-f67.google.com with SMTP id w9so18483265wrr.0 for ; Mon, 25 Nov 2019 06:52:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=prGLOrKhG32efbuEAyeDCm7oIZUUV+hxUeKRUz2Q+Lg=; b=syrqQiyhjON8ovZki0oC2cxhyVB1gG7gYF21GuUeOQUsNC9MFOjXQMncsL2C/wkMT/ 8N9PpgnIAg3pVfJO+9+4L0a2uVCUObP0V9demoYQ4YtokuaDgGwupYpbVag1oeSTswA8 bud8ctEuK0i9picrJ1SVLv87fG/qZjU7QT/ZqzeZgQkaEMwroEaYRAzdueE4k9iD4u5x 5kalXugsl0faWONlFeyYu71lJF1tYSz226ZnYWbqCijMqX/KqObe0OPmFNOIVOtyxWAc H6mlu1VL/y9h6fI7xhIO7CzqgXdlumH3LoNb6Ed/yAIxljHLhTSwQQAB9J/1JZ05vsAY I4Pg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=prGLOrKhG32efbuEAyeDCm7oIZUUV+hxUeKRUz2Q+Lg=; b=bz9mYcc8IMXjGpPa3K4Bmdmvu/z0giVfnl7UY8mWlTH1Mx+gJ18GxzjCQSHPIr8RUH FnrWW0X+Fv6m08DpbJtpmCM5jfKFa9RpYDgk5wpU/xLT/TPjAObzgF7HqAmeqVibJP+e JDyX/DBnV6+Dr7RwbXntohD4na7x0BIIrGXiCd/IbQSE6LWbqcenpQpCuT4maaOhpov2 mNb/+eR+syizcCoAsoilKIP99YfBzSE9ulTborNDNeiwuGUaTB00m506PS5jAfHJdNks oH0+nwRSI4hpBozMaJiDeEDY194/QQwbyGbQfSkBQAVMrGn0ha2XykMCHVR4vS9xWKuF HT0g== X-Gm-Message-State: APjAAAXWVziMXfusbLhiyShguMkHNo3DXrBKVwk/HhZcaFlB/UwGi5HW nzkLWAxV/S70wPv06oNhczqmfJBH44Yr+0dJ7fqMjQ== X-Google-Smtp-Source: APXvYqx2cNfBHNYSDCCMafW7NzANikUmjelxR23r8dti1Xhk2vX7HF6MM4JIOA5/lCIEOHk8B+/34NYLDEJzeeR+DG4= X-Received: by 2002:adf:f20d:: with SMTP id p13mr30442159wro.325.1574693571326; Mon, 25 Nov 2019 06:52:51 -0800 (PST) MIME-Version: 1.0 References: <20191122083234.12756-1-ard.biesheuvel@linaro.org> <4A89E2EF3DFEDB4C8BFDE51014F606A14E5483A3@SHSMSX104.ccr.corp.intel.com> In-Reply-To: <4A89E2EF3DFEDB4C8BFDE51014F606A14E5483A3@SHSMSX104.ccr.corp.intel.com> From: "Ard Biesheuvel" Date: Mon, 25 Nov 2019 15:52:40 +0100 Message-ID: Subject: Re: [edk2-devel] [PATCH 0/6] PIWG M1993 - implement EFI_MM_COMMUNICATE2_PROTOCOL To: "Gao, Liming" Cc: "devel@edk2.groups.io" , "leif.lindholm@linaro.org" , "piwg@uefi.org" , "kimon.berlin@hp.com" , "eugene@hp.com" Content-Type: text/plain; charset="UTF-8" On Mon, 25 Nov 2019 at 15:21, Gao, Liming wrote: > > Ard: > This change is about new protocol in 1.7 errata A of the PI spec. But, PI 1.7 errata A is not published yet. So, this patch set is for edk2-staging first? > Not sure if it needs to go to staging. The patches are on the list, and once we are ready to merge them, I will repost them with the appropriate maintainers on cc. This posting was mostly for discussion purpo > I review the code logic. For SMM part, SmmIpl still installs current SmmCommunication protocol. So, this change is totally compatible. Right? > Yes. SmmIpl will expose both the old and the new protocol, and some clients of this protocol are getting updated so they can be shared with standalone MM implementations. When we are ready to consider these changes for merging, I will include some test reports on both types of implementations. > > -----Original Message----- > > From: devel@edk2.groups.io On Behalf Of Ard Biesheuvel > > Sent: Friday, November 22, 2019 4:32 PM > > To: devel@edk2.groups.io > > Cc: leif.lindholm@linaro.org; Ard Biesheuvel ; piwg@uefi.org; kimon.berlin@hp.com; eugene@hp.com > > Subject: [edk2-devel] [PATCH 0/6] PIWG M1993 - implement EFI_MM_COMMUNICATE2_PROTOCOL > > > > As discussed in the PIWG call on 21 November, I am sending out my > > implementation of the MM communicate 2 protocol for review. It is > > intended to work around the impedance mismatch between traditional > > SMM (which uses physical addresses in the communication between DXE > > components) and standalone MM (which uses virtual addresses) > > > > The solution presented here is to introduce a new protocol that takes > > both addresses, forcing the clients to pass both, but freeing them > > from the responsibility to reason about which kind of address to pass: > > this becomes the responsibility of the MM_COMMUNICATE implementation, > > which is where it belongs. > > > > Cc: piwg@uefi.org > > Cc: kimon.berlin@hp.com > > Cc: eugene@hp.com > > > > Ard Biesheuvel (6): > > MdePkg: introduce MM communicate 2 protocol > > MdeModulePkg/SmmIpl: expose MM communicate 2 protocol > > ArmPkg/MmCommunicationDxe: expose MM Communicate 2 protocol > > MdeModulePkg/VariableInfo: switch to MM communicate 2 protocol > > MdeModulePkg/FaultTolerantWriteSmmDxe: switch to MM communicate 2 > > protocol > > MdeModulePkg/VariableSmmRuntimeDxe: switch to MM communicate 2 > > protocol > > > > ArmPkg/Drivers/MmCommunicationDxe/MmCommunication.c | 83 +++++++++----------- > > ArmPkg/Drivers/MmCommunicationDxe/MmCommunication.inf | 6 +- > > MdeModulePkg/Application/VariableInfo/VariableInfo.c | 19 +++-- > > MdeModulePkg/Application/VariableInfo/VariableInfo.inf | 2 +- > > MdeModulePkg/Core/PiSmmCore/PiSmmIpl.c | 79 +++++++++++++++++++ > > MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf | 1 + > > MdeModulePkg/Include/Guid/SmmVariableCommon.h | 6 +- > > MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmCommon.h | 2 +- > > MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmDxe.c | 25 +++--- > > MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmDxe.h | 2 +- > > MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmDxe.inf | 4 +- > > MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmmRuntimeDxe.c | 39 ++++----- > > MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmmRuntimeDxe.inf | 4 +- > > MdePkg/Include/Protocol/MmCommunication2.h | 69 ++++++++++++++++ > > MdePkg/MdePkg.dec | 7 ++ > > 15 files changed, 254 insertions(+), 94 deletions(-) > > create mode 100644 MdePkg/Include/Protocol/MmCommunication2.h > > > > -- > > 2.20.1 > > > > > > >