From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=2607:f8b0:4864:20::643; helo=mail-pl1-x643.google.com; envelope-from=ming.huang@linaro.org; receiver=edk2-devel@lists.01.org Received: from mail-pl1-x643.google.com (mail-pl1-x643.google.com [IPv6:2607:f8b0:4864:20::643]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 9BB58211BD5E6 for ; Tue, 19 Feb 2019 23:29:04 -0800 (PST) Received: by mail-pl1-x643.google.com with SMTP id k2so2417304plt.3 for ; Tue, 19 Feb 2019 23:29:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=Ur5zn7REmq046LXBleoPLLtnsQfwfughbzQep8BDAJw=; b=vfn7lL3sEbvdbAHwHziuY9qL6Yg8/qI+4tb5ngSBQwoaAVSC4YxJ2gXx7SzM5MgcrT MTHGKwAGQLcTgv6X+DKyivNpYf7P7hvXWvZ4/zzjFHREc/DFjevEfBlU0lmwXxynqAjC IGrInWymfGB7/swPaDaj928LrQdDfz40IdVjnBdBcei41e30vZgDKpP1ZdCzVFOlLSMK KiwqZeIHTvYAL9sqzqnB/YK8iMAViUA2fP5ItEqa6P84wPD8E5Cr1ctoHs4XgY10Hwu5 zJ+I/MpOLa5le9Ov2MjQA4/+0nvqI0JTOekTmo4vFoc6p0/wXVVV7nSKL+wWgMVoj7Yi Wo2Q== 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; bh=Ur5zn7REmq046LXBleoPLLtnsQfwfughbzQep8BDAJw=; b=CDqIT3ZSBwmd7r8+clJM067XS/zVrNGY7ndBZ/KBbn19z4s1IUVWrcfgI9UJ0mncro SjNqLnrDvcEws+6+f3bBkoYt4d8S/N+DaKePzhDShuA8wy9qQNF3wZ0EnP9Pq9Wx27H/ 8B4HoUa2OxM2IhEQteTxTblGghqgtMDpFOgmW5JVuk6oLEi7OGUUbLlD103tPHFd6j0B z3/B0vKLcoaRsf9NEH0GEOeY8C4URaB7z0P9IIFMrqac8kOZGlWBwaWpwgOmxeVkvV/h +tcebZt4eW73dvL1QJIhhbJYODfmB2axxJj31lHQylcUUDSy3lVFrsCa3z7jktwv/dM3 f8ww== X-Gm-Message-State: AHQUAuYyssQuqh//N/DexoI9ObHC8UXuR/D+cD5ZxkXx+VTY/IRdrgpy j2XrmcYZve4Llijj7RIf/b9btw== X-Google-Smtp-Source: AHgI3IbQ6AWDxPD+mATE9rR/IelowIPROHJsgbERxFmKg8SfekH0vrIaX2IlNaBNiBLVGeR2hwkrKQ== X-Received: by 2002:a17:902:8b8b:: with SMTP id ay11mr4849081plb.162.1550647744363; Tue, 19 Feb 2019 23:29:04 -0800 (PST) Received: from localhost.localdomain ([203.160.91.226]) by smtp.gmail.com with ESMTPSA id 23sm19152969pft.187.2019.02.19.23.29.01 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Tue, 19 Feb 2019 23:29:03 -0800 (PST) From: Ming Huang To: leif.lindholm@linaro.org, linaro-uefi@lists.linaro.org, edk2-devel@lists.01.org, graeme.gregory@linaro.org Cc: ard.biesheuvel@linaro.org, michael.d.kinney@intel.com, lersek@redhat.com, wanghuiqiang@huawei.com, huangming23@huawei.com, zhangjinsong2@huawei.com, huangdaode@hisilicon.com, john.garry@huawei.com, zhangfeng56@huawei.com, xiaojun2@hisilicon.com, xingjiang tang , Ming Huang Date: Wed, 20 Feb 2019 15:28:25 +0800 Message-Id: <20190220072837.35058-7-ming.huang@linaro.org> X-Mailer: git-send-email 2.9.5 In-Reply-To: <20190220072837.35058-1-ming.huang@linaro.org> References: <20190220072837.35058-1-ming.huang@linaro.org> Subject: [PATCH edk2-platforms v2 06/18] Hisilicon/D06: Add OemGetCpuFreq to encapsulate difference X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 20 Feb 2019 07:29:04 -0000 From: xingjiang tang Implementation OemGetCpuFreq() to get cpu frequency from cpld to encapsulate project difference, for some projects don't support get cpu frequency by this way. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ming Huang --- Platform/Hisilicon/D06/Include/Library/CpldD06.h | 4 ++++ Silicon/Hisilicon/Include/Library/OemMiscLib.h | 2 ++ Platform/Hisilicon/D06/Library/OemMiscLibD06/OemMiscLibD06.c | 16 ++++++++++++++++ 3 files changed, 22 insertions(+) diff --git a/Platform/Hisilicon/D06/Include/Library/CpldD06.h b/Platform/Hisilicon/D06/Include/Library/CpldD06.h index ec9b49f4e70d..8eb333de529c 100644 --- a/Platform/Hisilicon/D06/Include/Library/CpldD06.h +++ b/Platform/Hisilicon/D06/Include/Library/CpldD06.h @@ -36,4 +36,8 @@ #define CPLD_X8_X8_X8_BOARD_ID 0x92 #define CPLD_X16_X8_BOARD_ID 0x93 +#define CPLD_CLOCK_FLAG 0xFD +#define CPLD_BOM_VER_FLAG 0x0B +#define CPLD_BOARD_REVISION_4TH 0x4 + #endif /* __CPLDD06_H__ */ diff --git a/Silicon/Hisilicon/Include/Library/OemMiscLib.h b/Silicon/Hisilicon/Include/Library/OemMiscLib.h index 86ea6a1b3deb..dfac87d635d9 100644 --- a/Silicon/Hisilicon/Include/Library/OemMiscLib.h +++ b/Silicon/Hisilicon/Include/Library/OemMiscLib.h @@ -53,4 +53,6 @@ BOOLEAN OemIsNeedDisableExpanderBuffer(VOID); extern EFI_STRING_ID gDimmToDevLocator[MAX_SOCKET][MAX_CHANNEL][MAX_DIMM]; EFI_HII_HANDLE EFIAPI OemGetPackages (); +UINTN OemGetCpuFreq (UINT8 Socket); + #endif diff --git a/Platform/Hisilicon/D06/Library/OemMiscLibD06/OemMiscLibD06.c b/Platform/Hisilicon/D06/Library/OemMiscLibD06/OemMiscLibD06.c index 2a9db46d1ff9..624fa33d2e14 100644 --- a/Platform/Hisilicon/D06/Library/OemMiscLibD06/OemMiscLibD06.c +++ b/Platform/Hisilicon/D06/Library/OemMiscLibD06/OemMiscLibD06.c @@ -207,3 +207,19 @@ OemIsNeedDisableExpanderBuffer ( { return TRUE; } + +UINTN OemGetCpuFreq (UINT8 Socket) +{ + UINT8 BoardRevision; + + BoardRevision = MmioRead8 (CPLD_BASE_ADDRESS + CPLD_BOM_VER_FLAG); + + // Board revision 4 and higher run at 2.5GHz + // Earlier revisions run at 2GHz + if (BoardRevision >= CPLD_BOARD_REVISION_4TH) { + return 2500000000; + } else { + return 2000000000; + } +} + -- 2.9.5