TianoCore Community Design Meeting Minutes - Aug 22

Ni, Ray

1. Re-architecture of Intel edk2 Redfish POC code on edk2 staging (HPE)
Presenter: Chang Abner
Slides: https://edk2.groups.io/g/devel/files/Designs/2019/0823

* Background:
Redfish project started in early 2017 and HPE is working with Intel since then.
Intel pushed code to edk2-staging repo.
POC in Nt32, but servers with BMC has their own implementations.
Re-architecture is needed to make it more flexible and easily adoptable.

Configuration without EDKII redfish: HII/form. (page #2)
With redfish: redfish links to x-UEFI keyword based HII configuration. (page #3)
Current EDK2 Redfish POC code implementation. (page #5 ~ #12)

* Proposals / changes
(1). Feature drivers have schema associated. Use schema as the driver name.
Boot Info DXE driver -> Computer System DXE driver
@Jiaxin: Boot Info is sub-set of ComputerSystem.
@Abner: Agree to keep BootInfo as the driver name.

(2). Redfish Discover Protocol discovers redfish services and creates instance of redfish for RedfishConfigDriver. (page #14)
(3). RedfishHostInterfaceDxe generic driver contains the generic code to create SMBIOS type 42 record. (page #14)
(4). RestEx driver talks to platform-specific Platform REST when it exists. (page #15)
@Siyuan: REST EX depends on platform-specific protocol, which makes NetworkPkg depends on platform. It's not good.
@Abner: will sync it later offline how to maximumly share the code without introducing the platform dep.
(5). Change Credential protocol to static library to avoid invocation from 3rd party code(PCI Option ROM) at runtime. (page #16)
@Siyuan: StopServices in credential protocol can stop the credential services after end-of-dxe.
@Ray: Entrypoint of oprom is not called before end-of-dxe.
@Abner: Will double-confirm and keep protocol design if no security concern.
(6). Add build time redfish BIOS resource generator. (page #17)

* Opens
@Ray: Will code be moved to edk2 repo after this re-architecture?
@Abner: HPE will work on staging repo and won't do the move.

@Jiaxin: Would like to keep the simulator-based implementation.
@Siyuan: Nt32Pkg is removed.
@Ray: EmulatorPkg network can be enabled.

@Abner: Tech discussion with Intel on Redfish design should go in public mailing list or not?
@Mike: Please follow the staging repo development process and communicate to community when moving to edk2 repo.