From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f176.google.com (mail-pl1-f176.google.com [209.85.214.176]) by mx.groups.io with SMTP id smtpd.web08.68.1609801152621021620 for ; Mon, 04 Jan 2021 14:59:12 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@nuviainc-com.20150623.gappssmtp.com header.s=20150623 header.b=lWN02yan; spf=pass (domain: nuviainc.com, ip: 209.85.214.176, mailfrom: rebecca@nuviainc.com) Received: by mail-pl1-f176.google.com with SMTP id g3so15345099plp.2 for ; Mon, 04 Jan 2021 14:59:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nuviainc-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=b9RNuvmo8XvtVLpoUdeAOt5ZIbLSSakqU5E8TZqT/mg=; b=lWN02yanX4cCq/zyjzhnAhEg6zNBjuXHksYBZXSEvJyYOUIvNtISQdpo2VrOsu49Wb 5YWCZJbv5W2nvyksFMJhII45SawdgRXJxwwWRn0zfcW667RDcxFtBKHd25iMejPNd3R9 f477JF8UXxm2BjepvT/9V6fuLRMD7DoP7YZEJgTRQHiSfeRLAS4npDTxbaoZsrhMV1tt JrjhhMG6HJkpW+qBNV7Lh0WIyI+qW9FX1Sxi0o5+Mdi2R8jvYH0Gy/Zl7a374G0vIhSL g1MsHAqXAh7Obg0L3fsys3/jDtF1REwm69dDBLS+meiRoXi9f9RD/w3N8gybH4gcTwfy SI4w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=b9RNuvmo8XvtVLpoUdeAOt5ZIbLSSakqU5E8TZqT/mg=; b=PfzzBdwKX9vyqzZk2XIGK+1JbItGrKl0FjEe2kh/oPaZ+ywdKOtNUcYgrd4N/3xN85 HgH5O2EOI/yuf1mr9xtxsdgvSK/GeeoSWBE/yVjkVcf+9WGZRjHU4oSUvJtwgbJWxbyK hWdMc1NQeurcRoq4p3a2+8A3QEkcNA5odIqYBzX1WqWdMcq43w1/d4xKfFByBzLtLTNe qwyO/+kBUAgyld76rdzRtJc3rdIo4YO10CdjmriSJn23Y3lGa75MVuI9IuLQU5QfsSBe U+3MZbvYg+VvfmsTUrX0Gc3YhoPpp/GM6GPNjMNa46z9/Hp7yguNzZFqqRRPZ4Iy53EK InnA== X-Gm-Message-State: AOAM533RNhY6z0gsFv7Yav5s+r1vLs+bBi1nNM8EYGrY7ceQgYS0Dkta T3sJTQigF9SyxRe7T7sWq5kb1e1OER2KgraZIs6XMn5S8i0Kjb0OhYmSbKfZ3MyzeDMjZPtl1ge n0zCoBSO+9+PLAQMPsREz2EUgIEfNhgmRBjW2+WqONVdurRocciJE4d9Rexz5Em6hyluyHaD2 X-Google-Smtp-Source: ABdhPJyHlbxZAoS6PWJGzHonR6uoPJEbMa1M8OCTjR0oNv21FHhzKA0MzjG81hB46vto4Ph+u3hRtg== X-Received: by 2002:a17:90a:7087:: with SMTP id g7mr1096474pjk.200.1609801151896; Mon, 04 Jan 2021 14:59:11 -0800 (PST) Return-Path: Received: from cube.nuviainc.com (c-174-52-16-57.hsd1.ut.comcast.net. [174.52.16.57]) by smtp.gmail.com with ESMTPSA id x143sm64185289pgx.66.2021.01.04.14.59.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 04 Jan 2021 14:59:11 -0800 (PST) From: "Rebecca Cran" To: devel@edk2.groups.io Cc: Rebecca Cran , Leif Lindholm , Ard Biesheuvel , "nd @ arm . com . Sami Mujawar" , Liming Gao , Michael D Kinney , Zhiguang Liu Subject: [PATCH v5 20/23] ArmPkg: Add Universal/Smbios/OemMiscLibNull Date: Mon, 4 Jan 2021 15:58:27 -0700 Message-Id: <20210104225830.12606-21-rebecca@nuviainc.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210104225830.12606-1-rebecca@nuviainc.com> References: <20210104225830.12606-1-rebecca@nuviainc.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Add a Null implementation of OemMiscLib. OemMiscLib provides functions that platforms implement to fill in SMBIOS information for the SmbiosMiscDxe and ProcessSubClassDxe drivers. Signed-off-by: Rebecca Cran --- ArmPkg/Universal/Smbios/OemMiscLibNull/OemMiscLibNull.inf | 31 +++++ ArmPkg/Universal/Smbios/OemMiscLibNull/OemMiscLib.c | 140 ++++++++++++++++++++ 2 files changed, 171 insertions(+) diff --git a/ArmPkg/Universal/Smbios/OemMiscLibNull/OemMiscLibNull.inf b/ArmPkg/Universal/Smbios/OemMiscLibNull/OemMiscLibNull.inf new file mode 100644 index 000000000000..342290acdb53 --- /dev/null +++ b/ArmPkg/Universal/Smbios/OemMiscLibNull/OemMiscLibNull.inf @@ -0,0 +1,31 @@ +#/** @file +# OemMiscLib.inf +# +# Copyright (c) 2020, NUVIA Inc. All rights reserved. +# Copyright (c) 2018, Hisilicon Limited. All rights reserved. +# Copyright (c) 2018, Linaro Limited. All rights reserved. +# +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +#**/ + +[Defines] + INF_VERSION = 1.29 + BASE_NAME = OemMiscLibNull + FILE_GUID = e80b8e6b-fffb-4c39-b433-41de67c9d7b8 + MODULE_TYPE = BASE + VERSION_STRING = 1.0 + LIBRARY_CLASS = OemMiscLib + +[Sources.common] + OemMiscLib.c + +[Packages] + ArmPkg/ArmPkg.dec + EmbeddedPkg/EmbeddedPkg.dec + MdeModulePkg/MdeModulePkg.dec + MdePkg/MdePkg.dec + +[LibraryClasses] + BaseMemoryLib + diff --git a/ArmPkg/Universal/Smbios/OemMiscLibNull/OemMiscLib.c b/ArmPkg/Universal/Smbios/OemMiscLibNull/OemMiscLib.c new file mode 100644 index 000000000000..ceee45839746 --- /dev/null +++ b/ArmPkg/Universal/Smbios/OemMiscLibNull/OemMiscLib.c @@ -0,0 +1,140 @@ +/** @file +* OemMiscLib.c +* +* Copyright (c) 2018, Hisilicon Limited. All rights reserved. +* Copyright (c) 2018, Linaro Limited. All rights reserved. +* +* SPDX-License-Identifier: BSD-2-Clause-Patent +* +**/ + +#include +#include +#include + +#include + + +/** Gets the CPU frequency of the specified processor. + + @param ProcessorIndex Index of the processor to get the frequency for. + + @return CPU frequency in Hz +**/ +EFIAPI +UINTN +OemGetCpuFreq ( + IN UINT8 ProcessorIndex + ) +{ + return 0; +} + +/** Gets information about the specified processor and stores it in + the structures provided. + + @param ProcessorIndex Index of the processor to get the information for. + @param ProcessorStatus Processor status. + @param ProcessorCharacteristics Processor characteritics. + @param MiscProcessorData Miscellaneous processor information. + + @return TRUE on success, FALSE on failure. +**/ +EFIAPI +BOOLEAN +OemGetProcessorInformation ( + IN UINTN ProcessorIndex, + IN OUT PROCESSOR_STATUS_DATA *ProcessorStatus, + IN OUT PROCESSOR_CHARACTERISTIC_FLAGS *ProcessorCharacteristics, + IN OUT MISC_PROCESSOR_DATA *MiscProcessorData + ) +{ + return TRUE; +} + +/** Gets information about the cache at the specified cache level. + + @param ProcessorIndex The processor to get information for. + @param CacheLevel The cache level to get information for. + @param InstructionOrUnifiedCache Whether the cache is instruction or + unified, not data. + @param SmbiosCacheTable The SMBIOS Type7 cache information structure. + + @return TRUE on success, FALSE on failure. +**/ +EFIAPI +BOOLEAN +OemGetCacheInformation ( + IN UINT8 ProcessorIndex, + IN UINT8 CacheLevel, + IN BOOLEAN InstructionOrUnifiedCache, + IN OUT SMBIOS_TABLE_TYPE7 *SmbiosCacheTable + ) +{ + return TRUE; +} + +/** Gets the maximum number of sockets supported by the platform. + + @return The maximum number of sockets. +**/ +EFIAPI +UINT8 +OemGetProcessorMaxSockets ( + VOID + ) +{ + return 1; +} + +/** Gets the type of chassis for the system. + + @param ChassisType The type of the chassis. + + @retval EFI_SUCCESS The chassis type was fetched successfully. +**/ +EFI_STATUS +EFIAPI +OemGetChassisType ( + UINT8 *ChassisType + ) +{ + *ChassisType = MiscChassisTypeUnknown; + return EFI_SUCCESS; +} + +/** Returns whether the specified processor is present or not. + + @param ProcessIndex The processor index to check. + + @return TRUE is the processor is present, FALSE otherwise. +**/ +EFIAPI +BOOLEAN +OemIsSocketPresent ( + IN UINTN ProcessorIndex + ) +{ + if (ProcessorIndex == 0) { + return TRUE; + } + + return FALSE; +} + +/** Updates the HII string for the specified field. + + @param mHiiHandle The HII handle. + @param TokenToUpdate The string to update. + @param Offset The field to get information about. +**/ +EFIAPI +VOID +UpdateSmbiosInfo ( + IN EFI_HII_HANDLE mHiiHandle, + IN EFI_STRING_ID TokenToUpdate, + IN SMBIOS_HII_STRING_FIELD Offset + ) +{ + +} -- 2.26.2