[edk2-devel] [edk2-platforms][PATCH V1 0/3] Add FW Boot Media Device Indicator

Chaganty, Rangasai V rangasai.v.chaganty at intel.com
Wed Oct 2 23:03:24 UTC 2019


I am not sure if there is a silicon scope around the FirmwareBootMediaLib. Have we considered adding this interface to MdePkg, instead?

-----Original Message-----
From: Kubacki, Michael A 
Sent: Monday, September 30, 2019 6:16 PM
To: devel at edk2.groups.io
Cc: Chaganty, Rangasai V <rangasai.v.chaganty at intel.com>; Dong, Eric <eric.dong at intel.com>; Gao, Liming <liming.gao at intel.com>; Ni, Ray <ray.ni at intel.com>
Subject: [edk2-platforms][PATCH V1 0/3] Add FW Boot Media Device Indicator

This patch series introduces a mechanism for determining the firmware boot media device. This allows the firmware boot media to be discovered through a standardized API.

Traditionally, most systems have only supported firmware storage on SPI flash. Presently, several other storage technologies are being used to store boot system firmware such as eMMC, UFS, and NVMe.

The API for all board, platform, and silicon code to consume the firmware boot media device is provided by the FirmwareBootMediaLib in IntelSiliconPkg.

A driver (FirmwareBootMediaInfoPei) is added to BoardModulePkg to serve as a consistent location for reporting the firmware boot device information. In order to abstract the potentially hardware-specific details to determine the boot media (for platforms that support multiple firmware boot media devices), the driver retrieves the boot media information using a new library class introduced called FirmwareBootMediaInfoLib. A default instance of this library class is provided in BoardModulePkg that always returns SPI flash. This is intended to serve as a default implementation of the library for the most common scenario and to easily allow a board package to substitute the logic required to determine the boot media in more complex scenarios. Ultimately, FirmwareBootMediaInfoPei produces a HOB containing the firmware boot media device information so it can be used in the HOB consumer phase.

Cc: Sai Chaganty <rangasai.v.chaganty at intel.com>
Cc: Eric Dong <eric.dong at intel.com>
Cc: Liming Gao <liming.gao at intel.com>
Cc: Ray Ni <ray.ni at intel.com>
Signed-off-by: Michael Kubacki <michael.a.kubacki at intel.com>

Michael Kubacki (3):
  IntelSiliconPkg/FirmwareBootMediaLib: Add library
  BoardModulePkg/FirmwareBootMediaInfoLib: Add library
  BoardModulePkg/FirmwareBootMediaInfoPei: Add module

 Platform/Intel/BoardModulePkg/BoardModulePkg.dec                                                  |   3 +
 Silicon/Intel/IntelSiliconPkg/IntelSiliconPkg.dec                                                 |   4 +-
 Platform/Intel/BoardModulePkg/BoardModulePkg.dsc                                                  |   5 +
 Silicon/Intel/IntelSiliconPkg/IntelSiliconPkg.dsc                                                 |   4 +-
 Platform/Intel/BoardModulePkg/FirmwareBootMediaInfo/FirmwareBootMediaInfoPei.inf                  |  46 +++++++++
 Platform/Intel/BoardModulePkg/Library/PeiFirmwareBootMediaInfoLib/PeiFirmwareBootMediaInfoLib.inf |  35 +++++++
 Silicon/Intel/IntelSiliconPkg/Library/PeiDxeSmmBootMediaLib/DxeSmmFirmwareBootMediaLib.inf        |  43 ++++++++
 Silicon/Intel/IntelSiliconPkg/Library/PeiDxeSmmBootMediaLib/PeiFirmwareBootMediaLib.inf           |  38 +++++++
 Platform/Intel/BoardModulePkg/Include/Library/FirmwareBootMediaInfoLib.h                          |  26 +++++
 Silicon/Intel/IntelSiliconPkg/Include/Library/FirmwareBootMediaLib.h                              | 106 +++++++++++++++++++
 Platform/Intel/BoardModulePkg/FirmwareBootMediaInfo/FirmwareBootMediaInfoPei.c                    |  76 ++++++++++++++
 Platform/Intel/BoardModulePkg/Library/PeiFirmwareBootMediaInfoLib/PeiFirmwareBootMediaInfoLib.c   |  24 +++++
 Silicon/Intel/IntelSiliconPkg/Library/PeiDxeSmmBootMediaLib/DxeSmmFirmwareBootMediaLib.c          | 107 +++++++++++++++++++
 Silicon/Intel/IntelSiliconPkg/Library/PeiDxeSmmBootMediaLib/FirmwareBootMediaLib.c                | 109 ++++++++++++++++++++
 Silicon/Intel/IntelSiliconPkg/Library/PeiDxeSmmBootMediaLib/PeiFirmwareBootMediaLib.c             |  82 +++++++++++++++
 15 files changed, 706 insertions(+), 2 deletions(-)  create mode 100644 Platform/Intel/BoardModulePkg/FirmwareBootMediaInfo/FirmwareBootMediaInfoPei.inf
 create mode 100644 Platform/Intel/BoardModulePkg/Library/PeiFirmwareBootMediaInfoLib/PeiFirmwareBootMediaInfoLib.inf
 create mode 100644 Silicon/Intel/IntelSiliconPkg/Library/PeiDxeSmmBootMediaLib/DxeSmmFirmwareBootMediaLib.inf
 create mode 100644 Silicon/Intel/IntelSiliconPkg/Library/PeiDxeSmmBootMediaLib/PeiFirmwareBootMediaLib.inf
 create mode 100644 Platform/Intel/BoardModulePkg/Include/Library/FirmwareBootMediaInfoLib.h
 create mode 100644 Silicon/Intel/IntelSiliconPkg/Include/Library/FirmwareBootMediaLib.h
 create mode 100644 Platform/Intel/BoardModulePkg/FirmwareBootMediaInfo/FirmwareBootMediaInfoPei.c
 create mode 100644 Platform/Intel/BoardModulePkg/Library/PeiFirmwareBootMediaInfoLib/PeiFirmwareBootMediaInfoLib.c
 create mode 100644 Silicon/Intel/IntelSiliconPkg/Library/PeiDxeSmmBootMediaLib/DxeSmmFirmwareBootMediaLib.c
 create mode 100644 Silicon/Intel/IntelSiliconPkg/Library/PeiDxeSmmBootMediaLib/FirmwareBootMediaLib.c
 create mode 100644 Silicon/Intel/IntelSiliconPkg/Library/PeiDxeSmmBootMediaLib/PeiFirmwareBootMediaLib.c

--
2.16.2.windows.1


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

View/Reply Online (#48404): https://edk2.groups.io/g/devel/message/48404
Mute This Topic: https://groups.io/mt/34352432/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-





More information about the edk2-devel-archive mailing list