Re: [edk2-devel] [PATCH v5 1/4] MdePkg: Implement SCSI commands for Security Protocol In/Out

2019-08-29 Thread Wu, Hao A
Hello,

Sorry for top-posting.

I was thinking to make the parameters interface match between the UefiScsiLib
API and the EFI Storage Security Command Protocol service, since the
implementation of the SSC protocol will directly call the UefiScsiLib API.

More specifically, for UefiScsiLib API:
EFI_STATUS
EFIAPI
ScsiSecurityProtocolInCommand (
  ...
  IN UINT32  TransferLength,
  ...
  IN OUT UINT32  *DataLength
  )

to match the SSC protocol service:
typedef
EFI_STATUS
(EFIAPI *EFI_STORAGE_SECURITY_RECEIVE_DATA)(
  ...
  IN UINTN   PayloadBufferSize,
  ...
  OUT UINTN  *PayloadTransferSize
  )

and for UefiScsiLib API:
EFI_STATUS
EFIAPI
ScsiSecurityProtocolOutCommand (
  ...
  IN UINT32  TransferLength,
  ...
  )

to match the SSC protocol service:
typedef
EFI_STATUS
(EFIAPI *EFI_STORAGE_SECURITY_SEND_DATA) (
  ...
  IN UINTN  PayloadBufferSize,
  ...
  )

I am okay with the cast from UINTN to UINT32, as long as we can ensure
truncation will not happen (which I think should be safe when dealing with
data transfer with actual devices).

But for casting from UINTN* to UINT32*, I am not sure if this is a recommended
coding style. Maybe within the BIOS perspective, little endian is always the
case where such cast should work well.

I will leave this open to MdePkg package maintainers for their inputs.

Best Regards,
Hao Wu


> -Original Message-
> From: Zurcher, Christopher J
> Sent: Friday, August 30, 2019 8:35 AM
> To: Wu, Hao A; devel@edk2.groups.io
> Cc: Yao, Jiewen; Wang, Jian J; Gao, Liming
> Subject: RE: [edk2-devel] [PATCH v5 1/4] MdePkg: Implement SCSI
> commands for Security Protocol In/Out
> 
> I've implemented all the suggested changes except changing the arguments
> from UINT32 to UINTN. No other functions in UefiScsiLib take UINTN
> arguments, and since the library is directly packing the CDB, I think it makes
> sense to force the caller to provide the correct-size length value. That way
> there is no ambiguity on what is going to the device.
> If you agree I will send the updated patchset.
> 
> Thanks,
> Christopher Zurcher
> 
> -Original Message-
> From: Wu, Hao A
> Sent: Monday, August 26, 2019 20:03
> To: devel@edk2.groups.io; Zurcher, Christopher J
> 
> Cc: Yao, Jiewen ; Wang, Jian J
> ; Gao, Liming 
> Subject: RE: [edk2-devel] [PATCH v5 1/4] MdePkg: Implement SCSI
> commands for Security Protocol In/Out
> 
> Hello,
> 
> Please refer to the below inline comments:
> 
> 
> > -Original Message-
> > From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of
> > Zurcher, Christopher J
> > Sent: Friday, August 23, 2019 6:02 AM
> > To: devel@edk2.groups.io
> > Cc: Yao, Jiewen; Wang, Jian J; Gao, Liming
> > Subject: [edk2-devel] [PATCH v5 1/4] MdePkg: Implement SCSI commands
> > for Security Protocol In/Out
> >
> > This patch implements the Security Protocol In and Security Protocol Out
> > commands in UefiScsiLib to prepare support for the Storage Security
> > Command Protocol.
> >
> > Cc: Jiewen Yao 
> > Cc: Jian J Wang 
> > Cc: Liming Gao 
> > Signed-off-by: Christopher J Zurcher 
> > ---
> >  MdePkg/Include/IndustryStandard/Scsi.h   |  48 +++--
> >  MdePkg/Include/Library/UefiScsiLib.h | 126 +++-
> >  MdePkg/Include/Protocol/ScsiIo.h |   9 +-
> >  MdePkg/Library/UefiScsiLib/UefiScsiLib.c | 205 +++-
> >  4 files changed, 366 insertions(+), 22 deletions(-)
> >
> > diff --git a/MdePkg/Include/IndustryStandard/Scsi.h
> > b/MdePkg/Include/IndustryStandard/Scsi.h
> > index cbe5709fe5..10d7b49ba7 100644
> > --- a/MdePkg/Include/IndustryStandard/Scsi.h
> > +++ b/MdePkg/Include/IndustryStandard/Scsi.h
> > @@ -1,7 +1,7 @@
> >  /** @file
> >Support for SCSI-2 standard
> >
> > -  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
> > +  Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved.
> >SPDX-License-Identifier: BSD-2-Clause-Patent
> >
> >  **/
> > @@ -163,6 +163,12 @@
> >  #define EFI_SCSI_OP_SEND_MESSAGE10  0x2a
> >  #define EFI_SCSI_OP_SEND_MESSAGE12  0xaa
> >
> > +//
> > +// Additional commands for Secure Transactions
> > +//
> > +#define EFI_SCSI_OP_SECURITY_PROTOCOL_IN  0xa2
> > +#define EFI_SCSI_OP_SECURITY_PROTOCOL_OUT 0xb5
> > +
> >  //
> >  // SCSI Data Transfer Direction
> >  //
> > @@ -172,22 +178,30 @@
> >  //
> >  // Peripheral Device Type Definitions
> >  //
> > -#define EFI_SCSI_TYPE_DISK  0x00  ///< Direct-access device (e.g.
> > magnetic disk)
> > -#define EFI_SCSI_TYPE_TAPE  0x01  ///< Sequential-access device 
> > (e.g.
> > magnetic tape)
> > -#define EFI_SCSI_TYPE_PRINTER   0x02  ///< Printer device
> > -#define EFI_SCSI_TYPE_PROCESSOR 0x03  ///< Processor device
> > -#define EFI_SCSI_TYPE_WORM  0x04  ///< Write-once device (e.g.
> some
> > optical disks)
> > -#define EFI_SCSI_TYPE_CDROM 0x05  ///< CD-ROM device
> > -#define EFI_SCSI_TYPE_SCANNER   0x06  ///< Scanner device
> > -#define EFI_SCSI_TYPE_OPTICAL   0x07  

Re: [edk2-devel] [PATCH] MdePkg/DxeHstiLib: Added checks to improve error handling.

2019-08-29 Thread Nate DeSimone
Hi All,



It is possible to use git send-email with an exchange server by using 
DavMail as a relay. I would recommend that we 
encourage those whom work at a company which does not allow outbound SMTP 
connections to send their edk2 patches using this method.



Here is how you configure it:



  1.  Figure out what your exchange server’s network name is:



CTRL + Right Click on the Outlook icon in your system tray, select Connection 
Status…


[cid:image001.png@01D55E9C.2E086970]



In the status window there might be a few connections, on my network there was 
connections to an exchange gateway, and then a single connection to the actual 
exchange server that hosts my personal mailbox, use that server.



[cid:image002.png@01D55E9C.9888F800]



  1.  Download and install 
DavMail. On 
Windows run the .exe as administrator.
  2.  It looks like the .exe launchers that come with the Windows version of 
DavMail and old and intended for Java 7 (which is no longer supported and there 
are licensing issues.) I was able to run DavMail fine using the RedHat 
supported OpenJDK 
11 
binaries by opening a Windows command prompt and running the following commands:



C:\>cd "Program Files\DavMail\

C:\Program Files\DavMail>java -jar davmail.jar



  1.  In the DavMail settings dialog, choose Exchange Protocol = EWS and enter 
the server name from Step #1 using the following format:



https:///owa



[cid:image003.png@01D55E9E.53F35F80]



  1.  Run these commands in Git Bash:



git config --global sendemail.smtpserver localhost:1025

git config --global sendemail.smtpuser 



For example:



git config --global sendemail.smtpuser nathaniel.l.desim...@intel.com



  1.  Git send-email should now work. It will popup a dialog box prompting you 
for a password. Use your outlook/windows password.



Thanks,

Nate



-Original Message-
From: devel@edk2.groups.io  On Behalf Of Ni, Ray
Sent: Thursday, August 29, 2019 10:02 AM
To: devel@edk2.groups.io; ler...@redhat.com; Leif Lindholm 

Cc: Gao, Liming ; Cetola, Stephano 
; Kinney, Michael D ; 
jayanth.raghu...@dell.com; 'Andrew Fish (af...@apple.com)' ; 
wei.g@dell.com
Subject: Re: [edk2-devel] [PATCH] MdePkg/DxeHstiLib: Added checks to improve 
error handling.







> -Original Message-

> From: devel@edk2.groups.io 
> mailto:devel@edk2.groups.io>> On Behalf Of Laszlo

> Ersek

> Sent: Thursday, August 29, 2019 7:24 AM

> To: Leif Lindholm 
> mailto:leif.lindh...@linaro.org>>; Ni, Ray

> mailto:ray...@intel.com>>

> Cc: Gao, Liming mailto:liming@intel.com>>; Cetola, 
> Stephano

> mailto:stephano.cet...@intel.com>>; Kinney, 
> Michael D

> mailto:michael.d.kin...@intel.com>>; 
> jayanth.raghu...@dell.com; 'Andrew Fish

> (af...@apple.com)' 
> mailto:af...@apple.com>>; 
> wei.g@dell.com;

> devel@edk2.groups.io

> Subject: Re: [edk2-devel] [PATCH] MdePkg/DxeHstiLib: Added checks to improve 
> error handling.

>

> On 08/29/19 11:49, Leif Lindholm wrote:

> > On Wed, Aug 28, 2019 at 05:33:28PM +, Ni, Ray wrote:

>

> >> With the existence of mail attachments capability in new groups.io

> >> system, can we accept such kind of patch submission? Or any side

> >> effect you see if allowing mail attachments?

> >

> > Traditionally, the reason for not wanting patches as attachments is

> > that it complicates doing inline code review as part of the email.

> >

> > If the mail system (let's take a wild guess, Outlook/Exchange?)

> > doesn't corrupt the text *too* badly, I don't have an issue with the

> > patch being sent in the message body *and* being attached so it

> > could actually be applied.



Leif,

So, message body should have the patch changes for easy inline review. It's 
optional to carry a .diff attachment.

Is my understanding correct?



>

> - Doesn't work for patch series, only for single patches.

Laszlo,

Do you mean attachment is not allowed for a series of patch? Why? A mail can 
carry multiple attachments. That makes the patch series easy to fetch in my 
opinion from Outlook.









-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#46608): https://edk2.groups.io/g/devel/message/46608
Mute This Topic: https://groups.io/mt/33041050/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [edk2-devel] [RFC] EDK II Continuous Integration Phase 1

2019-08-29 Thread Sean via Groups.Io
Mike, as you mentioned we have been working towards enabling a practical and 
extensible CI for Edk2 using Azure dev ops and the recently added edk2-pytool 
infrastructure.  We have been using similar CI for Project Mu for the last few 
years.

Our approach is a little different in that we focus on validating the whole 
code base rather than just the incoming patch.  We do this because we have 
found unexpected consequences of patches and overall we want all code to be 
compliant not just new additions.  We have found the time to test the whole 
tree is not much longer than only the parts impacted by a code change (except 
maybe when running the entire compile test on every package).  This obviously 
comes with an initial tax of needing to get the codebase into compliant form.  
Anyway we have prepared an RFC in addition to yours and would like to see these 
two efforts merged together.

We are still working on making a few optimizations.  Currently if the full set 
of tests are run we take about 20 minutes.  This is because compiling 
MdeModulePkg for debug, release, and host based tests take a while.  Most other 
packages are in the 10 minute range.  We do have easy ways to disable or limit 
certain tests as well as expand the matrix to leverage more cloud resources 
(more parallel builds).   


Content is best viewed online with links to helpful content but is also 
attached below: 
https://github.com/spbrogan/edk2-staging/blob/edk2-stuart-ci-latest/Readme-CI-RFC.md
 

# CI and PR Gates

## Background

Historically, while the TianoCore maintainers and stewards have done a 
fantastic job of keeping contribution policies consistent and contributions 
clean and well-documented, there have been few processes that ran to verify the 
sanity, cleanliness, and efficacy of the codebase, and even fewer that publicly 
published their results for the community at large. This has caused 
inconsistancies and issues within the codebase from time to time.

Adding continuous integration (and potentially PR gates) to the checkin process 
ensures that simple errors like these are caught and can be fixed on a regular 
basis.

## Strategy

While a number of CI solutions exist, this proposal will focus on the usage of 
Azure Dev Ops and Build Pipelines. For demonstration, a sample [TianoCore 
repo](https://github.com/spbrogan/edk2-staging.git) (branch 
edk2-stuart-ci-latest) and [Dev Ops 
Pipeline](https://dev.azure.com/tianocore/edk2-ci-play/_build?definitionId=12) 
have been set up.

Furthermore, this proposal will leverage the TianoCore python tools PIP 
modules: [library](https://pypi.org/project/edk2-pytool-library/) and 
[extensions](https://pypi.org/project/edk2-pytool-extensions/) (with repos 
located [here](https://github.com/tianocore/edk2-pytool-library) and 
[here](https://github.com/tianocore/edk2-pytool-extensions)).

The primary execution flows can be found in the `azure-pipelines-pr-gate.yml` 
and `azure-pipelines-pr-gate-linux.yml` files. These YAML files are consumed by 
the Azure Dev Ops Build Pipeline and dictate what server resources should be 
used, how they should be configured, and what processes should be run on them. 
An overview of this schema can be found 
[here](https://docs.microsoft.com/en-us/azure/devops/pipelines/yaml-schema?view=azure-devops=schema).

Inspection of these files reveals the EDKII Tools commands that make up the 
primary processes for the CI build: 'stuart_setup', 'stuart_update', and 
'stuart_ci_build'. These commands come from the EDKII Tools PIP modules and are 
configured as described below. More documentation on the stuart tools can be 
found 
[here](https://github.com/tianocore/edk2-pytool-extensions/blob/master/docs/using.md)
 and 
[here](https://github.com/tianocore/edk2-pytool-extensions/blob/master/docs/features/feature_invocables.md).

## Configuration

Configuration of the CI process consists of (in order of precedence):
* command-line arguments passed in via the Pipeline YAML
* a per-package configuration file (e.g. `.mu.yaml`) that is 
detected by the CI system in EDKII Tools.
* a global configuration Python module (e.g. `CISetting.py`) passed in via the 
command-line

The global configuration file is described in [this 
readme](https://github.com/tianocore/edk2-pytool-extensions/blob/master/docs/usability/using_settings_manager.md)
 from the EDKII Tools documentation. This configuration is written as a Python 
module so that decisions can be made dynamically based on command line 
parameters and codebase state.

The per-package configuration file can override most settings in the global 
configuration file, but is not dynamic. This file can be used to skip or 
customize tests that may be incompatible with a specific package. By default, 
the global configuration will try to run all tests on all packages.

## CI Test Types

All CI tests are instances of EDKII Tools plugins. Documentation on the plugin 
system can be found 

[edk2-devel] [edk2-platforms] ClevoOpenBoardPkg: Update board gpios

2019-08-29 Thread Agyeman, Prince
Updated board GPIOS

Cc: Liming Gao 
Cc: David Y Wei 
Cc: Michael Kubacki 
Cc: Nate DeSimone 
Cc: Chasel Chiu 

Signed-off-by: Agyeman 
---
 .../Library/BoardInitLib/N1xxWUGpioTable.c| 329 +-
 1 file changed, 165 insertions(+), 164 deletions(-)

diff --git 
a/Platform/Intel/ClevoOpenBoardPkg/N1xxWU/Library/BoardInitLib/N1xxWUGpioTable.c
 
b/Platform/Intel/ClevoOpenBoardPkg/N1xxWU/Library/BoardInitLib/N1xxWUGpioTable.c
index d055fda8c3..c99b83753f 100644
--- 
a/Platform/Intel/ClevoOpenBoardPkg/N1xxWU/Library/BoardInitLib/N1xxWUGpioTable.c
+++ 
b/Platform/Intel/ClevoOpenBoardPkg/N1xxWU/Library/BoardInitLib/N1xxWUGpioTable.c
@@ -20,170 +20,171 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 
 GPIO_INIT_CONFIG mGpioTableN1xxWU[] =
 {
-//skip for eSPI function  {GPIO_SKL_LP_GPP_A0, {GpioPadModeNative1, 
GpioHostOwnGpio, GpioDirNone,  GpioOutDefault, GpioIntDis, GpioHostDeepReset,  
GpioTermNone}},//H_RCIN_N
-//skip for eSPI function  {GPIO_SKL_LP_GPP_A1, {GpioPadModeNative1, 
GpioHostOwnGpio, GpioDirNone,  GpioOutDefault, GpioIntDis, GpioHostDeepReset,  
GpioTermWpd20K}},//LPC_AD0_ESPI_IO0
-//skip for eSPI function  {GPIO_SKL_LP_GPP_A2, {GpioPadModeNative1, 
GpioHostOwnGpio, GpioDirNone,  GpioOutDefault, GpioIntDis, GpioHostDeepReset,  
GpioTermWpd20K}},//LPC_AD1_ESPI_IO1
-//skip for eSPI function  {GPIO_SKL_LP_GPP_A3, {GpioPadModeNative1, 
GpioHostOwnGpio, GpioDirNone,  GpioOutDefault, GpioIntDis, GpioHostDeepReset,  
GpioTermWpd20K}},//LPC_AD2_ESPI_IO2
-//skip for eSPI function  {GPIO_SKL_LP_GPP_A4, {GpioPadModeNative1, 
GpioHostOwnGpio, GpioDirNone,  GpioOutDefault, GpioIntDis, GpioHostDeepReset,  
GpioTermWpd20K}},//LPC_AD3_ESPI_IO3
-//skip for eSPI function  {GPIO_SKL_LP_GPP_A5,  {GpioPadModeNative1, 
GpioHostOwnGpio, GpioDirNone,  GpioOutDefault, GpioIntDis, GpioHostDeepReset,  
GpioTermNone}},//LPC_FRAME_ESPI_CS_N
-//skip for eSPI function  {GPIO_SKL_LP_GPP_A6,  {GpioPadModeNative1, 
GpioHostOwnGpio, GpioDirNone,  GpioOutDefault, GpioIntDis, GpioHostDeepReset,  
GpioTermNone}},//INT_SERIRQ
-  {GPIO_SKL_LP_GPP_A7,  {GpioPadModeGpio,GpioHostOwnGpio, GpioDirOut,   
GpioOutHigh,GpioIntDis, GpioHostDeepReset,  GpioTermNone}},//PM_SLP_S0ix_R_N
-// skip for PM_CLKRUN_N {GPIO_SKL_LP_GPP_A8,  {GpioPadModeNative1, 
GpioHostOwnGpio, GpioDirNone,  GpioOutDefault, GpioIntDis, GpioHostDeepReset,  
GpioTermNone}},//PM_CLKRUN_N
-//skip for eSPI function{GPIO_SKL_LP_GPP_A9,  {GpioPadModeNative1, 
GpioHostOwnGpio, GpioDirNone,  GpioOutDefault, GpioIntDis, GpioHostDeepReset,  
GpioTermWpd20K}},//LPC_CLK_ESPI_CLK
-// skip for PCH_CLK_PCI_TPM {GPIO_SKL_LP_GPP_A10, {GpioPadModeNative1, 
GpioHostOwnGpio, GpioDirNone,  GpioOutDefault, GpioIntDis, GpioHostDeepReset,  
GpioTermWpd20K}},//PCH_CLK_PCI_TPM
-  {GPIO_SKL_LP_GPP_A11, {GpioPadModeGpio,GpioHostOwnGpio, GpioDirIn,
GpioOutDefault, GpioIntLevel | GpioIntApic, GpioHostDeepReset,  
GpioTermNone}},//EC_HID_INTR
-  {GPIO_SKL_LP_GPP_A12, {GpioPadModeGpio,GpioHostOwnGpio, GpioDirOut,   
GpioOutLow,GpioIntDis, GpioResumeReset,  
GpioTermNone}},//M.2_WWAN_GNSS_UART_RST_N
-//skip for SUS_PWR_ACK_R  {GPIO_SKL_LP_GPP_A13, {GpioPadModeNative1, 
GpioHostOwnGpio, GpioDirNone,  GpioOutDefault, GpioIntDis, GpioHostDeepReset,  
GpioTermNone}},//SUS_PWR_ACK_R
-//skip for eSPI function{GPIO_SKL_LP_GPP_A14, {GpioPadModeNative1, 
GpioHostOwnGpio, GpioDirNone,  GpioOutDefault, GpioIntDis, GpioHostDeepReset,  
GpioTermNone}},//PM_SUS_STAT_ESPI_RST_N
-//skip for SUSACK_R_N  {GPIO_SKL_LP_GPP_A15, {GpioPadModeNative1, 
GpioHostOwnGpio, GpioDirNone,  GpioOutDefault, GpioIntDis, GpioHostDeepReset,  
GpioTermWpd20K}},//SUSACK_R_N
-  {GPIO_SKL_LP_GPP_A16, {GpioPadModeNative1, GpioHostOwnGpio, GpioDirIn,
GpioOutDefault, GpioIntDis, GpioHostDeepReset,  GpioTermNone}},//SD_1P8_SEL
-  {GPIO_SKL_LP_GPP_A17, {GpioPadModeNative1, GpioHostOwnGpio, GpioDirNone,  
GpioOutDefault, GpioIntDis, GpioHostDeepReset,  GpioTermNone}},//SD_PWR_EN_N
-  {GPIO_SKL_LP_GPP_A18, {GpioPadModeNative1, GpioHostOwnGpio, GpioDirNone,  
GpioOutDefault, GpioIntDis, GpioHostDeepReset,  GpioTermNone}},//ISH_GP_0_SENSOR
-  {GPIO_SKL_LP_GPP_A19, {GpioPadModeNative1, GpioHostOwnGpio, GpioDirNone,  
GpioOutDefault, GpioIntDis, GpioHostDeepReset,  GpioTermNone}},//ISH_GP_1_SENSOR
-  {GPIO_SKL_LP_GPP_A20, {GpioPadModeNative1, GpioHostOwnGpio, GpioDirNone,  
GpioOutDefault, GpioIntDis, GpioHostDeepReset,  GpioTermNone}},//ISH_GP_2_SENSOR
-  {GPIO_SKL_LP_GPP_A21, {GpioPadModeNative1, GpioHostOwnGpio, GpioDirNone,  
GpioOutDefault, GpioIntDis, GpioHostDeepReset,  GpioTermNone}},//GNSS_CHUB_IRQ
-  {GPIO_SKL_LP_GPP_A22, {GpioPadModeGpio,GpioHostOwnGpio, GpioDirOut,   
GpioOutHigh,GpioIntDis, GpioHostDeepReset,  GpioTermNone}},//FPS_SLP_N
-  {GPIO_SKL_LP_GPP_A23, {GpioPadModeGpio,GpioHostOwnGpio, GpioDirIn,
GpioOutDefault, GpioIntLevel | GpioIntApic, GpioHostDeepReset,  
GpioTermNone}},//FPS_DRDY
-  {GPIO_SKL_LP_GPP_B0,  {GpioPadModeNative1, GpioHostOwnGpio, GpioDirNone,  

Re: [edk2-devel] [PATCH v5 1/4] MdePkg: Implement SCSI commands for Security Protocol In/Out

2019-08-29 Thread Zurcher, Christopher J
I've implemented all the suggested changes except changing the arguments from 
UINT32 to UINTN. No other functions in UefiScsiLib take UINTN arguments, and 
since the library is directly packing the CDB, I think it makes sense to force 
the caller to provide the correct-size length value. That way there is no 
ambiguity on what is going to the device.
If you agree I will send the updated patchset.

Thanks,
Christopher Zurcher

-Original Message-
From: Wu, Hao A 
Sent: Monday, August 26, 2019 20:03
To: devel@edk2.groups.io; Zurcher, Christopher J 

Cc: Yao, Jiewen ; Wang, Jian J ; 
Gao, Liming 
Subject: RE: [edk2-devel] [PATCH v5 1/4] MdePkg: Implement SCSI commands for 
Security Protocol In/Out

Hello,

Please refer to the below inline comments:


> -Original Message-
> From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of
> Zurcher, Christopher J
> Sent: Friday, August 23, 2019 6:02 AM
> To: devel@edk2.groups.io
> Cc: Yao, Jiewen; Wang, Jian J; Gao, Liming
> Subject: [edk2-devel] [PATCH v5 1/4] MdePkg: Implement SCSI commands
> for Security Protocol In/Out
> 
> This patch implements the Security Protocol In and Security Protocol Out
> commands in UefiScsiLib to prepare support for the Storage Security
> Command Protocol.
> 
> Cc: Jiewen Yao 
> Cc: Jian J Wang 
> Cc: Liming Gao 
> Signed-off-by: Christopher J Zurcher 
> ---
>  MdePkg/Include/IndustryStandard/Scsi.h   |  48 +++--
>  MdePkg/Include/Library/UefiScsiLib.h | 126 +++-
>  MdePkg/Include/Protocol/ScsiIo.h |   9 +-
>  MdePkg/Library/UefiScsiLib/UefiScsiLib.c | 205 +++-
>  4 files changed, 366 insertions(+), 22 deletions(-)
> 
> diff --git a/MdePkg/Include/IndustryStandard/Scsi.h
> b/MdePkg/Include/IndustryStandard/Scsi.h
> index cbe5709fe5..10d7b49ba7 100644
> --- a/MdePkg/Include/IndustryStandard/Scsi.h
> +++ b/MdePkg/Include/IndustryStandard/Scsi.h
> @@ -1,7 +1,7 @@
>  /** @file
>Support for SCSI-2 standard
> 
> -  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
> +  Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved.
>SPDX-License-Identifier: BSD-2-Clause-Patent
> 
>  **/
> @@ -163,6 +163,12 @@
>  #define EFI_SCSI_OP_SEND_MESSAGE10  0x2a
>  #define EFI_SCSI_OP_SEND_MESSAGE12  0xaa
> 
> +//
> +// Additional commands for Secure Transactions
> +//
> +#define EFI_SCSI_OP_SECURITY_PROTOCOL_IN  0xa2
> +#define EFI_SCSI_OP_SECURITY_PROTOCOL_OUT 0xb5
> +
>  //
>  // SCSI Data Transfer Direction
>  //
> @@ -172,22 +178,30 @@
>  //
>  // Peripheral Device Type Definitions
>  //
> -#define EFI_SCSI_TYPE_DISK  0x00  ///< Direct-access device (e.g.
> magnetic disk)
> -#define EFI_SCSI_TYPE_TAPE  0x01  ///< Sequential-access device (e.g.
> magnetic tape)
> -#define EFI_SCSI_TYPE_PRINTER   0x02  ///< Printer device
> -#define EFI_SCSI_TYPE_PROCESSOR 0x03  ///< Processor device
> -#define EFI_SCSI_TYPE_WORM  0x04  ///< Write-once device (e.g. some
> optical disks)
> -#define EFI_SCSI_TYPE_CDROM 0x05  ///< CD-ROM device
> -#define EFI_SCSI_TYPE_SCANNER   0x06  ///< Scanner device
> -#define EFI_SCSI_TYPE_OPTICAL   0x07  ///< Optical memory device (e.g.
> some optical disks)
> -#define EFI_SCSI_TYPE_MEDIUMCHANGER 0x08  ///< Medium changer
> device (e.g. jukeboxes)
> -#define EFI_SCSI_TYPE_COMMUNICATION 0x09  ///< Communications
> device
> -#define EFI_SCSI_TYPE_ASCIT8_1  0x0A  ///< Defined by ASC IT8 (Graphic
> arts pre-press devices)
> -#define EFI_SCSI_TYPE_ASCIT8_2  0x0B  ///< Defined by ASC IT8 (Graphic
> arts pre-press devices)


Could you help to address Liming's comment in the V4 series that to preserve
the definition for EFI_SCSI_TYPE_ASCIT8_1 & EFI_SCSI_TYPE_ASCIT8_2 for
compatibility consideration:

https://edk2.groups.io/g/devel/message/42361?p=,,,20,0,0,0::Created,,scsi,20,2,40,32048246


> -//
> -// 0Ch - 1Eh are reserved
> -//
> -#define EFI_SCSI_TYPE_UNKNOWN   0x1F  ///< Unknown or no device
> type
> +#define EFI_SCSI_TYPE_DISK0x00  ///< Direct-access device (e.g.
> magnetic disk)
> +#define EFI_SCSI_TYPE_TAPE0x01  ///< Sequential-access device 
> (e.g.
> magnetic tape)
> +#define EFI_SCSI_TYPE_PRINTER 0x02  ///< Printer device
> +#define EFI_SCSI_TYPE_PROCESSOR   0x03  ///< Processor device
> +#define EFI_SCSI_TYPE_WORM0x04  ///< Write-once device (e.g.
> some optical disks)
> +#define EFI_SCSI_TYPE_CDROM   0x05  ///< CD/DVD device
> +#define EFI_SCSI_TYPE_SCANNER 0x06  ///< Scanner device (obsolete)
> +#define EFI_SCSI_TYPE_OPTICAL 0x07  ///< Optical memory device (e.g.
> some optical disks)
> +#define EFI_SCSI_TYPE_MEDIUMCHANGER   0x08  ///< Medium changer
> device (e.g. jukeboxes)
> +#define EFI_SCSI_TYPE_COMMUNICATION   0x09  ///< Communications
> device (obsolete)
> +#define EFI_SCSI_TYPE_A   0x0A  ///< Obsolete
> +#define EFI_SCSI_TYPE_B   0x0B  ///< Obsolete
> +#define 

Re: [edk2-devel] [edk2-platforms PATCH v3 08/11] SimicsOpenBoardPkg: Remove overridden Drivers

2019-08-29 Thread Nate DeSimone
Hi David,

I would prefer that the contents of this patch be merged into PATCH 4 through 7 
as appropriate.

Thanks,
Nate

-Original Message-
From: Wei, David Y 
Sent: Thursday, August 29, 2019 3:43 PM
To: devel@edk2.groups.io
Cc: Wu, Hao A ; Gao, Liming ; Sinha, 
Ankit ; Agyeman, Prince ; 
Kubacki, Michael A ; Desimone, Nathaniel L 
; Kinney, Michael D 
Subject: [edk2-platforms PATCH v3 08/11] SimicsOpenBoardPkg: Remove overridden 
Drivers

Remove overridden Drivers, rename them and relocate underSimicsOpenBoardPkg

Cc: Hao Wu 
Cc: Liming Gao 
Cc: Ankit Sinha 
Cc: Agyeman Prince 
Cc: Kubacki Michael A 
Cc: Nate DeSimone 
Cc: Michael D Kinney 

Signed-off-by: David Wei 
---
 .../MinPlatformAcpiTables}/AcpiPlatform.c  |  2 +-
 .../MinPlatformAcpiTables}/Facs/Facs.c |  0
 .../MinPlatformAcpiTables}/Fadt/Fadt.c |  0
 .../MinPlatformAcpiTables}/Hpet/Hpet.c |  0
 .../MinPlatformAcpiTables}/Wsmt/Wsmt.c |  0
 .../ComponentName.c|  2 +-
 .../QemuVideoDxe => SimicsVideoDxe}/Driver.c   |  2 +-
 .../DriverSupportedEfiVersion.c|  2 +-
 .../OvmfPkg/QemuVideoDxe => SimicsVideoDxe}/Gop.c  |  2 +-
 .../QemuVideoDxe => SimicsVideoDxe}/Initialize.c   |  2 +-
 .../QemuVideoDxe => SimicsVideoDxe}/VbeShim.c  |  2 +-
 .../MinPlatformAcpiTables}/AcpiPlatform.h  |  0
 .../MinPlatformAcpiTables}/AcpiPlatform.inf|  0
 .../BoardX58Ich10/OpenBoardPkg.dsc |  4 +-
 .../BoardX58Ich10/OpenBoardPkg.fdf |  4 +-
 .../Library/DxeLogoLib/OEMBadging.h| 83 --
 .../Qemu.h => SimicsVideoDxe/Simics.h} |  0
 .../SimicsVideoDxe.inf}|  2 +-
 .../QemuVideoDxe => SimicsVideoDxe}/VbeShim.asm|  0
 .../QemuVideoDxe => SimicsVideoDxe}/VbeShim.h  |  0
 .../QemuVideoDxe => SimicsVideoDxe}/VbeShim.sh |  0
 21 files changed, 12 insertions(+), 95 deletions(-)  rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/MinPlatformPkg/Acpi/AcpiTables => 
AcpiTables/MinPlatformAcpiTables}/AcpiPlatform.c (97%)  rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/MinPlatformPkg/Acpi/AcpiTables => 
AcpiTables/MinPlatformAcpiTables}/Facs/Facs.c (100%)  rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/MinPlatformPkg/Acpi/AcpiTables => 
AcpiTables/MinPlatformAcpiTables}/Fadt/Fadt.c (100%)  rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/MinPlatformPkg/Acpi/AcpiTables => 
AcpiTables/MinPlatformAcpiTables}/Hpet/Hpet.c (100%)  rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/MinPlatformPkg/Acpi/AcpiTables => 
AcpiTables/MinPlatformAcpiTables}/Wsmt/Wsmt.c (100%)  rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/OvmfPkg/QemuVideoDxe => 
SimicsVideoDxe}/ComponentName.c (97%)  rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/OvmfPkg/QemuVideoDxe => 
SimicsVideoDxe}/Driver.c (96%)  rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/OvmfPkg/QemuVideoDxe => 
SimicsVideoDxe}/DriverSupportedEfiVersion.c (93%)  rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/OvmfPkg/QemuVideoDxe => 
SimicsVideoDxe}/Gop.c (96%)  rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/OvmfPkg/QemuVideoDxe => 
SimicsVideoDxe}/Initialize.c (96%)  rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/OvmfPkg/QemuVideoDxe => 
SimicsVideoDxe}/VbeShim.c (96%)  rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/MinPlatformPkg/Acpi/AcpiTables => 
AcpiTables/MinPlatformAcpiTables}/AcpiPlatform.h (100%)  rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/MinPlatformPkg/Acpi/AcpiTables => 
AcpiTables/MinPlatformAcpiTables}/AcpiPlatform.inf (100%)  delete mode 100644 
Platform/Intel/SimicsOpenBoardPkg/Library/DxeLogoLib/OEMBadging.h
 rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/OvmfPkg/QemuVideoDxe/Qemu.h => 
SimicsVideoDxe/Simics.h} (100%)  rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
 => SimicsVideoDxe/SimicsVideoDxe.inf} (95%)  rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/OvmfPkg/QemuVideoDxe => 
SimicsVideoDxe}/VbeShim.asm (100%)  rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/OvmfPkg/QemuVideoDxe => 
SimicsVideoDxe}/VbeShim.h (100%)  rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/OvmfPkg/QemuVideoDxe => 
SimicsVideoDxe}/VbeShim.sh (100%)

diff --git 
a/Platform/Intel/SimicsOpenBoardPkg/Overrides/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c
 
b/Platform/Intel/SimicsOpenBoardPkg/AcpiTables/MinPlatformAcpiTables/AcpiPlatform.c
similarity index 97%
rename from 
Platform/Intel/SimicsOpenBoardPkg/Overrides/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c
rename to 
Platform/Intel/SimicsOpenBoardPkg/AcpiTables/MinPlatformAcpiTables/AcpiPlatform.c
index f050d8afc0..1edac89240 100644
--- 
a/Platform/Intel/SimicsOpenBoardPkg/Overrides/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c
+++ b/Platform/Intel/SimicsOpenBoardPkg/AcpiTables/MinPlatformAcpiTables
+++ 

Re: [edk2-devel] [edk2-platforms PATCH v3 11/11] SimicsOpenBoardPkg: update the copyright years in file header

2019-08-29 Thread Nate DeSimone
Hi David,

I would prefer that the contents of this patch be merged into PATCH 4 through 7 
as appropriate.

Thanks,
Nate

-Original Message-
From: Wei, David Y 
Sent: Thursday, August 29, 2019 3:43 PM
To: devel@edk2.groups.io
Cc: Wu, Hao A ; Gao, Liming ; Sinha, 
Ankit ; Agyeman, Prince ; 
Kubacki, Michael A ; Desimone, Nathaniel L 
; Kinney, Michael D 
Subject: [edk2-platforms PATCH v3 11/11] SimicsOpenBoardPkg: update the 
copyright years in file header

update the copyright years in file header and cleanup the codes to follow the 
EDK2 coding style

Cc: Hao Wu 
Cc: Liming Gao 
Cc: Ankit Sinha 
Cc: Agyeman Prince 
Cc: Kubacki Michael A 
Cc: Nate DeSimone 
Cc: Michael D Kinney 

Signed-off-by: David Wei 
---
 .../SimicsOpenBoardPkg/Library/DxeLogoLib/Logo.c   |  8 +--
 .../Library/PciHostBridgeLib/PciHostBridgeLib.c|  2 +-
 .../Library/PeiReportFvLib/PeiReportFvLib.c|  5 +-
 .../Intel/SimicsOpenBoardPkg/SecCore/SecMain.c |  2 +-
 .../Intel/SimicsOpenBoardPkg/SimicsDxe/Platform.c  |  2 +-  
.../SimicsOpenBoardPkg/SimicsDxe/PlatformConfig.c  |  1 +  
.../SimicsOpenBoardPkg/SimicsPei/FeatureControl.c  |  1 +  
.../Intel/SimicsOpenBoardPkg/SimicsPei/Platform.c  |  2 +-
 .../SmbiosPlatformDxe/SmbiosPlatformDxe.c  |  2 +-
 .../BoardX58Ich10/DecomprScratchEnd.fdf.inc|  1 +
 .../BoardX58Ich10/OpenBoardPkg.fdf.inc |  2 +-
 .../BoardX58Ich10/VarStore.fdf.inc |  2 +-
 .../Include/Guid/SimicsBoardConfig.h   |  1 +
 .../Include/IndustryStandard/I440FxPiix4.h |  1 +
 .../Include/IndustryStandard/LinuxBzImage.h|  1 +
 .../Include/Library/SerializeVariablesLib.h|  3 +-
 .../Library/DxeLogoLib/DxeLogoLib.inf  |  2 +-
 .../Library/DxeLogoLib/OemBadging.h| 83 ++
 .../Library/PciHostBridgeLib/PciHostBridgeLib.inf  |  6 +-
 .../Library/PeiReportFvLib/PeiReportFvLib.inf  |  2 +-
 Platform/Intel/SimicsOpenBoardPkg/OpenBoardPkg.dec |  2 +-  
.../Intel/SimicsOpenBoardPkg/SimicsDxe/Platform.h  |  1 +
 .../SimicsOpenBoardPkg/SimicsDxe/Platform.uni  |  2 +-
 .../SimicsOpenBoardPkg/SimicsDxe/PlatformConfig.h  |  3 +-  
.../SimicsOpenBoardPkg/SimicsDxe/PlatformForms.vfr |  2 +-
 .../SimicsOpenBoardPkg/SimicsDxe/SimicsDxe.inf |  2 +-
 .../SmbiosPlatformDxe/SmbiosPlatformDxe.h  |  2 +-
 .../SmbiosPlatformDxe/SmbiosPlatformDxe.inf|  2 +-
 28 files changed, 119 insertions(+), 26 deletions(-)  create mode 100644 
Platform/Intel/SimicsOpenBoardPkg/Library/DxeLogoLib/OemBadging.h

diff --git a/Platform/Intel/SimicsOpenBoardPkg/Library/DxeLogoLib/Logo.c 
b/Platform/Intel/SimicsOpenBoardPkg/Library/DxeLogoLib/Logo.c
index 4a75f3673f..48a718a90d 100644
--- a/Platform/Intel/SimicsOpenBoardPkg/Library/DxeLogoLib/Logo.c
+++ b/Platform/Intel/SimicsOpenBoardPkg/Library/DxeLogoLib/Logo.c
@@ -8,7 +8,7 @@
 
 #include 
 #include 
-#include 
+#include 
 #include 
 #include 
 #include 
@@ -101,7 +101,7 @@ ConvertBmpToGopBlt (
 return EFI_INVALID_PARAMETER;
   }
 
-  if ((BmpHeader->Size != BmpImageSize) || 
+  if ((BmpHeader->Size != BmpImageSize) ||
   (BmpHeader->Size < BmpHeader->ImageOffset) ||
   (BmpHeader->Size - BmpHeader->ImageOffset !=  BmpHeader->PixelHeight * 
DataSizePerLine)) {
 return EFI_INVALID_PARAMETER;
@@ -345,7 +345,7 @@ EnableBootLogo (
   gST->ConOut->EnableCursor (gST->ConOut, FALSE);
 
   Badging = NULL;
-  Status  = gBS->LocateProtocol (, NULL, (VOID **) 
);
+  Status  = gBS->LocateProtocol (, NULL, 
+ (VOID **) );
 
   if (GraphicsOutput != NULL) {
 SizeOfX = GraphicsOutput->Mode->Info->HorizontalResolution;
@@ -581,7 +581,7 @@ Done:
 Status = EFI_SUCCESS;
   } else {
 //
-// More than one Logo displayed, get merged BltBuffer using VideoToBuffer 
operation. 
+// More than one Logo displayed, get merged BltBuffer using VideoToBuffer 
operation.
 //
 if (Blt != NULL) {
   FreePool (Blt);
diff --git 
a/Platform/Intel/SimicsOpenBoardPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c 
b/Platform/Intel/SimicsOpenBoardPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c
index 53c421d40b..3b71c8ae97 100644
--- 
a/Platform/Intel/SimicsOpenBoardPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c
+++ b/Platform/Intel/SimicsOpenBoardPkg/Library/PciHostBridgeLib/PciHost
+++ BridgeLib.c
@@ -2,7 +2,7 @@
   SIMICS QSP's instance of the PCI Host Bridge Library.
 
   Copyright (C) 2016, Red Hat, Inc.
-  Copyright (c) 2016, Intel Corporation. All rights reserved.
+  Copyright (c) 2019, Intel Corporation. All rights reserved.
 
   SPDX-License-Identifier: BSD-2-Clause-Patent  **/ diff --git 
a/Platform/Intel/SimicsOpenBoardPkg/Library/PeiReportFvLib/PeiReportFvLib.c 
b/Platform/Intel/SimicsOpenBoardPkg/Library/PeiReportFvLib/PeiReportFvLib.c
index 1760eb954c..bb5a060b8e 100644
--- a/Platform/Intel/SimicsOpenBoardPkg/Library/PeiReportFvLib/PeiReportFvLib.c
+++ b/Platform/Intel/SimicsOpenBoardPkg/Library/PeiReportFvLib/PeiReport
+++ 

Re: [edk2-devel] [edk2-platforms PATCH v3 09/11] SimicsX58SktPkg: update the copyright years in file header

2019-08-29 Thread Nate DeSimone
Hi David,

I would prefer that the contents of this patch be merged in to PATCH 01/11.

Thanks,
Nate

-Original Message-
From: devel@edk2.groups.io  On Behalf Of David Wei
Sent: Thursday, August 29, 2019 3:43 PM
To: devel@edk2.groups.io
Cc: Wu, Hao A ; Gao, Liming ; Sinha, 
Ankit ; Agyeman, Prince ; 
Kubacki, Michael A ; Desimone, Nathaniel L 
; Kinney, Michael D 
Subject: [edk2-devel] [edk2-platforms PATCH v3 09/11] SimicsX58SktPkg: update 
the copyright years in file header

update the copyright years in file header and cleanup the codes to follow the 
EDK2 coding style

Cc: Hao Wu 
Cc: Liming Gao 
Cc: Ankit Sinha 
Cc: Agyeman Prince 
Cc: Kubacki Michael A 
Cc: Nate DeSimone 
Cc: Michael D Kinney 

Signed-off-by: David Wei 
---
 Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmmAccess2Dxe.c  | 2 +-
 Silicon/Intel/SimicsX58SktPkg/Include/Register/X58SmramSaveStateMap.h | 2 +-
 Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmramInternal.h  | 1 +
 3 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmmAccess2Dxe.c 
b/Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmmAccess2Dxe.c
index 771fddb487..5d3b2c14aa 100644
--- a/Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmmAccess2Dxe.c
+++ b/Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmmAccess2Dxe.c
@@ -5,7 +5,7 @@
   driver.
 
   Copyright (C) 2013, 2015, Red Hat, Inc.
-  Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.
+  Copyright (c) 2009 - 2019, Intel Corporation. All rights 
+ reserved.
 
   SPDX-License-Identifier: BSD-2-Clause-Patent  **/ diff --git 
a/Silicon/Intel/SimicsX58SktPkg/Include/Register/X58SmramSaveStateMap.h 
b/Silicon/Intel/SimicsX58SktPkg/Include/Register/X58SmramSaveStateMap.h
index db8ee2c37a..a067d1488a 100644
--- a/Silicon/Intel/SimicsX58SktPkg/Include/Register/X58SmramSaveStateMap.h
+++ b/Silicon/Intel/SimicsX58SktPkg/Include/Register/X58SmramSaveStateMa
+++ p.h
@@ -10,7 +10,7 @@ Intel(R) 64 and IA-32 Architectures Software Developer's 
Manual  and the AMD64 Architecture Programmer's Manual
   Volume 2, Section 10.2 SMM Resources
 
-Copyright (c) 2015, Intel Corporation. All rights reserved.
+Copyright (c) 2019, Intel Corporation. All rights reserved.
 Copyright (c) 2015, Red Hat, Inc.
 
   SPDX-License-Identifier: BSD-2-Clause-Patent diff --git 
a/Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmramInternal.h 
b/Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmramInternal.h
index 43a79b295f..81180a9c8e 100644
--- a/Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmramInternal.h
+++ b/Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmramInternal.h
@@ -2,6 +2,7 @@
   Functions and types shared by the SMM accessor PEI and DXE modules.
 
   Copyright (C) 2015, Red Hat, Inc.
+  Copyright (C) 2019, Intel Corporation. All rights reserved.
 
   SPDX-License-Identifier: BSD-2-Clause-Patent  **/
--
2.16.2.windows.1





-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#46602): https://edk2.groups.io/g/devel/message/46602
Mute This Topic: https://groups.io/mt/33073821/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [edk2-devel] [edk2-platforms PATCH v3 10/11] SimicsIch10Pkg: update the copyright years in file header

2019-08-29 Thread Nate DeSimone
Hi David,

I would prefer that the contents of this patch be merged in to PATCH 02/11.

Thanks,
Nate

-Original Message-
From: Wei, David Y 
Sent: Thursday, August 29, 2019 3:43 PM
To: devel@edk2.groups.io
Cc: Wu, Hao A ; Gao, Liming ; Sinha, 
Ankit ; Agyeman, Prince ; 
Kubacki, Michael A ; Desimone, Nathaniel L 
; Kinney, Michael D 
Subject: [edk2-platforms PATCH v3 10/11] SimicsIch10Pkg: update the copyright 
years in file header

update the copyright years in file header and cleanup the codes to follow the 
EDK2 coding style

Cc: Hao Wu 
Cc: Liming Gao 
Cc: Ankit Sinha 
Cc: Agyeman Prince 
Cc: Kubacki Michael A 
Cc: Nate DeSimone 
Cc: Michael D Kinney 

Signed-off-by: David Wei 
---
 Silicon/Intel/SimicsIch10Pkg/Include/Register/X58Ich10.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Silicon/Intel/SimicsIch10Pkg/Include/Register/X58Ich10.h 
b/Silicon/Intel/SimicsIch10Pkg/Include/Register/X58Ich10.h
index 12dfb5ce40..eac46955e0 100644
--- a/Silicon/Intel/SimicsIch10Pkg/Include/Register/X58Ich10.h
+++ b/Silicon/Intel/SimicsIch10Pkg/Include/Register/X58Ich10.h
@@ -5,6 +5,7 @@
 
   Copyright (C) 2015, Red Hat, Inc.
   Copyright (c) 2014, Gabriel L. Somlo 
+  Copyright (c) 2019 Intel Corporation. All rights reserved. 
 
   SPDX-License-Identifier: BSD-2-Clause-Patent  **/
--
2.16.2.windows.1


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#46601): https://edk2.groups.io/g/devel/message/46601
Mute This Topic: https://groups.io/mt/33073822/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [edk2-devel] [edk2-non-osi PATCH v2 1/1] SimicsICH10SiliconBinPkg: Add UNDI ROM for SIMICS QSP Platform

2019-08-29 Thread Kubacki, Michael A
I don't think there's a strict naming convention but the actual silicon package 
sent in review is called 
"SimicsIch10Pkg" which would naturally map to "SimicsIch10BinPkg" how 
"KabylakeSiliconPkg" 
uses "KabylakeSiliconBinPkg". This might be more clear but I also think it is 
fine as is.

Reviewed-by: Michael Kubacki 

> -Original Message-
> From: Wei, David Y
> Sent: Tuesday, August 27, 2019 5:41 PM
> To: devel@edk2.groups.io
> Cc: Wu, Hao A ; Gao, Liming ;
> Sinha, Ankit ; Agyeman, Prince
> ; Kubacki, Michael A
> ; Desimone, Nathaniel L
> ; Kinney, Michael D
> 
> Subject: [edk2-non-osi PATCH v2 1/1] SimicsICH10SiliconBinPkg: Add UNDI
> ROM for SIMICS QSP Platform
> 
> Add UNDI option ROM for SIMICS QSP Network support
> 
> Cc: Hao Wu 
> Cc: Liming Gao 
> Cc: Ankit Sinha 
> Cc: Agyeman Prince 
> Cc: Kubacki Michael A 
> Cc: Nate DeSimone 
> Cc: Michael D Kinney 
> 
> Signed-off-by: David Wei 
> ---
>  Silicon/Intel/SimicsIch10SiliconBinPkg/License.txt |  30 ++
>  .../UndiBinary/GigUndiDxe.efi  | Bin 0 -> 195360 bytes
>  .../UndiBinary/IntelProprietaryLicense.txt |  43
> +
>  .../UndiBinary/UndiDxe.inf |  25 
>  4 files changed, 98 insertions(+)
>  create mode 100644 Silicon/Intel/SimicsIch10SiliconBinPkg/License.txt
>  create mode 100644
> Silicon/Intel/SimicsIch10SiliconBinPkg/UndiBinary/GigUndiDxe.efi
>  create mode 100644
> Silicon/Intel/SimicsIch10SiliconBinPkg/UndiBinary/IntelProprietaryLicense.txt
>  create mode 100644
> Silicon/Intel/SimicsIch10SiliconBinPkg/UndiBinary/UndiDxe.inf
> 
> diff --git a/Silicon/Intel/SimicsIch10SiliconBinPkg/License.txt
> b/Silicon/Intel/SimicsIch10SiliconBinPkg/License.txt
> new file mode 100644
> index 000..5507dd0
> --- /dev/null
> +++ b/Silicon/Intel/SimicsIch10SiliconBinPkg/License.txt
> @@ -0,0 +1,30 @@
> +Copyright (c) 2012 - 2019, Intel Corporation. All rights reserved.
> +
> +Redistribution and use in source and binary forms, with or without
> +modification, are permitted provided that the following conditions
> +are met:
> +
> +* Redistributions of source code must retain the above copyright
> +  notice, this list of conditions and the following disclaimer.
> +* Redistributions in binary form must reproduce the above copyright
> +  notice, this list of conditions and the following disclaimer in
> +  the documentation and/or other materials provided with the
> +  distribution.
> +
> +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
> CONTRIBUTORS
> +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
> +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
> +FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
> +COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
> INDIRECT,
> +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
> (INCLUDING,
> +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
> +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
> +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
> STRICT
> +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
> +ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
> +POSSIBILITY OF SUCH DAMAGE.
> +
> +Some files are subject to a license documented in the
> +IntelProprietaryLicense.txt file. These files are in the same
> +directory as IntelProprietaryLicense.txt, and they do not have
> +a license specified within the file.
> diff --git a/Silicon/Intel/SimicsIch10SiliconBinPkg/UndiBinary/GigUndiDxe.efi
> b/Silicon/Intel/SimicsIch10SiliconBinPkg/UndiBinary/GigUndiDxe.efi
> new file mode 100644
> index
> ..7b8e0d7be00dccedb84ebed5
> c5c87a0e79078983
> GIT binary patch
> literal 195360
> zcmc$Hdwf*Ywg1dyCK({%1SJ>|F>2IQe5A%|VtmYj37nA$hL>V}rD~_NYNap(u
> ~41i
> zBqWpLC|+!}y=|pe+hVmX)+))U7Ez9K|re&6rjXC49U
> @AJF=
> z{AkVDkG0ocd+oi~UVH7e_tbvZ_P_qO@qb U7zo;
> z+1{5~EeMA3U+P~80{rjre {jX;WwloHTesNZHm)oTe}V4qXPWz63+>K
> zzafaC51`F#C)=LgUSch=*%qI3^Y?<^Ls;uZTyfaytuOOa|2#HZUn;!#c<^lxa9Q6}
> zI=>#9ZTdM465(fKk?=k$Ce!%M`sX3s((m7T`%N~{b{lw50v_<2{f}@%(~z-
> i*Dfu3
> zZK?YzO@F^cGhWk-
> gXRoCYKH6LPKV7O^OkzFSkV%+Q8W6JYabMOBC%j|GMUtj7qzIi
> z2zlnSBJ0}Ha!r4> nq6HsrMKD%y?hJgQMFWUc?D0nn
> z`k5Sc?Zrn;-siCk3gU>NbV2~3(0kJzw^EWbcODglv*_mOP`O8%1T2z-
> Vd6Ue%
> zJC&)UBxo+vlIsQTsK3-
> bAJi`a6E2jnOGqxb6D?RH2rp>nCswo zbt)~_GN9jFx)@NdW9ryAZz)(~x-
> R1fNsG|F83LE<@hfCf9q_IvNimm?A3$lS
> zph!aHT2LNjzc*H9S0X%>*#Ip^_!w1&%Mkw892qV_V}7)STu9T{jt+~gbdR+;Y)
> el^
> z_H1N>oL#9l6~#R$8@szS48W{%jB18V_Qx7aTSVNIkK!P`21NCGOUpRm{Kj@
> Np#-Ii
> zC1)CDYKB!JR`4gJfqSU)E27{yin*TKWf82#<`#mgr=D@xI_$uftg8cS8(d}{f%RvX
> zT!S%|HFjMFAb~50PrM#5vCAJx)_E#0M)!(7xtryTf(6KrT~%LG(P=*Qh#e`e=}6
> h2
> z1l^iGxL?yd3wu1y613z8t4LH`p%&9zo|Y<4>#M!Clj|1M^m=j~wwyvwOT)NcP
> yWbr
> zHczjo7`W}do+))ReDl1@CXW+?`K_lNwm?ld}Q0+)2fi2k?sLAOHeN;9 b+
> zJy}FMv}mxjP>ZfAEmp7ObZjm7B`{PB8*emj5B|vb(jWWIhHi(=XE+Z9sy1GGn
> #~rR
> 

Re: [edk2-devel] [edk2-non-osi PATCH v2 1/1] SimicsICH10SiliconBinPkg: Add UNDI ROM for SIMICS QSP Platform

2019-08-29 Thread Nate DeSimone
Reviewed-by: Nate DeSimone 

-Original Message-
From: Wei, David Y 
Sent: Tuesday, August 27, 2019 5:41 PM
To: devel@edk2.groups.io
Cc: Wu, Hao A ; Gao, Liming ; Sinha, 
Ankit ; Agyeman, Prince ; 
Kubacki, Michael A ; Desimone, Nathaniel L 
; Kinney, Michael D 
Subject: [edk2-non-osi PATCH v2 1/1] SimicsICH10SiliconBinPkg: Add UNDI ROM for 
SIMICS QSP Platform

Add UNDI option ROM for SIMICS QSP Network support

Cc: Hao Wu 
Cc: Liming Gao 
Cc: Ankit Sinha 
Cc: Agyeman Prince 
Cc: Kubacki Michael A 
Cc: Nate DeSimone 
Cc: Michael D Kinney 

Signed-off-by: David Wei 
---
 Silicon/Intel/SimicsIch10SiliconBinPkg/License.txt |  30 ++
 .../UndiBinary/GigUndiDxe.efi  | Bin 0 -> 195360 bytes
 .../UndiBinary/IntelProprietaryLicense.txt |  43 +
 .../UndiBinary/UndiDxe.inf |  25 
 4 files changed, 98 insertions(+)
 create mode 100644 Silicon/Intel/SimicsIch10SiliconBinPkg/License.txt
 create mode 100644 
Silicon/Intel/SimicsIch10SiliconBinPkg/UndiBinary/GigUndiDxe.efi
 create mode 100644 
Silicon/Intel/SimicsIch10SiliconBinPkg/UndiBinary/IntelProprietaryLicense.txt
 create mode 100644 
Silicon/Intel/SimicsIch10SiliconBinPkg/UndiBinary/UndiDxe.inf

diff --git a/Silicon/Intel/SimicsIch10SiliconBinPkg/License.txt 
b/Silicon/Intel/SimicsIch10SiliconBinPkg/License.txt
new file mode 100644
index 000..5507dd0
--- /dev/null
+++ b/Silicon/Intel/SimicsIch10SiliconBinPkg/License.txt
@@ -0,0 +1,30 @@
+Copyright (c) 2012 - 2019, Intel Corporation. All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+
+* Redistributions of source code must retain the above copyright
+  notice, this list of conditions and the following disclaimer.
+* Redistributions in binary form must reproduce the above copyright
+  notice, this list of conditions and the following disclaimer in
+  the documentation and/or other materials provided with the
+  distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGE.
+
+Some files are subject to a license documented in the
+IntelProprietaryLicense.txt file. These files are in the same
+directory as IntelProprietaryLicense.txt, and they do not have
+a license specified within the file.
diff --git a/Silicon/Intel/SimicsIch10SiliconBinPkg/UndiBinary/GigUndiDxe.efi 
b/Silicon/Intel/SimicsIch10SiliconBinPkg/UndiBinary/GigUndiDxe.efi
new file mode 100644
index 
..7b8e0d7be00dccedb84ebed5c5c87a0e79078983
GIT binary patch
literal 195360
zcmc$Hdwf*Ywg1dyCK({%1SJ>|F>2IQe5A%|VtmYj37nA$hL>V}rD~_NYNap(u~41i
zBqWpLC|+!}y=|pe+hVmX)+))U7Ez9K|re&6rjXC49U@AJF=
z{AkVDkG0ocd+oi~UVH7e_tbvZ_P_qO@qbK
zzafaC51`F#C)=LgUSch=*%qI3^Y?<^Ls;uZTyfaytuOOa|2#HZUn;!#c<^lxa9Q6}
zI=>#9ZTdM465(fKk?=k$Ce!%M`sX3s((m7T`%N~{b{lw50v_<2{f}@%(~z-i*Dfu3
zZK?YzO@F^cGhWk-gXRoCYKH6LPKV7O^OkzFSkV%+Q8W6JYabMOBC%j|GMUtj7qzIi
z2zlnSBJ0}Ha!r4>NbV2~3(0kJzw^EWbcODglv*_mOP`O8%1T2z-Vd6Ue%
zJC&)UBxo+vlIsQTsK3-bAJi`a6E2jnOGqxb6D?RH2rp>nCswo*#Ip^_!w1&%Mkw892qV_V}7)STu9T{jt+~gbdR+;Y)el^
z_H1N>oL#9l6~#R$8@szS48W{%jB18V_Qx7aTSVNIkK!P`21NCGOUpRm{Kj@Np#-Ii
zC1)CDYKB!JR`4gJfqSU)E27{yin*TKWf82#<`#mgr=D@xI_$uftg8cS8(d}{f%RvX
zT!S%|HFjMFAb~50PrM#5vCAJx)_E#0M)!(7xtryTf(6KrT~%LG(P=*Qh#e`e=}6h2
z1l^iGxL?yd3wu1y613z8t4LH`p%&9zo|Y<4>#M!Clj|1M^m=j~wwyvwOT)NcPyWbr
zHczjo7`W}do+))ReDl1@CXW+?`K_lNwm?ld}Q0+)2fi2k?sLAOHeN;9ZfAEmp7ObZjm7B`{PB8*emj5B|vb(jWWIhHi(=XE+Z9sy1GGn#~rR
z4cgd}xDBi{=S;LAH~$b4G`*`nUUv-=tE@z(m@SjY0@wF|x1;b3_UZu;-da$Ogk-m}
zsjGVL(qBlrj9_V{W~{>W$8=V&@80D%{_cxj14$8iKa4`Y*or%>&?JvbK7j{-Vbr-d)M3jv$bRLTN|>pujNf|W8?^z}rU(;#zxvV-N8h@27B
z%|Y3K!Rl)8%fYq;GxMy=IDTEf%?soJ)%_nwHB{#R9CyxOnSQ0r)sSoWdxyWVQ@r
z?z$Ebft<9i7M4cXgY;FG$S`MXodwU?db0)3*;;AAm!MTo$2nW;L__*G@@F9NAtXi`
z|6$Geb?I7iAo6S)n(?d_U4((R
zq?oI~62IXq^T#~yUe87@x0*46Nw7gPK1OwAs16+XcBHRrD;3DN}Ip*ytogwD{WnYY1;z&
z0jIL&&{Clbu+(Vxkszbppfp^6i@P@HS;NWl_8TTQ*yux-WQV+)TN`^)E8f$4KsB`0bt^aExeMs)8emW=bpZz(AS=Ksm;@XdVR{n
zolD2I|M?A3d%NZ@7lRdT=aRjeas_VnOT|y;CB(wc8)NwseWlxTe@=EGzLDZ;Ae(
zOrtC))}jka3m0AmX<)o>%{pLw1Q`9Xn!$=;Oh0u?@wdtDkf|E4#O635@KQWJ4XT=E
z)DEH>kY{dx$PNl>20_eH5QCgDU!=2T8i8DO#A#enM!_vQ9cy4oT4*aRlO-;Ui

Re: [edk2-devel] [PATCH] CoffeelakeSiliconPkg: Add a needed ZeroMem ()

2019-08-29 Thread Kubacki, Michael A
In the future, the subject should include [edk2-platforms] for patches in the 
repo.

Reviewed-by: Michael Kubacki 

> -Original Message-
> From: devel@edk2.groups.io  On Behalf Of Nate
> DeSimone
> Sent: Thursday, August 29, 2019 4:00 PM
> To: devel@edk2.groups.io
> Cc: Chiu, Chasel ; Kubacki, Michael A
> ; Chaganty, Rangasai V
> 
> Subject: [edk2-devel] [PATCH] CoffeelakeSiliconPkg: Add a needed
> ZeroMem ()
> 
> AddComponentConfigBlocks () should ZeroMem () the Config Block Header
> before using it.
> 
> Cc: Chasel Chiu 
> Cc: Michael Kubacki 
> Cc: Sai Chaganty 
> Signed-off-by: Nate DeSimone 
> ---
>  .../Library/BaseSiConfigBlockLib/BaseSiConfigBlockLib.c  | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git
> a/Silicon/Intel/CoffeelakeSiliconPkg/Library/BaseSiConfigBlockLib/BaseSiCon
> figBlockLib.c
> b/Silicon/Intel/CoffeelakeSiliconPkg/Library/BaseSiConfigBlockLib/BaseSiCon
> figBlockLib.c
> index 16a14b3245..3c02a4563c 100644
> ---
> a/Silicon/Intel/CoffeelakeSiliconPkg/Library/BaseSiConfigBlockLib/BaseSiCon
> figBlockLib.c
> +++
> b/Silicon/Intel/CoffeelakeSiliconPkg/Library/BaseSiConfigBlockLib/BaseSiCon
> figBlockLib.c
> @@ -75,6 +75,7 @@ AddComponentConfigBlocks (
>// Loop to identify each config block from ComponentBlocks[] Table and
> add each of them
>//
>for (BlockCount = 0 ; BlockCount < TotalBlockCount; BlockCount++) {
> +ZeroMem (, sizeof (CONFIG_BLOCK));
>  CopyMem (&(ConfigBlockBuf.Header.GuidHob.Name),
> ComponentBlocks[BlockCount].Guid, sizeof (EFI_GUID));
>  ConfigBlockBuf.Header.GuidHob.Header.HobLength =
> ComponentBlocks[BlockCount].Size;
>  ConfigBlockBuf.Header.Revision=
> ComponentBlocks[BlockCount].Revision;
> --
> 2.17.1.windows.2
> 
> 
> 


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#46598): https://edk2.groups.io/g/devel/message/46598
Mute This Topic: https://groups.io/mt/33073966/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [edk2-devel] [RFC] EDK II Continuous Integration Phase 1

2019-08-29 Thread Michael Zimmermann
Hi Michael,

would it make sense to run SCT (using UnixHost and/or qemu) to verify
the high level logic or do you think that would be too much to do for
each PR?

Also, do we want to run all these checks for each commit in the PR to
verify that they pass at each point in the git history?

Thanks
Michael

On Thu, Aug 29, 2019 at 10:22 PM Michael D Kinney
 wrote:
>
> Hello,
>
> This is a proposal for a first step towards continuous
> integration for all TianoCore repositories to help
> improve to quality of commits and automate testing and
> release processes for all EDK II packages and platforms.
>
> This is based on work from a number of EDK II community
> members that have provide valuable input and evaluations.
>
> * Rebecca Cran  Jenkins evaluation
> * Laszlo Ersek  GitLab evaluation
> * Philippe Mathieu-Daudé  GitLab evaluation
> * Sean Brogan  Azure Pipelines and HBFA
> * Bret Barkelew  Azure Pipelines and HBFA
> * Jiewen Yao  HBFA
>
> The following link is a link to an EDK II WIKI page that
> contains a summary of the work to date.  Please provide
> feedback in the EDK II mailing lists.  The WIKI pages will
> be updated with input from the entire EDK II community.
>
> 
> https://github.com/tianocore/tianocore.github.io/wiki/EDK-II-Continuous-Integration
>
> Proposal
> 
> Phase 1 of adding continuous integration is limited to the
> edk2 repository.  Additional repositories will be added later.
>
> The following changes are proposed:
> * Remove EDK II Maintainers write access to edk2 repository.
>   Only EDK II Administrators will continue to have write
>   access, and that should only be used to handle extraordinary
>   events.
> * EDK II Maintainers use a GitHub Pull Request instead of push
>   to commit a patch series to the edk2 repository.  There are
>   no other changes to the development and review process.  The
>   patch series is prepared in an EDK II maintainer branch with
>   all commit message requirements met on each patch in the series.
> * The edk2 repository only accepts Pull Requests from members
>   of the EDK II Maintainers team.  Pull Requests from anyone else
>   are rejected.
> * Run pre-commit checks using Azure Pipelines
> * If all pre-commit checks pass, then the patch series is auto
>   committed.  The result of this commit must match the contents
>   and commit history that would have occurred using the previous
>   push operation.
> * If any pre-commit checks fail, then notify the submitter.
>   A typical reason for a failure would be a merge conflict with
>   another pull request that was just processed.
> * Limit pre-commit checks execution time to 10 minutes.
> * Provide on-demand builds to EDK II Maintainers that to allow
>   EDK II Maintainers to submit a branch through for the same
>   set of pre-commit checks without submitting a pull request.
>
> ## Pre-Commit Checks in Phase 1
> * Run and pass PatchCheck.py with no errors
>
> =
>
> The following are some additional pre-commit check ideas
> that could be quickly added once the initial version using
> PatchCheck.py is fully functional.  Please provide feedback
> on the ones you like and additional ones you think may
> improve the quality of the commits to the edk2 repository.
>
> ## Proposed Pre-Commit Checks in Phase 2
> * Verify Reviewed-by and Acked-by tags are present with
>   correct maintainer email addresses
> * Verify no non-ASCII characters in modified files
> * Verify no binary files in set of modified files
> * Verify package dependency rules in modified files
>
> ## Proposed Pre-Commit Checks in Phase 3
> * Run ECC on modified files
> * Verify modified modules/libs build
> * Run available host based tests (HBFA) against modified
>   modules/libs
>
> Best regards,
>
> Mike
>
>
>
>
>
>
> 
>

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#46596): https://edk2.groups.io/g/devel/message/46596
Mute This Topic: https://groups.io/mt/33072637/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[edk2-devel] [PATCH] CoffeelakeSiliconPkg: Add a needed ZeroMem ()

2019-08-29 Thread Nate DeSimone
AddComponentConfigBlocks () should ZeroMem () the Config Block Header before 
using it.

Cc: Chasel Chiu 
Cc: Michael Kubacki 
Cc: Sai Chaganty 
Signed-off-by: Nate DeSimone 
---
 .../Library/BaseSiConfigBlockLib/BaseSiConfigBlockLib.c  | 1 +
 1 file changed, 1 insertion(+)

diff --git 
a/Silicon/Intel/CoffeelakeSiliconPkg/Library/BaseSiConfigBlockLib/BaseSiConfigBlockLib.c
 
b/Silicon/Intel/CoffeelakeSiliconPkg/Library/BaseSiConfigBlockLib/BaseSiConfigBlockLib.c
index 16a14b3245..3c02a4563c 100644
--- 
a/Silicon/Intel/CoffeelakeSiliconPkg/Library/BaseSiConfigBlockLib/BaseSiConfigBlockLib.c
+++ 
b/Silicon/Intel/CoffeelakeSiliconPkg/Library/BaseSiConfigBlockLib/BaseSiConfigBlockLib.c
@@ -75,6 +75,7 @@ AddComponentConfigBlocks (
   // Loop to identify each config block from ComponentBlocks[] Table and add 
each of them
   //
   for (BlockCount = 0 ; BlockCount < TotalBlockCount; BlockCount++) {
+ZeroMem (, sizeof (CONFIG_BLOCK));
 CopyMem (&(ConfigBlockBuf.Header.GuidHob.Name), 
ComponentBlocks[BlockCount].Guid, sizeof (EFI_GUID));
 ConfigBlockBuf.Header.GuidHob.Header.HobLength = 
ComponentBlocks[BlockCount].Size;
 ConfigBlockBuf.Header.Revision= 
ComponentBlocks[BlockCount].Revision;
-- 
2.17.1.windows.2


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#46597): https://edk2.groups.io/g/devel/message/46597
Mute This Topic: https://groups.io/mt/33073966/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[edk2-devel] [edk2-platforms PATCH v3 11/11] SimicsOpenBoardPkg: update the copyright years in file header

2019-08-29 Thread David Wei
update the copyright years in file header and cleanup the codes to follow the 
EDK2 coding style

Cc: Hao Wu 
Cc: Liming Gao 
Cc: Ankit Sinha 
Cc: Agyeman Prince 
Cc: Kubacki Michael A 
Cc: Nate DeSimone 
Cc: Michael D Kinney 

Signed-off-by: David Wei 
---
 .../SimicsOpenBoardPkg/Library/DxeLogoLib/Logo.c   |  8 +--
 .../Library/PciHostBridgeLib/PciHostBridgeLib.c|  2 +-
 .../Library/PeiReportFvLib/PeiReportFvLib.c|  5 +-
 .../Intel/SimicsOpenBoardPkg/SecCore/SecMain.c |  2 +-
 .../Intel/SimicsOpenBoardPkg/SimicsDxe/Platform.c  |  2 +-
 .../SimicsOpenBoardPkg/SimicsDxe/PlatformConfig.c  |  1 +
 .../SimicsOpenBoardPkg/SimicsPei/FeatureControl.c  |  1 +
 .../Intel/SimicsOpenBoardPkg/SimicsPei/Platform.c  |  2 +-
 .../SmbiosPlatformDxe/SmbiosPlatformDxe.c  |  2 +-
 .../BoardX58Ich10/DecomprScratchEnd.fdf.inc|  1 +
 .../BoardX58Ich10/OpenBoardPkg.fdf.inc |  2 +-
 .../BoardX58Ich10/VarStore.fdf.inc |  2 +-
 .../Include/Guid/SimicsBoardConfig.h   |  1 +
 .../Include/IndustryStandard/I440FxPiix4.h |  1 +
 .../Include/IndustryStandard/LinuxBzImage.h|  1 +
 .../Include/Library/SerializeVariablesLib.h|  3 +-
 .../Library/DxeLogoLib/DxeLogoLib.inf  |  2 +-
 .../Library/DxeLogoLib/OemBadging.h| 83 ++
 .../Library/PciHostBridgeLib/PciHostBridgeLib.inf  |  6 +-
 .../Library/PeiReportFvLib/PeiReportFvLib.inf  |  2 +-
 Platform/Intel/SimicsOpenBoardPkg/OpenBoardPkg.dec |  2 +-
 .../Intel/SimicsOpenBoardPkg/SimicsDxe/Platform.h  |  1 +
 .../SimicsOpenBoardPkg/SimicsDxe/Platform.uni  |  2 +-
 .../SimicsOpenBoardPkg/SimicsDxe/PlatformConfig.h  |  3 +-
 .../SimicsOpenBoardPkg/SimicsDxe/PlatformForms.vfr |  2 +-
 .../SimicsOpenBoardPkg/SimicsDxe/SimicsDxe.inf |  2 +-
 .../SmbiosPlatformDxe/SmbiosPlatformDxe.h  |  2 +-
 .../SmbiosPlatformDxe/SmbiosPlatformDxe.inf|  2 +-
 28 files changed, 119 insertions(+), 26 deletions(-)
 create mode 100644 
Platform/Intel/SimicsOpenBoardPkg/Library/DxeLogoLib/OemBadging.h

diff --git a/Platform/Intel/SimicsOpenBoardPkg/Library/DxeLogoLib/Logo.c 
b/Platform/Intel/SimicsOpenBoardPkg/Library/DxeLogoLib/Logo.c
index 4a75f3673f..48a718a90d 100644
--- a/Platform/Intel/SimicsOpenBoardPkg/Library/DxeLogoLib/Logo.c
+++ b/Platform/Intel/SimicsOpenBoardPkg/Library/DxeLogoLib/Logo.c
@@ -8,7 +8,7 @@
 
 #include 
 #include 
-#include 
+#include 
 #include 
 #include 
 #include 
@@ -101,7 +101,7 @@ ConvertBmpToGopBlt (
 return EFI_INVALID_PARAMETER;
   }
 
-  if ((BmpHeader->Size != BmpImageSize) || 
+  if ((BmpHeader->Size != BmpImageSize) ||
   (BmpHeader->Size < BmpHeader->ImageOffset) ||
   (BmpHeader->Size - BmpHeader->ImageOffset !=  BmpHeader->PixelHeight * 
DataSizePerLine)) {
 return EFI_INVALID_PARAMETER;
@@ -345,7 +345,7 @@ EnableBootLogo (
   gST->ConOut->EnableCursor (gST->ConOut, FALSE);
 
   Badging = NULL;
-  Status  = gBS->LocateProtocol (, NULL, (VOID **) 
);
+  Status  = gBS->LocateProtocol (, NULL, (VOID **) 
);
 
   if (GraphicsOutput != NULL) {
 SizeOfX = GraphicsOutput->Mode->Info->HorizontalResolution;
@@ -581,7 +581,7 @@ Done:
 Status = EFI_SUCCESS;
   } else {
 //
-// More than one Logo displayed, get merged BltBuffer using VideoToBuffer 
operation. 
+// More than one Logo displayed, get merged BltBuffer using VideoToBuffer 
operation.
 //
 if (Blt != NULL) {
   FreePool (Blt);
diff --git 
a/Platform/Intel/SimicsOpenBoardPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c 
b/Platform/Intel/SimicsOpenBoardPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c
index 53c421d40b..3b71c8ae97 100644
--- 
a/Platform/Intel/SimicsOpenBoardPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c
+++ 
b/Platform/Intel/SimicsOpenBoardPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c
@@ -2,7 +2,7 @@
   SIMICS QSP's instance of the PCI Host Bridge Library.
 
   Copyright (C) 2016, Red Hat, Inc.
-  Copyright (c) 2016, Intel Corporation. All rights reserved.
+  Copyright (c) 2019, Intel Corporation. All rights reserved.
 
   SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
diff --git 
a/Platform/Intel/SimicsOpenBoardPkg/Library/PeiReportFvLib/PeiReportFvLib.c 
b/Platform/Intel/SimicsOpenBoardPkg/Library/PeiReportFvLib/PeiReportFvLib.c
index 1760eb954c..bb5a060b8e 100644
--- a/Platform/Intel/SimicsOpenBoardPkg/Library/PeiReportFvLib/PeiReportFvLib.c
+++ b/Platform/Intel/SimicsOpenBoardPkg/Library/PeiReportFvLib/PeiReportFvLib.c
@@ -1,8 +1,9 @@
 /** @file
   Source code file for Report Firmware Volume (FV) library
 
-Copyright (c) 2018, Intel Corporation. All rights reserved.
-SPDX-License-Identifier: BSD-2-Clause-Patent
+  Copyright (c) 2019, Intel Corporation. All rights reserved.
+
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
diff --git a/Platform/Intel/SimicsOpenBoardPkg/SecCore/SecMain.c 
b/Platform/Intel/SimicsOpenBoardPkg/SecCore/SecMain.c
index 826fc965c9..5cbb47687b 100644
--- 

[edk2-devel] [edk2-platforms PATCH v3 10/11] SimicsIch10Pkg: update the copyright years in file header

2019-08-29 Thread David Wei
update the copyright years in file header and cleanup the codes to follow the 
EDK2 coding style

Cc: Hao Wu 
Cc: Liming Gao 
Cc: Ankit Sinha 
Cc: Agyeman Prince 
Cc: Kubacki Michael A 
Cc: Nate DeSimone 
Cc: Michael D Kinney 

Signed-off-by: David Wei 
---
 Silicon/Intel/SimicsIch10Pkg/Include/Register/X58Ich10.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Silicon/Intel/SimicsIch10Pkg/Include/Register/X58Ich10.h 
b/Silicon/Intel/SimicsIch10Pkg/Include/Register/X58Ich10.h
index 12dfb5ce40..eac46955e0 100644
--- a/Silicon/Intel/SimicsIch10Pkg/Include/Register/X58Ich10.h
+++ b/Silicon/Intel/SimicsIch10Pkg/Include/Register/X58Ich10.h
@@ -5,6 +5,7 @@
 
   Copyright (C) 2015, Red Hat, Inc.
   Copyright (c) 2014, Gabriel L. Somlo 
+  Copyright (c) 2019 Intel Corporation. All rights reserved. 
 
   SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
-- 
2.16.2.windows.1


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#46594): https://edk2.groups.io/g/devel/message/46594
Mute This Topic: https://groups.io/mt/33073822/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[edk2-devel] [edk2-platforms PATCH v3 06/11] SimicsOpenBoardPkg/BoardX58Ich10: Add board module for QSP Build tip

2019-08-29 Thread David Wei
Add BoardX58ICH10 module for QSP Build tip

Cc: Hao Wu 
Cc: Liming Gao 
Cc: Ankit Sinha 
Cc: Agyeman Prince 
Cc: Kubacki Michael A 
Cc: Nate DeSimone 
Cc: Michael D Kinney 

Signed-off-by: David Wei 
---
 .../Library/BoardInitLib/PeiBoardInitPostMemLib.c  |  44 +++
 .../Library/BoardInitLib/PeiBoardInitPreMemLib.c   | 110 
 .../Library/BoardInitLib/PeiX58Ich10Detect.c   |  26 ++
 .../BoardInitLib/PeiX58Ich10InitPostMemLib.c   |  34 +++
 .../BoardInitLib/PeiX58Ich10InitPreMemLib.c| 111 
 .../BoardX58Ich10/DecomprScratchEnd.fdf.inc|  66 +
 .../BoardInitLib/PeiBoardInitPostMemLib.inf|  36 +++
 .../Library/BoardInitLib/PeiBoardInitPreMemLib.inf |  39 +++
 .../Library/BoardInitLib/PeiX58Ich10InitLib.h  |  16 ++
 .../BoardX58Ich10/OpenBoardPkg.dsc | 233 
 .../BoardX58Ich10/OpenBoardPkg.fdf | 304 +
 .../BoardX58Ich10/OpenBoardPkg.fdf.inc |  54 
 .../BoardX58Ich10/OpenBoardPkgBuildOption.dsc  |  78 ++
 .../BoardX58Ich10/OpenBoardPkgConfig.dsc   |  56 
 .../BoardX58Ich10/OpenBoardPkgPcd.dsc  | 281 +++
 .../BoardX58Ich10/VarStore.fdf.inc |  53 
 .../BoardX58Ich10/build_config.cfg |  31 +++
 17 files changed, 1572 insertions(+)
 create mode 100644 
Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/Library/BoardInitLib/PeiBoardInitPostMemLib.c
 create mode 100644 
Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/Library/BoardInitLib/PeiBoardInitPreMemLib.c
 create mode 100644 
Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/Library/BoardInitLib/PeiX58Ich10Detect.c
 create mode 100644 
Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/Library/BoardInitLib/PeiX58Ich10InitPostMemLib.c
 create mode 100644 
Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/Library/BoardInitLib/PeiX58Ich10InitPreMemLib.c
 create mode 100644 
Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/DecomprScratchEnd.fdf.inc
 create mode 100644 
Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/Library/BoardInitLib/PeiBoardInitPostMemLib.inf
 create mode 100644 
Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/Library/BoardInitLib/PeiBoardInitPreMemLib.inf
 create mode 100644 
Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/Library/BoardInitLib/PeiX58Ich10InitLib.h
 create mode 100644 
Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc
 create mode 100644 
Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.fdf
 create mode 100644 
Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.fdf.inc
 create mode 100644 
Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkgBuildOption.dsc
 create mode 100644 
Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkgConfig.dsc
 create mode 100644 
Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkgPcd.dsc
 create mode 100644 
Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/VarStore.fdf.inc
 create mode 100644 
Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/build_config.cfg

diff --git 
a/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/Library/BoardInitLib/PeiBoardInitPostMemLib.c
 
b/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/Library/BoardInitLib/PeiBoardInitPostMemLib.c
new file mode 100644
index 00..5ece8c6e34
--- /dev/null
+++ 
b/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/Library/BoardInitLib/PeiBoardInitPostMemLib.c
@@ -0,0 +1,44 @@
+/** @file
+  Copyright (c) 2019 Intel Corporation. All rights reserved. 
+
+  SPDX-License-Identifier: BSD-2-Clause-Patent
+**/
+
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+
+EFI_STATUS
+EFIAPI
+X58Ich10BoardInitBeforeSiliconInit (
+  VOID
+  );
+
+EFI_STATUS
+EFIAPI
+X58Ich10BoardInitAfterSiliconInit (
+  VOID
+  );
+
+EFI_STATUS
+EFIAPI
+BoardInitBeforeSiliconInit (
+  VOID
+  )
+{
+  X58Ich10BoardInitBeforeSiliconInit ();
+  return EFI_SUCCESS;
+}
+
+EFI_STATUS
+EFIAPI
+BoardInitAfterSiliconInit (
+  VOID
+  )
+{
+  X58Ich10BoardInitAfterSiliconInit ();
+  return EFI_SUCCESS;
+}
diff --git 
a/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/Library/BoardInitLib/PeiBoardInitPreMemLib.c
 
b/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/Library/BoardInitLib/PeiBoardInitPreMemLib.c
new file mode 100644
index 00..d16e649d34
--- /dev/null
+++ 
b/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/Library/BoardInitLib/PeiBoardInitPreMemLib.c
@@ -0,0 +1,110 @@
+/** @file
+  Copyright (c) 2019 Intel Corporation. All rights reserved. 
+
+  SPDX-License-Identifier: BSD-2-Clause-Patent
+**/
+
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+
+EFI_STATUS
+EFIAPI
+X58Ich10BoardDetect(
+  VOID
+  );
+
+EFI_BOOT_MODE
+EFIAPI
+X58Ich10BoardBootModeDetect (
+  VOID
+  );
+
+EFI_STATUS
+EFIAPI
+X58Ich10BoardDebugInit (
+  VOID
+  );
+
+EFI_STATUS
+EFIAPI
+X58Ich10BoardInitBeforeMemoryInit (
+  VOID
+  );
+
+EFI_STATUS
+EFIAPI
+X58Ich10BoardInitAfterMemoryInit (
+  VOID

[edk2-devel] [edk2-platforms PATCH v3 00/11] Add Initial QSP MinPlatform Pkg for SIMICS

2019-08-29 Thread David Wei
Create the SimicsOpenBoardPkg and its silicon Pkg to provide the support
for SIMICS quick start platform. it uses X58/ICH10 and emulated by SIMICS
model.

Different from V2:
  Remove overridden drivers under SimicsOpenBoardPkg
  Add Intel copyright and update copyright years in file header
  Cleanup codes to follow the EDK2 coding style
  
David Wei (11):
  SimicsX58SktPkg:  Add CPU Pkg for SimicsX58
  SimicsICH10Pkg:  Add PCH Pkg for SimicsICH10
  SimicsOpenBoardPkg:  Add SimicsOpenBoardPkg and its modules
  SimicsOpenBoardPkg: Add DXE driver for Legacy Sio
  SimicsOpenBoardPkg: Add Overrides modules and Logo image for SIMICS
QSP Platform
  SimicsOpenBoardPkg/BoardX58Ich10: Add board module for QSP Build tip
  Platform/Intel:  Add build option for SIMICS QSP Platform
  SimicsOpenBoardPkg: Remove overridden Drivers
  SimicsX58SktPkg: update the copyright years in file header
  SimicsIch10Pkg: update the copyright years in file header
  SimicsOpenBoardPkg: update the copyright years in file header

 .../MinPlatformAcpiTables/AcpiPlatform.c   | 1579 
 .../AcpiTables/MinPlatformAcpiTables/Facs/Facs.c   |   84 ++
 .../AcpiTables/MinPlatformAcpiTables/Fadt/Fadt.c   |  359 +
 .../AcpiTables/MinPlatformAcpiTables/Hpet/Hpet.c   |   78 +
 .../AcpiTables/MinPlatformAcpiTables/Wsmt/Wsmt.c   |   46 +
 .../Library/BoardInitLib/PeiBoardInitPostMemLib.c  |   44 +
 .../Library/BoardInitLib/PeiBoardInitPreMemLib.c   |  110 ++
 .../Library/BoardInitLib/PeiX58Ich10Detect.c   |   26 +
 .../BoardInitLib/PeiX58Ich10InitPostMemLib.c   |   34 +
 .../BoardInitLib/PeiX58Ich10InitPreMemLib.c|  111 ++
 .../LegacySioDxe/ComponentName.c   |  173 +++
 .../SimicsOpenBoardPkg/LegacySioDxe/SioChip.c  |  272 
 .../SimicsOpenBoardPkg/LegacySioDxe/SioDriver.c|  600 
 .../SimicsOpenBoardPkg/LegacySioDxe/SioService.c   |  249 +++
 .../SimicsOpenBoardPkg/Library/DxeLogoLib/Logo.c   |  647 
 .../Library/LoadLinuxLib/Linux.c   |  662 
 .../Library/LoadLinuxLib/LinuxGdt.c|  175 +++
 .../Library/NvVarsFileLib/FsAccess.c   |  507 +++
 .../Library/NvVarsFileLib/NvVarsFileLib.c  |   77 +
 .../Library/PciHostBridgeLib/PciHostBridgeLib.c|  419 ++
 .../SimicsOpenBoardPkg/Library/PeiReportFvLib/Fv.c |  100 ++
 .../Library/PeiReportFvLib/PeiReportFvLib.c|  119 ++
 .../Library/PlatformBootManagerLib/BdsPlatform.c   | 1553 +++
 .../Library/PlatformBootManagerLib/PlatformData.c  |   35 +
 .../SerializeVariablesLib/SerializeVariablesLib.c  |  869 +++
 .../SiliconPolicyInitLib/SiliconPolicyInitLib.c|  108 ++
 .../SiliconPolicyUpdateLib.c   |   70 +
 .../Intel/SimicsOpenBoardPkg/SecCore/SecMain.c |  956 
 .../Intel/SimicsOpenBoardPkg/SimicsDxe/Platform.c  |  865 +++
 .../SimicsOpenBoardPkg/SimicsDxe/PlatformConfig.c  |  124 ++
 Platform/Intel/SimicsOpenBoardPkg/SimicsPei/Cmos.c |   57 +
 .../SimicsOpenBoardPkg/SimicsPei/FeatureControl.c  |  115 ++
 .../Intel/SimicsOpenBoardPkg/SimicsPei/MemDetect.c |  568 +++
 .../Intel/SimicsOpenBoardPkg/SimicsPei/Platform.c  |  630 
 .../SimicsVideoDxe/ComponentName.c |  205 +++
 .../SimicsOpenBoardPkg/SimicsVideoDxe/Driver.c | 1011 +
 .../SimicsVideoDxe/DriverSupportedEfiVersion.c |   15 +
 .../Intel/SimicsOpenBoardPkg/SimicsVideoDxe/Gop.c  |  416 ++
 .../SimicsOpenBoardPkg/SimicsVideoDxe/Initialize.c |  341 +
 .../SimicsOpenBoardPkg/SimicsVideoDxe/VbeShim.c|  302 
 .../SmbiosPlatformDxe/SmbiosPlatformDxe.c  |  148 ++
 .../Library/ResetSystemLib/ResetSystemLib.c|  137 ++
 .../Library/SmmSpiFlashCommonLib/SpiFlashCommon.c  |  194 +++
 .../SmmSpiFlashCommonLib/SpiFlashCommonSmmLib.c|   54 +
 .../LibraryPrivate/BasePchSpiCommonLib/SpiCommon.c |  935 
 .../SmmControl/RuntimeDxe/SmmControl2Dxe.c |  410 +
 Silicon/Intel/SimicsIch10Pkg/Spi/Smm/PchSpi.c  |  175 +++
 .../SimicsX58SktPkg/Smm/Access/SmmAccess2Dxe.c |  148 ++
 .../SimicsX58SktPkg/Smm/Access/SmmAccessPei.c  |  346 +
 .../SimicsX58SktPkg/Smm/Access/SmramInternal.c |  200 +++
 Maintainers.txt|   12 +
 .../SimicsOpenBoardPkg/AcpiTables/AcpiTables.inf   |   31 +
 .../Intel/SimicsOpenBoardPkg/AcpiTables/Dsdt.asl   |  821 ++
 .../MinPlatformAcpiTables/AcpiPlatform.h   |   45 +
 .../MinPlatformAcpiTables/AcpiPlatform.inf |  105 ++
 .../Intel/SimicsOpenBoardPkg/AcpiTables/Platform.h |   75 +
 .../BoardX58Ich10/DecomprScratchEnd.fdf.inc|   67 +
 .../BoardInitLib/PeiBoardInitPostMemLib.inf|   36 +
 .../Library/BoardInitLib/PeiBoardInitPreMemLib.inf |   39 +
 .../Library/BoardInitLib/PeiX58Ich10InitLib.h  |   16 +
 .../BoardX58Ich10/OpenBoardPkg.dsc |  233 +++
 .../BoardX58Ich10/OpenBoardPkg.fdf |  304 

[edk2-devel] [edk2-platforms PATCH v3 07/11] Platform/Intel: Add build option for SIMICS QSP Platform

2019-08-29 Thread David Wei
Add build option in build script for SIMICS QSP Platform
Add Maintainers of Simics QSP related packages

Cc: Hao Wu 
Cc: Liming Gao 
Cc: Ankit Sinha 
Cc: Agyeman Prince 
Cc: Kubacki Michael A 
Cc: Nate DeSimone 
Cc: Michael D Kinney 

Signed-off-by: David Wei 
---
 Maintainers.txt  | 12 
 Platform/Intel/build.cfg |  2 ++
 Platform/Intel/build_bios.py |  3 +++
 3 files changed, 17 insertions(+)

diff --git a/Maintainers.txt b/Maintainers.txt
index b16432bf87..90eb3c3dd0 100644
--- a/Maintainers.txt
+++ b/Maintainers.txt
@@ -103,6 +103,10 @@ M: Chasel Chiu 
 M: Michael Kubacki 
 M: Nate DeSimone 
 
+Platform/Intel/SimicsOpenBoardPkg
+M: Wei David Y 
+M: Agyeman Prince 
+
 Platform/Intel/Tools
 M: Bob Feng 
 M: Liming Gao 
@@ -155,6 +159,14 @@ M: Gillispie, Thad 
 M: Bu, Daocheng 
 M: Oram, Isaac W 
 
+Silicon/Intel/SimicsX58SktPkg
+M: Wei David Y 
+M: Agyeman Prince 
+
+Silicon/Intel/SimicsIch10Pkg
+M: Wei David Y 
+M: Agyeman Prince 
+
 Silicon/Intel/Tools
 M: Bob Feng 
 M: Liming Gao 
diff --git a/Platform/Intel/build.cfg b/Platform/Intel/build.cfg
index b6d32ada49..75cb446aa5 100644
--- a/Platform/Intel/build.cfg
+++ b/Platform/Intel/build.cfg
@@ -11,6 +11,7 @@ WORKSPACE =
 WORKSPACE_FSP_BIN = FSP
 EDK_TOOLS_BIN = edk2-BaseTools-win32
 EDK_BASETOOLS = BaseTools
+WORKSPACE_DRIVERS = edk2-platforms/Drivers
 WORKSPACE_PLATFORM = edk2-platforms/Platform/Intel
 WORKSPACE_SILICON = edk2-platforms/Silicon/Intel
 WORKSPACE_PLATFORM_BIN =
@@ -52,6 +53,7 @@ NUMBER_OF_PROCESSORS = 0
 [PLATFORMS]
 # board_name = path_to_board_build_config.cfg
 BoardMtOlympus = PurleyOpenBoardPkg/BoardMtOlympus/build_config.cfg
+BoardX58Ich10 = SimicsOpenBoardPkg/BoardX58Ich10/build_config.cfg
 KabylakeRvp3 = KabylakeOpenBoardPkg/KabylakeRvp3/build_config.cfg
 N1xxWU = ClevoOpenBoardPkg/N1xxWU/build_config.cfg
 WhiskeylakeURvp = WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/build_config.cfg
diff --git a/Platform/Intel/build_bios.py b/Platform/Intel/build_bios.py
index 9152670dcb..46285df19a 100644
--- a/Platform/Intel/build_bios.py
+++ b/Platform/Intel/build_bios.py
@@ -104,6 +104,8 @@ def pre_build(build_config, build_type="DEBUG", 
silent=False, toolchain=None):
 config["WORKSPACE_PLATFORM"])
 config["WORKSPACE_SILICON"] = os.path.join(config["WORKSPACE"],
config["WORKSPACE_SILICON"])
+config["WORKSPACE_DRIVERS"] = os.path.join(config["WORKSPACE"],
+   config["WORKSPACE_DRIVERS"])
 config["WORKSPACE_PLATFORM_BIN"] = \
 os.path.join(config["WORKSPACE"], config["WORKSPACE_PLATFORM_BIN"])
 config["WORKSPACE_SILICON_BIN"] = \
@@ -115,6 +117,7 @@ def pre_build(build_config, build_type="DEBUG", 
silent=False, toolchain=None):
 config["PACKAGES_PATH"] = config["WORKSPACE_PLATFORM"]
 config["PACKAGES_PATH"] += os.pathsep + config["WORKSPACE_SILICON"]
 config["PACKAGES_PATH"] += os.pathsep + config["WORKSPACE_SILICON_BIN"]
+config["PACKAGES_PATH"] += os.pathsep + config["WORKSPACE_DRIVERS"]
 config["PACKAGES_PATH"] += os.pathsep + \
 os.path.join(config["WORKSPACE"], "FSP")
 config["PACKAGES_PATH"] += os.pathsep + \
-- 
2.16.2.windows.1


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#46591): https://edk2.groups.io/g/devel/message/46591
Mute This Topic: https://groups.io/mt/33073819/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[edk2-devel] [edk2-platforms PATCH v3 08/11] SimicsOpenBoardPkg: Remove overridden Drivers

2019-08-29 Thread David Wei
Remove overridden Drivers, rename them and relocate underSimicsOpenBoardPkg

Cc: Hao Wu 
Cc: Liming Gao 
Cc: Ankit Sinha 
Cc: Agyeman Prince 
Cc: Kubacki Michael A 
Cc: Nate DeSimone 
Cc: Michael D Kinney 

Signed-off-by: David Wei 
---
 .../MinPlatformAcpiTables}/AcpiPlatform.c  |  2 +-
 .../MinPlatformAcpiTables}/Facs/Facs.c |  0
 .../MinPlatformAcpiTables}/Fadt/Fadt.c |  0
 .../MinPlatformAcpiTables}/Hpet/Hpet.c |  0
 .../MinPlatformAcpiTables}/Wsmt/Wsmt.c |  0
 .../ComponentName.c|  2 +-
 .../QemuVideoDxe => SimicsVideoDxe}/Driver.c   |  2 +-
 .../DriverSupportedEfiVersion.c|  2 +-
 .../OvmfPkg/QemuVideoDxe => SimicsVideoDxe}/Gop.c  |  2 +-
 .../QemuVideoDxe => SimicsVideoDxe}/Initialize.c   |  2 +-
 .../QemuVideoDxe => SimicsVideoDxe}/VbeShim.c  |  2 +-
 .../MinPlatformAcpiTables}/AcpiPlatform.h  |  0
 .../MinPlatformAcpiTables}/AcpiPlatform.inf|  0
 .../BoardX58Ich10/OpenBoardPkg.dsc |  4 +-
 .../BoardX58Ich10/OpenBoardPkg.fdf |  4 +-
 .../Library/DxeLogoLib/OEMBadging.h| 83 --
 .../Qemu.h => SimicsVideoDxe/Simics.h} |  0
 .../SimicsVideoDxe.inf}|  2 +-
 .../QemuVideoDxe => SimicsVideoDxe}/VbeShim.asm|  0
 .../QemuVideoDxe => SimicsVideoDxe}/VbeShim.h  |  0
 .../QemuVideoDxe => SimicsVideoDxe}/VbeShim.sh |  0
 21 files changed, 12 insertions(+), 95 deletions(-)
 rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/MinPlatformPkg/Acpi/AcpiTables => 
AcpiTables/MinPlatformAcpiTables}/AcpiPlatform.c (97%)
 rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/MinPlatformPkg/Acpi/AcpiTables => 
AcpiTables/MinPlatformAcpiTables}/Facs/Facs.c (100%)
 rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/MinPlatformPkg/Acpi/AcpiTables => 
AcpiTables/MinPlatformAcpiTables}/Fadt/Fadt.c (100%)
 rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/MinPlatformPkg/Acpi/AcpiTables => 
AcpiTables/MinPlatformAcpiTables}/Hpet/Hpet.c (100%)
 rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/MinPlatformPkg/Acpi/AcpiTables => 
AcpiTables/MinPlatformAcpiTables}/Wsmt/Wsmt.c (100%)
 rename Platform/Intel/SimicsOpenBoardPkg/{Overrides/OvmfPkg/QemuVideoDxe => 
SimicsVideoDxe}/ComponentName.c (97%)
 rename Platform/Intel/SimicsOpenBoardPkg/{Overrides/OvmfPkg/QemuVideoDxe => 
SimicsVideoDxe}/Driver.c (96%)
 rename Platform/Intel/SimicsOpenBoardPkg/{Overrides/OvmfPkg/QemuVideoDxe => 
SimicsVideoDxe}/DriverSupportedEfiVersion.c (93%)
 rename Platform/Intel/SimicsOpenBoardPkg/{Overrides/OvmfPkg/QemuVideoDxe => 
SimicsVideoDxe}/Gop.c (96%)
 rename Platform/Intel/SimicsOpenBoardPkg/{Overrides/OvmfPkg/QemuVideoDxe => 
SimicsVideoDxe}/Initialize.c (96%)
 rename Platform/Intel/SimicsOpenBoardPkg/{Overrides/OvmfPkg/QemuVideoDxe => 
SimicsVideoDxe}/VbeShim.c (96%)
 rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/MinPlatformPkg/Acpi/AcpiTables => 
AcpiTables/MinPlatformAcpiTables}/AcpiPlatform.h (100%)
 rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/MinPlatformPkg/Acpi/AcpiTables => 
AcpiTables/MinPlatformAcpiTables}/AcpiPlatform.inf (100%)
 delete mode 100644 
Platform/Intel/SimicsOpenBoardPkg/Library/DxeLogoLib/OEMBadging.h
 rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/OvmfPkg/QemuVideoDxe/Qemu.h => 
SimicsVideoDxe/Simics.h} (100%)
 rename 
Platform/Intel/SimicsOpenBoardPkg/{Overrides/OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
 => SimicsVideoDxe/SimicsVideoDxe.inf} (95%)
 rename Platform/Intel/SimicsOpenBoardPkg/{Overrides/OvmfPkg/QemuVideoDxe => 
SimicsVideoDxe}/VbeShim.asm (100%)
 rename Platform/Intel/SimicsOpenBoardPkg/{Overrides/OvmfPkg/QemuVideoDxe => 
SimicsVideoDxe}/VbeShim.h (100%)
 rename Platform/Intel/SimicsOpenBoardPkg/{Overrides/OvmfPkg/QemuVideoDxe => 
SimicsVideoDxe}/VbeShim.sh (100%)

diff --git 
a/Platform/Intel/SimicsOpenBoardPkg/Overrides/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c
 
b/Platform/Intel/SimicsOpenBoardPkg/AcpiTables/MinPlatformAcpiTables/AcpiPlatform.c
similarity index 97%
rename from 
Platform/Intel/SimicsOpenBoardPkg/Overrides/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c
rename to 
Platform/Intel/SimicsOpenBoardPkg/AcpiTables/MinPlatformAcpiTables/AcpiPlatform.c
index f050d8afc0..1edac89240 100644
--- 
a/Platform/Intel/SimicsOpenBoardPkg/Overrides/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c
+++ 
b/Platform/Intel/SimicsOpenBoardPkg/AcpiTables/MinPlatformAcpiTables/AcpiPlatform.c
@@ -1472,7 +1472,7 @@ UpdateLocalTable (
 
   for (Index = 0; Index < sizeof(mLocalTable)/sizeof(mLocalTable[0]); Index++) 
{
 CurrentTable = mLocalTable[Index];
-  
+
 PlatformUpdateTables (CurrentTable, );
 
 TableHandle = 0;
diff --git 
a/Platform/Intel/SimicsOpenBoardPkg/Overrides/MinPlatformPkg/Acpi/AcpiTables/Facs/Facs.c
 
b/Platform/Intel/SimicsOpenBoardPkg/AcpiTables/MinPlatformAcpiTables/Facs/Facs.c
similarity index 100%
rename from 

[edk2-devel] [edk2-platforms PATCH v3 01/11] SimicsX58SktPkg: Add CPU Pkg for SimicsX58

2019-08-29 Thread David Wei
Add CPU Pkg for SimicsX58. It is added for simics QSP project support

Cc: Hao Wu 
Cc: Liming Gao 
Cc: Ankit Sinha 
Cc: Agyeman Prince 
Cc: Kubacki Michael A 
Cc: Nate DeSimone 
Cc: Michael D Kinney 

Signed-off-by: David Wei 
---
 .../SimicsX58SktPkg/Smm/Access/SmmAccess2Dxe.c | 148 +
 .../SimicsX58SktPkg/Smm/Access/SmmAccessPei.c  | 346 +
 .../SimicsX58SktPkg/Smm/Access/SmramInternal.c | 200 
 .../Include/Register/X58SmramSaveStateMap.h| 178 +++
 Silicon/Intel/SimicsX58SktPkg/SktPkg.dec   |  37 +++
 Silicon/Intel/SimicsX58SktPkg/SktPkgPei.dsc|  14 +
 .../Intel/SimicsX58SktPkg/SktPostMemoryInclude.fdf |   9 +
 .../Intel/SimicsX58SktPkg/SktPreMemoryInclude.fdf  |  10 +
 Silicon/Intel/SimicsX58SktPkg/SktSecInclude.fdf|  16 +
 .../Intel/SimicsX58SktPkg/SktUefiBootInclude.fdf   |  14 +
 .../SimicsX58SktPkg/Smm/Access/SmmAccess2Dxe.inf   |  54 
 .../SimicsX58SktPkg/Smm/Access/SmmAccessPei.inf|  65 
 .../SimicsX58SktPkg/Smm/Access/SmramInternal.h |  81 +
 13 files changed, 1172 insertions(+)
 create mode 100644 Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmmAccess2Dxe.c
 create mode 100644 Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmmAccessPei.c
 create mode 100644 Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmramInternal.c
 create mode 100644 
Silicon/Intel/SimicsX58SktPkg/Include/Register/X58SmramSaveStateMap.h
 create mode 100644 Silicon/Intel/SimicsX58SktPkg/SktPkg.dec
 create mode 100644 Silicon/Intel/SimicsX58SktPkg/SktPkgPei.dsc
 create mode 100644 Silicon/Intel/SimicsX58SktPkg/SktPostMemoryInclude.fdf
 create mode 100644 Silicon/Intel/SimicsX58SktPkg/SktPreMemoryInclude.fdf
 create mode 100644 Silicon/Intel/SimicsX58SktPkg/SktSecInclude.fdf
 create mode 100644 Silicon/Intel/SimicsX58SktPkg/SktUefiBootInclude.fdf
 create mode 100644 Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmmAccess2Dxe.inf
 create mode 100644 Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmmAccessPei.inf
 create mode 100644 Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmramInternal.h

diff --git a/Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmmAccess2Dxe.c 
b/Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmmAccess2Dxe.c
new file mode 100644
index 00..771fddb487
--- /dev/null
+++ b/Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmmAccess2Dxe.c
@@ -0,0 +1,148 @@
+/** @file
+  A DXE_DRIVER providing SMRAM access by producing EFI_SMM_ACCESS2_PROTOCOL.
+
+  X58 TSEG is expected to have been verified and set up by the SmmAccessPei
+  driver.
+
+  Copyright (C) 2013, 2015, Red Hat, Inc.
+  Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.
+
+  SPDX-License-Identifier: BSD-2-Clause-Patent
+**/
+
+#include 
+#include 
+#include 
+#include 
+
+#include "SmramInternal.h"
+
+/**
+  Opens the SMRAM area to be accessible by a boot-service driver.
+
+  This function "opens" SMRAM so that it is visible while not inside of SMM.
+  The function should return EFI_UNSUPPORTED if the hardware does not support
+  hiding of SMRAM. The function should return EFI_DEVICE_ERROR if the SMRAM
+  configuration is locked.
+
+  @param[in] This   The EFI_SMM_ACCESS2_PROTOCOL instance.
+
+  @retval EFI_SUCCESS   The operation was successful.
+  @retval EFI_UNSUPPORTED   The system does not support opening and closing of
+SMRAM.
+  @retval EFI_DEVICE_ERROR  SMRAM cannot be opened, perhaps because it is
+locked.
+**/
+STATIC
+EFI_STATUS
+EFIAPI
+SmmAccess2DxeOpen (
+  IN EFI_SMM_ACCESS2_PROTOCOL  *This
+  )
+{
+  return SmramAccessOpen (>LockState, >OpenState);
+}
+
+/**
+  Inhibits access to the SMRAM.
+
+  This function "closes" SMRAM so that it is not visible while outside of SMM.
+  The function should return EFI_UNSUPPORTED if the hardware does not support
+  hiding of SMRAM.
+
+  @param[in] This   The EFI_SMM_ACCESS2_PROTOCOL instance.
+
+  @retval EFI_SUCCESS   The operation was successful.
+  @retval EFI_UNSUPPORTED   The system does not support opening and closing of
+SMRAM.
+  @retval EFI_DEVICE_ERROR  SMRAM cannot be closed.
+**/
+STATIC
+EFI_STATUS
+EFIAPI
+SmmAccess2DxeClose (
+  IN EFI_SMM_ACCESS2_PROTOCOL  *This
+  )
+{
+  return SmramAccessClose (>LockState, >OpenState);
+}
+
+/**
+  Inhibits access to the SMRAM.
+
+  This function prohibits access to the SMRAM region.  This function is usually
+  implemented such that it is a write-once operation.
+
+  @param[in] This  The EFI_SMM_ACCESS2_PROTOCOL instance.
+
+  @retval EFI_SUCCESS  The device was successfully locked.
+  @retval EFI_UNSUPPORTED  The system does not support locking of SMRAM.
+**/
+STATIC
+EFI_STATUS
+EFIAPI
+SmmAccess2DxeLock (
+  IN EFI_SMM_ACCESS2_PROTOCOL  *This
+  )
+{
+  return SmramAccessLock (>LockState, >OpenState);
+}
+
+/**
+  Queries the memory controller for the possible regions that will support
+  SMRAM.
+
+  @param[in] This   The 

[edk2-devel] [edk2-platforms PATCH v3 04/11] SimicsOpenBoardPkg: Add DXE driver for Legacy Sio

2019-08-29 Thread David Wei
Add DXE driver for Legacy Sio support

Cc: Hao Wu 
Cc: Liming Gao 
Cc: Ankit Sinha 
Cc: Agyeman Prince 
Cc: Kubacki Michael A 
Cc: Nate DeSimone 
Cc: Michael D Kinney 

Signed-off-by: David Wei 
---
 .../LegacySioDxe/ComponentName.c   | 173 ++
 .../SimicsOpenBoardPkg/LegacySioDxe/SioChip.c  | 272 ++
 .../SimicsOpenBoardPkg/LegacySioDxe/SioDriver.c| 600 +
 .../SimicsOpenBoardPkg/LegacySioDxe/SioService.c   | 249 +
 .../LegacySioDxe/ComponentName.h   |  87 +++
 .../LegacySioDxe/LegacySioDxe.inf  |  54 ++
 .../SimicsOpenBoardPkg/LegacySioDxe/Register.h |  15 +
 .../SimicsOpenBoardPkg/LegacySioDxe/SioChip.h  | 195 +++
 .../SimicsOpenBoardPkg/LegacySioDxe/SioDriver.h| 134 +
 .../SimicsOpenBoardPkg/LegacySioDxe/SioService.h   | 143 +
 10 files changed, 1922 insertions(+)
 create mode 100644 
Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/ComponentName.c
 create mode 100644 Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioChip.c
 create mode 100644 Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioDriver.c
 create mode 100644 Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioService.c
 create mode 100644 
Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/ComponentName.h
 create mode 100644 
Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/LegacySioDxe.inf
 create mode 100644 Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/Register.h
 create mode 100644 Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioChip.h
 create mode 100644 Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioDriver.h
 create mode 100644 Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/SioService.h

diff --git a/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/ComponentName.c 
b/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/ComponentName.c
new file mode 100644
index 00..4ba02f92c0
--- /dev/null
+++ b/Platform/Intel/SimicsOpenBoardPkg/LegacySioDxe/ComponentName.c
@@ -0,0 +1,173 @@
+/** @file
+  Install Base and Size Info Ppi for Firmware Volume Recovery.
+
+  Copyright (c) 2013 - 2019 Intel Corporation. All rights reserved. 
+
+  SPDX-License-Identifier: BSD-2-Clause-Patent
+**/
+
+#include "SioDriver.h"
+
+///
+/// Component Name Protocol instance
+///
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME_PROTOCOL  mSioComponentName = 
{
+  SioComponentNameGetDriverName,
+  SioComponentNameGetControllerName,
+  "eng"
+};
+
+///
+/// Component Name 2 Protocol instance
+///
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL mSioComponentName2 
= {
+  (EFI_COMPONENT_NAME2_GET_DRIVER_NAME)SioComponentNameGetDriverName,
+  (EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME)SioComponentNameGetControllerName,
+  "en"
+};
+
+///
+/// Table of driver names
+///
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE mSioDriverNameTable[] = 
{
+  {
+"eng;en",
+L"Super I/O Driver"
+  },
+  {
+NULL,
+NULL
+  }
+};
+
+///
+/// Table of Controller names
+///
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE 
mSioControllerNameTable[] = {
+  {
+"eng;en",
+L"Super I/O Controller"
+  },
+  {
+NULL,
+NULL
+  }
+};
+
+/**
+  Retrieves a Unicode string that is the user-readable name of the EFI Driver.
+
+  @param  This   A pointer to the EFI_COMPONENT_NAME_PROTOCOL instance.
+  @param  Language   A pointer to a three-character ISO 639-2 language 
identifier.
+ This is the language of the driver name that that the 
caller
+ is requesting, and it must match one of the languages 
specified
+ in SupportedLanguages.  The number of languages supported 
by a
+ driver is up to the driver writer.
+  @param  DriverName A pointer to the Unicode string to return.  This Unicode 
string
+ is the name of the driver specified by This in the 
language
+ specified by Language.
+
+  @retval EFI_SUCCESS   The Unicode string for the Driver specified by 
This
+and the language specified by Language was 
returned
+in DriverName.
+  @retval EFI_INVALID_PARAMETER Language is NULL.
+  @retval EFI_INVALID_PARAMETER DriverName is NULL.
+  @retval EFI_UNSUPPORTED   The driver specified by This does not support 
the
+language specified by Language.
+
+**/
+EFI_STATUS
+EFIAPI
+SioComponentNameGetDriverName (
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,
+  IN  CHAR8*Language,
+  OUT CHAR16   **DriverName
+  )
+{
+  return LookupUnicodeString2 (
+   Language,
+   This->SupportedLanguages,
+   mSioDriverNameTable,
+   DriverName,
+   (BOOLEAN)(This == )
+   );
+}
+
+/**
+  Retrieves a Unicode string that is the user readable name of the controller
+  that is being managed by an EFI Driver.
+
+  @param  This A 

[edk2-devel] [edk2-platforms PATCH v3 09/11] SimicsX58SktPkg: update the copyright years in file header

2019-08-29 Thread David Wei
update the copyright years in file header and cleanup the codes to follow the 
EDK2 coding style

Cc: Hao Wu 
Cc: Liming Gao 
Cc: Ankit Sinha 
Cc: Agyeman Prince 
Cc: Kubacki Michael A 
Cc: Nate DeSimone 
Cc: Michael D Kinney 

Signed-off-by: David Wei 
---
 Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmmAccess2Dxe.c  | 2 +-
 Silicon/Intel/SimicsX58SktPkg/Include/Register/X58SmramSaveStateMap.h | 2 +-
 Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmramInternal.h  | 1 +
 3 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmmAccess2Dxe.c 
b/Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmmAccess2Dxe.c
index 771fddb487..5d3b2c14aa 100644
--- a/Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmmAccess2Dxe.c
+++ b/Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmmAccess2Dxe.c
@@ -5,7 +5,7 @@
   driver.
 
   Copyright (C) 2013, 2015, Red Hat, Inc.
-  Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.
+  Copyright (c) 2009 - 2019, Intel Corporation. All rights reserved.
 
   SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
diff --git 
a/Silicon/Intel/SimicsX58SktPkg/Include/Register/X58SmramSaveStateMap.h 
b/Silicon/Intel/SimicsX58SktPkg/Include/Register/X58SmramSaveStateMap.h
index db8ee2c37a..a067d1488a 100644
--- a/Silicon/Intel/SimicsX58SktPkg/Include/Register/X58SmramSaveStateMap.h
+++ b/Silicon/Intel/SimicsX58SktPkg/Include/Register/X58SmramSaveStateMap.h
@@ -10,7 +10,7 @@ Intel(R) 64 and IA-32 Architectures Software Developer's 
Manual
 and the AMD64 Architecture Programmer's Manual
   Volume 2, Section 10.2 SMM Resources
 
-Copyright (c) 2015, Intel Corporation. All rights reserved.
+Copyright (c) 2019, Intel Corporation. All rights reserved.
 Copyright (c) 2015, Red Hat, Inc.
 
   SPDX-License-Identifier: BSD-2-Clause-Patent
diff --git a/Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmramInternal.h 
b/Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmramInternal.h
index 43a79b295f..81180a9c8e 100644
--- a/Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmramInternal.h
+++ b/Silicon/Intel/SimicsX58SktPkg/Smm/Access/SmramInternal.h
@@ -2,6 +2,7 @@
   Functions and types shared by the SMM accessor PEI and DXE modules.
 
   Copyright (C) 2015, Red Hat, Inc.
+  Copyright (C) 2019, Intel Corporation. All rights reserved.
 
   SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
-- 
2.16.2.windows.1


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#46593): https://edk2.groups.io/g/devel/message/46593
Mute This Topic: https://groups.io/mt/33073821/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [edk2-devel] [RFC] EDK II Continuous Integration Phase 1

2019-08-29 Thread Michael D Kinney
Hi Michael,

SCTs are in scope.  It is only deciding when they get run
and how much pre-commit execution time developers are
willing to wait for a pass/fail result.

The on-demand testing feature is one place we can add extra
testing to help improve the quality of commits.  The
Daily and Weekly scoped tests are another option.

Mike

> -Original Message-
> From: Michael Zimmermann 
> Sent: Thursday, August 29, 2019 1:40 PM
> To: devel@edk2.groups.io; Kinney, Michael D
> 
> Cc: r...@edk2.groups.io
> Subject: Re: [edk2-devel] [RFC] EDK II Continuous
> Integration Phase 1
> 
> Hi Michael,
> 
> would it make sense to run SCT (using UnixHost and/or
> qemu) to verify the high level logic or do you think
> that would be too much to do for each PR?
> 
> Also, do we want to run all these checks for each
> commit in the PR to verify that they pass at each point
> in the git history?
> 
> Thanks
> Michael
> 
> On Thu, Aug 29, 2019 at 10:22 PM Michael D Kinney
>  wrote:
> >
> > Hello,
> >
> > This is a proposal for a first step towards
> continuous integration for
> > all TianoCore repositories to help improve to quality
> of commits and
> > automate testing and release processes for all EDK II
> packages and
> > platforms.
> >
> > This is based on work from a number of EDK II
> community members that
> > have provide valuable input and evaluations.
> >
> > * Rebecca Cran  Jenkins evaluation
> > * Laszlo Ersek  GitLab evaluation
> > * Philippe Mathieu-Daudé  GitLab
> evaluation
> > * Sean Brogan  Azure
> Pipelines and HBFA
> > * Bret Barkelew  Azure
> Pipelines and HBFA
> > * Jiewen Yao  HBFA
> >
> > The following link is a link to an EDK II WIKI page
> that contains a
> > summary of the work to date.  Please provide feedback
> in the EDK II
> > mailing lists.  The WIKI pages will be updated with
> input from the
> > entire EDK II community.
> >
> >
> >
> https://github.com/tianocore/tianocore.github.io/wiki/E
> DK-II-Continuou
> > s-Integration
> >
> > Proposal
> > 
> > Phase 1 of adding continuous integration is limited
> to the
> > edk2 repository.  Additional repositories will be
> added later.
> >
> > The following changes are proposed:
> > * Remove EDK II Maintainers write access to edk2
> repository.
> >   Only EDK II Administrators will continue to have
> write
> >   access, and that should only be used to handle
> extraordinary
> >   events.
> > * EDK II Maintainers use a GitHub Pull Request
> instead of push
> >   to commit a patch series to the edk2 repository.
> There are
> >   no other changes to the development and review
> process.  The
> >   patch series is prepared in an EDK II maintainer
> branch with
> >   all commit message requirements met on each patch
> in the series.
> > * The edk2 repository only accepts Pull Requests from
> members
> >   of the EDK II Maintainers team.  Pull Requests from
> anyone else
> >   are rejected.
> > * Run pre-commit checks using Azure Pipelines
> > * If all pre-commit checks pass, then the patch
> series is auto
> >   committed.  The result of this commit must match
> the contents
> >   and commit history that would have occurred using
> the previous
> >   push operation.
> > * If any pre-commit checks fail, then notify the
> submitter.
> >   A typical reason for a failure would be a merge
> conflict with
> >   another pull request that was just processed.
> > * Limit pre-commit checks execution time to 10
> minutes.
> > * Provide on-demand builds to EDK II Maintainers that
> to allow
> >   EDK II Maintainers to submit a branch through for
> the same
> >   set of pre-commit checks without submitting a pull
> request.
> >
> > ## Pre-Commit Checks in Phase 1
> > * Run and pass PatchCheck.py with no errors
> >
> > =
> >
> > The following are some additional pre-commit check
> ideas that could be
> > quickly added once the initial version using
> PatchCheck.py is fully
> > functional.  Please provide feedback on the ones you
> like and
> > additional ones you think may improve the quality of
> the commits to
> > the edk2 repository.
> >
> > ## Proposed Pre-Commit Checks in Phase 2
> > * Verify Reviewed-by and Acked-by tags are present
> with
> >   correct maintainer email addresses
> > * Verify no non-ASCII characters in modified files
> > * Verify no binary files in set of modified files
> > * Verify package dependency rules in modified files
> >
> > ## Proposed Pre-Commit Checks in Phase 3
> > * Run ECC on modified files
> > * Verify modified modules/libs build
> > * Run available host based tests (HBFA) against
> modified
> >   modules/libs
> >
> > Best regards,
> >
> > Mike
> >
> >
> >
> >
> >
> >
> > 
> >

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#46583): https://edk2.groups.io/g/devel/message/46583
Mute This Topic: https://groups.io/mt/33072637/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: 

[edk2-devel] [RFC] EDK II Continuous Integration Phase 1

2019-08-29 Thread Michael D Kinney
Hello,

This is a proposal for a first step towards continuous
integration for all TianoCore repositories to help 
improve to quality of commits and automate testing and
release processes for all EDK II packages and platforms.

This is based on work from a number of EDK II community
members that have provide valuable input and evaluations.

* Rebecca Cran  Jenkins evaluation
* Laszlo Ersek  GitLab evaluation
* Philippe Mathieu-Daudé  GitLab evaluation
* Sean Brogan  Azure Pipelines and HBFA
* Bret Barkelew  Azure Pipelines and HBFA
* Jiewen Yao  HBFA

The following link is a link to an EDK II WIKI page that
contains a summary of the work to date.  Please provide
feedback in the EDK II mailing lists.  The WIKI pages will
be updated with input from the entire EDK II community.


https://github.com/tianocore/tianocore.github.io/wiki/EDK-II-Continuous-Integration

Proposal

Phase 1 of adding continuous integration is limited to the
edk2 repository.  Additional repositories will be added later.

The following changes are proposed:
* Remove EDK II Maintainers write access to edk2 repository.
  Only EDK II Administrators will continue to have write 
  access, and that should only be used to handle extraordinary
  events.
* EDK II Maintainers use a GitHub Pull Request instead of push
  to commit a patch series to the edk2 repository.  There are
  no other changes to the development and review process.  The
  patch series is prepared in an EDK II maintainer branch with
  all commit message requirements met on each patch in the series.
* The edk2 repository only accepts Pull Requests from members
  of the EDK II Maintainers team.  Pull Requests from anyone else
  are rejected.
* Run pre-commit checks using Azure Pipelines
* If all pre-commit checks pass, then the patch series is auto
  committed.  The result of this commit must match the contents
  and commit history that would have occurred using the previous
  push operation.
* If any pre-commit checks fail, then notify the submitter.
  A typical reason for a failure would be a merge conflict with
  another pull request that was just processed.
* Limit pre-commit checks execution time to 10 minutes.
* Provide on-demand builds to EDK II Maintainers that to allow
  EDK II Maintainers to submit a branch through for the same
  set of pre-commit checks without submitting a pull request.

## Pre-Commit Checks in Phase 1
* Run and pass PatchCheck.py with no errors

=

The following are some additional pre-commit check ideas
that could be quickly added once the initial version using
PatchCheck.py is fully functional.  Please provide feedback
on the ones you like and additional ones you think may 
improve the quality of the commits to the edk2 repository.

## Proposed Pre-Commit Checks in Phase 2
* Verify Reviewed-by and Acked-by tags are present with
  correct maintainer email addresses
* Verify no non-ASCII characters in modified files
* Verify no binary files in set of modified files
* Verify package dependency rules in modified files

## Proposed Pre-Commit Checks in Phase 3
* Run ECC on modified files
* Verify modified modules/libs build
* Run available host based tests (HBFA) against modified
  modules/libs

Best regards,

Mike






-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#46582): https://edk2.groups.io/g/devel/message/46582
Mute This Topic: https://groups.io/mt/33072637/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[edk2-devel] Cancelled Event: TianoCore Community Meeting - APAC/NAMO - Thursday, 5 September 2019 #cal-cancelled

2019-08-29 Thread devel@edk2.groups.io Calendar
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Groups.io Inc//Groups.io Calendar//EN
METHOD:CANCEL
CALSCALE:GREGORIAN
BEGIN:VEVENT
STATUS:CANCELLED
UID:calendar.14...@groups.io
DTSTAMP:20190829T195017Z
ORGANIZER;CN=Stephano Cetola:mailto:stephano.cet...@intel.com
DTSTART;TZID=America/Los_Angeles:20190905T193000
DTEND;TZID=America/Los_Angeles:20190905T20
SUMMARY:TianoCore Community Meeting - APAC/NAMO
DESCRIPTION:Join Zoom Meeting\n\nhttps://zoom.us/j/769108409 ( https://zoom.us/j/769108409 )\n\nOne tap mobile\n\n+17207072699,,769108409# US\n\n+16465588656,,769108409# US (New York)\n\nDial by your location\n\n+1 720 707 2699 US\n\n+1 646 558 8656 US (New York)\n\nMeeting ID: 769 108 409\n\nFind your local number: https://zoom.us/u/abOtdJckxL
LOCATION:https://zoom.us/j/769108409
RECURRENCE-ID;TZID=America/Los_Angeles:20190905T193000
SEQUENCE:0
END:VEVENT
END:VCALENDAR


invite.ics
Description: application/ics


[edk2-devel] Cancelled Event: TianoCore Community Meeting - EMEA/NAMO - Thursday, 5 September 2019 #cal-cancelled

2019-08-29 Thread devel@edk2.groups.io Calendar
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Groups.io Inc//Groups.io Calendar//EN
METHOD:CANCEL
CALSCALE:GREGORIAN
BEGIN:VEVENT
STATUS:CANCELLED
UID:calendar.14...@groups.io
DTSTAMP:20190829T194940Z
ORGANIZER;CN=Stephano Cetola:mailto:stephano.cet...@intel.com
DTSTART;TZID=America/Los_Angeles:20190905T09
DTEND;TZID=America/Los_Angeles:20190905T10
SUMMARY:TianoCore Community Meeting - EMEA/NAMO
DESCRIPTION:Join Zoom Meeting\n\nhttps://zoom.us/j/188375690 ( https://zoom.us/j/188375690 )\n\nOne tap mobile\n\n+16465588656,,188375690# US (New York)\n\n+17207072699,,188375690# US\n\nDial by your location\n\n+1 646 558 8656 US (New York)\n\n+1 720 707 2699 US\n\nMeeting ID: 188 375 690\n\nFind your local number: https://zoom.us/u/abOtdJckxL
LOCATION:https://zoom.us/j/188375690
RECURRENCE-ID;TZID=America/Los_Angeles:20190905T09
SEQUENCE:0
END:VEVENT
END:VCALENDAR


invite.ics
Description: application/ics


[edk2-devel] Subject: [PATCH v2] MdePkg/DxeHstiLib: Added checks to improve error handling.

2019-08-29 Thread Jayanth.Raghuram
Hi Liming,
per your recommendation,

Please review the below [PATCH v2] and the commit can be found in: 
g...@github.com:JayRaghuram/edk2.git
 (https://github.com/JayRaghuram/edk2)
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2138

>From 95c48454d6d14cb7537dec98d58f7dc01efa644e Mon Sep 17 00:00:00 2001
Message-Id: 
<95c48454d6d14cb7537dec98d58f7dc01efa644e.1567095734.git.jayanth_raghu...@dell.com>
From: Jayanth Raghuram 
Date: Thu, 29 Aug 2019 11:17:09 -0500
Subject: [PATCH v2] MdePkg/DxeHstiLib: Added checks to improve error handling.

REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2138

Added checks for return parameters of GetSupportedTypes
function calls in InternalHstiFindAip to improve error handling.
An issue was observed on Dell Poweredge R740, where the Dell
PERC H740P controller UEFI driver returned InfoTypesBuffer = NULL,
InfoTypesBufferCount = 0 and caused an FreePool assert.

Signed-off-by: Jayanth Raghuram 
Cc: Wei G Liu 
---
MdePkg/Library/DxeHstiLib/HstiDxe.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/MdePkg/Library/DxeHstiLib/HstiDxe.c 
b/MdePkg/Library/DxeHstiLib/HstiDxe.c
index 9466e3dcb3..4e1c67616b 100644
--- a/MdePkg/Library/DxeHstiLib/HstiDxe.c
+++ b/MdePkg/Library/DxeHstiLib/HstiDxe.c
@@ -77,7 +77,7 @@ InternalHstiFindAip (
 ,
 
 );
-if (EFI_ERROR (Status)) {
+if (EFI_ERROR (Status) || (InfoTypesBuffer == NULL) || 
(InfoTypesBufferCount == 0)) {
   continue;
 }
--
2.19.1.windows.1


Regards
Jayanth Raghuram
DellEMC | Server Platform BIOS
office + 1 512 723 1470


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#46579): https://edk2.groups.io/g/devel/message/46579
Mute This Topic: https://groups.io/mt/33071679/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [edk2-rfc] [edk2-devel] CPU hotplug using SMM with QEMU+OVMF

2019-08-29 Thread Laszlo Ersek
On 08/27/19 20:31, Igor Mammedov wrote:
> On Sat, 24 Aug 2019 01:48:09 +
> "Yao, Jiewen"  wrote:

>> (05) Host CPU: (OS) Port 0xB2 write, all CPUs enter SMM (NOTE: New CPU
>>  will not enter CPU because SMI is disabled)
> I think only CPU that does the write will enter SMM

That used to be the case (and it is still the default QEMU behavior, if
broadcast SMI is not negotiated). However, OVMF does negotiate broadcast
SMI whenever QEMU offers the feature. Broadcast SMI is important for the
stability of the edk2 SMM infrastructure on QEMU/KVM, we've found.

https://bugzilla.redhat.com/show_bug.cgi?id=1412313
https://bugzilla.redhat.com/show_bug.cgi?id=1412327

> and we might not need to pull in all already initialized CPUs into SMM.

That, on the other hand, could be a valid idea. But then the CPU should
use a different method for raising a synchronous SMI for itself (not a
write to IO port 0xB2). Is a "directed SMI for self" possible?

> [...]

I've tried to read through the procedure with your suggested changes,
but I'm failing at composing a coherent mental image, in this email
response format.

If you have the time, can you write up the suggested list of steps in a
"flat" format? (I believe you are suggesting to eliminate some steps
completely.)

... jumping to another point:

>> 2) Let trusted software (SMM and init code) guarantee SMREBASE one by one 
>> (include any code runs before SMREBASE)
> that would mean pulling all present CPUs into SMM mode so no attack
> code could be executing before doing hotplug. With a lot of present CPUs
> it could be quite expensive and unlike physical hardware, guest's CPUs
> could be preempted arbitrarily long causing long delays.

I agree with your analysis, but I slightly disagree about the impact:

- CPU hotplug is not a frequent administrative action, so the CPU load
should be temporary (it should be a spike). I don't worry that it would
trip up OS kernel code. (SMI handling is known to take long on physical
platforms oo.) In practice, all "normal" SMIs are broadcast already (for
example when calling the runtime UEFI variable services from the OS kernel).

- The fact that QEMU/KVM introduces some jitter into the execution of
multi-core code (including SMM code) has proved useful in the past, for
catching edk2 regressions.

Again, this is not a strong disagreement from my side. I'm open to
better ways for synching CPUs during muti-CPU-hotplug.

(Digression:

I expect someone could be curious why (a) I find it acceptable (even
beneficial) that "some jitter" injected by the QEMU/KVM scheduling
exposes multi-core regressions in edk2, but at the same time (b) I found
it really important to add broadcast SMI to QEMU and OVMF. After all,
both "jitter" and "unicast SMIs" are QEMU/KVM platform specifics, so why
the different treatment?

The reason is that the "jitter" does not interfere with normal
operation, and it has been good for catching *regressions*. IOW, there
is a working edk2 state, someone posts a patch, works on physical
hardware, but breaks on QEMU/KVM --> then we can still reject or rework
or revert the patch. And we're back to a working state again (in the
best case, with a fixed feature patch).

With the unicast SMIs however, it was impossible to enable the SMM stack
reliably in the first place. There was no functional state to return to.

Digression ends.)

> lets first see if if we can ignore race

Makes me uncomfortable, but if this is the consensus, I'll go along.

> and if it's not then
> we probably end up with implementing some form of #1

OK.

Thanks!
Laszlo

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#46577): https://edk2.groups.io/g/devel/message/46577
Mute This Topic: https://groups.io/mt/32979681/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [edk2-devel] [PATCH] MdePkg/DxeHstiLib: Added checks to improve error handling.

2019-08-29 Thread Ni, Ray


> -Original Message-
> From: devel@edk2.groups.io  On Behalf Of Laszlo Ersek
> Sent: Thursday, August 29, 2019 7:24 AM
> To: Leif Lindholm ; Ni, Ray 
> Cc: Gao, Liming ; Cetola, Stephano 
> ; Kinney, Michael D
> ; jayanth.raghu...@dell.com; 'Andrew Fish 
> (af...@apple.com)' ;
> wei.g@dell.com; devel@edk2.groups.io
> Subject: Re: [edk2-devel] [PATCH] MdePkg/DxeHstiLib: Added checks to improve 
> error handling.
> 
> On 08/29/19 11:49, Leif Lindholm wrote:
> > On Wed, Aug 28, 2019 at 05:33:28PM +, Ni, Ray wrote:
> 
> >> With the existence of mail attachments capability in new groups.io
> >> system, can we accept such kind of patch submission? Or any side
> >> effect you see if allowing mail attachments?
> >
> > Traditionally, the reason for not wanting patches as attachments is
> > that it complicates doing inline code review as part of the email.
> >
> > If the mail system (let's take a wild guess, Outlook/Exchange?)
> > doesn't corrupt the text *too* badly, I don't have an issue with the
> > patch being sent in the message body *and* being attached so it could
> > actually be applied.

Leif,
So, message body should have the patch changes for easy inline review. It's 
optional to carry a .diff attachment.
Is my understanding correct?

> 
> - Doesn't work for patch series, only for single patches.
Laszlo,
Do you mean attachment is not allowed for a series of patch? Why? A mail can 
carry multiple attachments. That makes the patch series easy to fetch in my 
opinion from Outlook.


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#46578): https://edk2.groups.io/g/devel/message/46578
Mute This Topic: https://groups.io/mt/33041050/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [edk2-devel] [edk2-platforms:PATCH v5] IntelSiliconPkg/Feature Implement SmmAccess

2019-08-29 Thread Ni, Ray
Reviewed-by: Ray Ni 

> > -Original Message-
> > From: devel@edk2.groups.io  On Behalf Of Marc W
> > Chen
> > Sent: Tuesday, August 27, 2019 4:56 PM
> > To: devel@edk2.groups.io
> > Cc: Chen, Marc W ; Ni, Ray ;
> > Chaganty, Rangasai V 
> > Subject: [edk2-devel] [edk2-platforms:PATCH v5] IntelSiliconPkg/Feature
> > Implement SmmAccess
> >
> > REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2121
> >
> > Implement SmmAccess for PEI and DXE phase in IntelSiliconPkg
> >
> > Signed-off-by: Marc Chen 
> > Cc: Ray Ni 
> > Cc: Rangasai V Chaganty 
> > ---
> >  .../Library/PeiSmmAccessLib/PeiSmmAccessLib.c  | 339
> > +
> >  .../Library/PeiSmmAccessLib/PeiSmmAccessLib.inf|  41 +++
> >  .../Feature/SmmAccess/SmmAccessDxe/SmmAccess.inf   |  46 +++
> >  .../SmmAccess/SmmAccessDxe/SmmAccessDriver.c   | 267
> > 
> >  .../SmmAccess/SmmAccessDxe/SmmAccessDriver.h   | 160 ++
> >  .../IntelSiliconPkg/Include/Library/SmmAccessLib.h |  28 ++
> >  6 files changed, 881 insertions(+)
> >  create mode 100644
> > Silicon/Intel/IntelSiliconPkg/Feature/SmmAccess/Library/PeiSmmAccessLib/P
> > eiSmmAccessLib.c
> >  create mode 100644
> > Silicon/Intel/IntelSiliconPkg/Feature/SmmAccess/Library/PeiSmmAccessLib/P
> > eiSmmAccessLib.inf
> >  create mode 100644
> > Silicon/Intel/IntelSiliconPkg/Feature/SmmAccess/SmmAccessDxe/SmmAcces
> > s.inf
> >  create mode 100644
> > Silicon/Intel/IntelSiliconPkg/Feature/SmmAccess/SmmAccessDxe/SmmAcces
> > sDriver.c
> >  create mode 100644
> > Silicon/Intel/IntelSiliconPkg/Feature/SmmAccess/SmmAccessDxe/SmmAcces
> > sDriver.h
> >  create mode 100644
> > Silicon/Intel/IntelSiliconPkg/Include/Library/SmmAccessLib.h
> >
> > diff --git
> > a/Silicon/Intel/IntelSiliconPkg/Feature/SmmAccess/Library/PeiSmmAccessLib
> > /PeiSmmAccessLib.c
> > b/Silicon/Intel/IntelSiliconPkg/Feature/SmmAccess/Library/PeiSmmAccessLib
> > /PeiSmmAccessLib.c
> > new file mode 100644
> > index 00..da141cfa0e
> > --- /dev/null
> > +++
> > b/Silicon/Intel/IntelSiliconPkg/Feature/SmmAccess/Library/PeiSmmAccessLib
> > /PeiSmmAccessLib.c
> > @@ -0,0 +1,339 @@
> > +/** @file
> > +  This is to publish the SMM Access Ppi instance.
> > +
> > +  Copyright (c) 2019, Intel Corporation. All rights reserved.
> > +  SPDX-License-Identifier: BSD-2-Clause-Patent
> > +
> > +**/
> > +#include 
> > +#include 
> > +#include 
> > +#include 
> > +#include 
> > +#include 
> > +#include 
> > +#include 
> > +
> > +#include 
> > +#include 
> > +
> > +#define SMM_ACCESS_PRIVATE_DATA_SIGNATURE SIGNATURE_32 ('4', '5',
> > 's', 'a')
> > +
> > +///
> > +/// Private data
> > +///
> > +typedef struct {
> > +  UINTN Signature;
> > +  EFI_HANDLEHandle;
> > +  EFI_PEI_MM_ACCESS_PPI SmmAccess;
> > +  //
> > +  // Local Data for SMM Access interface goes here
> > +  //
> > +  UINTN NumberRegions;
> > +  EFI_SMRAM_DESCRIPTOR  *SmramDesc;
> > +} SMM_ACCESS_PRIVATE_DATA;
> > +
> > +#define SMM_ACCESS_PRIVATE_DATA_FROM_THIS(a) \
> > +CR (a, \
> > +  SMM_ACCESS_PRIVATE_DATA, \
> > +  SmmAccess, \
> > +  SMM_ACCESS_PRIVATE_DATA_SIGNATURE \
> > +  )
> > +
> > +/**
> > +  This routine accepts a request to "open" a region of SMRAM.  The
> > +  region could be legacy ABSEG, HSEG, or TSEG near top of physical memory.
> > +  The use of "open" means that the memory is visible from all PEIM
> > +  and SMM agents.
> > +
> > +  @param[in] This -  Pointer to the SMM Access Interface.
> > +  @param[in] DescriptorIndex  -  Region of SMRAM to Open.
> > +  @param[in] PeiServices  -  General purpose services available to 
> > every
> > PEIM.
> > +
> > +  @retval EFI_SUCCESS-  The region was successfully opened.
> > +  @retval EFI_DEVICE_ERROR   -  The region could not be opened because
> > locked by
> > +chipset.
> > +  @retval EFI_INVALID_PARAMETER  -  The descriptor index was out of
> > bounds.
> > +**/
> > +EFI_STATUS
> > +EFIAPI
> > +Open (
> > +  IN EFI_PEI_SERVICES   **PeiServices,
> > +  IN EFI_PEI_MM_ACCESS_PPI  *This,
> > +  IN UINTN  DescriptorIndex
> > +  )
> > +{
> > +  SMM_ACCESS_PRIVATE_DATA *SmmAccess;
> > +
> > +  SmmAccess = SMM_ACCESS_PRIVATE_DATA_FROM_THIS (This);
> > +  if (DescriptorIndex >= SmmAccess->NumberRegions) {
> > +DEBUG ((DEBUG_WARN, "SMRAM region out of range\n"));
> > +
> > +return EFI_INVALID_PARAMETER;
> > +  } else if (SmmAccess->SmramDesc[DescriptorIndex].RegionState &
> > EFI_SMRAM_LOCKED) {
> > +//
> > +// Cannot open a "locked" region
> > +//
> > +DEBUG ((DEBUG_WARN, "Cannot open a locked SMRAM region\n"));
> > +
> > +return EFI_DEVICE_ERROR;
> > +  }
> > +
> > +  SmmAccess->SmramDesc[DescriptorIndex].RegionState &= (UINT64)
> > ~(EFI_SMRAM_CLOSED | EFI_ALLOCATED);
> > +  SmmAccess->SmramDesc[DescriptorIndex].RegionState |= (UINT64)
> > EFI_SMRAM_OPEN;
> > +  

Re: [edk2-rfc] [edk2-devel] CPU hotplug using SMM with QEMU+OVMF

2019-08-29 Thread Laszlo Ersek
On 08/28/19 14:01, Igor Mammedov wrote:
> On Tue, 27 Aug 2019 22:11:15 +0200
> Laszlo Ersek  wrote:
> 
>> On 08/27/19 18:23, Igor Mammedov wrote:
>>> On Mon, 26 Aug 2019 17:30:43 +0200
>>> Laszlo Ersek  wrote:
>>>
 On 08/23/19 17:25, Kinney, Michael D wrote:
> Hi Jiewen,
>
> If a hot add CPU needs to run any code before the
> first SMI, I would recommend is only executes code
> from a write protected FLASH range without a stack
> and then wait for the first SMI.

 "without a stack" looks very risky to me. Even if we manage to implement
 the guest code initially, we'll be trapped without a stack, should we
 ever need to add more complex stuff there.
>>>
>>> Do we need anything complex in relocation handler, though?
>>> From what I'd imagine, minimum handler should
>>>   1: get address of TSEG, possibly read it from chipset
>>
>> The TSEG base calculation is not trivial in this environment. The 32-bit
>> RAM size needs to be read from the CMOS (IO port accesses). Then the
>> extended TSEG size (if any) needs to be detected from PCI config space
>> (IO port accesses). Both CMOS and PCI config space requires IO port
>> writes too (not just reads). Even if there are enough registers for the
>> calculations, can we rely on these unprotected IO ports?
>>
>> Also, can we switch to 32-bit mode without a stack? I assume it would be
>> necessary to switch to 32-bit mode for 32-bit arithmetic.
> from SDM vol 3:
> "
> 34.5.1 Initial SMM Execution Environment
> After saving the current context of the processor, the processor initializes 
> its core registers to the values shown in Table 34-4. Upon entering SMM, the 
> PE and PG flags in control register CR0 are cleared, which places the 
> processor in an environment similar to real-address mode. The differences 
> between the SMM execution environment and the real-address mode execution 
> environment are as follows:
> • The addressable address space ranges from 0 to H (4 GBytes).
> • The normal 64-KByte segment limit for real-address mode is increased to 4 
> GBytes.
> • The default operand and address sizes are set to 16 bits, which restricts 
> the addressable SMRAM address space to the 1-MByte real-address mode limit 
> for native real-address-mode code. However, operand-size and address-size 
> override prefixes can be used to access the address space beyond
>  
> the 1-MByte.
> "

That helps. Thanks for the quote!

>> Getting the initial APIC ID needs some CPUID instructions IIUC, which
>> clobber EAX through EDX, if I understand correctly. Given the register
>> pressure, CPUID might have to be one of the first instructions to call.
> 
> we could map at 3 not 64K required for save area but 128K and use
> 2nd half as secure RAM for stack and intermediate data.
> 
> Firmware could put there pre-calculated pointer to TSEG after it's configured 
> and locked down,
> this way relocation handler won't have to figure out TSEG address on its own.

Sounds like a great idea.

>>>   2: calculate its new SMBASE offset based on its APIC ID
>>>   3: save new SMBASE
>>>
> For this OVMF use case, is any CPU init required
> before the first SMI?

 I expressed a preference for that too: "I wish we could simply wake the
 new CPU [...] with an SMI".

 398b3327-0820-95af-a34d-1a4a1d50cf35@redhat.com">http://mid.mail-archive.com/398b3327-0820-95af-a34d-1a4a1d50cf35@redhat.com


> From Paolo's list of steps are steps (8a) and (8b) 
> really required?
>>>
>>> 07b - implies 08b
>>
>> I agree about that implication, yes. *If* we send an INIT/SIPI/SIPI to
>> the new CPU, then the new CPU needs a HLT loop, I think.
> It also could execute INIT reset, which leaves initialized SMM untouched
> but otherwise CPU would be inactive.
>
>>
>>>8b could be trivial hlt loop and we most likely could skip 08a and 
>>> signaling host CPU steps
>>>but we need INIT/SIPI/SIPI sequence to wake up AP so it could handle 
>>> pending SMI
>>>before handling SIPI (so behavior would follow SDM).
>>>
>>>
 See again my message linked above -- just after the quoted sentence, I
 wrote, "IOW, if we could excise steps 07b, 08a, 08b".

 But, I obviously defer to Paolo and Igor on that.

 (I do believe we have a dilemma here. In QEMU, we probably prefer to
 emulate physical hardware as faithfully as possible. However, we do not
 have Cache-As-RAM (nor do we intend to, IIUC). Does that justify other
 divergences from physical hardware too, such as waking just by virtue of
 an SMI?)
>>> So far we should be able to implement it per spec (at least SDM one),
>>> but we would still need to invent chipset hardware
>>> i.e. like adding to Q35 non exiting SMRAM and means to map/unmap it
>>> to non-SMM address space.
>>> (and I hope we could avoid adding "parked CPU" thingy)
>>
>> I think we'll need a separate QEMU tree for this. I'm 

Re: [edk2-devel] [Patch][edk2-stable201908] BaseTools: Fixed regression issue for building !x86 builds

2019-08-29 Thread Liming Gao
Laszlo:

> -Original Message-
> From: Laszlo Ersek [mailto:ler...@redhat.com]
> Sent: Thursday, August 29, 2019 10:33 PM
> To: devel@edk2.groups.io; Feng, Bob C ; Kinney, Michael 
> D ; Gao, Liming
> ; Leif Lindholm 
> Cc: af...@apple.com
> Subject: Re: [edk2-devel] [Patch][edk2-stable201908] BaseTools: Fixed 
> regression issue for building !x86 builds
> 
> Bob,
> 
> On 08/29/19 05:15, Bob Feng wrote:
> > Pushed at 37eef91017ad042035090cae46557f9d6e2d5917
> 
> If I understand correctly, it remains the case that the BaseTools
> behavior -- which has now been restored, with this commit -- does not
> match the priority order for lib class resolutions in the DSC specification.

Yes. Keep the original behavior. 

> 
> Can you please file a documentation BZ for that?
> 
I just submit BZ https://bugzilla.tianocore.org/show_bug.cgi?id=2141

Thanks
Liming
> Since the BaseTools maintainers know the DSC internals best, it would be
> great if you could also submit the DSC documentation patch too, for the
> new BZ. If you don't have time for that, then please be *very* specific
> in the documentation BZ, regarding the actual resolution order -- please
> don't just say "replace this with that", but please provide the full
> order, for describing the desired (= now-fixed) BaseTools behavior.
> 
> Thanks
> Laszlo
> 
> 
> > -Original Message-
> > From: Kinney, Michael D
> > Sent: Thursday, August 29, 2019 2:43 AM
> > To: Gao, Liming ; Leif Lindholm 
> > ; devel@edk2.groups.io; Feng, Bob C
> ; Kinney, Michael D 
> > Cc: af...@apple.com; Laszlo Ersek (ler...@redhat.com) 
> > Subject: RE: [edk2-devel] [Patch][edk2-stable201908] BaseTools: Fixed 
> > regression issue for building !x86 builds
> >
> > Hi Bob,
> >
> > I agree this is a critical regression issue that must be fixed for the 
> > edk2-stable201908 release.
> >
> > Tested-by: Michael D Kinney 
> > Acked-by: Michael D Kinney 
> >
> > Thanks,
> >
> > Mike
> >
> >> -Original Message-
> >> From: Gao, Liming
> >> Sent: Wednesday, August 28, 2019 8:22 AM
> >> To: Leif Lindholm ; devel@edk2.groups.io;
> >> Feng, Bob C 
> >> Cc: Kinney, Michael D ; af...@apple.com;
> >> Laszlo Ersek (ler...@redhat.com) 
> >> Subject: RE: [edk2-devel] [Patch][edk2-stable201908]
> >> BaseTools: Fixed regression issue for building !x86 builds
> >>
> >> Bob:
> >>   This fix is clear. Reviewed-by: Liming Gao 
> >>
> >> Thanks
> >> Liming
> >>> -Original Message-
> >>> From: Leif Lindholm [mailto:leif.lindh...@linaro.org]
> >>> Sent: Wednesday, August 28, 2019 10:01 PM
> >>> To: devel@edk2.groups.io; Feng, Bob C
> >> 
> >>> Cc: Gao, Liming 
> >>> Subject: Re: [edk2-devel] [Patch][edk2-stable201908]
> >> BaseTools: Fixed
> >>> regression issue for building !x86 builds
> >>>
> >>> On Wed, Aug 28, 2019 at 05:17:10PM +0800, Bob Feng
> >> wrote:
>  BZ:
> >> https://bugzilla.tianocore.org/show_bug.cgi?id=2134
> 
>  This patch is to fix a build tool regression issue
> >> which was
>  introduced by commit e8449e1d8e.
> 
>  In commit e8449e1d8e, build tool check the pcd
> >> before filter out the
>  irrelevant library instance.
> 
>  The logic of evaluating the priority of the library
> >> class
>  resolutions was not changed.
> >>>
> >>> Ah, OK, that greatly simplifies things.
> >>>
> >>> This resolves the issue(s) for me - thanks!
> >>>
>  Cc: Liming Gao 
>  Signed-off-by: Bob Feng 
> >>>
> >>> Acked-by: Leif Lindholm 
> >>> Tested-by: Leif Lindholm 
> >>>
> >>>
>  ---
>   .../Source/Python/Workspace/InfBuildData.py   | 29
> >> ++-
>   1 file changed, 16 insertions(+), 13 deletions(-)
> 
>  diff --git
> >> a/BaseTools/Source/Python/Workspace/InfBuildData.py
>  b/BaseTools/Source/Python/Workspace/InfBuildData.py
>  index e63246b03b..7675b0ea00 100644
>  ---
> >> a/BaseTools/Source/Python/Workspace/InfBuildData.py
>  +++
> >> b/BaseTools/Source/Python/Workspace/InfBuildData.py
>  @@ -154,12 +154,11 @@ class
> >> InfBuildData(ModuleBuildClassObject):
>   self._PcdComments = None
>   self._BuildOptions = None
>   self._DependencyFileList = None
>   self.LibInstances = []
>   self.ReferenceModules = set()
>  -self.Guids
>  -self.Pcds
>  +
>   def SetReferenceModule(self,Module):
>   self.ReferenceModules.add(Module)
>   return self
> 
>   ## XXX[key] = value
>  @@ -654,10 +653,24 @@ class
> >> InfBuildData(ModuleBuildClassObject):
>   "Value of Guid
> >> [%s] is not found under [Guids] section in" % CName,
> 
> >> ExtraData=PackageList, File=self.MetaFile,
> >> Line=Record[-1])
>   RetVal[CName] = Value
>   CommentRecords =
> >> self._RawData[MODEL_META_DATA_COMMENT, self._Arch, self._Platform,
> >> Record[5]]
>   self._GuidComments[CName] = [a[0] for
> 

Re: [edk2-devel] [edk2-platforms: PATCH v2 1/1] Platform/Rpi3: Add compatible property to the "usb" Device Tree node

2019-08-29 Thread Pete Batard

Hi Leif,

On 2019.08.29 14:54, Leif Lindholm wrote:

On Fri, Aug 23, 2019 at 01:20:50PM +0100, Pete Batard wrote:

Some Linux kernels (e.g. Debian) require "bcm,bcm2835-usb" to be present in


Is the typo here or in the code? ('bcm,' vs. 'brcm,')


Sorry, should have been 'brcm,bcm2835-usb' above.

As mentioned in the cover letter, we're basically adding to the 
compatible string list so that:

  compatible = "brcm,bcm2708-usb";
becomes:
  compatible = "brcm,bcm2708-usb", "brcm,bcm2835-usb";

So the part before the comma should always be "brcm", and it's only the 
part after that should be "bcm" (which, alas, makes it easy to introduce 
typos).


In other words, the typo is in the commit message only.

I did validate the changes proposed by this patch on real hardware, so I 
can vouch for the code being correct, insofar as the compatible strings 
there are concerned.



If here, I can fix up on committing.


If you can fix the typo in the commit message, that would be great.

Regards,

/Pete



/
 Leif


the list of compatible properties for the "usb" node, else they are unable
to handle some USB devices.

This patch ensures that the compatible property is added if not present.

Signed-off-by: Pete Batard 
---
  Platform/RaspberryPi/RPi3/Drivers/FdtDxe/FdtDxe.c | 75 
  1 file changed, 75 insertions(+)

diff --git a/Platform/RaspberryPi/RPi3/Drivers/FdtDxe/FdtDxe.c 
b/Platform/RaspberryPi/RPi3/Drivers/FdtDxe/FdtDxe.c
index 45ffe2e394a2..eb8048930c30 100644
--- a/Platform/RaspberryPi/RPi3/Drivers/FdtDxe/FdtDxe.c
+++ b/Platform/RaspberryPi/RPi3/Drivers/FdtDxe/FdtDxe.c
@@ -135,6 +135,76 @@ UpdateMacAddress (
return EFI_SUCCESS;
  }
  
+//

+// Add "bcm2835-usb" to the USB compatible property list, if not present.
+// Required because some Linux kernels can't handle USB devices otherwise.
+//
+STATIC
+EFI_STATUS
+AddUsbCompatibleProperty (
+  VOID
+  )
+{
+  CONST CHAR8   Prop[]= "brcm,bcm2708-usb";
+  CONST CHAR8   NewProp[] = "brcm,bcm2835-usb";
+  CONST CHAR8   *List;
+  CHAR8 *NewList;
+  INT32 ListSize;
+  INTN  Node;
+  INTN  Retval;
+
+  // Locate the node that the 'usb' alias refers to
+  Node = fdt_path_offset (mFdtImage, "usb");
+  if (Node < 0) {
+DEBUG ((DEBUG_ERROR, "%a: failed to locate 'usb' alias\n", __FUNCTION__));
+return EFI_NOT_FOUND;
+  }
+
+  // Get the property list. This is a list of NUL terminated strings.
+  List = fdt_getprop (mFdtImage, Node, "compatible", );
+  if (List == NULL) {
+DEBUG ((DEBUG_ERROR, "%a: failed to locate properties\n", __FUNCTION__));
+return EFI_NOT_FOUND;
+  }
+
+  // Check if the compatible value we plan to add is already present
+  if (fdt_stringlist_contains (List, ListSize, NewProp)) {
+DEBUG ((DEBUG_INFO, "%a: property '%a' is already set.\n",
+  __FUNCTION__, NewProp));
+return EFI_SUCCESS;
+  }
+
+  // Make sure the compatible device is what we expect
+  if (!fdt_stringlist_contains (List, ListSize, Prop)) {
+DEBUG ((DEBUG_ERROR, "%a: property '%a' is missing!\n",
+  __FUNCTION__, Prop));
+return EFI_NOT_FOUND;
+  }
+
+  // Add the new NUL terminated entry to our list
+  DEBUG ((DEBUG_INFO, "%a: adding '%a' to the properties\n",
+__FUNCTION__, NewProp));
+
+  NewList = AllocatePool (ListSize + sizeof (NewProp));
+  if (NewList == NULL) {
+DEBUG ((DEBUG_ERROR, "%a: failed to allocate memory\n", __FUNCTION__));
+return EFI_OUT_OF_RESOURCES;;
+  }
+  CopyMem (NewList, List, ListSize);
+  CopyMem ([ListSize], NewProp, sizeof (NewProp));
+
+  Retval = fdt_setprop (mFdtImage, Node, "compatible", NewList,
+ ListSize + sizeof (NewProp));
+  FreePool (NewList);
+  if (Retval != 0) {
+DEBUG ((DEBUG_ERROR, "%a: failed to update properties (%d)\n",
+  __FUNCTION__, Retval));
+return EFI_NOT_FOUND;
+  }
+
+  return EFI_SUCCESS;
+}
+
  STATIC
  EFI_STATUS
  CleanMemoryNodes (
@@ -486,6 +556,11 @@ FdtDxeInitialize (
  Print (L"Failed to update MAC address: %r\n", Status);
}
  
+  Status = AddUsbCompatibleProperty ();

+  if (EFI_ERROR (Status)) {
+Print (L"Failed to update USB compatible properties: %r\n", Status);
+  }
+
if (Internal) {
  /*
   * A GPU-provided DTB already has the full command line.
--
2.21.0.windows.1




-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#46573): https://edk2.groups.io/g/devel/message/46573
Mute This Topic: https://groups.io/mt/33000474/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [edk2-devel] [Patch] UefiCpuPkg/SecCore: get AllSecPpiList after SecPlatformMain.

2019-08-29 Thread Dong, Eric
Hi Laszlo,

I based on current code logic to adjust the code position. 
I agree it's a good enhancement for the commit message. I will add it when I 
push the change.  Also I will push the change after the code freeze done.

Thanks,
Eric
> -Original Message-
> From: Laszlo Ersek [mailto:ler...@redhat.com]
> Sent: Thursday, August 29, 2019 8:37 PM
> To: Dong, Eric ; devel@edk2.groups.io
> Cc: Ni, Ray 
> Subject: Re: [Patch] UefiCpuPkg/SecCore: get AllSecPpiList after
> SecPlatformMain.
> 
> Hi Eric,
> 
> On 08/28/19 08:50, Eric Dong wrote:
> > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2136
> >
> > SecPlatformMain is a platform hook function which let platform does
> > some update. Some platform may adjust SecCoreData-
> >PeiTemporaryRamBase
> > which caused former saved AllSecPpiList variable invalid.
> >
> > This patch update the logic to get AllSecPpiList after SecPlatformMain.
> >
> > Cc: Ray Ni 
> > Cc: Laszlo Ersek 
> > Signed-off-by: Eric Dong 
> > ---
> >  UefiCpuPkg/SecCore/SecMain.c | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/UefiCpuPkg/SecCore/SecMain.c
> > b/UefiCpuPkg/SecCore/SecMain.c index f914446257..66c952b897 100644
> > --- a/UefiCpuPkg/SecCore/SecMain.c
> > +++ b/UefiCpuPkg/SecCore/SecMain.c
> > @@ -228,7 +228,6 @@ SecStartupPhase2(
> >
> >PeiCoreEntryPoint = NULL;
> >SecCoreData   = (EFI_SEC_PEI_HAND_OFF *) Context;
> > -  AllSecPpiList = (EFI_PEI_PPI_DESCRIPTOR *)
> > SecCoreData->PeiTemporaryRamBase;
> >
> >//
> >// Perform platform specific initialization before entering PeiCore.
> > @@ -282,6 +281,8 @@ SecStartupPhase2(
> >}
> >
> >if (PpiList != NULL) {
> > +AllSecPpiList = (EFI_PEI_PPI_DESCRIPTOR *)
> > + SecCoreData->PeiTemporaryRamBase;
> > +
> >  //
> >  // Remove the terminal flag from the terminal PPI
> >  //
> >
> 
> Based on the SecPlatformMain() documentation in
> "UefiCpuPkg/Include/Library/PlatformSecLib.h", it seems valid for a platform
> to change "SecCoreData->PeiTemporaryRamBase".
> 
> Therefore, in SecStartupPhase2(), it appears justified to assign 
> "AllSecPpiList"
> only after calling SecPlatformMain().
> 
> 
> This patch does something else too: it makes the assignment to "AllSecPpiList"
> conditional. I agree that is justified, as well. Namely:
> 
> [*] If SecPlatformMain() returns no platform-specific PPI list, then there is
> nothing to merge, so we don't need "AllSecPpiList" at all.
> 
> I think however that this change should be documented explicitly.
> 
> 
> When pushing, please add the sentence [*] to the commit message. With that:
> 
> Reviewed-by: Laszlo Ersek 
> 
> Thanks
> Laszlo

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#46572): https://edk2.groups.io/g/devel/message/46572
Mute This Topic: https://groups.io/mt/33054478/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [edk2-devel] [Patch][edk2-stable201908] BaseTools: Fixed regression issue for building !x86 builds

2019-08-29 Thread Laszlo Ersek
Bob,

On 08/29/19 05:15, Bob Feng wrote:
> Pushed at 37eef91017ad042035090cae46557f9d6e2d5917

If I understand correctly, it remains the case that the BaseTools
behavior -- which has now been restored, with this commit -- does not
match the priority order for lib class resolutions in the DSC specification.

Can you please file a documentation BZ for that?

Since the BaseTools maintainers know the DSC internals best, it would be
great if you could also submit the DSC documentation patch too, for the
new BZ. If you don't have time for that, then please be *very* specific
in the documentation BZ, regarding the actual resolution order -- please
don't just say "replace this with that", but please provide the full
order, for describing the desired (= now-fixed) BaseTools behavior.

Thanks
Laszlo


> -Original Message-
> From: Kinney, Michael D 
> Sent: Thursday, August 29, 2019 2:43 AM
> To: Gao, Liming ; Leif Lindholm 
> ; devel@edk2.groups.io; Feng, Bob C 
> ; Kinney, Michael D 
> Cc: af...@apple.com; Laszlo Ersek (ler...@redhat.com) 
> Subject: RE: [edk2-devel] [Patch][edk2-stable201908] BaseTools: Fixed 
> regression issue for building !x86 builds
> 
> Hi Bob,
> 
> I agree this is a critical regression issue that must be fixed for the 
> edk2-stable201908 release.
> 
> Tested-by: Michael D Kinney 
> Acked-by: Michael D Kinney 
> 
> Thanks,
> 
> Mike
> 
>> -Original Message-
>> From: Gao, Liming
>> Sent: Wednesday, August 28, 2019 8:22 AM
>> To: Leif Lindholm ; devel@edk2.groups.io; 
>> Feng, Bob C 
>> Cc: Kinney, Michael D ; af...@apple.com; 
>> Laszlo Ersek (ler...@redhat.com) 
>> Subject: RE: [edk2-devel] [Patch][edk2-stable201908]
>> BaseTools: Fixed regression issue for building !x86 builds
>>
>> Bob:
>>   This fix is clear. Reviewed-by: Liming Gao 
>>
>> Thanks
>> Liming
>>> -Original Message-
>>> From: Leif Lindholm [mailto:leif.lindh...@linaro.org]
>>> Sent: Wednesday, August 28, 2019 10:01 PM
>>> To: devel@edk2.groups.io; Feng, Bob C
>> 
>>> Cc: Gao, Liming 
>>> Subject: Re: [edk2-devel] [Patch][edk2-stable201908]
>> BaseTools: Fixed
>>> regression issue for building !x86 builds
>>>
>>> On Wed, Aug 28, 2019 at 05:17:10PM +0800, Bob Feng
>> wrote:
 BZ:
>> https://bugzilla.tianocore.org/show_bug.cgi?id=2134

 This patch is to fix a build tool regression issue
>> which was
 introduced by commit e8449e1d8e.

 In commit e8449e1d8e, build tool check the pcd
>> before filter out the
 irrelevant library instance.

 The logic of evaluating the priority of the library
>> class
 resolutions was not changed.
>>>
>>> Ah, OK, that greatly simplifies things.
>>>
>>> This resolves the issue(s) for me - thanks!
>>>
 Cc: Liming Gao 
 Signed-off-by: Bob Feng 
>>>
>>> Acked-by: Leif Lindholm 
>>> Tested-by: Leif Lindholm 
>>>
>>>
 ---
  .../Source/Python/Workspace/InfBuildData.py   | 29
>> ++-
  1 file changed, 16 insertions(+), 13 deletions(-)

 diff --git
>> a/BaseTools/Source/Python/Workspace/InfBuildData.py
 b/BaseTools/Source/Python/Workspace/InfBuildData.py
 index e63246b03b..7675b0ea00 100644
 ---
>> a/BaseTools/Source/Python/Workspace/InfBuildData.py
 +++
>> b/BaseTools/Source/Python/Workspace/InfBuildData.py
 @@ -154,12 +154,11 @@ class
>> InfBuildData(ModuleBuildClassObject):
  self._PcdComments = None
  self._BuildOptions = None
  self._DependencyFileList = None
  self.LibInstances = []
  self.ReferenceModules = set()
 -self.Guids
 -self.Pcds
 +
  def SetReferenceModule(self,Module):
  self.ReferenceModules.add(Module)
  return self

  ## XXX[key] = value
 @@ -654,10 +653,24 @@ class
>> InfBuildData(ModuleBuildClassObject):
  "Value of Guid
>> [%s] is not found under [Guids] section in" % CName,

>> ExtraData=PackageList, File=self.MetaFile,
>> Line=Record[-1])
  RetVal[CName] = Value
  CommentRecords =
>> self._RawData[MODEL_META_DATA_COMMENT, self._Arch, self._Platform, 
>> Record[5]]
  self._GuidComments[CName] = [a[0] for
>> a in
 CommentRecords]
 +
 +for Type in
>>>
>> [MODEL_PCD_FIXED_AT_BUILD,MODEL_PCD_PATCHABLE_IN_MODULE
>> ,MODEL_PCD_FEAT
>>> URE_FLAG,MODEL_PCD_DYNAMIC,MODEL_PCD
>>> _DYNAMIC_EX]:
 +RecordList = self._RawData[Type,
>> self._Arch, self._Platform]
 +for TokenSpaceGuid, _, _, _, _, _,
>> LineNo in RecordList:
 +# get the guid value
 +if TokenSpaceGuid not in RetVal:
 +Value =
>> GuidValue(TokenSpaceGuid, self.Packages,
>> self.MetaFile.Path)
 +if Value is None:
 +PackageList =
>> "\n\t".join(str(P) for P in self.Packages)
 +EdkLogger.error('build',

Re: [edk2-devel] [PATCH] MdePkg/DxeHstiLib: Added checks to improve error handling.

2019-08-29 Thread Liming Gao
Jayanth:
  Thanks for your update commit message. But, edk2 project doesn't use pull 
request.
You can send https://github.com/JayRaghuram/edk2 and say your patch is in this 
tree.
  Leif gives the option. You need copy the patch content into the mail, then 
send this mail to devel@edk2.groups.io for code 
review.

  And, for this patch, I have some comments.

1.  I have not given my reviewed-by. Please don't add it.

2.  LocateHandleBuffer() service. UEFI spec defines that if there are no 
handles in the handle database

that match the search criteria, then EFI_NOT_FOUND is returned. So, when 
EFI_SUCCESS return,

don't need to check Handles and NoHandles. This change is not required.

3.  GetSupportedTypes() service. UEFI spec doesn't define EFI_NOT_FOUND. 
So, when EFI_SUCCESS return,

InfoTypesBuffer may be NULL or InfoTypesBufferCount may be zero. I agree to add 
this checker.

Thanks
Liming
From: jayanth.raghu...@dell.com [mailto:jayanth.raghu...@dell.com]
Sent: Thursday, August 29, 2019 9:20 AM
To: Ni, Ray ; Gao, Liming ; Cetola, 
Stephano ; Kinney, Michael D 
; leif.lindh...@linaro.org; af...@apple.com; 
ler...@redhat.com
Cc: wei.g@dell.com; devel@edk2.groups.io
Subject: RE: [edk2-devel] [PATCH] MdePkg/DxeHstiLib: Added checks to improve 
error handling.

Hi Liming,

Per your request, I have created an pull request as below:
https://github.com/tianocore/edk2/pull/147

MdePkg/DxeHstiLib: Added checks to improve error handling. #147
 Open
JayRaghuram wants to merge 1 commit into 
tianocore:master from 
JayRaghuram:master

Regards
Jayanth Raghuram
DellEMC | Server Platform BIOS
office + 1 512 723 1470

From: Ni, Ray mailto:ray...@intel.com>>
Sent: Wednesday, August 28, 2019 12:33 PM
To: Gao, Liming; Cetola, Stephano; Kinney, Michael D; 
leif.lindh...@linaro.org; Raghuram, Jayanth; 
'Andrew Fish (af...@apple.com)'; Laszlo Ersek
Cc: Liu, Wei G; devel@edk2.groups.io
Subject: RE: [edk2-devel] [PATCH] MdePkg/DxeHstiLib: Added checks to improve 
error handling.


[EXTERNAL EMAIL]
Liming, Stephano and all stewards,
My understanding is the requirement of embedding patch into the mail body is 
due to a limitation in old system (01.org). That system couldn't support mail 
attachments.

With the existence of mail attachments capability in new groups.io system, can 
we accept such kind of patch submission? Or any side effect you see if allowing 
mail attachments?

Thanks,
Ray

From: devel@edk2.groups.io 
mailto:devel@edk2.groups.io>> On Behalf Of Liming Gao
Sent: Wednesday, August 28, 2019 12:59 AM
To: jayanth.raghu...@dell.com; 
devel@edk2.groups.io
Cc: wei.g@dell.com
Subject: Re: [edk2-devel] [PATCH] MdePkg/DxeHstiLib: Added checks to improve 
error handling.

OK. So, you can't use git send-email to send this patch. Another way is to fork 
edk2 and create the branch to include this change.
Then, send the mail to let people review this patch in your branch.

And, for this patch, can you submit BZ https://bugzilla.tianocore.org/ first?
Then, update its commit message format based on this wiki.
https://github.com/tianocore/tianocore.github.io/wiki/Commit-Message-Format

Thanks
Liming
From: jayanth.raghu...@dell.com 
[mailto:jayanth.raghu...@dell.com]
Sent: Wednesday, August 28, 2019 2:30 AM
To: Gao, Liming mailto:liming@intel.com>>; 
devel@edk2.groups.io
Cc: wei.g@dell.com
Subject: RE: [PATCH] MdePkg/DxeHstiLib: Added checks to improve error handling.

Hi Liming,

I sent the review request based on the description in the links that you 
mentioned below.
I sent it in an Dell Email since I cannot use GIT SMTP to send email out from 
our servers.
Please let me know what is wrong and I can help rectify that.

Regards
Jayanth Raghuram
DellEMC | Server Platform BIOS
office + 1 512 723 1470

From: Gao, Liming mailto:liming@intel.com>>
Sent: Monday, August 26, 2019 8:57 PM
To: devel@edk2.groups.io; Raghuram, Jayanth
Cc: Liu, Wei G
Subject: RE: [PATCH] MdePkg/DxeHstiLib: Added checks to improve error handling.


[EXTERNAL EMAIL]
Can you follow this process to send this patch again?
https://github.com/tianocore/tianocore.github.io/wiki/EDK-II-Development-Process

And, the commit message format is
https://github.com/tianocore/tianocore.github.io/wiki/Commit-Message-Format

Thanks
Liming
From: devel@edk2.groups.io 
[mailto:devel@edk2.groups.io] On Behalf Of 
jayanth.raghu...@dell.com
Sent: Tuesday, August 27, 2019 3:55 AM
To: devel@edk2.groups.io
Cc: 

Re: [edk2-devel] [PATCH] MdePkg/DxeHstiLib: Added checks to improve error handling.

2019-08-29 Thread Laszlo Ersek
On 08/29/19 11:49, Leif Lindholm wrote:
> On Wed, Aug 28, 2019 at 05:33:28PM +, Ni, Ray wrote:

>> With the existence of mail attachments capability in new groups.io
>> system, can we accept such kind of patch submission? Or any side
>> effect you see if allowing mail attachments?
> 
> Traditionally, the reason for not wanting patches as attachments is
> that it complicates doing inline code review as part of the email.
> 
> If the mail system (let's take a wild guess, Outlook/Exchange?)
> doesn't corrupt the text *too* badly, I don't have an issue with the
> patch being sent in the message body *and* being attached so it could
> actually be applied.
> 
> Alternatively, one could put the patch in the message body and a link
> to the patch in a public repo where it can be obtained.

I agree (with either alterative), as follows:

- The patch must be pasted manually in the message body, or it must be
attached.

- The patch must be published in a personal git repo, and the email
posting needs to reference that repo / branch.

- This is only acceptable as an exception to the workflow, and not as
the norm. (As long as our official contribution workflow is mailing list
based.)

- Doesn't work for patch series, only for single patches.

- v2, v3 and so iterations must use separate topic branches in the
submitter's personal repository. Non-fast-forward pushes to already
posted -- hence publicly referenced -- branches are not acceptable.
Effectively, once v(n) is posted, the submitter should consider the
matching topic branch in their own repo read-only.

- The edk2 package maintainer that ends up pushing the patch is
responsible for ensuring that the patch taken with "git fetch" for
integration is identical to the patch that was manually pasted by the
submitter.

The idea is that mailing list based review work as always, plus that the
patch that goes in ultimately be the same patch that got reviewed on the
list.

Thanks
Laszlo

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#46569): https://edk2.groups.io/g/devel/message/46569
Mute This Topic: https://groups.io/mt/33041050/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [edk2-devel] [edk2-platforms: PATCH v2 1/1] Platform/Rpi3: Add compatible property to the "usb" Device Tree node

2019-08-29 Thread Leif Lindholm
On Fri, Aug 23, 2019 at 01:20:50PM +0100, Pete Batard wrote:
> Some Linux kernels (e.g. Debian) require "bcm,bcm2835-usb" to be present in

Is the typo here or in the code? ('bcm,' vs. 'brcm,')
If here, I can fix up on committing.

/
Leif

> the list of compatible properties for the "usb" node, else they are unable
> to handle some USB devices.
> 
> This patch ensures that the compatible property is added if not present.
> 
> Signed-off-by: Pete Batard 
> ---
>  Platform/RaspberryPi/RPi3/Drivers/FdtDxe/FdtDxe.c | 75 
>  1 file changed, 75 insertions(+)
> 
> diff --git a/Platform/RaspberryPi/RPi3/Drivers/FdtDxe/FdtDxe.c 
> b/Platform/RaspberryPi/RPi3/Drivers/FdtDxe/FdtDxe.c
> index 45ffe2e394a2..eb8048930c30 100644
> --- a/Platform/RaspberryPi/RPi3/Drivers/FdtDxe/FdtDxe.c
> +++ b/Platform/RaspberryPi/RPi3/Drivers/FdtDxe/FdtDxe.c
> @@ -135,6 +135,76 @@ UpdateMacAddress (
>return EFI_SUCCESS;
>  }
>  
> +//
> +// Add "bcm2835-usb" to the USB compatible property list, if not present.
> +// Required because some Linux kernels can't handle USB devices otherwise.
> +//
> +STATIC
> +EFI_STATUS
> +AddUsbCompatibleProperty (
> +  VOID
> +  )
> +{
> +  CONST CHAR8   Prop[]= "brcm,bcm2708-usb";
> +  CONST CHAR8   NewProp[] = "brcm,bcm2835-usb";
> +  CONST CHAR8   *List;
> +  CHAR8 *NewList;
> +  INT32 ListSize;
> +  INTN  Node;
> +  INTN  Retval;
> +
> +  // Locate the node that the 'usb' alias refers to
> +  Node = fdt_path_offset (mFdtImage, "usb");
> +  if (Node < 0) {
> +DEBUG ((DEBUG_ERROR, "%a: failed to locate 'usb' alias\n", 
> __FUNCTION__));
> +return EFI_NOT_FOUND;
> +  }
> +
> +  // Get the property list. This is a list of NUL terminated strings.
> +  List = fdt_getprop (mFdtImage, Node, "compatible", );
> +  if (List == NULL) {
> +DEBUG ((DEBUG_ERROR, "%a: failed to locate properties\n", __FUNCTION__));
> +return EFI_NOT_FOUND;
> +  }
> +
> +  // Check if the compatible value we plan to add is already present
> +  if (fdt_stringlist_contains (List, ListSize, NewProp)) {
> +DEBUG ((DEBUG_INFO, "%a: property '%a' is already set.\n",
> +  __FUNCTION__, NewProp));
> +return EFI_SUCCESS;
> +  }
> +
> +  // Make sure the compatible device is what we expect
> +  if (!fdt_stringlist_contains (List, ListSize, Prop)) {
> +DEBUG ((DEBUG_ERROR, "%a: property '%a' is missing!\n",
> +  __FUNCTION__, Prop));
> +return EFI_NOT_FOUND;
> +  }
> +
> +  // Add the new NUL terminated entry to our list
> +  DEBUG ((DEBUG_INFO, "%a: adding '%a' to the properties\n",
> +__FUNCTION__, NewProp));
> +
> +  NewList = AllocatePool (ListSize + sizeof (NewProp));
> +  if (NewList == NULL) {
> +DEBUG ((DEBUG_ERROR, "%a: failed to allocate memory\n", __FUNCTION__));
> +return EFI_OUT_OF_RESOURCES;;
> +  }
> +  CopyMem (NewList, List, ListSize);
> +  CopyMem ([ListSize], NewProp, sizeof (NewProp));
> +
> +  Retval = fdt_setprop (mFdtImage, Node, "compatible", NewList,
> + ListSize + sizeof (NewProp));
> +  FreePool (NewList);
> +  if (Retval != 0) {
> +DEBUG ((DEBUG_ERROR, "%a: failed to update properties (%d)\n",
> +  __FUNCTION__, Retval));
> +return EFI_NOT_FOUND;
> +  }
> +
> +  return EFI_SUCCESS;
> +}
> +
>  STATIC
>  EFI_STATUS
>  CleanMemoryNodes (
> @@ -486,6 +556,11 @@ FdtDxeInitialize (
>  Print (L"Failed to update MAC address: %r\n", Status);
>}
>  
> +  Status = AddUsbCompatibleProperty ();
> +  if (EFI_ERROR (Status)) {
> +Print (L"Failed to update USB compatible properties: %r\n", Status);
> +  }
> +
>if (Internal) {
>  /*
>   * A GPU-provided DTB already has the full command line.
> -- 
> 2.21.0.windows.1
> 

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#46568): https://edk2.groups.io/g/devel/message/46568
Mute This Topic: https://groups.io/mt/33000474/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [edk2-devel] [Patch] UefiCpuPkg/SecCore: get AllSecPpiList after SecPlatformMain.

2019-08-29 Thread Laszlo Ersek
Hi Eric,

On 08/28/19 08:50, Eric Dong wrote:
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2136
> 
> SecPlatformMain is a platform hook function which let platform does
> some update. Some platform may adjust SecCoreData->PeiTemporaryRamBase
> which caused former saved AllSecPpiList variable invalid.
> 
> This patch update the logic to get AllSecPpiList after SecPlatformMain.
> 
> Cc: Ray Ni 
> Cc: Laszlo Ersek 
> Signed-off-by: Eric Dong 
> ---
>  UefiCpuPkg/SecCore/SecMain.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/UefiCpuPkg/SecCore/SecMain.c b/UefiCpuPkg/SecCore/SecMain.c
> index f914446257..66c952b897 100644
> --- a/UefiCpuPkg/SecCore/SecMain.c
> +++ b/UefiCpuPkg/SecCore/SecMain.c
> @@ -228,7 +228,6 @@ SecStartupPhase2(
>  
>PeiCoreEntryPoint = NULL;
>SecCoreData   = (EFI_SEC_PEI_HAND_OFF *) Context;
> -  AllSecPpiList = (EFI_PEI_PPI_DESCRIPTOR *) 
> SecCoreData->PeiTemporaryRamBase;
>  
>//
>// Perform platform specific initialization before entering PeiCore.
> @@ -282,6 +281,8 @@ SecStartupPhase2(
>}
>  
>if (PpiList != NULL) {
> +AllSecPpiList = (EFI_PEI_PPI_DESCRIPTOR *) 
> SecCoreData->PeiTemporaryRamBase;
> +
>  //
>  // Remove the terminal flag from the terminal PPI
>  //
> 

Based on the SecPlatformMain() documentation in
"UefiCpuPkg/Include/Library/PlatformSecLib.h", it seems valid for a
platform to change "SecCoreData->PeiTemporaryRamBase".

Therefore, in SecStartupPhase2(), it appears justified to assign
"AllSecPpiList" only after calling SecPlatformMain().


This patch does something else too: it makes the assignment to
"AllSecPpiList" conditional. I agree that is justified, as well. Namely:

[*] If SecPlatformMain() returns no platform-specific PPI list, then
there is nothing to merge, so we don't need "AllSecPpiList" at all.

I think however that this change should be documented explicitly.


When pushing, please add the sentence [*] to the commit message. With that:

Reviewed-by: Laszlo Ersek 

Thanks
Laszlo

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#46567): https://edk2.groups.io/g/devel/message/46567
Mute This Topic: https://groups.io/mt/33054478/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [edk2-devel] Getting Synchronous Exception while run avocado-vt tests

2019-08-29 Thread Laszlo Ersek
(+Drew)

On 08/28/19 08:12, Guoheyi wrote:
> Hi Ard, Laszlo,
> 
> Greetings and thanks for your time to help investigate the issue.
> Finally we found it is caused by KVM and fixed by this patch:
> 
> https://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm.git/commit/?id=2113c5f62b7423e4a72b890bd479704aa85c81ba
> 
> 
> 
> KVM: arm/arm64: Only skip MMIO insn once

Heyi, thanks for reporting back!

Funnily enough, Drew's original

  [PATCH] arm64: KVM: Only skip MMIO insn once
  http://mid.mail-archive.com/20190821195030.2569-1-drjones@redhat.com

has been one of the few kvmarm postings that I've even attempted to
read. I congratulated Drew off-list on the debugging and the fix. But, I
never connected the patch to your report on edk2-devel!

  http://mid.mail-archive.com/4e8a0c5f50b642538b310a8edd9ce248@huawei.com

Makes me wonder what other connections I must be missing all the time.
:)

Thank you, Drew, for the fix!
Laszlo

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#46566): https://edk2.groups.io/g/devel/message/46566
Mute This Topic: https://groups.io/mt/32987799/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: edk2-stable201908 Re: [edk2-devel] [PATCH 1/1] MdeModulePkg: fix !x86 builds (more)

2019-08-29 Thread Laszlo Ersek
On 08/27/19 21:41, Leif Lindholm wrote:
> On Tue, Aug 27, 2019 at 09:28:50PM +0200, Laszlo Ersek wrote:
>> On 08/27/19 17:50, Leif Lindholm wrote:
>>> Apologies, forgot to tag the subject for stable release (although I
>>> did remember to cc the stewards).
>>
>> Understood, thus far... (And I commented on the target release under
>> your original submission.)
>>
>>> We don't appear to have a fix version for edk2-stable201908 in
>>> bugzilla, though.
>>
>> I don't get this paragraph. What is "fix version for edk2-stable201908"?
> 
> The freeze announcement said bugzillas aiming for inclusion in the
> stable tag should also be marked accordingly.
> 
> I choose to interpret this as the "Release(s) the issues must be
> fixed:" field should be set to the corresponding target release tag.
> But the most recent version selectable there is edk2-stable201905.

I see. Indeed I've only briefly skimmed the new values once (beyond the
earlier "Master" and "UDK*" entries).

Thanks!
Laszlo

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#46565): https://edk2.groups.io/g/devel/message/46565
Mute This Topic: https://groups.io/mt/33047269/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [edk2-devel] [PATCH] MdePkg/DxeHstiLib: Added checks to improve error handling.

2019-08-29 Thread Leif Lindholm
On Wed, Aug 28, 2019 at 05:33:28PM +, Ni, Ray wrote:
> Liming, Stephano and all stewards,
> My understanding is the requirement of embedding patch into the mail
> body is due to a limitation in old system (01.org). That system
> couldn't support mail attachments.

Oh, it could. I think it was just disabled.

> With the existence of mail attachments capability in new groups.io
> system, can we accept such kind of patch submission? Or any side
> effect you see if allowing mail attachments?

Traditionally, the reason for not wanting patches as attachments is
that it complicates doing inline code review as part of the email.

If the mail system (let's take a wild guess, Outlook/Exchange?)
doesn't corrupt the text *too* badly, I don't have an issue with the
patch being sent in the message body *and* being attached so it could
actually be applied.

Alternatively, one could put the patch in the message body and a link
to the patch in a public repo where it can be obtained.

Best Regards,

Leif

> 
> Thanks,
> Ray
> 
> From: devel@edk2.groups.io  On Behalf Of Liming Gao
> Sent: Wednesday, August 28, 2019 12:59 AM
> To: jayanth.raghu...@dell.com; devel@edk2.groups.io
> Cc: wei.g@dell.com
> Subject: Re: [edk2-devel] [PATCH] MdePkg/DxeHstiLib: Added checks to improve 
> error handling.
> 
> OK. So, you can't use git send-email to send this patch. Another way
> is to fork edk2 and create the branch to include this change.
> Then, send the mail to let people review this patch in your branch.
> 
> And, for this patch, can you submit BZ https://bugzilla.tianocore.org/ first?
> Then, update its commit message format based on this wiki.
> https://github.com/tianocore/tianocore.github.io/wiki/Commit-Message-Format
> 
> Thanks
> Liming
> From: jayanth.raghu...@dell.com 
> [mailto:jayanth.raghu...@dell.com]
> Sent: Wednesday, August 28, 2019 2:30 AM
> To: Gao, Liming mailto:liming@intel.com>>; 
> devel@edk2.groups.io
> Cc: wei.g@dell.com
> Subject: RE: [PATCH] MdePkg/DxeHstiLib: Added checks to improve error 
> handling.
> 
> Hi Liming,
> 
> I sent the review request based on the description in the links that you 
> mentioned below.
> I sent it in an Dell Email since I cannot use GIT SMTP to send email out from 
> our servers.
> Please let me know what is wrong and I can help rectify that.
> 
> Regards
> Jayanth Raghuram
> DellEMC | Server Platform BIOS
> office + 1 512 723 1470
> 
> From: Gao, Liming mailto:liming@intel.com>>
> Sent: Monday, August 26, 2019 8:57 PM
> To: devel@edk2.groups.io; Raghuram, Jayanth
> Cc: Liu, Wei G
> Subject: RE: [PATCH] MdePkg/DxeHstiLib: Added checks to improve error 
> handling.
> 
> 
> [EXTERNAL EMAIL]
> Can you follow this process to send this patch again?
> https://github.com/tianocore/tianocore.github.io/wiki/EDK-II-Development-Process
> 
> And, the commit message format is
> https://github.com/tianocore/tianocore.github.io/wiki/Commit-Message-Format
> 
> Thanks
> Liming
> From: devel@edk2.groups.io 
> [mailto:devel@edk2.groups.io] On Behalf Of 
> jayanth.raghu...@dell.com
> Sent: Tuesday, August 27, 2019 3:55 AM
> To: devel@edk2.groups.io
> Cc: wei.g@dell.com
> Subject: [edk2-devel] [PATCH] MdePkg/DxeHstiLib: Added checks to improve 
> error handling.
> 
> Subject: [PATCH] MdePkg/DxeHstiLib: Added checks to improve error handling.
> Added checks for return parameters of LocateHandleBuffer & GetSupportedTypes
> function calls in InternalHstiFindAip to improve error handling. An issue was
> observed on Dell Poweredge R740, where the Dell PERC H740P controller UEFI
> driver returned InfoTypesBuffer = NULL, InfoTypesBufferCount = 0 and caused
> an FreePool assert.
> 
> Signed-off-by: Jayanth Raghuram 
> mailto:jayanth.raghu...@dell.com>>
> Cc: Wei G Liu mailto:wei_g_...@dell.com>>
> 
> Attached: 0001-MdePkg-DxeHstiLib-Added-checks-to-improve-error-hand.patch
> 
> Regards
> Jayanth Raghuram
> DellEMC | Server Platform BIOS
> office + 1 512 723 1470
> 
> 

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#46564): https://edk2.groups.io/g/devel/message/46564
Mute This Topic: https://groups.io/mt/33041050/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-