From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 134.134.136.31, mailfrom: wei6.xu@intel.com) Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by groups.io with SMTP; Fri, 12 Apr 2019 02:04:37 -0700 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga004.jf.intel.com ([10.7.209.38]) by orsmga104.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 12 Apr 2019 02:04:36 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.60,340,1549958400"; d="scan'208,217";a="290947272" Received: from fmsmsx105.amr.corp.intel.com ([10.18.124.203]) by orsmga004.jf.intel.com with ESMTP; 12 Apr 2019 02:04:36 -0700 Received: from fmsmsx152.amr.corp.intel.com (10.18.125.5) by FMSMSX105.amr.corp.intel.com (10.18.124.203) with Microsoft SMTP Server (TLS) id 14.3.408.0; Fri, 12 Apr 2019 02:04:36 -0700 Received: from shsmsx108.ccr.corp.intel.com (10.239.4.97) by FMSMSX152.amr.corp.intel.com (10.18.125.5) with Microsoft SMTP Server (TLS) id 14.3.408.0; Fri, 12 Apr 2019 02:04:35 -0700 Received: from shsmsx104.ccr.corp.intel.com ([169.254.5.92]) by SHSMSX108.ccr.corp.intel.com ([169.254.8.147]) with mapi id 14.03.0415.000; Fri, 12 Apr 2019 17:04:33 +0800 From: "Xu, Wei6" To: "devel@edk2.groups.io" CC: "Zhang, Chao B" , "Gao, Liming" , "Kinney, Michael D" Subject: [staging/UEFI_CapsuleOnDisk][PATCH] Announce to create "UEFI_CapsuleOnDisk" branch in edk2-staging. Thread-Topic: [staging/UEFI_CapsuleOnDisk][PATCH] Announce to create "UEFI_CapsuleOnDisk" branch in edk2-staging. Thread-Index: AdTxCYnSP9BMahW/T5mHq04jUMrdzQAAndeA Date: Fri, 12 Apr 2019 09:04:32 +0000 Message-ID: <59B8EAB3797CDB4091332F0685A110ED50D69AB4@SHSMSX104.ccr.corp.intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Return-Path: wei6.xu@intel.com Content-Language: en-US Content-Type: multipart/alternative; boundary="_000_59B8EAB3797CDB4091332F0685A110ED50D69AB4SHSMSX104ccrcor_" --_000_59B8EAB3797CDB4091332F0685A110ED50D69AB4SHSMSX104ccrcor_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable UEFI_CapsuleOnDisk branch is used to develop the Capsule-On-Disk feature. P= lease refer to the patch of Readme.md to get the detailed feature introduct= ion. Note: The branch will be created by the end of Apr 19th if no objection. Cc: Kinney Michael D > Cc: Zhang, Chao B > Cc: Gao, Liming > Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: xuwei6 > --- Readme.md | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 Readme.md diff --git a/Readme.md b/Readme.md new file mode 100644 index 0000000000..5528044802 --- /dev/null +++ b/Readme.md @@ -0,0 +1,42 @@ + +# Introduction + +This branch is used to develop the **Capsule-On-Disk** feature. +The branch owner: Chao Zhang < [chao.b.zhang@intel.com](mailto:chao.b.zhan= g@intel.com) >, Wei Xu < [wei6.xu@intel.com](mailto:wei6.xu@intel.com) > + +# Feature Summary + +Traditionally capsule image is delivered to BIOS in persistent memory acro= ss system reset, but not all platforms support or function well across memo= ry persistent reset. To solve this problem, **Capsule-On-Disk** delivers ca= psule images through EFI system partition on peripheral storage device. For= security reasons, Design is composed of 2 solutions. +- **Solution A)** - Load the image out of TCB and rely on Capsule-In-RAM t= o deliver Capsule-On-Disk. +- **Solution B)** - Relocate capsule image outside TCB. And leverage exist= ing storage stack in PEI to load all capsule on disk images. Solution B) ha= s bigger TCB but can work without Capsule-In-RAM support + +>User can test this feature with **CapsuleApp** in **MdeModulePkg**. It ha= s been updated to support Capsule on Disk since **2019 Q1 stable release**. + +Brief working flow of **Capsule-On-Disk**: +``` +1. Store capsule images into \EFI\Capsules\ folder on EFI system partition= . +2. Set EFI_OS_INDICATIONS_FILE_CAPSULE_DELIVERY_SUPPORTED flag in L"OsIndi= cations". +3. Reboot system. +4. Get all capsule images from \EFI\Capsules\ after TCB, relocated them to= root direcotry of a platform-specific NV storage device with BlockIo proto= col. +5. Reboot system. +6. Load capsule imaages from the root direcotry in TCB, and build CV hobs +``` + +## Related Modules + +The following modules are related to **Capsule-On-Disk**. +``` +MdeModulePkg\Library\DxeCapsuleLibFmp\DxeCapsuleLib.inf +MdeModulePkg\Universal\CapsuleOnDiskLoadPei\CapsuleOnDiskLoadPei.inf +``` + +# Time Line + +|Date |Event | +|----------------|-------------------------------| +|2019 Q2 | Exit Staging | + + +# Related Materials + +UEFI Specification - http://uefi.org/specifications \ No newline at end of file -- 2.16.2.windows.1 --_000_59B8EAB3797CDB4091332F0685A110ED50D69AB4SHSMSX104ccrcor_ Content-Type: text/html; charset="us-ascii" Content-Transfer-Encoding: quoted-printable

UEFI_CapsuleOnDisk branch is used to develop the Cap= sule-On-Disk feature. Please refer to the patch of Readme.md to get the det= ailed feature introduction.

 

Note: The branch will be created by the end of Apr 1= 9th if no objection.

 

Cc: Kinney Michael D <michael.d.kinney@intel.com>

Cc: Zhang, Chao B <chao.b.zhang@intel.com>

Cc: Gao, Liming <liming.gao@intel.com>

Contributed-under: TianoCore Contribution Agreement = 1.1

Signed-off-by: xuwei6 <wei6.xu@intel.com>

---

Readme.md | 42 +++++++&#= 43;++++++++++++++&#= 43;++++++++++++++&#= 43;++++

1 file changed, 42 insertions(+)

create mode 100644 Readme.md

 

diff --git a/Readme.md b/Readme.md

new file mode 100644

index 0000000000..5528044802

--- /dev/null

+++ b/Readme.md

@@ -0,0 +1,42 @@

+

+# Introduction

+

+This branch is used to develop the **Capsule-On= -Disk** feature.

+The branch owner: Chao Zhang < [chao.b.zhang= @intel.com](mailto:chao.b.zhang@i= ntel.com) >, Wei Xu < [wei6.xu@intel.com](mailto:wei6.xu@intel.com) >

+

+# Feature Summary

+

+Traditionally capsule image is delivered to BIO= S in persistent memory across system reset, but not all platforms support o= r function well across memory persistent reset. To solve this problem, **Ca= psule-On-Disk** delivers capsule images through EFI system partition on peripheral storage device. For security re= asons, Design is composed of 2 solutions.

+- **Solution A)** - Load the image out of TCB a= nd rely on Capsule-In-RAM to deliver Capsule-On-Disk.

+- **Solution B)** - Relocate capsule image outs= ide TCB. And leverage existing storage stack in PEI to load all capsule on = disk images. Solution B) has bigger TCB but can work without Capsule-In-RAM= support

+

+>User can test this feature with **CapsuleAp= p** in **MdeModulePkg**. It has been updated to support Capsule on Disk sin= ce **2019 Q1 stable release**.

+

+Brief working flow of  **Capsule-On-Disk**= :

+```

+1. Store capsule images into \EFI\Capsules\ fol= der on EFI system partition.

+2. Set EFI_OS_INDICATIONS_FILE_CAPSULE_DELIVERY= _SUPPORTED flag in L"OsIndications".

+3. Reboot system.

+4. Get all capsule images from \EFI\Capsules\ a= fter TCB, relocated them to root direcotry of a platform-specific NV storag= e device with BlockIo protocol.

+5. Reboot system.

+6. Load capsule imaages from the root direcotry= in TCB, and build CV hobs

+```

+

+## Related Modules

+

+The following modules are related to **Capsule-= On-Disk**.

+```

+MdeModulePkg\Library\DxeCapsuleLibFmp\DxeCapsul= eLib.inf

+MdeModulePkg\Universal\CapsuleOnDiskLoadPei\Cap= suleOnDiskLoadPei.inf

+```

+

+# Time Line

+

+|Date       =      |Event       &n= bsp;            = ;      |

+|----------------|-----------------------------= --|

+|2019 Q2      &nb= sp;  | Exit Staging        &nb= sp;         |

+

+

+# Related Materials

+

+UEFI Specification - http://uefi.org/specifications

\ No newline at end of file

--

2.16.2.windows.1

 

--_000_59B8EAB3797CDB4091332F0685A110ED50D69AB4SHSMSX104ccrcor_--