On Wed, Aug 08, 2018 at 11:49:41AM +0800, Ming wrote:
在 8/3/2018 1:22 AM, Leif Lindholm 写道: On Tue, Jul 24, 2018 at 03:08:50PM +0800, Ming Huang wrote:
This library include BoardFeatureD06.c and OemMiscLibD06.c c file, use for several modules like PciHostBridgeLib and Smbios. Enlarge macro PCIEDEVICE_REPORT_MAX for D06.
Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ming Huang ming.huang@linaro.org Signed-off-by: Heyi Guo heyi.guo@linaro.org
Platform/Hisilicon/D06/D06.dsc | 1 + Platform/Hisilicon/D06/Library/OemMiscLibD06/BoardFeatureD06.c | 432 ++++++++++++++++++++ Platform/Hisilicon/D06/Library/OemMiscLibD06/BoardFeatureD06Strings.uni | Bin 0 -> 5204 bytes
We appear to be permitting UTF-8 these days, which would be easier to review. Would you be able to convert this for the next revision?
Yes. Could you tell me how to convert the .uni to UTF8?
iconv -f UCS2 -t UTF-8 -o <output file> <input file>
At my end, I think this leaves the BOM in the file, which I don't think it a good thing. But it can easily be edited out.
Doing that, I do however spot that there are inconsistent line endings in this file. Please convert them all to CRLF.
Platform/Hisilicon/D06/Library/OemMiscLibD06/OemMiscLibD06.c | 157 +++++++ Platform/Hisilicon/D06/Library/OemMiscLibD06/OemMiscLibD06.inf | 47 +++ Silicon/Hisilicon/Include/Library/OemMiscLib.h | 2 +- 6 files changed, 638 insertions(+), 1 deletion(-)
diff --git a/Platform/Hisilicon/D06/Library/OemMiscLibD06/BoardFeatureD06Strings.uni b/Platform/Hisilicon/D06/Library/OemMiscLibD06/BoardFeatureD06Strings.uni new file mode 100644 index 0000000000..f3994d9d4d Binary files /dev/null and b/Platform/Hisilicon/D06/Library/OemMiscLibD06/BoardFeatureD06Strings.uni differ diff --git a/Platform/Hisilicon/D06/Library/OemMiscLibD06/OemMiscLibD06.c b/Platform/Hisilicon/D06/Library/OemMiscLibD06/OemMiscLibD06.c new file mode 100644 index 0000000000..009a53b2c8 --- /dev/null +++ b/Platform/Hisilicon/D06/Library/OemMiscLibD06/OemMiscLibD06.c @@ -0,0 +1,157 @@ +/** @file +* +* Copyright (c) 2018, Hisilicon Limited. All rights reserved. +* Copyright (c) 2018, Linaro Limited. All rights reserved. +* +* This program and the accompanying materials +* are licensed and made available under the terms and conditions of the BSD License +* which accompanies this distribution. The full text of the license may be found at +* http://opensource.org/licenses/bsd-license.php +* +* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +* +**/
+#include <Uefi.h> +#include <PlatformArch.h> +#include <Library/DebugLib.h> +#include <Library/IoLib.h> +#include <Library/LpcLib.h> +#include <Library/OemAddressMapLib.h> +#include <Library/OemMiscLib.h> +#include <Library/PcdLib.h> +#include <Library/PlatformSysCtrlLib.h> +#include <Library/SerdesLib.h> +#include <Library/SerialPortLib.h> +#include <Library/TimerLib.h>
+REPORT_PCIEDIDVID2BMC PcieDeviceToReport[PCIEDEVICE_REPORT_MAX] = {
- {67,0,0,0},
- {225,0,0,3},
- {0xFFFF,0xFFFF,0xFFFF,0xFFFF},
- {0xFFFF,0xFFFF,0xFFFF,0xFFFF}
+};
+// Right now we only support 1P +BOOLEAN +OemIsSocketPresent (
- UINTN Socket
- )
+{
- UINT32 SocketMask = PcdGet32 (PcdSocketMask);
- return (BOOLEAN)((SocketMask & (1 << Socket)) ? TRUE : FALSE);
+}
+UINTN +OemGetSocketNumber (
- VOID
- )
+{
- if(!OemIsMpBoot ()) {
- return 1;
- }
- return 2;
What is 2? (Guessing NUMBER_PROCESSOR_SOCKETS.)
Exactly. Modify 2 to MAX_SOCKET(defined in PlatformArch.h)?
MAX_PROCESSOR_SOCKETS would be good.
+}
+UINTN +OemGetDdrChannel (
- VOID
- )
+{
- return 8;
What is 8? (Guessing NUMBER_MEMORY_CHANNELS.)
Exactly. Modify 8 to MAX_CHANNEL(defined in PlatformArch.h)?
MAX_MEMORY_CHANNELS would be good.
+}
+UINTN +OemGetDimmSlot (
- UINTN Socket,
- UINTN Channel
- )
+{
- return 2;
What is 2? (Guessing SLOTS_PER_DDR_CHANNEL.)
Yes. Modify 8 to MAX_DIMM(defined in PlatformArch.h)?
MAX_DIMM_PER_CHANNEL?
diff --git a/Silicon/Hisilicon/Include/Library/OemMiscLib.h b/Silicon/Hisilicon/Include/Library/OemMiscLib.h index 6f18c0fa72..53e7a37a68 100644 --- a/Silicon/Hisilicon/Include/Library/OemMiscLib.h +++ b/Silicon/Hisilicon/Include/Library/OemMiscLib.h @@ -22,7 +22,7 @@ #include <PlatformArch.h> #include <Library/I2CLib.h> -#define PCIEDEVICE_REPORT_MAX 4 +#define PCIEDEVICE_REPORT_MAX 8
Does this have any impact on existing platforms? Boot-time?
This have no impact on existing platform, just enlarge the global array. This is used for SMBIOS.
OK, that's fine then.
/ Leif