From aaeff4c1f623d0e618ed7e153dafaf6c1d1412f8 Mon Sep 17 00:00:00 2001 From: "Tian, Hot" Date: Wed, 26 Feb 2014 08:55:44 +0000 Subject: Copy ShellBinPkg from EDKII trunk r15261 Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Tian, Hot git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2014@15269 6f19259b-4bc3-4df7-8a09-765794883524 --- ShellBinPkg/Contributions.txt | 188 +++++++++++++++++++++++++++++ ShellBinPkg/License.txt | 25 ++++ ShellBinPkg/MinUefiShell/AArch64/Shell.efi | Bin 0 -> 454144 bytes ShellBinPkg/MinUefiShell/Arm/Shell.efi | Bin 0 -> 308352 bytes ShellBinPkg/MinUefiShell/Ia32/Shell.efi | Bin 0 -> 320608 bytes ShellBinPkg/MinUefiShell/Ia32/profiles.txt | 1 + ShellBinPkg/MinUefiShell/MinUefiShell.inf | 34 ++++++ ShellBinPkg/MinUefiShell/X64/Shell.efi | Bin 0 -> 365888 bytes ShellBinPkg/MinUefiShell/X64/profiles.txt | 1 + ShellBinPkg/ReadMe.txt | 45 +++++++ ShellBinPkg/ShellBinPkg.dec | 21 ++++ ShellBinPkg/UefiShell/AArch64/Shell.efi | Bin 0 -> 1015648 bytes ShellBinPkg/UefiShell/Arm/Shell.efi | Bin 0 -> 772160 bytes ShellBinPkg/UefiShell/Ia32/Shell.efi | Bin 0 -> 800512 bytes ShellBinPkg/UefiShell/Ia32/profiles.txt | 6 + ShellBinPkg/UefiShell/UefiShell.inf | 34 ++++++ ShellBinPkg/UefiShell/X64/Shell.efi | Bin 0 -> 903488 bytes ShellBinPkg/UefiShell/X64/profiles.txt | 6 + 18 files changed, 361 insertions(+) create mode 100644 ShellBinPkg/Contributions.txt create mode 100644 ShellBinPkg/License.txt create mode 100755 ShellBinPkg/MinUefiShell/AArch64/Shell.efi create mode 100755 ShellBinPkg/MinUefiShell/Arm/Shell.efi create mode 100644 ShellBinPkg/MinUefiShell/Ia32/Shell.efi create mode 100644 ShellBinPkg/MinUefiShell/Ia32/profiles.txt create mode 100644 ShellBinPkg/MinUefiShell/MinUefiShell.inf create mode 100644 ShellBinPkg/MinUefiShell/X64/Shell.efi create mode 100644 ShellBinPkg/MinUefiShell/X64/profiles.txt create mode 100644 ShellBinPkg/ReadMe.txt create mode 100644 ShellBinPkg/ShellBinPkg.dec create mode 100755 ShellBinPkg/UefiShell/AArch64/Shell.efi create mode 100755 ShellBinPkg/UefiShell/Arm/Shell.efi create mode 100644 ShellBinPkg/UefiShell/Ia32/Shell.efi create mode 100644 ShellBinPkg/UefiShell/Ia32/profiles.txt create mode 100644 ShellBinPkg/UefiShell/UefiShell.inf create mode 100644 ShellBinPkg/UefiShell/X64/Shell.efi create mode 100644 ShellBinPkg/UefiShell/X64/profiles.txt diff --git a/ShellBinPkg/Contributions.txt b/ShellBinPkg/Contributions.txt new file mode 100644 index 0000000000..667ca1035c --- /dev/null +++ b/ShellBinPkg/Contributions.txt @@ -0,0 +1,188 @@ + +====================== += Code Contributions = +====================== + +To make a contribution to a TianoCore project, follow these steps. +1. Create a change description in the format specified below to + use in the source control commit log. +2. Your commit message must include your "Signed-off-by" signature, + and "Contributed-under" message. +3. Your "Contributed-under" message explicitly states that the + contribution is made under the terms of the specified + contribution agreement. Your "Contributed-under" message + must include the name of contribution agreement and version. + For example: Contributed-under: TianoCore Contribution Agreement 1.0 + The "TianoCore Contribution Agreement" is included below in + this document. +4. Submit your code to the TianoCore project using the process + that the project documents on its web page. If the process is + not documented, then submit the code on development email list + for the project. + +======================================= += Change Description / Commit Message = +======================================= + +Your change description should use the standard format for a +commit message, and must include your "Signed-off-by" signature +and the "Contributed-under" message. + +== Sample Change Description / Commit Message = + +=== Definitions for sample change description === + +* "CodeModule" is a short idenfier for the affected code. For + example MdePkg, or MdeModulePkg UsbBusDxe. +* "Brief-single-line-summary" is a short summary of the change. +* The entire first line should be less than ~70 characters. +* "Full-commit-message" a verbose multiple line comment describing + the change. Each line should be less than ~70 characters. +* "Contributed-under" explicitely states that the contribution is + made under the terms of the contribtion agreement. This + agreement is included below in this document. +* "Signed-off-by" is the contributor's signature identifying them + by their real/legal name and their email address. + +=== Start of sample change description / commit message === +CodeModule: Brief-single-line-summary + +Full-commit-message + +Contributed-under: TianoCore Contribution Agreement 1.0 +Signed-off-by: Contributor Name +=== End of sample change description / commit message === + +======================================== += TianoCore Contribution Agreement 1.0 = +======================================== + +INTEL CORPORATION ("INTEL") MAKES AVAILABLE SOFTWARE, DOCUMENTATION, +INFORMATION AND/OR OTHER MATERIALS FOR USE IN THE TIANOCORE OPEN SOURCE +PROJECT (COLLECTIVELY "CONTENT"). USE OF THE CONTENT IS GOVERNED BY THE +TERMS AND CONDITIONS OF THIS AGREEMENT BETWEEN YOU AND INTEL AND/OR THE +TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR +REFERENCED BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE OF THE +CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS +OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED +BELOW. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS +AGREEMENT AND THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE +AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT +USE THE CONTENT. + +Unless otherwise indicated, all Content made available on the TianoCore +site is provided to you under the terms and conditions of the BSD +License ("BSD"). A copy of the BSD License is available at +http://opensource.org/licenses/bsd-license.php +or when applicable, in the associated License.txt file. + +Certain other content may be made available under other licenses as +indicated in or with such Content. (For example, in a License.txt file.) + +You accept and agree to the following terms and conditions for Your +present and future Contributions submitted to TianoCore site. Except +for the license granted to Intel hereunder, You reserve all right, +title, and interest in and to Your Contributions. + +== SECTION 1: Definitions == +* "You" or "Contributor" shall mean the copyright owner or legal + entity authorized by the copyright owner that is making a + Contribution hereunder. All other entities that control, are + controlled by, or are under common control with that entity are + considered to be a single Contributor. For the purposes of this + definition, "control" means (i) the power, direct or indirect, to + cause the direction or management of such entity, whether by + contract or otherwise, or (ii) ownership of fifty percent (50%) + or more of the outstanding shares, or (iii) beneficial ownership + of such entity. +* "Contribution" shall mean any original work of authorship, + including any modifications or additions to an existing work, + that is intentionally submitted by You to the TinaoCore site for + inclusion in, or documentation of, any of the Content. For the + purposes of this definition, "submitted" means any form of + electronic, verbal, or written communication sent to the + TianoCore site or its representatives, including but not limited + to communication on electronic mailing lists, source code + control systems, and issue tracking systems that are managed by, + or on behalf of, the TianoCore site for the purpose of + discussing and improving the Content, but excluding + communication that is conspicuously marked or otherwise + designated in writing by You as "Not a Contribution." + +== SECTION 2: License for Contributions == +* Contributor hereby agrees that redistribution and use of the + Contribution 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 Contributor's + copyright notice, this list of conditions and the following + disclaimer. +** Redistributions in binary form must reproduce the Contributor's + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. +* Disclaimer. None of the names of Contributor, Intel, or the names + of their respective contributors may be used to endorse or + promote products derived from this software without specific + prior written permission. +* Contributor grants a license (with the right to sublicense) under + claims of Contributor's patents that Contributor can license that + are infringed by the Contribution (as delivered by Contributor) to + make, use, distribute, sell, offer for sale, and import the + Contribution and derivative works thereof solely to the minimum + extent necessary for licensee to exercise the granted copyright + license; this patent license applies solely to those portions of + the Contribution that are unmodified. No hardware per se is + licensed. +* EXCEPT AS EXPRESSLY SET FORTH IN SECTION 3 BELOW, THE + CONTRIBUTION IS PROVIDED BY THE CONTRIBUTOR "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 + CONTRIBUTOR 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 THE + CONTRIBUTION, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH + DAMAGE. + +== SECTION 3: Representations == +* You represent that You are legally entitled to grant the above + license. If your employer(s) has rights to intellectual property + that You create that includes Your Contributions, You represent + that You have received permission to make Contributions on behalf + of that employer, that Your employer has waived such rights for + Your Contributions. +* You represent that each of Your Contributions is Your original + creation (see Section 4 for submissions on behalf of others). + You represent that Your Contribution submissions include complete + details of any third-party license or other restriction + (including, but not limited to, related patents and trademarks) + of which You are personally aware and which are associated with + any part of Your Contributions. + +== SECTION 4: Third Party Contributions == +* Should You wish to submit work that is not Your original creation, + You may submit it to TianoCore site separately from any + Contribution, identifying the complete details of its source + and of any license or other restriction (including, but not + limited to, related patents, trademarks, and license agreements) + of which You are personally aware, and conspicuously marking the + work as "Submitted on behalf of a third-party: [named here]". + +== SECTION 5: Miscellaneous == +* Applicable Laws. Any claims arising under or relating to this + Agreement shall be governed by the internal substantive laws of + the State of Delaware or federal courts located in Delaware, + without regard to principles of conflict of laws. +* Language. This Agreement is in the English language only, which + language shall be controlling in all respects, and all versions + of this Agreement in any other language shall be for accommodation + only and shall not be binding. All communications and notices made + or given pursuant to this Agreement, and all documentation and + support to be provided, unless otherwise noted, shall be in the + English language. + diff --git a/ShellBinPkg/License.txt b/ShellBinPkg/License.txt new file mode 100644 index 0000000000..be68999be6 --- /dev/null +++ b/ShellBinPkg/License.txt @@ -0,0 +1,25 @@ +Copyright (c) 2012, 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. diff --git a/ShellBinPkg/MinUefiShell/AArch64/Shell.efi b/ShellBinPkg/MinUefiShell/AArch64/Shell.efi new file mode 100755 index 0000000000..f44c861b89 Binary files /dev/null and b/ShellBinPkg/MinUefiShell/AArch64/Shell.efi differ diff --git a/ShellBinPkg/MinUefiShell/Arm/Shell.efi b/ShellBinPkg/MinUefiShell/Arm/Shell.efi new file mode 100755 index 0000000000..4ec441a4e7 Binary files /dev/null and b/ShellBinPkg/MinUefiShell/Arm/Shell.efi differ diff --git a/ShellBinPkg/MinUefiShell/Ia32/Shell.efi b/ShellBinPkg/MinUefiShell/Ia32/Shell.efi new file mode 100644 index 0000000000..55a88ffed4 Binary files /dev/null and b/ShellBinPkg/MinUefiShell/Ia32/Shell.efi differ diff --git a/ShellBinPkg/MinUefiShell/Ia32/profiles.txt b/ShellBinPkg/MinUefiShell/Ia32/profiles.txt new file mode 100644 index 0000000000..912cee8a89 --- /dev/null +++ b/ShellBinPkg/MinUefiShell/Ia32/profiles.txt @@ -0,0 +1 @@ +this release includes: diff --git a/ShellBinPkg/MinUefiShell/MinUefiShell.inf b/ShellBinPkg/MinUefiShell/MinUefiShell.inf new file mode 100644 index 0000000000..62b586c4ba --- /dev/null +++ b/ShellBinPkg/MinUefiShell/MinUefiShell.inf @@ -0,0 +1,34 @@ +## @file +# This is the UEFI Shell application binary file. +# +# Copyright (c) 2011, Intel Corporation. All rights reserved.
+# +# This program and the accompanying materials +# are licensed and made available under the terms and conditions of the BSD License +# which accompanies this distribution. The full text of the license may be found at +# http://opensource.org/licenses/bsd-license.php +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +# +# +## +## + +[Defines] + INF_VERSION = 0x00010006 + BASE_NAME = Shell + FILE_GUID = 7C04A583-9E3E-4f1c-AD65-E05268D0B4D1 + MODULE_TYPE = UEFI_APPLICATION + VERSION_STRING = 1.0 + +[Binaries.Ia32] + PE32|Ia32/Shell.efi|* + +[Binaries.X64] + PE32|X64/Shell.efi|* + +[Binaries.ARM] + PE32|Arm/Shell.efi|* + +[Binaries.AArch64] + PE32|AArch64/Shell.efi|* diff --git a/ShellBinPkg/MinUefiShell/X64/Shell.efi b/ShellBinPkg/MinUefiShell/X64/Shell.efi new file mode 100644 index 0000000000..cd5e943491 Binary files /dev/null and b/ShellBinPkg/MinUefiShell/X64/Shell.efi differ diff --git a/ShellBinPkg/MinUefiShell/X64/profiles.txt b/ShellBinPkg/MinUefiShell/X64/profiles.txt new file mode 100644 index 0000000000..912cee8a89 --- /dev/null +++ b/ShellBinPkg/MinUefiShell/X64/profiles.txt @@ -0,0 +1 @@ +this release includes: diff --git a/ShellBinPkg/ReadMe.txt b/ShellBinPkg/ReadMe.txt new file mode 100644 index 0000000000..dad6d7c5f8 --- /dev/null +++ b/ShellBinPkg/ReadMe.txt @@ -0,0 +1,45 @@ +============================================================================ + OVERVIEW +============================================================================ +The binaries of ShellBinPkg are generated with ShellPkg project and built with +BaseTools Package (r15257). The binaries are built with no debug information +by building with "RELEASE" target. + +The following steps can help to re-generate these binaries for customization: +1. Check out EDK II to $(WORKSPACE) +(svn https://svn.code.sf.net/p/edk2/code/trunk/edk2). + +2. Under $(WORKSPACE) directory (i.e. c:\EdkII), + To generate Shell, execute: + "build -a IA32 -a X64 -p ShellPkg\ShellPkg.dsc -b RELEASE" + To generate Minimal Shell, execute: + "build -a IA32 -a X64 -p ShellPkg\ShellPkg.dsc -b RELEASE -D NO_SHELL_PROFILES" + +============================================================================ + HOW TO INCORPORATE THIS SHELL INTO NT32 +============================================================================ +The instructions below are included as a sample and template on how a +developer may integrate this code into an existing platform: + +1. Update system PCDs to support this new module + Update the PCD as follows using the Shell's PCD: + gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile|{ 0x83, 0xA5, + 0x04, 0x7C, 0x3E, 0x9E, 0x1C, 0x4F, 0xAD, 0x65, 0xE0, 0x52, 0x68, 0xD0, + 0xB4, 0xD1 } + +2. Remove the old shell from the NT32 Firmware list + Remove the FILE APPLICATION section for the old shell. + +3. Add this shell to the NT32 firmware list + Add the Shell.INF to the end of the list of DXE modules. + +4. Build NT32 + +============================================================================ + KNOWN LIMITATIONS +============================================================================ +1. RM can delete current working directory via other map name. +2. DrvCfg does not overlap boot manager functionality. +3. Shell documentation is in development and forthcoming. + +============================================================================ diff --git a/ShellBinPkg/ShellBinPkg.dec b/ShellBinPkg/ShellBinPkg.dec new file mode 100644 index 0000000000..34575ab15b --- /dev/null +++ b/ShellBinPkg/ShellBinPkg.dec @@ -0,0 +1,21 @@ +## @file +# UEFI 2.0 Shell Binary Package +# +# This package contains binary shell application that follows +# UEFI specification and UEFI Shell 2.0 specification. +# Copyright (c) 2011, Intel Corporation. All rights reserved.
+# +# This program and the accompanying materials are licensed and made available +# under the terms and conditions of the BSD License which accompanies this distribution. +# The full text of the license may be found at http://opensource.org/licenses/bsd-license.php +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTIES +# OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +# +## + +[Defines] + DEC_SPECIFICATION = 0x00010005 + PACKAGE_NAME = ShellBinPkg + PACKAGE_GUID = 4B34AD9D-1324-41e5-8B1D-359AA7BCA62C + PACKAGE_VERSION = 0.5 + diff --git a/ShellBinPkg/UefiShell/AArch64/Shell.efi b/ShellBinPkg/UefiShell/AArch64/Shell.efi new file mode 100755 index 0000000000..a923ad1755 Binary files /dev/null and b/ShellBinPkg/UefiShell/AArch64/Shell.efi differ diff --git a/ShellBinPkg/UefiShell/Arm/Shell.efi b/ShellBinPkg/UefiShell/Arm/Shell.efi new file mode 100755 index 0000000000..8bc4cfa6c4 Binary files /dev/null and b/ShellBinPkg/UefiShell/Arm/Shell.efi differ diff --git a/ShellBinPkg/UefiShell/Ia32/Shell.efi b/ShellBinPkg/UefiShell/Ia32/Shell.efi new file mode 100644 index 0000000000..fe59e01f21 Binary files /dev/null and b/ShellBinPkg/UefiShell/Ia32/Shell.efi differ diff --git a/ShellBinPkg/UefiShell/Ia32/profiles.txt b/ShellBinPkg/UefiShell/Ia32/profiles.txt new file mode 100644 index 0000000000..0739839e4d --- /dev/null +++ b/ShellBinPkg/UefiShell/Ia32/profiles.txt @@ -0,0 +1,6 @@ +this release includes: + +Drivers1 +Debug1 +Network1 +Install1 \ No newline at end of file diff --git a/ShellBinPkg/UefiShell/UefiShell.inf b/ShellBinPkg/UefiShell/UefiShell.inf new file mode 100644 index 0000000000..62b586c4ba --- /dev/null +++ b/ShellBinPkg/UefiShell/UefiShell.inf @@ -0,0 +1,34 @@ +## @file +# This is the UEFI Shell application binary file. +# +# Copyright (c) 2011, Intel Corporation. All rights reserved.
+# +# This program and the accompanying materials +# are licensed and made available under the terms and conditions of the BSD License +# which accompanies this distribution. The full text of the license may be found at +# http://opensource.org/licenses/bsd-license.php +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +# +# +## +## + +[Defines] + INF_VERSION = 0x00010006 + BASE_NAME = Shell + FILE_GUID = 7C04A583-9E3E-4f1c-AD65-E05268D0B4D1 + MODULE_TYPE = UEFI_APPLICATION + VERSION_STRING = 1.0 + +[Binaries.Ia32] + PE32|Ia32/Shell.efi|* + +[Binaries.X64] + PE32|X64/Shell.efi|* + +[Binaries.ARM] + PE32|Arm/Shell.efi|* + +[Binaries.AArch64] + PE32|AArch64/Shell.efi|* diff --git a/ShellBinPkg/UefiShell/X64/Shell.efi b/ShellBinPkg/UefiShell/X64/Shell.efi new file mode 100644 index 0000000000..5a7ddbd6cc Binary files /dev/null and b/ShellBinPkg/UefiShell/X64/Shell.efi differ diff --git a/ShellBinPkg/UefiShell/X64/profiles.txt b/ShellBinPkg/UefiShell/X64/profiles.txt new file mode 100644 index 0000000000..0739839e4d --- /dev/null +++ b/ShellBinPkg/UefiShell/X64/profiles.txt @@ -0,0 +1,6 @@ +this release includes: + +Drivers1 +Debug1 +Network1 +Install1 \ No newline at end of file -- cgit v1.2.3