From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=134.134.136.24; helo=mga09.intel.com; envelope-from=hao.a.wu@intel.com; receiver=edk2-devel@lists.01.org Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 95B1D211F26AA for ; Wed, 3 Apr 2019 00:00:45 -0700 (PDT) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by orsmga102.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 03 Apr 2019 00:00:45 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.60,303,1549958400"; d="scan'208";a="139707682" Received: from shwdeopenpsi014.ccr.corp.intel.com ([10.239.9.8]) by fmsmga007.fm.intel.com with ESMTP; 03 Apr 2019 00:00:43 -0700 From: Hao Wu To: edk2-devel@lists.01.org Cc: Hao Wu , Jordan Justen , Laszlo Ersek , Ard Biesheuvel , David Woodhouse , Ray Ni Date: Wed, 3 Apr 2019 15:00:31 +0800 Message-Id: <20190403070036.1404-4-hao.a.wu@intel.com> X-Mailer: git-send-email 2.12.0.windows.1 In-Reply-To: <20190403070036.1404-1-hao.a.wu@intel.com> References: <20190403070036.1404-1-hao.a.wu@intel.com> Subject: [RFC PATCH v1 3/8] OvmfPkg/OvmfPkg.dec: Add 8259-related PCDs in OVMF DEC file X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Apr 2019 07:00:45 -0000 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. Cc: Jordan Justen Cc: Laszlo Ersek Cc: Ard Biesheuvel Cc: David Woodhouse Cc: Ray Ni Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Hao Wu --- OvmfPkg/OvmfPkg.dec | 26 ++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/OvmfPkg/OvmfPkg.dec b/OvmfPkg/OvmfPkg.dec index fb89ebf3ad..cb838422aa 100644 --- a/OvmfPkg/OvmfPkg.dec +++ b/OvmfPkg/OvmfPkg.dec @@ -128,6 +128,32 @@ 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|0x28 + + ## 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|0x29 + [PcdsDynamic, PcdsDynamicEx] gUefiOvmfPkgTokenSpaceGuid.PcdEmuVariableEvent|0|UINT64|2 gUefiOvmfPkgTokenSpaceGuid.PcdOvmfFlashVariablesEnable|FALSE|BOOLEAN|0x10 -- 2.12.0.windows.1