From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wr1-f65.google.com (mail-wr1-f65.google.com [209.85.221.65]) by mx.groups.io with SMTP id smtpd.web09.20.1608057408976906021 for ; Tue, 15 Dec 2020 10:36:49 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@nuviainc-com.20150623.gappssmtp.com header.s=20150623 header.b=msA/t3lv; spf=pass (domain: nuviainc.com, ip: 209.85.221.65, mailfrom: leif@nuviainc.com) Received: by mail-wr1-f65.google.com with SMTP id a12so20844378wrv.8 for ; Tue, 15 Dec 2020 10:36:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nuviainc-com.20150623.gappssmtp.com; s=20150623; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=ry5hTIRSgOka3xmKsLIN4tVc13aqymSip4S7tAkn8eE=; b=msA/t3lvImCpcmdup2X59+yywXi9x3KbhPVnkAlStGXcMRYrHAORzrH7FaCWPPHWHk 4VnPoZbVPZvEJIDlVDI4DwNkpB0CVInPj7YSSvnkboWpudF7o9hqQKR3ifuUJ0w4yjkH Ad9SfxYetbm5YD+QCn/TYODQoqgW7A0BKo9TalWwJ/DH4GLrUvB04dfeo4thA7u7fbG4 rpTYsgwnGrJqUh7riUvV33WdeQ5FAwbiyK6BYhwwh0rbxgk8Ev36zgygmo2jsbcUVaLo VUImf3o7bkx16/CIr7CweDPAM4Ncm5CqYreGXQXYwca8iJOwPcvYlixUNAcjp4tf1YwC rXwQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=ry5hTIRSgOka3xmKsLIN4tVc13aqymSip4S7tAkn8eE=; b=acTB2gzsnnIzsbtqk4q9ZJ/RvUoysQOcxBAyPEXZdkBCLqaqu+odBkr2nURXUN5vD0 ptPiWKWqoX0TJk7pALWhYzvPj67YGlXeHHLeVW/B6efwWhBO+iW9rZbt0oEqN9Nq//Az iikqPJac5xFeu+b0V+wIdcK8B0H14eraR7K88uYe7d9DjQ9DEO30qPyBkv34d4ArH4o6 urzZHGKFYtFQDPAjjM2XfLW2PrBh84QA/73NSqoDUvkn3XZzfVpijaOMOb0vNkteSAQm QChGHLlCYq0Hf/18rLilMHdBrIWDtQzx5NfMLjrgyNQS3ykeWkIBOASIla9g835BgDtn SBDA== X-Gm-Message-State: AOAM533TSNzoXIRHmV3wzZq1LDLkTVaTim5cLlDiwutAZ/mMdWEoEUa8 cgZ1atuwvsAxNNPlG6hX/aYCSg== X-Google-Smtp-Source: ABdhPJyLKxKPLFcaKKM6CV4LsE6bSxW+mlJNUrpSF8NWiptEHc+pInXDTQN/aIKR/kfg753Q/g+EHg== X-Received: by 2002:adf:d84e:: with SMTP id k14mr27120880wrl.104.1608057407499; Tue, 15 Dec 2020 10:36:47 -0800 (PST) Return-Path: Received: from vanye (cpc1-cmbg19-2-0-cust915.5-4.cable.virginm.net. [82.27.183.148]) by smtp.gmail.com with ESMTPSA id h29sm27319845wrc.68.2020.12.15.10.36.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 15 Dec 2020 10:36:47 -0800 (PST) Date: Tue, 15 Dec 2020 18:36:45 +0000 From: "Leif Lindholm" To: Rebecca Cran Cc: devel@edk2.groups.io, Michael D Kinney , Liming Gao , Zhiguang Liu , Ard Biesheuvel Subject: Re: [PATCH v4 00/10] ArmPkg,MdePkg: Add Universal/Smbios, and related changes Message-ID: <20201215183645.GB1664@vanye> References: <20201207175427.28712-1-rebecca@nuviainc.com> MIME-Version: 1.0 In-Reply-To: <20201207175427.28712-1-rebecca@nuviainc.com> User-Agent: Mutt/1.10.1 (2018-07-13) Content-Type: text/plain; charset=us-ascii Content-Disposition: inline High-level comment: Could you please add the two new drivers to the Components section of ArmPkg/ArmPkg.dsc, to make it possible to build them standalone? This will also require implementing an OemMiscLibNull. It would make sense to break out ArmPkg/Include/Library/OemMiscLib.h and add it together with the Null library implementation. / Leif On Mon, Dec 07, 2020 at 10:54:17 -0700, Rebecca Cran wrote: > Much of the data for the SMBIOS tables is generic, and need not be > duplicated for each platform. This patch series introduces > ArmPkg/Universal/Smbios, which is largely copied from > edk2-platforms/Silicon/HiSilicon/Drivers/Smbios and generates SMBIOS > tables 0,1,2,3,4,713,32 and uses a combination of PCDs and calls into a > new OemMiscLib to get information which varies between platforms. > > I plan to submit a patch against SbsaQemu to update it to use this new > functionality. > > Note: this series is based on top of the pending SmBios.h typo fixes > series. > > Changes from v3 to v4: > > - Incorporated changes based on v3 feedback. > - Improved code style to more closely match the coding standard. > - Added Doxygen comments. > - Removed the VersionInfo driver, instead integrating code into > Universal/Smbios > > Rebecca Cran (10): > ArmPkg: Add ARM SMC Architecture functions to ArmStdSmc.h > MdePkg: Update IndustryStandard/SmBios.h with processor status data > ArmPkg: Add register encoding definition for MMFR2 > ArmPkg: Add helper to read the Memory Model Features Register 2 > ArmPkg: Add helper function to read the Memory Model Feature Register > 4 > ArmPkg: Add helper to read CCIDX status > ArmPkg: Fix the return type of the ReadCCSIDR function > ArmPkg: Update ArmLibPrivate.h with cache register definitions > ArmPkg: Add definition of the maximum cache level in ARMv8-A > ArmPkg: Add Universal/Smbios, a generic SMBIOS library for ARM > > ArmPkg/ArmPkg.dec | 14 + > ArmPkg/Universal/Smbios/ProcessorSubClassDxe/ProcessorSubClassDxe.inf | 56 ++ > ArmPkg/Universal/Smbios/SmbiosMiscDxe/SmbiosMiscDxe.inf | 86 ++ > ArmPkg/Include/Chipset/AArch64.h | 4 + > ArmPkg/Include/IndustryStandard/ArmStdSmc.h | 13 + > ArmPkg/Include/Library/ArmLib.h | 10 + > ArmPkg/Include/Library/OemMiscLib.h | 95 +++ > ArmPkg/Library/ArmLib/AArch64/AArch64Lib.h | 6 + > ArmPkg/Library/ArmLib/Arm/ArmV7Lib.h | 6 + > ArmPkg/Library/ArmLib/ArmLibPrivate.h | 93 ++- > ArmPkg/Universal/Smbios/SmbiosMiscDxe/SmbiosMisc.h | 136 ++++ > MdePkg/Include/IndustryStandard/SmBios.h | 13 + > ArmPkg/Library/ArmLib/AArch64/AArch64Lib.c | 12 + > ArmPkg/Library/ArmLib/Arm/ArmV7Lib.c | 12 + > ArmPkg/Universal/Smbios/ProcessorSubClassDxe/ProcessorSubClass.c | 835 ++++++++++++++++++++ > ArmPkg/Universal/Smbios/SmbiosMiscDxe/SmbiosMiscDataTable.c | 61 ++ > ArmPkg/Universal/Smbios/SmbiosMiscDxe/SmbiosMiscEntryPoint.c | 178 +++++ > ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type00/MiscBiosVendorData.c | 92 +++ > ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type00/MiscBiosVendorFunction.c | 263 ++++++ > ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type01/MiscSystemManufacturerData.c | 35 + > ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type01/MiscSystemManufacturerFunction.c | 173 ++++ > ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type02/MiscBaseBoardManufacturerData.c | 45 ++ > ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type02/MiscBaseBoardManufacturerFunction.c | 201 +++++ > ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type03/MiscChassisManufacturerData.c | 51 ++ > ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type03/MiscChassisManufacturerFunction.c | 200 +++++ > ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type13/MiscNumberOfInstallableLanguagesData.c | 32 + > ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type13/MiscNumberOfInstallableLanguagesFunction.c | 154 ++++ > ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type32/MiscBootInformationData.c | 34 + > ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type32/MiscBootInformationFunction.c | 67 ++ > ArmPkg/Library/ArmLib/AArch64/AArch64Support.S | 3 + > ArmPkg/Library/ArmLib/AArch64/ArmLibSupportV8.S | 2 +- > ArmPkg/Library/ArmLib/Arm/ArmLibSupportV7.S | 4 + > ArmPkg/Library/ArmLib/Arm/ArmLibSupportV7.asm | 6 +- > ArmPkg/Universal/Smbios/ProcessorSubClassDxe/ProcessorSubClassStrings.uni | 23 + > ArmPkg/Universal/Smbios/SmbiosMiscDxe/SmbiosMiscLibStrings.uni | 21 + > ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type00/MiscBiosVendor.uni | 17 + > ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type01/MiscSystemManufacturer.uni | 20 + > ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type02/MiscBaseBoardManufacturer.uni | 20 + > ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type03/MiscChassisManufacturer.uni | 17 + > ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type13/MiscNumberOfInstallableLanguages.uni | 42 + > 40 files changed, 3149 insertions(+), 3 deletions(-) > create mode 100644 ArmPkg/Universal/Smbios/ProcessorSubClassDxe/ProcessorSubClassDxe.inf > create mode 100644 ArmPkg/Universal/Smbios/SmbiosMiscDxe/SmbiosMiscDxe.inf > create mode 100644 ArmPkg/Include/Library/OemMiscLib.h > create mode 100644 ArmPkg/Universal/Smbios/SmbiosMiscDxe/SmbiosMisc.h > create mode 100644 ArmPkg/Universal/Smbios/ProcessorSubClassDxe/ProcessorSubClass.c > create mode 100644 ArmPkg/Universal/Smbios/SmbiosMiscDxe/SmbiosMiscDataTable.c > create mode 100644 ArmPkg/Universal/Smbios/SmbiosMiscDxe/SmbiosMiscEntryPoint.c > create mode 100644 ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type00/MiscBiosVendorData.c > create mode 100644 ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type00/MiscBiosVendorFunction.c > create mode 100644 ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type01/MiscSystemManufacturerData.c > create mode 100644 ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type01/MiscSystemManufacturerFunction.c > create mode 100644 ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type02/MiscBaseBoardManufacturerData.c > create mode 100644 ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type02/MiscBaseBoardManufacturerFunction.c > create mode 100644 ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type03/MiscChassisManufacturerData.c > create mode 100644 ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type03/MiscChassisManufacturerFunction.c > create mode 100644 ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type13/MiscNumberOfInstallableLanguagesData.c > create mode 100644 ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type13/MiscNumberOfInstallableLanguagesFunction.c > create mode 100644 ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type32/MiscBootInformationData.c > create mode 100644 ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type32/MiscBootInformationFunction.c > create mode 100644 ArmPkg/Universal/Smbios/ProcessorSubClassDxe/ProcessorSubClassStrings.uni > create mode 100644 ArmPkg/Universal/Smbios/SmbiosMiscDxe/SmbiosMiscLibStrings.uni > create mode 100644 ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type00/MiscBiosVendor.uni > create mode 100644 ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type01/MiscSystemManufacturer.uni > create mode 100644 ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type02/MiscBaseBoardManufacturer.uni > create mode 100644 ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type03/MiscChassisManufacturer.uni > create mode 100644 ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type13/MiscNumberOfInstallableLanguages.uni > > -- > 2.26.2 >