From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 192.55.52.93, mailfrom: chasel.chiu@intel.com) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by groups.io with SMTP; Sun, 15 Sep 2019 23:41:32 -0700 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 15 Sep 2019 23:40:31 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.64,492,1559545200"; d="scan'208";a="190983904" Received: from kmsmsx156.gar.corp.intel.com ([172.21.138.133]) by orsmga006.jf.intel.com with ESMTP; 15 Sep 2019 23:40:29 -0700 Received: from pgsmsx111.gar.corp.intel.com ([169.254.2.128]) by KMSMSX156.gar.corp.intel.com ([169.254.1.31]) with mapi id 14.03.0439.000; Mon, 16 Sep 2019 14:40:28 +0800 From: "Chiu, Chasel" To: "devel@edk2.groups.io" , "Kubacki, Michael A" CC: "Agyeman, Prince" , "Bi, Dandan" , "Chaganty, Rangasai V" , "Gao, Liming" , "Desimone, Nathaniel L" , "Kinney, Michael D" , "Sinha, Ankit" , "Wei, David Y" Subject: Re: [edk2-devel] [edk2-platforms][PATCH V2 1/1] Platform/Intel/Readme.md: Content update Thread-Topic: [edk2-devel] [edk2-platforms][PATCH V2 1/1] Platform/Intel/Readme.md: Content update Thread-Index: AQHVaqF84YCYZILM40qokJe5e1UR9qct3ehg Date: Mon, 16 Sep 2019 06:40:27 +0000 Message-ID: <3C3EFB470A303B4AB093197B6777CCEC504D02DB@PGSMSX111.gar.corp.intel.com> References: <20190914020901.50404-1-michael.a.kubacki@intel.com> In-Reply-To: <20190914020901.50404-1-michael.a.kubacki@intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-version: 11.2.0.6 dlp-reaction: no-action x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiZTZhNWIzMjYtMjA1Mi00NGIwLWIxNDktMWUwNjIyMGU1ZmFjIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoidUs2TnVKRURGUlQxNUpnKzUyMGZlYlBNa1oxNHI2cGFaK3dLK29EekxDQWdYRDRreU5WZHJXdkxjQktCcUwzZCJ9 x-ctpclassification: CTP_NT x-originating-ip: [172.30.20.206] MIME-Version: 1.0 Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Reviewed-by: Chasel Chiu > -----Original Message----- > From: devel@edk2.groups.io On Behalf Of Kubacki, > Michael A > Sent: Saturday, September 14, 2019 10:09 AM > To: devel@edk2.groups.io > Cc: Agyeman, Prince ; Bi, Dandan > ; Chaganty, Rangasai V > ; Chiu, Chasel ; G= ao, > Liming ; Desimone, Nathaniel L > ; Kinney, Michael D > ; Sinha, Ankit ; Wei, > David Y > Subject: [edk2-devel] [edk2-platforms][PATCH V2 1/1] > Platform/Intel/Readme.md: Content update >=20 > This change makes the following updates: > 1. Add SimicsOpenBoardPkg details. > 2. Update Python instructions to Python 3.x and mention > Python 2.x deprecation. > 3. Add Linux build environment set up instructions. > 4. Update supported compiler and tool versions to newer versions teste= d. > * Ubuntu build: 16.04.5 LTS to 18.04.1 LTS > * iASL: 20160527 to 20190816 > * NASM: 2.11.08 to 2.12.02 > 5. Update ClevoOpenBoardPkg details. > 6. Add instructions to build packages (e.g. AdvancedFeaturePkg). > 6. Update Planned Activities and Ideas sections. >=20 > Cc: Agyeman Prince > Cc: Dandan Bi > Cc: Sai Chaganty > Cc: Chasel Chiu > Cc: Liming Gao > Cc: Nate DeSimone > Cc: Michael D Kinney > Cc: Ankit Sinha > Cc: Wei David Y > Signed-off-by: Michael Kubacki > --- > Platform/Intel/Readme.md | 139 ++++++++++++++------ > 1 file changed, 101 insertions(+), 38 deletions(-) >=20 > diff --git a/Platform/Intel/Readme.md b/Platform/Intel/Readme.md index > 3caf362983..7cf1321bb2 100644 > --- a/Platform/Intel/Readme.md > +++ b/Platform/Intel/Readme.md > @@ -56,8 +56,43 @@ A UEFI firmware implementation using > MinPlatformPkg is constructed using the fol > * The `ClevoOpenBoardPkg` contains board implementations for Clevo > systems. > * The `KabylakeOpenBoardPkg` contains board implementations for Kaby > Lake systems. > * The `PurleyOpenBoardPkg` contains board implementations for Purley > systems. > +* The `SimicsOpenBoardPkg` contains board implementations for the Simic= s > hardware simulator. > * The `WhiskeylakeOpenBoardPkg` contains board implementations for > Whiskey Lake systems. >=20 > +### **Supported Hardware** > + > +#### Intel > + > +***Intel Reference and Validation Platform*** > + > +| Machine Name | Supported Chipsets > | BoardPkg | Board Name | > +----------------------------------------|------------------------------= --------------|------------------ > ------------|--------------------| > +| RVP 3 | Sky Lake, Kaby Lake, Kaby > Lake Refresh | KabylakeOpenBoardPkg | KabylakeRvp3 > | > +| WHL-U DDR4 RVP | Whiskey Lake > | WhiskeylakeOpenBoardPkg | WhiskeylakeURvp | > + > +*Note: RVP =3D Reference and Validation Platform* > + > +#### Microsoft > + > +| Machine Name | Supported Chipsets > | BoardPkg | Board Name | > +----------------------------------------|------------------------------= --------------|------------------ > ------------|--------------------| > +| Mt. Olympus | Purley > | PurleyOpenBoardPkg | BoardMtOlympus | > + > +#### Simics > + > +| Machine Name | Supported Chipsets > | BoardPkg | Board Name | > +----------------------------------------|------------------------------= --------------|------------------ > ------------|--------------------| > +| Simics Quick Start Package | Nehalem > | SimicsOpenBoardPkg | BoardX58Ich10 | > + > +#### System 76 > + > +***Galago Pro Laptop*** > + > +| Machine Name | Supported Chipsets > | BoardPkg | Board Name | > +----------------------------------------|------------------------------= --------------|------------------ > ------------|--------------------| > +| galp2 (Clevo N130BU) | Kaby Lake > | ClevoOpenBoardPkg | N1xxWU | > +| galp3 & galp3-b (Clevo N1xxWU series) | Kaby Lake Refresh > | ClevoOpenBoardPkg | N1xxWU | > + > ## Board Package Organization > The board package follows the standard EDK II package structure with th= e > following additional elements and guidelines: > * Only code usable across more than one board at the root level. > @@ -83,10 +118,19 @@ return back to the minimum platform caller. > - Install into ```C:\ASL``` to match default tools_def.txt configurat= ion. > * NASM assembler: Available from: http://www.nasm.us/ > - Install into ```C:\NASM``` to match default tools_def.txt configura= tion. > -* Python 2.7.6: Available from: > https://www.python.org/download/releases/2.7.6/ > - - Install into ```C:\Python27``` to match default tools_def.txt > configuration. > - - Add C:\Python27 to your path > - - Other versions of 2.7 may also work fine. > +* Python 3.7.3: Available from: > +https://www.python.org/downloads/release/python-373/ > + - Other versions of Python 3.x should be compatible. > + - It is recommended to use the Python launcher to ensure the Python > build script is launched using Python 3. > + - E.g. "py -3.7 build_bios.py -l" > + > +## **Linux Build Instructions** > + > +### Pre-requisites > + > + * Set up a EDK II build environment for Linux following the instructio= ns in > + [Using EDK II with Native > GCC](https://github.com/tianocore/tianocore.github.io/wiki/Using-EDK-II-= wit > h-Native-GCC). > + * Proceed to the [Common EDK II build instructions for > Linux](https://github.com/tianocore/tianocore.github.io/wiki/Common-inst= r > uctions) > + to verify your basic EDK II build environment is set up properly. >=20 > ### Download the required components >=20 > @@ -106,11 +150,11 @@ return back to the minimum platform caller. > * FSP repository > * ``git clone https://github.com/IntelFsp/FSP.git`` >=20 > -### Build > +### Board Builds >=20 > **Building with the python script** >=20 > -1. Open command window, go to the workspace directory, e.g. c:\Kabylake > or ~/Kabylake in the case of a linux OS > +1. Open command window, go to the workspace directory, e.g. > +c:\Edk2Workspace or ~/Edk2Workspace in the case of a linux OS > 2. If using a linux OS > * Type "cd edk2" > * Type "source edksetup.sh" > @@ -146,11 +190,19 @@ return back to the minimum platform caller. > * Type "python build_bios.py -h" >=20 > * Note > - * Python 2.7.16 and Python 3.7.3 compatible > - * Some dependency Python scripts might only support 2.x or 3.x, if th= at > happened use > - "py -2" or "py -3" to launch build_bios.py > - * This python build script has been tested on Windows 10 and Ubuntu > 16.04.5 LTS > - * See [cross-platform limitations](#Known-limitations) > + * The Python build scripts were compatible with Python 2.7.16. But > Python 2.x support is no longer maintained or recommended. > + > + * This python build script has been tested on Windows 10 and Ubuntu > 18.04.1 LTS. > + > + * Unless otherwise noted, all boards build with the following > components and versions: > + * Linux build: Ubuntu 18.04.1 LTS with GCC version 5.4.0 > + * Windows build: Windows 10 with the Microsoft Visual Studio 2015 > compiler > + * iASL version: 20190816 > + * NASM version: 2.12.02 > + > + * Unless otherwise noted all boards have been tested for boot to > Windows 10 x64 RS3. > + > + * See [known limitations](#Known-limitations) >=20 > * Configuration Files > * The edk2-platforms\Platform\Intel\build.cfg file contains the defau= lt > settings used by build_bios.py @@ -185,6 +237,7 @@ return back to the > minimum platform caller. > | | | | > build settings, environment variables. > | | | |---build_board.py: > Optional board-specific pre-build, build > | | | > and clean post-build functions. > + | | | > | | |------PurleyOpenBoardPkg > | | | |------BoardMtOlympus > | | | |---build_config.cfg: > BoardMtOlympus specific > @@ -192,19 +245,26 @@ return back to the minimum platform caller. > | | | |---build_board.py: > Optional board-specific pre-build, > | | | > build, post-build and clean functions. > | | | > + | | |------SimicsOpenBoardPkg > + | | | |------BoardX58Ich10 > + | | | |---build_config.cfg: > BoardX58Ich10 specific > + | | | | > build settings, environment variables. > + | | | > | | |------WhiskeylakeOpenBoardPkg > | | | |------WhiskeylakeURvp > | | | |---build_config.cfg: > WhiskeylakeURvp specific build > | | | > settings environment variables. > + | | | > |------FSP > >=20 > **Building with the batch scripts** > + > Only PurleyOpenBoardPkg still supports batch script build. Future board > packages must only use the Python build infrastructure. >=20 > For PurleyOpenBoardPkg > -1. Open command window, go to the workspace directory, e.g. c:\Purley. > +1. Open command window, go to the workspace directory, e.g. > c:\Edk2Workspace. > 2. Type "cd > edk2-platforms\Platform\Intel\PurleyOpenBoardPkg\BoardMtOlympus". > 3. Type "GitEdk2MinMtOlympus.bat" to setup GIT environment. > 4. Type "bld" to build Purley Mt Olympus board UEFI firmware image, "bl= d > release" for release build, "bld clean" to @@ -212,40 +272,43 @@ For > PurleyOpenBoardPkg > "bld cache-consume" Consume a cache of binary files from the > specified directory, BINARY_CACHE_PATH is empty, > used "BinCache" as default path. >=20 > -The validated version of iasl compiler that can build MinPurley is 2018= 0629. > Older version may generate ACPI build > +The validated version of iASL compiler that can build MinPurley is > +20180629. Older version may generate ACPI build > errors. >=20 > ### **Known limitations** >=20 > **ClevoOpenBoardPkg** > -1. Currently, support is only being added for the N1xxWU series of boar= ds. > -2. The Windows build was tested on Windows 10 with Microsoft Visual > Studio 2015 compiler. > -3. The Linux build was tested on Ubuntu 16.04.5 LTS with GCC version 5.= 4.0. > -4. The build was tested with NASM version 2.11.08. > -5. The firmware project has not been tested on an actual board, it *sho= uld > not* be expected to boot. > -6. The firmware project applies to all Clevo supported board configurat= ions > but is only being tested on System 76 Galago > - Pro devices. > +1. The firmware project has not been tested on the Galago Pro 3B. >=20 > **KabylakeOpenBoardPkg** > -1. This firmware project has only been tested on the Intel KabylakeRvp3 > board. > -2. This firmware project has only been tested booting to Microsoft > Windows 10 x64 with AHCI mode and Integrated Graphic > - Device. > -3. The Windows build was tested on Windows 10 with Microsoft Visual > Studio 2015. > -4. The Linux build was tested on Ubuntu 16.04.5 LTS with GCC version 5.= 4.0. > -5. The build was tested with NASM version 2.11.08. > +1. This firmware project has only been tested for Microsoft Windows 10 = x64 > boot with AHCI mode and Integrated Graphic > + Device. >=20 > **PurleyOpenBoardPkg** > -1. This firmware project has only been tested on the Microsoft MtOlympu= s > board. > -2. This firmware project has only been tested booting to Microsoft > Windows Server 2016 with NVME on M.2 slot. > -3. This firmware project build has only been tested using the Microsoft > Visual Studio 2015 compiler. > +1. This firmware project has only been tested booting to Microsoft > Windows Server 2016 with NVME on M.2 slot. > +2. This firmware project does not build with the GCC compiler. > +3. This firmware project does not build with the Python build script > infrastructure. > + > +**SimicsOpenBoardPkg** > +1. This firmware project has only been tested booting to Microsoft > Windows 10 x64 and Ubuntu 17.10 with AHCI mode. >=20 > **WhiskeylakeOpenBoardPkg** > -1. This firmware project has only been tested on the Intel WhiskeylakeU= Rvp > board. > -2. This firmware project has only been tested booting to Microsoft > Windows 10 x64 with AHCI mode and Integrated Graphic > - Device. > -3. The Windows build was tested on Windows 10 with Microsoft Visual > Studio 2015. > -4. The Linux build was tested on Ubuntu 16.04.5 LTS with GCC version 5.= 4.0. > -5. The build was tested with NASM version 2.11.08. > +1. This firmware project has only been tested booting to Microsoft > Windows 10 x64 with AHCI mode and Integrated Graphic > + Device. > + > +### **Package Builds** > + > +In some cases, such as AdvancedFeaturePkg, a package may provide a set > +of functionality that is included in other packages. To test the build = of the > whole package, the "build" command should be used following the > instructions below. > + > +1. Execute edksetup.bat (Windows) or edksetup.sh (Linux). > +2. Verify the "WORKSPACE" environment variable is set to the edk2 > directory in your workspace. > +3. Set the "PACKAGES_PATH" enviornment variable to include the > edk2-platforms/Platform/Intel and edk2-platforms/Silicon/Intel > + directories. > + * Windows example: set > +PACKAGES_PATH=3Dc:\Edk2Workspace\edk2-platforms\Platform\Intel;c:\Edk2 > Wor > +kspace\edk2-platforms\Silicon\Intel > +4. Build the package by specifying the package DSC as the platform buil= d > target from the Platform/Intel or Silicon/Intel directory: > + "build -p AdvancedFeaturePkg/AdvancedFeaturePkg.dsc" > + >=20 > ### **Firmware Image Flashing** >=20 > @@ -259,14 +322,14 @@ that authenticates the initial firmware boot image > such as Boot Guard, it will f that is not signed properly. >=20 > ### **Planned Activities** > -* Replace the batch build scripts with cross-platform Python build scri= pts. > -* Publish a Minimum Platform specification to describe the architecture= and > interfaces in more detail. > +* Expand Intel's open source platform code presence through new platfor= m > and board support. > +* Expand advanced feature code and quality. > +* Support open source community continuous integration for Minimum > Platform compliant boards. >=20 > ### **Ideas** > If you would like to help but are not sure where to start some areas > currently identified for improvement include: > * Adding board ports for more motherboards and systems > * Adding Clang support > - * Adding GCC support >=20 > Please feel free to contact Michael Kubacki (michael.a.kubacki at intel= .com) > and Isaac Oram (isaac.w.oram at intel.com) if you would like to discuss > contribution ideas. > -- > 2.16.2.windows.1 >=20 >=20 >=20