From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pf1-f181.google.com (mail-pf1-f181.google.com [209.85.210.181]) by mx.groups.io with SMTP id smtpd.web10.5111.1686257079084514513 for ; Thu, 08 Jun 2023 13:44:39 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="signature has expired" header.i=@gmail.com header.s=20221208 header.b=DGu5QRdf; spf=pass (domain: gmail.com, ip: 209.85.210.181, mailfrom: kuqin12@gmail.com) Received: by mail-pf1-f181.google.com with SMTP id d2e1a72fcca58-64d44b198baso822046b3a.0 for ; Thu, 08 Jun 2023 13:44:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686257078; x=1688849078; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=7I/d56sn3MeAO0NGrKoDw/71SnHWOSHBtz/kAlxxOIU=; b=DGu5QRdf7G5eKA+OO4o7PiI2Iy3AUcbRXEXdOVG7VeYwLN1rxBsleEhBFKaUqv0yDr 6XfyFlE/XGU0thCMwY+zsjIHbPYz4htMRVGCEKvoVDOTN4AAZZppx8W+fkIUAVoifRs9 MSXtGn/4rte4OlF/c4x4CHQ54Ub6cpWatYypROjSY6QmrKJpy/VBg13oza6CHmRu7B+J 6b/m99nW7iOTN0Kh0bjd/ooLWQc9Sv0h1H3uxB69fQaKi0qQ94uvpEyinxnyiebMG3Rv FQEOU7fWYzkLdWFtjLN4sdX3Ty4/1DEVsyy/1GRpPZcQ2/QTfMZSYckotnkuCfFpOmKJ 98uw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686257078; x=1688849078; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=7I/d56sn3MeAO0NGrKoDw/71SnHWOSHBtz/kAlxxOIU=; b=h7P7HD5TxqI+rffvvkH1qchLdR9lSwVc3+MMwlxomsqflGe0pW3AN/KT0zhrNNgcOS PkMhFrg6/o9Bm0q98sTf0o3cap8mTlrcfjzE/3F9XnWVNNvGxUfEvzmG/ZaDJtlJSd8g jGW93Ww6/QHIr2MrGl3OqmW2myHmxPniR4GrpOly/XKqnGPnh+UyzO1h9uTgfjpj93JQ NnaVzgwZE9S7Ft2IMMG+zmj0lBxhAMDis0EYXg8xQLlxk2KgKH9Zq2QjUVoA8bfWZD1X chAzQ/T2ig5XVa79WzcuHGpexKvnxiFL95ArYyM7fl5vF+W3ddOmDO8RW2BsZQvLsZQd 7UqA== X-Gm-Message-State: AC+VfDyXuPF1J1rVU72/CNJW8crg7g0k6sGhSorzcAvNM5mblrJnXgXh +ZO1wnCtpA9vbJCTPFr0QiFnsM+PSFs= X-Google-Smtp-Source: ACHHUZ4shqD9THfoEDY6CRMWwbXz6yA2YbMRyIVmei/uuZo4prDYXRqKrtskxFTX2GG3atFdb888Hw== X-Received: by 2002:a05:6a00:1f9e:b0:657:622b:21b5 with SMTP id bg30-20020a056a001f9e00b00657622b21b5mr2718276pfb.12.1686257078225; Thu, 08 Jun 2023 13:44:38 -0700 (PDT) Return-Path: Received: from MININT-0U7P5GU.redmond.corp.microsoft.com ([2001:4898:80e8:2:fc6a:9362:be2c:efe5]) by smtp.gmail.com with ESMTPSA id k15-20020aa7820f000000b0065e279c5c2csm1450767pfi.181.2023.06.08.13.44.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jun 2023 13:44:37 -0700 (PDT) From: "Kun Qin" To: devel@edk2.groups.io Cc: Hao A Wu , Liming Gao , Jian J Wang , Leif Lindholm , Ard Biesheuvel , Sami Mujawar Subject: [PATCH v1 0/2] Support MM based variable services in PEI for ARM Date: Thu, 8 Jun 2023 13:44:32 -0700 Message-Id: <20230608204434.2325-1-kuqin12@gmail.com> X-Mailer: git-send-email 2.40.1.windows.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4464 As of today, there has been a void in the variable service in PEI phase on ARM systems that support PEI phase and standalone MM hosted variable service. This change adds the support through: 1. Add MM communication services in PEI phase for ARM platforms. This module is based on SMC calls to standalone MM environments, similar to "ArmPkg/Drivers/MmCommunicationDxe". 2. A service module that installs `gEfiPeiReadOnlyVariable2PpiGuid` based on step 1. Note that this driver will not have special dependency on ARM specific code, thus will be ideally added to MdeModulePkg. Patch v1 branch: https://github.com/kuqin12/edk2/tree/arm_var_pei_v1 Cc: Hao A Wu Cc: Liming Gao Cc: Jian J Wang Cc: Leif Lindholm Cc: Ard Biesheuvel Cc: Sami Mujawar Kun Qin (2): ArmPkg: MmCommunicationPei: Introduce MM communicate in PEI MdeModulePkg: Variable: Introduce MM based variable read service in PEI ArmPkg/Drivers/MmCommunicationPei/MmCommunicationPei.c | 178 +++++++++ MdeModulePkg/Universal/Variable/MmVariablePei/MmVariablePei.c | 381 ++++++++++++++++++++ ArmPkg/ArmPkg.dsc | 2 + ArmPkg/Drivers/MmCommunicationPei/MmCommunicationPei.h | 76 ++++ ArmPkg/Drivers/MmCommunicationPei/MmCommunicationPei.inf | 41 +++ MdeModulePkg/MdeModulePkg.dsc | 1 + MdeModulePkg/Universal/Variable/MmVariablePei/MmVariablePei.h | 134 +++++++ MdeModulePkg/Universal/Variable/MmVariablePei/MmVariablePei.inf | 43 +++ 8 files changed, 856 insertions(+) create mode 100644 ArmPkg/Drivers/MmCommunicationPei/MmCommunicationPei.c create mode 100644 MdeModulePkg/Universal/Variable/MmVariablePei/MmVariablePei.c create mode 100644 ArmPkg/Drivers/MmCommunicationPei/MmCommunicationPei.h create mode 100644 ArmPkg/Drivers/MmCommunicationPei/MmCommunicationPei.inf create mode 100644 MdeModulePkg/Universal/Variable/MmVariablePei/MmVariablePei.h create mode 100644 MdeModulePkg/Universal/Variable/MmVariablePei/MmVariablePei.inf -- 2.40.1.windows.1