From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (NAM11-DM6-obe.outbound.protection.outlook.com [40.107.223.94]) by mx.groups.io with SMTP id smtpd.web10.12349.1671599315935584931 for ; Tue, 20 Dec 2022 21:08:36 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="body hash did not verify" header.i=@os.amperecomputing.com header.s=selector2 header.b=bU18Z8AQ; spf=pass (domain: os.amperecomputing.com, ip: 40.107.223.94, mailfrom: nhi@os.amperecomputing.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Dc8gEkygS2dyO22YI3jOpBXwrgAhk8XYuBJ43amMqBJcf4zAZCM+nzzm2zgVITPI+cGW2jbgKAhMxSKjuyy9AxzSvtNJ0XUMOjfoPYB8dEcHL2vbJOesso3xjHYnIU9Xq5hU6KshWaXnYW/hxwfCCUOwsYvj0ySkTGkH+1XoPY2bP2y9sOR0W8kXu3JI49o4CdwfgxHO6JgZSW6ZqUN77cdiDdCFbys4Cy5hn4fgOuE671qa6wn/Jx9TMNsnkIw1y94S25rreHaXsrb4BTYEghfj/1V83JsO5I3f7RqkbtB6JowHJJ7fNX1yPG5PHLqOlPdh+fIOAXFHjWKysInZAA== 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=PN4wwBUg+aqfmZZu39zrGPaNpflc6JeN26WcYbjnIKk=; b=KJu6fTErl1e6pzkcFEVcEo4TqwXCYkwradTX/Dk7J0tS9IWcDGhtmYbawc29EAXpNRceSJoaBORgjIjMV/rmbk8i2zH8M5J1aju3p2l68BDLjB8mX6Bxrnbx7jurwDMG5fThnMEJeJ7M2YZInBkSMnsVKpW3MoQAIxg1BAQWOik0Lea6YnSuTPTkGhEie6CdTLa8+sKdIrwfSbG0LHgRt301o4asIyB499ACIb9kGlfC+X0okInpH/O7OZr/ujqv6bYPvUWGJMLCuDLT327OtpN8z0XeOgRr8zRjUi9r/3ryRvWZMjv5vdvkgfzLekO1JlORbzlNTf3Kyb7Y5ooWbA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=os.amperecomputing.com; dmarc=pass action=none header.from=os.amperecomputing.com; dkim=pass header.d=os.amperecomputing.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=os.amperecomputing.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=PN4wwBUg+aqfmZZu39zrGPaNpflc6JeN26WcYbjnIKk=; b=bU18Z8AQ8w9qxNWtRqw+ybPsLkOg2F3HZkR3/C2u1RleE3d9um6BV9xLkj8WR27cAPfh7p2i8Sossc76kP5NH+jGChzC8iTxj2DncOL0EZjWTmbP5UTuj4ndSuXBFaoUzJwk3a1SSwvB+ACwud0Wh8gL6LyXSP8nGhge5VwcLjA= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=os.amperecomputing.com; Received: from PH0PR01MB7287.prod.exchangelabs.com (2603:10b6:510:10a::21) by DM6PR01MB4796.prod.exchangelabs.com (2603:10b6:5:6a::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5924.16; Wed, 21 Dec 2022 05:08:32 +0000 Received: from PH0PR01MB7287.prod.exchangelabs.com ([fe80::d70e:926e:41bb:a73a]) by PH0PR01MB7287.prod.exchangelabs.com ([fe80::d70e:926e:41bb:a73a%5]) with mapi id 15.20.5924.016; Wed, 21 Dec 2022 05:08:31 +0000 From: "Nhi Pham" To: devel@edk2.groups.io CC: patches@amperecomputing.com, quic_llindhol@quicinc.com, ardb+tianocore@kernel.org, Vu Nguyen , Nhi Pham Subject: [edk2-platforms][PATCH 1/1] AmpereAltraPkg: Update Memory Type Information hob Date: Wed, 21 Dec 2022 12:07:58 +0700 Message-ID: <20221221050758.2298393-1-nhi@os.amperecomputing.com> X-Mailer: git-send-email 2.25.1 X-ClientProxiedBy: SI2PR02CA0007.apcprd02.prod.outlook.com (2603:1096:4:194::23) To PH0PR01MB7287.prod.exchangelabs.com (2603:10b6:510:10a::21) Return-Path: nhi@os.amperecomputing.com MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PH0PR01MB7287:EE_|DM6PR01MB4796:EE_ X-MS-Office365-Filtering-Correlation-Id: d616590f-71a9-4f85-c519-08dae3116778 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: I6OCnqTJCqNPGgBsyHPcF7sEEHH0Q6ORPDXF9iBtjppCirsY2Om4dXLbaktcyRl7dlxRpxvixmdPPDw+uR83SgJNT0Zi5yIfkrqOTYQUn09UZtpPclMzsUM9MAsBV9Ojo/DLrTyVf997a65FDXT/Cs1hU1KiSpoOA9Cgj4uVX+yVCCBUco9Y1cGIkKPztdSs3aZ2CfpY6Athnm6N/bPQ/71x08SN+/O4p2xpVFa0lIZMSB551g7X1bXKEVJ2pyIuNs4Ljv6edkhDKqM6eaB3hd14IKvqWa5K47d7U8YQFKq4GqTrclseEPwLyYVeOztu3+qNEM5MVbPOgGdAVzVIXALwg7vtVdXB/E5ktdLh/UFxENMW5eGxbZt2bXxLjQo38Z2W7bdV4YY83iHjoh4Pb4IXTIVta7xRw2zxLXyhTdUtEZvMTLZAHGbV5wZKO9I19ybo++shJhNBTd2UKQv1izOOEeXnZ6RsTVhbhDrqpzv4VDrtNqx5GDkHMd7DPUZIhqQw35WiywpW0X5dPUILJfs9P+p4ZCMyLWTjrU7jFMDvAfOzeWUn2tYgLSB2/FY99h2EIy6Xd0V4/u11wjdp8lJ1BINuSgBQAosPEGp54Hogs5QymcvdFzO+HqOsaLPKqdjRIUwNR4yfTgqbMIKd+y09I/isFP6x0x+7+VcTcrA8eIS/+OzuHq1W/ki9O+eOo9g8FqI3lb71HBY1C9Hi6A3r1CLdvShdc4OTlAeBPk+v2KSWsrUlU0nBYGp0pcIv X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH0PR01MB7287.prod.exchangelabs.com;PTR:;CAT:NONE;SFS:(13230022)(4636009)(366004)(376002)(136003)(346002)(396003)(39850400004)(451199015)(8936002)(41300700001)(66476007)(66946007)(66556008)(8676002)(4326008)(5660300002)(54906003)(6916009)(2906002)(316002)(52116002)(6486002)(478600001)(26005)(186003)(6666004)(86362001)(6506007)(1076003)(107886003)(6512007)(2616005)(38350700002)(83380400001)(38100700002);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?VEZLW+MzGq6r54JnDhRloDHA32013ptAJzICF2Ig47HiwU1Eg1mp7P9OaYhu?= =?us-ascii?Q?08nhFwvcEK4LtquLjrtlI1944CDjffsNTOjdQEEbQ3ezyNrzwQ9qACHQYLd8?= =?us-ascii?Q?ZqobjpLYj1npqnyjoL8gFXukw37+Qd3HKSywjGP2wbu1kieVxmybumjNM84k?= =?us-ascii?Q?ZguYBd5tEURWuWVtiWiczQZOHnvXA6mm0zks7bHmQXLTg5XHLHpH46OQaP5c?= =?us-ascii?Q?8sWzy3livej+PgbCj/73bFUV9O1IiaTcbLvlGZwrwsIozpEA+k+DFxtIelbo?= =?us-ascii?Q?IUcvoM9a5mEf2mh1qNXz271S/AQnD7NtEFVUdRIVEcS8UyQwIo8U2H68e3EY?= =?us-ascii?Q?BdQKW6ZmNdOyF3kd7sYpi2+TnKK4JWtj0uguKCOzS1AU5gIF7f+0blrFMJhT?= =?us-ascii?Q?MvHwgnksdczG4VAynqUVdAm8lXZ/LAeYZ2uEcqNESkGdQuI2hcJm5PETdR9i?= =?us-ascii?Q?6u31AP9M6ZlbobOiMTEz5FUxP74l2vcFcgkq1CFJ8Hfr2KEPwL1sEPmSVrFb?= =?us-ascii?Q?NI1FD3Qf+oHOqiu/WXHJLsBOopX6DwrXLJYbMhg3cZp24MkM9qfW1KZzoKsA?= =?us-ascii?Q?B/tSPzRrSpF2TbdD3BwySniUTRWscG9BYBko32cLCqDYa1B78ygMBW3ehXax?= =?us-ascii?Q?W+rDg/pDUWQiNvbzKOw2YxFcT+xDmwndiCud34jY/6jP5Ogf08q2xphBt00D?= =?us-ascii?Q?t7cke5poN7WUN1yydEE2O0Wc8cipJUhOrVXhqRT8u9+L42EsYOie1KacxfX/?= =?us-ascii?Q?L6osv8FuxB7qcjRbq7nnI4WyXaqCnQ90WWAIBDCtS+5C2e0PIyMpPexOTC0Z?= =?us-ascii?Q?MOLsdbiLw6B/4V7uzXZ33WuYp0ohe0iYlPuVjJeQ5e0vQOspjhs9mEGSce5w?= =?us-ascii?Q?KIc4mA7wGE8ggSZcz8Ha7ppZGee9AN7/AzZsSxxtnYGRiZCx9t+Ogyf/d/gk?= =?us-ascii?Q?3lQL7vpKBurJfShkC0hlVwWbM6P5hA6Tsx777Mcv1TN7OF2IO6UaggAGBWbq?= =?us-ascii?Q?cMRxcLJeZhShCTyQ7WD63Tz2C0ZQ8b1HAxFDCXhnE+hh9BIPDOkfQrYmf+yN?= =?us-ascii?Q?sFyeL8xvcqX+Douk7FuEI54Iyurk9FsIoY7n9/VCXVXcj5X4lo5oUe2XSoeq?= =?us-ascii?Q?+xMW4cUKyGo5g6gDIUD0bhch6BSoeJB5kG69kSXlCBhVvTkrEGnrwvQg9rBX?= =?us-ascii?Q?QkyeUQBKRO4CxriFrRe/YHSVJBPZbh2EwH2Bh1u0Qd2xMDp7iBiUP/E/Pj3A?= =?us-ascii?Q?mJr0S/DYBSGZlTpt4psJ9O6CBpkSYtVovB0SDsvXdemIcHKBYRf+FCwJlVKz?= =?us-ascii?Q?iURn1ePNMxNtFBWOteTuhbXYmyGXjuAdAGML8MFxj2zJKctr3G/iujbCwGwG?= =?us-ascii?Q?km7pQLfShbky2Lg0iNZ727D/b7TymouQ0iDjN8GUoO+o9s+THfFoHJwTl41G?= =?us-ascii?Q?6Rr1lZLHxSNxGeKaeOatFWtf5nJfWNd4p6Lk6SiZYGngQPghlMf3NGMWRVz4?= =?us-ascii?Q?Dfn+fE2v4jR5VOUZYhFO2CD0gahFrB5rBRoiyp676Gt+CNiqcBhUwFZknp+s?= =?us-ascii?Q?mHHzPH0ycO6vD1ZFAn52quTL4Mf4iA8XI4dya1mNuiqs5qh9errUu+ejk3Nl?= =?us-ascii?Q?ODhG73YK0oZQ6sz15r4L9Gc=3D?= X-OriginatorOrg: os.amperecomputing.com X-MS-Exchange-CrossTenant-Network-Message-Id: d616590f-71a9-4f85-c519-08dae3116778 X-MS-Exchange-CrossTenant-AuthSource: PH0PR01MB7287.prod.exchangelabs.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Dec 2022 05:08:31.8919 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3bc2b170-fd94-476d-b0ce-4229bdc904a7 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: /Wgyf6AEXGdCBRW4U4Xpok6beGVhfJHGgvhJfoaGE31V2+qz7cYLxG30KQ0MDnjBED4BPZDEi56EBJ6bdy6ThynEz1xKUSP9Sa/PVgrzNIw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR01MB4796 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain From: Vu Nguyen The hob was built but wasn't consumed yet. This change will let the DXE Main shift the memory space consumed by DXE modules to the region specified by the PcdSystemMemoryBase and PcdSystemMemorySize. Signed-off-by: Nhi Pham --- .../Ampere/AmpereAltraPkg/AmpereAltraPkg.dsc.inc | 16 ++++++++-------- .../Library/MemoryInitPeiLib/MemoryInitPeiLib.c | 10 ++++++++++ 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dsc.inc b/Silicon= /Ampere/AmpereAltraPkg/AmpereAltraPkg.dsc.inc index 1e378e37e2b8..bf23edc50349 100644 --- a/Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dsc.inc +++ b/Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dsc.inc @@ -371,14 +371,14 @@ [PcdsFixedAtBuild.common] # (the memory used, and the free memory that was prereserved # but not used). # - gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIReclaimMemory|0 - gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIMemoryNVS|0 - gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiReservedMemoryType|0 - gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesData|80 - gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesCode|65 - gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesCode|400 - gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesData|20000 - gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderCode|20 + gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIReclaimMemory|0x10 + gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIMemoryNVS|0x60 + gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiReservedMemoryType|0x30 + gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesData|0x20 + gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesCode|0x30 + gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesCode|0 + gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesData|0 + gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderCode|0 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderData|0 =20 gArmTokenSpaceGuid.PcdVFPEnabled|1 diff --git a/Silicon/Ampere/AmpereAltraPkg/Library/MemoryInitPeiLib/MemoryI= nitPeiLib.c b/Silicon/Ampere/AmpereAltraPkg/Library/MemoryInitPeiLib/Memory= InitPeiLib.c index 98aa1e77b3b4..cdefa521dab3 100644 --- a/Silicon/Ampere/AmpereAltraPkg/Library/MemoryInitPeiLib/MemoryInitPeiL= ib.c +++ b/Silicon/Ampere/AmpereAltraPkg/Library/MemoryInitPeiLib/MemoryInitPeiL= ib.c @@ -15,6 +15,11 @@ #include #include =20 +VOID +BuildMemoryTypeInformationHob ( + VOID + ); + STATIC VOID InitMmu ( @@ -89,5 +94,10 @@ MemoryPeim ( =20 InitMmu (MemoryTable); =20 + if (FeaturePcdGet (PcdPrePiProduceMemoryTypeInformationHob)) { + // Optional feature that helps prevent EFI memory map fragmentation. + BuildMemoryTypeInformationHob (); + } + return EFI_SUCCESS; } --=20 2.25.1