From: Wasim Khan <[email protected]>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Wasim Khan <[email protected]>
---
Platform/NXP/LS2088aRdbPkg/LS2088aRdbPkg.dsc | 3 +++
Silicon/NXP/Chassis/Chassis3/Soc.c | 18 +++++++++++++++++-
Silicon/NXP/Chassis/Chassis3/Soc.h | 1 -
Silicon/NXP/Chassis/LS2088aSocLib.inf | 2 ++
Silicon/NXP/LS2088A/LS2088A.dsc | 1 +
5 files changed, 23 insertions(+), 2 deletions(-)
diff --git a/Platform/NXP/LS2088aRdbPkg/LS2088aRdbPkg.dsc
b/Platform/NXP/LS2088aRdbPkg/LS2088aRdbPkg.dsc
index c0a802d..7894925 100755
--- a/Platform/NXP/LS2088aRdbPkg/LS2088aRdbPkg.dsc
+++ b/Platform/NXP/LS2088aRdbPkg/LS2088aRdbPkg.dsc
@@ -39,6 +39,9 @@
BeIoLib|Silicon/NXP/Library/BeIoLib/BeIoLib.inf
SocLib|Silicon/NXP/Chassis/LS2088aSocLib.inf
RealTimeClockLib|Silicon/Maxim/Library/Ds3232RtcLib/Ds3232RtcLib.inf
+ IfcLib|Silicon/NXP/Library/IfcLib/IfcLib.inf
+ BoardLib|Platform/NXP/LS2088aRdbPkg/Library/BoardLib/BoardLib.inf
+ FpgaLib|Platform/NXP/LS2088aRdbPkg/Library/FpgaLib/FpgaLib.inf
[PcdsFixedAtBuild.common]
diff --git a/Silicon/NXP/Chassis/Chassis3/Soc.c
b/Silicon/NXP/Chassis/Chassis3/Soc.c
index ed6c3cc..dbb1884 100644
--- a/Silicon/NXP/Chassis/Chassis3/Soc.c
+++ b/Silicon/NXP/Chassis/Chassis3/Soc.c
@@ -18,6 +18,7 @@
#include <Library/BaseLib.h>
#include <Library/BaseMemoryLib/MemLibInternals.h>
#include <Library/DebugLib.h>
+#include <Library/IfcLib.h>
#include <Library/IoLib.h>
#include <Library/PcdLib.h>
#include <Library/PrintLib.h>
@@ -25,6 +26,9 @@
#include "Soc.h"
+extern VOID PrintBoardPersonality (VOID);
+extern UINTN GetBoardSysClk (VOID);
+
VOID
GetSysInfo (
OUT SYS_INFO *PtrSysInfo
@@ -83,7 +87,7 @@ GetSysInfo (
GurBase = (VOID *)PcdGet64 (PcdGutsBaseAddr);
ClkBase = (VOID *)PcdGet64 (PcdClkBaseAddr);
- SysClk = CLK_FREQ;
+ SysClk = GetBoardSysClk ();
PtrSysInfo->FreqSystemBus = SysClk;
PtrSysInfo->FreqDdrBus = PcdGet64 (PcdDdrClk);
@@ -152,6 +156,13 @@ SocInit (
SmmuInit ();
//
+ // Perform IFC Initialization.
+ // Early IFC initialization is required to set timings required for fpga
initilzation to
+ // get system clock frequency, board info etc.
+ //
+ IfcInit ();
+
+ //
// Initialize the Serial Port.
// Early serial port initialization is required to print RCW, Soc and CPU
infomation at
// the begining of UEFI boot.
@@ -176,5 +187,10 @@ SocInit (
// Print Soc Personality information
//
PrintSoc ();
+
+ //
+ // Print Board Personality information
+ //
+ PrintBoardPersonality ();
}
diff --git a/Silicon/NXP/Chassis/Chassis3/Soc.h
b/Silicon/NXP/Chassis/Chassis3/Soc.h
index 0e892fb..c3ac1d5 100644
--- a/Silicon/NXP/Chassis/Chassis3/Soc.h
+++ b/Silicon/NXP/Chassis/Chassis3/Soc.h
@@ -20,7 +20,6 @@
#define FSL_CLK_GRPA_ADDR 0x01300000
#define FSL_CLK_GRPB_ADDR 0x01310000
#define NUM_CC_PLLS 6
-#define CLK_FREQ 100000000
#define FSL_CLUSTER_CLOCKS { 1, 1, 4, 4 } /* LS208x */
#define TP_CLUSTER_EOC_MASK 0x80000000 /* Mask for End of
clusters */
diff --git a/Silicon/NXP/Chassis/LS2088aSocLib.inf
b/Silicon/NXP/Chassis/LS2088aSocLib.inf
index 8a4da50..3111d49 100644
--- a/Silicon/NXP/Chassis/LS2088aSocLib.inf
+++ b/Silicon/NXP/Chassis/LS2088aSocLib.inf
@@ -31,6 +31,8 @@
BaseLib
BeIoLib
DebugLib
+ FpgaLib
+ IfcLib
SerialPortLib
[Sources.common]
diff --git a/Silicon/NXP/LS2088A/LS2088A.dsc b/Silicon/NXP/LS2088A/LS2088A.dsc
index 8f7dbb5..2cff40f 100644
--- a/Silicon/NXP/LS2088A/LS2088A.dsc
+++ b/Silicon/NXP/LS2088A/LS2088A.dsc
@@ -67,5 +67,6 @@
gNxpQoriqLsTokenSpaceGuid.PcdI2c0BaseAddr|0x02000000
gNxpQoriqLsTokenSpaceGuid.PcdI2cSize|0x10000
gNxpQoriqLsTokenSpaceGuid.PcdNumI2cController|4
+ gNxpQoriqLsTokenSpaceGuid.PcdIfcBaseAddr|0x02240000
##
--
1.9.1
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel