From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by mx.groups.io with SMTP id smtpd.web10.83993.1682903971921960388 for ; Sun, 30 Apr 2023 18:19:32 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=FPv99OQe; spf=pass (domain: intel.com, ip: 192.55.52.120, mailfrom: james.lu@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1682903971; x=1714439971; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=drhD6dH/WWyJ+mJMkvjqbUmfw9wDTVwGZ5kg2t1Hug4=; b=FPv99OQeK4biWLW2B10i7bOTACKdn2f7qMuPl4PzmtjzK1H8dW7Hhwdu FSglhZZUdy0bUoyFgnPTGD7MbDTF62qwQfStMhUJsHZ3Vyh0gaxae1Atx YJoKYB6CRvQrDESxSRn5A1FRIw/lfqCIhB0DULFs+sKLQsi9TOu5qfakK eS60H0g7myzbQ9rJYX9ndYG82AuQ2a1xILF87wxlg50Ri5NorZkQbmqJP 79pPGt5gG1BC/648PgIbLPLIIXWEQTuw5dvRGDMYmQK5xd7ztgw5PRNaM IbXKtES0fxAa5Z5YFpoTnj9DQFHcMBIpBJ79pgq0YO3kEpUWZFoDOzfKg A==; X-IronPort-AV: E=McAfee;i="6600,9927,10696"; a="346872984" X-IronPort-AV: E=Sophos;i="5.99,239,1677571200"; d="scan'208";a="346872984" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Apr 2023 18:19:31 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10696"; a="695633391" X-IronPort-AV: E=Sophos;i="5.99,239,1677571200"; d="scan'208";a="695633391" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by orsmga002.jf.intel.com with ESMTP; 30 Apr 2023 18:19:31 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Sun, 30 Apr 2023 18:19:30 -0700 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23 via Frontend Transport; Sun, 30 Apr 2023 18:19:30 -0700 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.40) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.23; Sun, 30 Apr 2023 18:19:30 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cFganNnQcRP0XmYxMD50+voenpULjWVxbXEbrrIsBmw56tkRN3Z9ZzVC0mRKSVjY7t3bEtY3fJ5wgPSFR3FN53R2Mjb7nlaM2cfuwp4yJogXQRD4N0VLVcCjbSy3eekVx0w2Xc3DQGvYh/9DLplZ2U/JJpzg/Z2+FSX+IAZxLliniZpXMEmOdVs+LlIOmbg5Hl1Kf4dm7t/q557yEVZoh6WOQC18/IyYQoSP60ceEW+5R0uKbZsJFS/4i8WP6qyes0bhpSoMEsHVnyI8oHhflq5bSX34B+buBD855Y/H9rRG8BIoTW3oboiP+6+Y+e6k58RiE+l+S2xfHF9kNk0Log== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=wTk6LQ4DykAGshcXn8yFUHUzmD6iW19fLsharsa7gI0=; b=CykOp2Az2DqEsmq43Kix5Jrp9fG0RTeMPCb+lLcN5Nfd3cnw26X4RHvMDOHOSDxQ86JhESqpgc+2q4TWQ/RlyxIhZ9Z8kXr0p1OMB1GzS4Om16XtF1omhBBZwAEfDTCxvnmcNeNUp1cDX2VkghIiOT49ISeUkTTDVX4ENGPLxOpgT793SGkI3v3T8PJiDhptlwblcq6z91ywhAwJ7vEf0uHxvMzQVcISTeXK7Cug2PlKGFZEvSoyQ9yoIMdwjSOoDLT3F3NSpPpoN+CBNanOVEaQK7zKJB68vhXGKxmmmXmVHdnv5ld8Yx8o93MmU9hSQU4QgX2ijw1xoJCEjEGh1g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from CH3PR11MB7819.namprd11.prod.outlook.com (2603:10b6:610:125::20) by PH0PR11MB7494.namprd11.prod.outlook.com (2603:10b6:510:283::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6319.33; Mon, 1 May 2023 01:19:28 +0000 Received: from CH3PR11MB7819.namprd11.prod.outlook.com ([fe80::6cff:33a5:d30b:9ddb]) by CH3PR11MB7819.namprd11.prod.outlook.com ([fe80::6cff:33a5:d30b:9ddb%5]) with mapi id 15.20.6340.028; Mon, 1 May 2023 01:19:28 +0000 From: "Lu, James" To: "devel@edk2.groups.io" , "dhaval@rivosinc.com" CC: "Dong, Guo" , "Ni, Ray" , "Rhodes, Sean" , "Guo, Gua" Subject: Re: [edk2-devel] [PATCH v4 2/2] UefiPayloadPkg: Move INT prog outside common flow Thread-Topic: [edk2-devel] [PATCH v4 2/2] UefiPayloadPkg: Move INT prog outside common flow Thread-Index: AQHZVzhqH9ELFsSgc0iHWXDbnkqvBK9E52Lg Date: Mon, 1 May 2023 01:19:28 +0000 Message-ID: References: <20230315121913.119025-1-dhaval@rivosinc.com> <20230315121913.119025-3-dhaval@rivosinc.com> In-Reply-To: <20230315121913.119025-3-dhaval@rivosinc.com> Accept-Language: en-001, en-US, zh-TW X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CH3PR11MB7819:EE_|PH0PR11MB7494:EE_ x-ms-office365-filtering-correlation-id: 9f35132f-c68c-4b08-584f-08db49e21bd1 x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 2lRqPaGYB+Ir+vn2//MreNoXGZiK8nScS+J0fsXeRy/tv20JYYK2YbIy/bkoe6tJ5JRAxg7HY1Yr8g/Won57wCpHk7cDbwIKRs2/PJDVbHEwpqDL2oE0zRqqF/6GdodFjWnuE0QC4af0JyqoCidxlF2rlhd82Kzz5HQljgd3a/zIpIUBHXBQ6pJzrDoM2rLdQD1gMQGhsloRc2f80CRX8UVRY7EURgFemYltvLRLltaHjDTlpK5GjiNH/DvUKicklUYUphGr0b6oz4gy6Y/SyWCesxYld47E+IcvCjBnblFdyOKrOPOrvBFHMY4/rYdWcd0WOnZFuXKDBunk+JZiD4wYNZb7N3g4wuDlOiE6+6LH9uaceekNgHWrp+7tkfTiaogXuBcNiN2bC1hLlFGdJkZGF5GjhV6t+KZMLf42of2QHFkPlqDbGtiUZXG70tbpPyVp6LXa4QSpUN90HIYhCTxIsJp4HuRNmkbhDsgopv393ajNOLbvlH32pzg6fVAvmmCh8g4ClZBpmFFR8w8WPWNdwQQdm5ja7bqwq8AHN9kll3L3f6drQv52n6rxrO+o1Fzv38GBMySwimTSaMqegT1WIxX+K+bFDXmu4ELhzzJrODPgATrWWfJlEEFt0FnqGTipp6xO8DT872UXFP0kYA== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH3PR11MB7819.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(366004)(376002)(396003)(39860400002)(136003)(451199021)(19627235002)(478600001)(66899021)(110136005)(86362001)(54906003)(966005)(107886003)(186003)(53546011)(9686003)(316002)(55016003)(33656002)(71200400001)(66446008)(82960400001)(64756008)(66476007)(66556008)(76116006)(6506007)(83380400001)(4326008)(2906002)(66946007)(41300700001)(122000001)(38100700002)(8676002)(7696005)(26005)(38070700005)(5660300002)(8936002)(52536014);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?sZGqFmF49My0VX5/am9g64JvUmpAruE14dugjF8HX6+Sg4HiYWSFXVDzKVuL?= =?us-ascii?Q?e2aviXUlMlGsh0YlL7oniSMQ9iyOYdSELegoFZtJggrtjLeiO9NVHVXWCNQ2?= =?us-ascii?Q?ew0TdS5i8r/tbgBUDVGLvPtjfzeQSg2Az/RuQ2ozAFc0aGR8rvUeb2rLiYZ8?= =?us-ascii?Q?MhQSJv5CZfL0UgOKyaCmK3qv8BfUHB3m2mjwsfCo7h9P3Wt4/EGPvmrdWede?= =?us-ascii?Q?AMfyKbk7HTC2quE4RnhjoH8hW3INk1s5T3LsDnKa3+k15bRlF6u1NRfzICur?= =?us-ascii?Q?KAeXKz0QXr+PdVQsBNJ3fVYW4r+OZoFiFEXHfkXrv/Os+Uj1ellf1fyMDskE?= =?us-ascii?Q?KxnyM1gjTNnDO95C5VgyfdOCG8jxgyQ1t1NwifrsdwHYapc8MaOQGJv3v1ps?= =?us-ascii?Q?YqENhkhC3Qp4BBuk5SDnXLn4Ycmg/enaP3TGo49PhI4FFhj/zHUpnORAIvEH?= =?us-ascii?Q?0oATq1x7c29sx0QI2axbT1V+DypAiP9rM4IIgtuLHY8lHJuZ+GseX+S1f78W?= =?us-ascii?Q?+d676RUrFg/LPJpb6UTQQEP0Q/7GW35pKNh869X7wJN9AWJVBb65TuIUmxZW?= =?us-ascii?Q?VvVQdSwuDqLy3UColJ87q/IPbdqkxEjoSbUT8r112ddx0ilTBZ5VvkKmsB81?= =?us-ascii?Q?3Ke3aMjKloe8FaR92XBKVUz7dtQOCF/yxLY4AiKvfoanJ2Wuq2ivoVRcOgVS?= =?us-ascii?Q?vtnWdQFZuxFCF17fhwniyN4cEvYSghnoLlbT5631HQywNAiyhmjEgeGcKIWC?= =?us-ascii?Q?UADXbKUqwe6+C2iEhnVfDzTriDiJNoy4AePphOxY/FjI0s/zq6mZw8F9H1zP?= =?us-ascii?Q?vPP3AIjIdgYnEQC00Im75UaruFMkoDImkvoP1VNHevNuRsLAdvMpkT/NA1r3?= =?us-ascii?Q?WlW8QKovWeFEGivKiKjmj2O4LepWth15jZGuimyMJea9HOcyTj/sI5Kr4u/t?= =?us-ascii?Q?LgBcpyUQ5QV8Zv115zsFIoBxUwhkfKY5xopOMam0VPFEo1sGTmuUn0lhTSVm?= =?us-ascii?Q?MWkMjLzJfCSbwZeyJTzPj5G9JpzKABLCilS2kkfOUApQAzpJuqzkVifxBuZh?= =?us-ascii?Q?RoDShZb8mCmOkblGb/4TlU+xc1lT1gl6h0vtv7dSo6gYP8JoCWqLbG6GE8Fw?= =?us-ascii?Q?Zq3vKyt4mgYOAPnOazTAFHy7OuRJhbrE8JAWX2zQM75wxldlyXCl1ayMLcrj?= =?us-ascii?Q?yTsiUQSOKQA6r2abU5MNxYzvBN0ETMNbV4bGkRX70TGdzz0uLtHwSkaGnYdP?= =?us-ascii?Q?OP7G0ciUebwGroIyVA7n0ddNsWvuf/rp9JVBN6VUz0aAGrHmAnNlCt71rOVI?= =?us-ascii?Q?R18YKRQBMIdZbW1WeB373kfuSMZrYDeWxvpAa9DilSturFY6V/EJuk+RW7M1?= =?us-ascii?Q?WpaMvUTYeCTAFvcijnfTrrwVia8yQFMeWaUY+v9aLnfIYye/2FAzwp6FIeJp?= =?us-ascii?Q?98AOMcNLSWHT62DwEsgTSlETQvH3dOpME+Qvgs5TPyYNl+OCmK9Ng/PsTYgC?= =?us-ascii?Q?m6k8+tvl2GeawgH11MQ6cqmhTvl4Vv2ydy46TlKwoTTGIteOi5rd+XyzlVn9?= =?us-ascii?Q?FlfPLoAYiUcXQSJ71d46MBHodP+k9bsia0o+5G5Q?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CH3PR11MB7819.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9f35132f-c68c-4b08-584f-08db49e21bd1 X-MS-Exchange-CrossTenant-originalarrivaltime: 01 May 2023 01:19:28.1145 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: XPG5tQO3R8a1rthnYGCzCg3KhajPC9XZiAfqnzkapIchna0+KCOIXO805FsOrc6XhL6Ojn8g6QiaRZMOnTZK3A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB7494 Return-Path: james.lu@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Reviewed-by: James Lu Thanks, James -----Original Message----- From: devel@edk2.groups.io On Behalf Of Dhaval Sharm= a Sent: Wednesday, March 15, 2023 8:19 PM To: devel@edk2.groups.io Cc: Dong, Guo ; Ni, Ray ; Rhodes, Sea= n ; Lu, James ; Guo, Gua Subject: [edk2-devel] [PATCH v4 2/2] UefiPayloadPkg: Move INT prog outside = common flow 8259 is very arch specific programming. It needs to be moved out to the res= pective arch flow. Added in both x64 and x32 paths Test: Able to boot UEFI shell with Coreboot Tianocore payload on x86 qemu Cc: Guo Dong Cc: Ray Ni Cc: Sean Rhodes Cc: James Lu Cc: Gua Guo Signed-off-by: Dhaval Sharma Reviewed-by: Gua Guo --- Notes: v3: - Added legacy INT intialization to X64 path as well v4: - Updated reviewed-by tag UefiPayloadPkg/UefiPayloadEntry/Ia32/DxeLoadFunc.c | 6 ++++++ UefiPayloadPkg/UefiPayloadEntry/UniversalPayloadEntry.c | 6 ------ UefiPayloadPkg/UefiPayloadEntry/X64/DxeLoadFunc.c | 6 ++++++ 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/UefiPayloadPkg/UefiPayloadEntry/Ia32/DxeLoadFunc.c b/UefiPaylo= adPkg/UefiPayloadEntry/Ia32/DxeLoadFunc.c index 9d2bfb2fa654..d41e5024b4a1 100644 --- a/UefiPayloadPkg/UefiPayloadEntry/Ia32/DxeLoadFunc.c +++ b/UefiPayloadPkg/UefiPayloadEntry/Ia32/DxeLoadFunc.c @@ -271,6 +271,12 @@ HandOffToDxeCore ( // Initialize floating point operating environment to be compliant with = UEFI spec. InitializeFloatingPointUnits (); =20 + // + // Mask off all legacy 8259 interrupt sources // + IoWrite8 (LEGACY_8259_MASK_REGISTER_MASTER, 0xFF); + IoWrite8 (LEGACY_8259_MASK_REGISTER_SLAVE, 0xFF); + // // Clear page 0 and mark it as allocated if NULL pointer detection is en= abled. // diff --git a/UefiPayloadPkg/UefiPayloadEntry/UniversalPayloadEntry.c b/Uefi= PayloadPkg/UefiPayloadEntry/UniversalPayloadEntry.c index 07f4c1d29686..45127689a24b 100644 --- a/UefiPayloadPkg/UefiPayloadEntry/UniversalPayloadEntry.c +++ b/UefiPayloadPkg/UefiPayloadEntry/UniversalPayloadEntry.c @@ -478,12 +478,6 @@ _ModuleEntryPoint ( Status =3D UniversalLoadDxeCore (DxeFv, &DxeCoreEntryPoint); ASSERT_EFI_ERROR (Status); =20 - // - // Mask off all legacy 8259 interrupt sources - // - IoWrite8 (LEGACY_8259_MASK_REGISTER_MASTER, 0xFF); - IoWrite8 (LEGACY_8259_MASK_REGISTER_SLAVE, 0xFF); - Hob.HandoffInformationTable =3D (EFI_HOB_HANDOFF_INFO_TABLE *)GetFirstHo= b (EFI_HOB_TYPE_HANDOFF); HandOffToDxeCore (DxeCoreEntryPoint, Hob); =20 diff --git a/UefiPayloadPkg/UefiPayloadEntry/X64/DxeLoadFunc.c b/UefiPayloa= dPkg/UefiPayloadEntry/X64/DxeLoadFunc.c index 84a6112ce64a..1dfb7459e85a 100644 --- a/UefiPayloadPkg/UefiPayloadEntry/X64/DxeLoadFunc.c +++ b/UefiPayloadPkg/UefiPayloadEntry/X64/DxeLoadFunc.c @@ -43,6 +43,12 @@ HandOffToDxeCore ( // Initialize floating point operating environment to be compliant with = UEFI spec. InitializeFloatingPointUnits (); =20 + // + // Mask off all legacy 8259 interrupt sources // + IoWrite8 (LEGACY_8259_MASK_REGISTER_MASTER, 0xFF); + IoWrite8 (LEGACY_8259_MASK_REGISTER_SLAVE, 0xFF); + // // Clear page 0 and mark it as allocated if NULL pointer detection is en= abled. // -- 2.40.0.rc0.57.g454dfcbddf