Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
MdeModulePkg/PciBus: Add the framework to init PCIE features
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1954 https://bugzilla.tianocore.org/show_bug.cgi?id=2194 https://bugzilla.tianocore.org/show_bug.cgi?id=2313 https://bugzilla.tianocore.org/show_bug.cgi?id=2499 https://bugzilla.tianocore.org/show_bug.cgi?id=2500 The framework introduces two phases for PCIE feature initialization. The "Scan" phase is optional and only needed by those features that requires alignment in the entire hierarchy under the root port, such as MaxPayloadSize. "Scan" phase only reads the device capability and calculate the aligned setting with the consideration of the device specific policy returned from platform. The "Program" phase is mandatory and is to program the settings to the PCIE configuration. The first and last features are fake ones. First is to call PciePlatform::GetDevicePolicy() for each device. Last is to call PciePlatform::NotifyDeviceState() for each device. Signed-off-by: Ashraf Javeed <ashraf.javeed@intel.com> Signed-off-by: Ray Ni <ray.ni@intel.com> Cc: Jian J Wang <jian.j.wang@intel.com> Cc: Hao A Wu <hao.a.wu@intel.com> Cc: Ray Ni <ray.ni@intel.com> Cc: Ashraf Javeed <ashraf.javeed@intel.com>
- Loading branch information