On 04/10/19 03:06, Wu, Hao A wrote: > REF:https://bugzilla.tianocore.org/show_bug.cgi?id=1496 > > According to the DEC file in PcAtChipsetPkg, this commit adds the two > 8259-driver-related PCDs into the OvmfPkg DEC file. > > Please note that, instead of adding the two PCDs under section: > [PcdsFixedAtBuild, PcdsDynamic, PcdsDynamicEx, PcdsPatchableInModule] > > as in PcAtChipsetPkg.dec file, they are added in section: > [PcdsFixedAtBuild] > > in OvmfPkg.dec instead. > > Cc: Jordan Justen <jordan.l.jus...@intel.com> > Cc: Ard Biesheuvel <ard.biesheu...@linaro.org> > Cc: David Woodhouse <dw...@infradead.org> > Cc: Ray Ni <ray...@intel.com> > Signed-off-by: Hao Wu <hao.a...@intel.com> > Reviewed-by: Laszlo Ersek <ler...@redhat.com> > --- > OvmfPkg/OvmfPkg.dec | 26 ++++++++++++++++++++ > 1 file changed, 26 insertions(+) > > diff --git a/OvmfPkg/OvmfPkg.dec b/OvmfPkg/OvmfPkg.dec > index d59508db56..cc2a4909af 100644 > --- a/OvmfPkg/OvmfPkg.dec > +++ b/OvmfPkg/OvmfPkg.dec > @@ -122,6 +122,32 @@ [PcdsFixedAtBuild] > gUefiOvmfPkgTokenSpaceGuid.PcdGuidedExtractHandlerTableSize|0x0|UINT32|0x1a > gUefiOvmfPkgTokenSpaceGuid.PcdOvmfDecompressionScratchEnd|0x0|UINT32|0x1f > > + ## Pcd8259LegacyModeMask defines the default mask value for platform. This > + # value is determined. > + # 1) If platform only support pure UEFI, value should be set to 0xFFFF or > + # 0xFFFE; Because only clock interrupt is allowed in legacy mode in > pure > + # UEFI platform. > + # 2) If platform install CSM and use thunk module: > + # a) If thunk call provided by CSM binary requires some legacy > interrupt > + # support, the corresponding bit should be opened as 0. > + # For example, if keyboard interfaces provided CSM binary use legacy > + # keyboard interrupt in 8259 bit 1, then the value should be set to > + # 0xFFFC. > + # b) If all thunk call provied by CSM binary do not require legacy > + # interrupt support, value should be set to 0xFFFF or 0xFFFE. > + # > + # The default value of legacy mode mask could be changed by > + # EFI_LEGACY_8259_PROTOCOL->SetMask(). But it is rarely need change it > + # except some special cases such as when initializing the CSM binary, it > + # should be set to 0xFFFF to mask all legacy interrupt. Please restore the > + # original legacy mask value if changing is made for these special case. > + gUefiOvmfPkgTokenSpaceGuid.Pcd8259LegacyModeMask|0xFFFF|UINT16|0x3 > + > + ## Pcd8259LegacyModeEdgeLevel defines the default edge level for legacy > + # mode's interrrupt controller. > + # For the corresponding bits, 0 = Edge triggered and 1 = Level triggered. > + gUefiOvmfPkgTokenSpaceGuid.Pcd8259LegacyModeEdgeLevel|0x0000|UINT16|0x5 > + > [PcdsDynamic, PcdsDynamicEx] > gUefiOvmfPkgTokenSpaceGuid.PcdEmuVariableEvent|0|UINT64|2 > gUefiOvmfPkgTokenSpaceGuid.PcdOvmfFlashVariablesEnable|FALSE|BOOLEAN|0x10 >
Thanks for addressing my v1 comments! My R-b stands. Laszlo -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#38820): https://edk2.groups.io/g/devel/message/38820 Mute This Topic: https://groups.io/mt/31014308/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-