Wei Liu
2013-Nov-26 11:35 UTC
Re: [edk2] [PATCH RFC v2 1/7] MdeModulePkg: introduce PcdPciAllowFullEnumeration ... [and one more message]
On Mon, Nov 25, 2013 at 11:27:14PM +0000, Kinney, Michael D wrote:> Wei, > > The PCD declaration in the DEC file declares the PCD type the PCD is > allowed to have. For this specific PCD, you may want to allow it to > be FixedAtBuild or PatahcbleInModule or Dynamic or DynamicEx. This > provides the maximum flexibility. > > For future DUET use cases, the DSC file could set it to FixedAtBuild, > so the full enumeration code could be optimized away. > > For OVMF use cases where you want to be able to enable/disable > enumeration, you can set it to DynamicEx in the DSC file. PciBusDxe > built with this config would include support for full and no > enumeration. If the DynamicEx subtype is set to HII, then a UEFI > Variable setting can enable/disable enumeration and could be set in FD > image externally. Likewise, if the DynamicEx subtype is set to VPD > (Vital Product Data), then the VPD area could be patched in the FD > image externally. > > Best regards, >Thanks for the explanation. Currently in this patch this PCD in Mde is defined as [FixedAtBuild, Dynamic, DynamicEx] so I suppose I am doing the right thing. Do you think it is necessary to add in PatachbleInModule? (note to self: state clearly the types of the PCD in the commit message in next version) Wei.> Mike > > -----Original Message----- > From: Wei Liu [mailto:wei.liu2@citrix.com] > Sent: Monday, November 25, 2013 2:56 AM > To: Kinney, Michael D > Cc: Jordan Justen; edk2-devel@lists.sourceforge.net; Tian, Feng; Wei Liu; xen-devel > Subject: Re: [edk2] [PATCH RFC v2 1/7] MdeModulePkg: introduce PcdPciAllowFullEnumeration ... [and one more message] > > On Mon, Nov 25, 2013 at 03:12:04AM +0000, Kinney, Michael D wrote: > > Jordan, > > > > I agree that removing code duplication is a good idea. > > > > I believe we can make the one in the MdeModulePkg functional > > everywhere. Size will be the only remaining difference. This can be > > addressed longer term. If the proposed PCD is configured as > > FixedAtBuild in a DSC file, we should be able to get the optimized > > code generation for the PciBusDxe to remove all the code/data that is > > only used for PCI Enumeration. Then the PciBusNoEnumeration could be > > retired. > > > > Forgive my ignorance -- is it possible to change FixedAtBuild PCD during > runtime? Jordan had the idea to disable / enable PCI enumeration during > runtime, so that we can have one single binary for all OVMF users. > > > I have no issues with adding a PCD to make the PciBusDxe in the > > MdeModulePkg skip enumeration all together. > > > > Cool, thank you for confirming this. > > Wei.