diff options
Diffstat (limited to 'Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64')
22 files changed, 946 insertions, 0 deletions
diff --git a/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/DBGR/PeiDbgDbgrx64.cif b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/DBGR/PeiDbgDbgrx64.cif new file mode 100644 index 0000000..8b8b525 --- /dev/null +++ b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/DBGR/PeiDbgDbgrx64.cif @@ -0,0 +1,11 @@ +<component> + name = "PeiDbgDbgrx64" + category = ModulePart + LocalRoot = "Core\EM\AMIDebugRx\binaries\PeiAMIDebugRx\x64\DBGR\" + RefName = "PeiDbgDbgrx64" +[files] +"PeiDbgDbgrx64.sdl" +"PeiDbgDbgrx64.mak" +"mindbgr.obj" +"PeiDbgDbgrx64.dxs" +<endComponent> diff --git a/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/DBGR/PeiDbgDbgrx64.dxs b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/DBGR/PeiDbgDbgrx64.dxs new file mode 100644 index 0000000..178dd50 --- /dev/null +++ b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/DBGR/PeiDbgDbgrx64.dxs @@ -0,0 +1,60 @@ +//*****************************************************************// +//*****************************************************************// +//*****************************************************************// +//** **// +//** (C)Copyright 2009, American Megatrends, Inc. **// +//** **// +//** All Rights Reserved. **// +//** **// +//** 5555 Oakbrook Pkwy, Building 200,Norcross, Georgia 30093 **// +//** **// +//** Phone (770)-246-8600 **// +//** **// +//*****************************************************************// +//*****************************************************************// +//*****************************************************************// +// $Header: /Alaska/BIN/Modules/AMIDebugRx/binaries/PeiAMIDebugRx/x64/DBGR/PeiDbgDbgrx64.dxs 3 2/22/10 4:18p Madhans $ +// +// $Revision: 3 $ +// +// $Date: 2/22/10 4:18p $ +//***************************************************************** +//***************************************************************** +// +// Revision History +// ---------------- +// $Log: /Alaska/BIN/Modules/AMIDebugRx/binaries/PeiAMIDebugRx/x64/DBGR/PeiDbgDbgrx64.dxs $ +// +// 3 2/22/10 4:18p Madhans +// 1.32 +// +// 1 5/01/09 7:48p Madhans +// AMIDebug Rx Module. Intial Checkin. +// +// 3 1/05/07 6:15p Madhan +// +// 2 1/05/07 1:05p Ashrafj +// Latest version 1.04.0001 Beta +// Known issues from previous 1.04.000 Beta release has been fixed. +// +// +//***************************************************************** + +DEPENDENCY_START + FALSE +DEPENDENCY_END +//*****************************************************************// +//*****************************************************************// +//*****************************************************************// +//** **// +//** (C)Copyright 2009, American Megatrends, Inc. **// +//** **// +//** All Rights Reserved. **// +//** **// +//** 5555 Oakbrook Pkwy, Building 200,Norcross, Georgia 30093 **// +//** **// +//** Phone (770)-246-8600 **// +//** **// +//*****************************************************************// +//*****************************************************************// +//*****************************************************************// diff --git a/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/DBGR/PeiDbgDbgrx64.mak b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/DBGR/PeiDbgDbgrx64.mak new file mode 100644 index 0000000..98670fe --- /dev/null +++ b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/DBGR/PeiDbgDbgrx64.mak @@ -0,0 +1,125 @@ +#//*****************************************************************// +#//*****************************************************************// +#//*****************************************************************// +#//** **// +#//** (C)Copyright 2009, American Megatrends, Inc. **// +#//** **// +#//** All Rights Reserved. **// +#//** **// +#//** 5555 Oakbrook Pkwy, Building 200,Norcross, Georgia 30093 **// +#//** **// +#//** Phone (770)-246-8600 **// +#//** **// +#//*****************************************************************// +#//*****************************************************************// +#//*****************************************************************// +# $Header: /Alaska/BIN/Modules/AMIDebugRx/binaries/PeiAMIDebugRx/x64/DBGR/PeiDbgDbgrx64.mak 2 7/17/09 7:15p Madhans $ +# +# $Revision: 2 $ +# +# $Date: 7/17/09 7:15p $ +#********************************************************************** +# Revision History +# ---------------- +# $Log: /Alaska/BIN/Modules/AMIDebugRx/binaries/PeiAMIDebugRx/x64/DBGR/PeiDbgDbgrx64.mak $ +# +# 2 7/17/09 7:15p Madhans +# DebugRx 1.30.0022 +# +# 3 7/15/09 5:56p Madhans +# X64 Support and clean up. +# +# 2 7/13/09 2:51p Sudhirv +# Updated with Coding Standards +# +# 1 7/07/09 4:46p Sudhirv +# Restructure Binaries Created +# +# 1 5/01/09 7:48p Madhans +# AMIDebug Rx Module. Intial Checkin. +# +# 1 4/29/09 7:52a Sudhirv +# AMI Debug Rx module created +# +# 5 12/12/08 5:42p Madhans +# USB Redirection Module +# +# 3 6/13/07 3:38p Madhans +# Copyright Year updated. +# +# 2 3/12/07 6:20p Madhans +# !!!coding standards!!!! +# +# 1 1/22/07 4:12p Madhans +# 1.04.0002 Binary Version. +# +# 1 12/26/06 7:17p Ashrafj +# Support added to support the Aptio 4.5 x64 EFI BIOS (use latest +# Host.zip). +# PEI Debugger in FV_MAIN (use new PEIDEBUGFIXUP). +# Support added for StatusCode redirection without Debug feature enabled +# (not working if DXE only and x64 is enabled). +# Plus, some new SDL tokens defined to support the Aptio 4.5 build +# process in Debug or non-debug mode. +# All the components of Debugger eModule in source form. +# +# 1 12/26/06 7:10p Ashrafj +# Support added to support the Aptio 4.5 x64 EFI BIOS (use latest +# Host.zip). +# PEI Debugger in FV_MAIN (use new PEIDEBUGFIXUP). +# Support added for StatusCode redirection without Debug feature enabled +# (not working if DXE only and x64 is enabled). +# Plus, some new SDL tokens defined to support the Aptio 4.5 build +# process in Debug or non-debug mode. +# All the components of Debugger eModule in source form. +# +#********************************************************************** +#<AMI_FHDR_START> +# +# Name: PeiDbgDbgrx64.mak +# +# Description: Makefile of Debugger x64 Module that is loaded by Peidebugsupport +# +#<AMI_FHDR_END> +#********************************************************************** +all : PeiDbgDbgrx64 + +PeiDbgDbgrx64 : $(BUILD_DIR)\PeiDbgDbgrx64.mak PeiDbgDbgrx64Bin + +$(BUILD_DIR)\PeiDbgDbgrx64.mak : $(PeiDbgDbgrx64_DIR)\$(@B).cif $(PeiDbgDbgrx64_DIR)\$(@B).mak $(BUILD_RULES) + $(CIF2MAK) $(PeiDbgDbgrx64_DIR)\$(@B).cif $(CIF2MAK_DEFAULTS) + +PEIDBGDBGR_OBJS = \ +$(PeiDbgDbgrx64_DIR)\mindbgr.obj + + +PeiDbgDbgrx64Bin : + @set INCLUDE=%%INCLUDE%% + $(MAKE) /$(MAKEFLAGS) $(BUILD_DEFAULTS)\ + /f $(BUILD_DIR)\PeiDbgDbgrx64.mak all\ + GUID=C253ED0A-C48B-4ee3-A65E-75F61F3AD251\ + ENTRY_POINT=InitDbgLayer\ + TYPE=BS_DRIVER \ + PRECOMPILED_OBJS=\ + COMPRESS=1\ + "OBJECTS="\ + +!IF "$(REDIRECTION_ONLY_MODE)" == "1" +PeiDbgDbgrx64Bin : $(PEIDBGDBGR_OBJS) +!ENDIF + +#//*****************************************************************// +#//*****************************************************************// +#//*****************************************************************// +#//** **// +#//** (C)Copyright 2009, American Megatrends, Inc. **// +#//** **// +#//** All Rights Reserved. **// +#//** **// +#//** 5555 Oakbrook Pkwy, Building 200,Norcross, Georgia 30093 **// +#//** **// +#//** Phone (770)-246-8600 **// +#//** **// +#//*****************************************************************// +#//*****************************************************************// +#//*****************************************************************// diff --git a/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/DBGR/PeiDbgDbgrx64.sdl b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/DBGR/PeiDbgDbgrx64.sdl new file mode 100644 index 0000000..f466826 --- /dev/null +++ b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/DBGR/PeiDbgDbgrx64.sdl @@ -0,0 +1,35 @@ +TOKEN + Name = "PeiDbgDbgrx64_SUPPORT" + Value = "1" + Help = "Main switch to enable PeiDbgDbgrx64 support in Project" + TokenType = Boolean + TargetEQU = Yes + TargetMAK = Yes + Master = Yes + Lock = Yes + Token = "x64_BUILD" "=" "1" +End + +PATH + Name = "PeiDbgDbgrx64_DIR" +End + +MODULE + Help = "Includes PeiDbgDbgrx64.mak to Project" + File = "PeiDbgDbgrx64.mak" +End + +ELINK + Name = "$(BUILD_DIR)\PeiDbgDbgrx64.ffs" + Parent = "FV_MAIN" + Token = "DEBUG_RX_FFS_IN_FVMAIN_SUPPORT" "=" "1" + InvokeOrder = AfterParent +End + +ELINK + Name = "$(BUILD_DIR)\PeiDbgDbgrx64.ffs" + Parent = "FV_BB" + Token = "DEBUG_RX_FFS_IN_FVMAIN_SUPPORT" "=" "0" + InvokeOrder = AfterParent +End + diff --git a/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/DBGR/mindbgr.obj b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/DBGR/mindbgr.obj Binary files differnew file mode 100644 index 0000000..8092523 --- /dev/null +++ b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/DBGR/mindbgr.obj diff --git a/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/DBGR/UsbDebugPort.obj b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/DBGR/UsbDebugPort.obj Binary files differnew file mode 100644 index 0000000..6ad950d --- /dev/null +++ b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/DBGR/UsbDebugPort.obj diff --git a/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/DBGR/transport.obj b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/DBGR/transport.obj Binary files differnew file mode 100644 index 0000000..d30f432 --- /dev/null +++ b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/DBGR/transport.obj diff --git a/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/DBGR/usb_acc.obj b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/DBGR/usb_acc.obj Binary files differnew file mode 100644 index 0000000..a041426 --- /dev/null +++ b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/DBGR/usb_acc.obj diff --git a/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/DBGR/usb_xp.obj b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/DBGR/usb_xp.obj Binary files differnew file mode 100644 index 0000000..9b2b225 --- /dev/null +++ b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/DBGR/usb_xp.obj diff --git a/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/DBGR/xp_layer.obj b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/DBGR/xp_layer.obj Binary files differnew file mode 100644 index 0000000..bb7e135 --- /dev/null +++ b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/DBGR/xp_layer.obj diff --git a/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/PeiDbgXportx64.cif b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/PeiDbgXportx64.cif new file mode 100644 index 0000000..ba1e486 --- /dev/null +++ b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/PeiDbgXportx64.cif @@ -0,0 +1,14 @@ +<component> + name = "PeiDbgXportx64" + category = ModulePart + LocalRoot = "Core\EM\AMIDebugRx\binaries\PeiAMIDebugRx\x64\XPORT\" + RefName = "PeiDbgXportx64" +[files] +"PeiDbgXportx64.sdl" +"PeiDbgXportx64.mak" +"PeiDbgXportx64.dxs" +"XportHdr.c" +[parts] +"PeiXportx64Redir" +"PeiXportx64Dbgr" +<endComponent> diff --git a/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/PeiDbgXportx64.dxs b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/PeiDbgXportx64.dxs new file mode 100644 index 0000000..5c9dcc4 --- /dev/null +++ b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/PeiDbgXportx64.dxs @@ -0,0 +1,59 @@ +//*****************************************************************// +//*****************************************************************// +//*****************************************************************// +//** **// +//** (C)Copyright 2009, American Megatrends, Inc. **// +//** **// +//** All Rights Reserved. **// +//** **// +//** 5555 Oakbrook Pkwy, Building 200,Norcross, Georgia 30093 **// +//** **// +//** Phone (770)-246-8600 **// +//** **// +//*****************************************************************// +//*****************************************************************// +//*****************************************************************// +// $Header: /Alaska/BIN/Modules/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/PeiDbgXportx64.dxs 3 2/22/10 4:18p Madhans $ +// +// $Revision: 3 $ +// +// $Date: 2/22/10 4:18p $ +//***************************************************************** +//***************************************************************** +// +// Revision History +// ---------------- +// $Log: /Alaska/BIN/Modules/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/PeiDbgXportx64.dxs $ +// +// 3 2/22/10 4:18p Madhans +// 1.32 +// +// 1 5/01/09 7:48p Madhans +// AMIDebug Rx Module. Intial Checkin. +// +// 3 1/05/07 6:15p Madhan +// +// 2 1/05/07 1:05p Ashrafj +// Latest version 1.04.0001 Beta +// Known issues from previous 1.04.000 Beta release has been fixed. +// +// +//***************************************************************** +DEPENDENCY_START + FALSE +DEPENDENCY_END +//*****************************************************************// +//*****************************************************************// +//*****************************************************************// +//** **// +//** (C)Copyright 2009, American Megatrends, Inc. **// +//** **// +//** All Rights Reserved. **// +//** **// +//** 5555 Oakbrook Pkwy, Building 200,Norcross, Georgia 30093 **// +//** **// +//** Phone (770)-246-8600 **// +//** **// +//*****************************************************************// +//*****************************************************************// +//*****************************************************************// diff --git a/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/PeiDbgXportx64.mak b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/PeiDbgXportx64.mak new file mode 100644 index 0000000..6955680 --- /dev/null +++ b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/PeiDbgXportx64.mak @@ -0,0 +1,139 @@ +#//*****************************************************************// +#//*****************************************************************// +#//*****************************************************************// +#//** **// +#//** (C)Copyright 2009, American Megatrends, Inc. **// +#//** **// +#//** All Rights Reserved. **// +#//** **// +#//** 5555 Oakbrook Pkwy, Building 200,Norcross, Georgia 30093 **// +#//** **// +#//** Phone (770)-246-8600 **// +#//** **// +#//*****************************************************************// +#//*****************************************************************// +#//*****************************************************************// +# $Header: /Alaska/BIN/Modules/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/PeiDbgXportx64.mak 3 7/17/09 7:15p Madhans $ +# +# $Revision: 3 $ +# +# $Date: 7/17/09 7:15p $ +#********************************************************************** +# Revision History +# ---------------- +# $Log: /Alaska/BIN/Modules/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/PeiDbgXportx64.mak $ +# +# 3 7/17/09 7:15p Madhans +# DebugRx 1.30.0022 +# +# 3 7/15/09 5:56p Madhans +# X64 Support and clean up. +# +# 2 7/13/09 2:52p Sudhirv +# Updated with Coding Standards +# +# 1 7/07/09 4:47p Sudhirv +# Restructure Binaries Created +# +# 2 5/04/09 11:35a Madhans +# +# 1 5/01/09 7:48p Madhans +# AMIDebug Rx Module. Intial Checkin. +# +# 2 5/01/09 7:47p Madhans +# +# 1 4/29/09 7:52a Sudhirv +# AMI Debug Rx module created +# +# 4 6/13/07 3:17p Madhans +# Copyright Year updated. +# +# 3 1/22/07 11:43a Madhans +# Modification made for Binary Release 1.04.0003. +# +# 1 12/26/06 7:17p Ashrafj +# Support added to support the Aptio 4.5 x64 EFI BIOS (use latest +# Host.zip). +# PEI Debugger in FV_MAIN (use new PEIDEBUGFIXUP). +# Support added for StatusCode redirection without Debug feature enabled +# (not working if DXE only and x64 is enabled). +# Plus, some new SDL tokens defined to support the Aptio 4.5 build +# process in Debug or non-debug mode. +# All the components of Debugger eModule in source form. +# +# 1 12/26/06 7:10p Ashrafj +# Support added to support the Aptio 4.5 x64 EFI BIOS (use latest +# Host.zip). +# PEI Debugger in FV_MAIN (use new PEIDEBUGFIXUP). +# Support added for StatusCode redirection without Debug feature enabled +# (not working if DXE only and x64 is enabled). +# Plus, some new SDL tokens defined to support the Aptio 4.5 build +# process in Debug or non-debug mode. +# All the components of Debugger eModule in source form. +# +#********************************************************************** +#<AMI_FHDR_START> +# +# Name: PeiDbgXportx64.mak +# +# Description: Makefile of Xport64 module +# +#<AMI_FHDR_END> +#********************************************************************** + + +!IF "$(REDIRECTION_ONLY_MODE)" == "1" +PEIDBGXPORTx64_BUILD_DIR=$(PeiDbgXportx64_DIR)\REDIR +!ELSE +PEIDBGXPORTx64_BUILD_DIR=$(PeiDbgXportx64_DIR)\DBGR +!ENDIF + +PEIDBGXPORTX64_OBJS=\ +$(PEIDBGXPORTx64_BUILD_DIR)\transport.obj\ +$(PEIDBGXPORTx64_BUILD_DIR)\xp_layer.obj\ +$(BUILD_DIR)\$(PeiDbgXportx64_DIR)\XportHdr.obj\ + +PEIDBGXPORTx64_USB_OBJECTS =\ +$(PEIDBGXPORTx64_BUILD_DIR)\usb_acc.obj\ +$(PEIDBGXPORTx64_BUILD_DIR)\usb_xp.obj\ +$(PEIDBGXPORTx64_BUILD_DIR)\UsbDebugPort.obj + +!INCLUDE $(BUILD_DIR)\TimeStamp.mak + +all : PeiDbgXportx64 + +PeiDbgXportx64 : $(BUILD_DIR)\PeiDbgXportx64.mak PeiDbgXportx64Bin + +$(BUILD_DIR)\PeiDbgXportx64.mak : $(PeiDbgXportx64_DIR)\$(@B).cif $(PeiDbgXportx64_DIR)\$(@B).mak $(BUILD_RULES) + $(CIF2MAK) $(PeiDbgXportx64_DIR)\$(@B).cif $(CIF2MAK_DEFAULTS) + +PeiDbgXportx64Bin : + @set INCLUDE=%%INCLUDE%% + $(MAKE) /$(MAKEFLAGS) $(BUILD_DEFAULTS)\ + /f $(BUILD_DIR)\PeiDbgXportx64.mak all\ + GUID=511D0266-F2E0-4df8-AE3A-FDB98523BFB9\ + ENTRY_POINT=InitXLayer\ + TYPE=BS_DRIVER \ + COMPRESS=1\ + "OBJECTS=$(PEIDBGXPORTX64_OBJS)"\ + "CFLAGS=$(PEI_DBG_CFLAGS) /DRELOCATE /I$(PeiDbgDbgr_DIR)\INC /I$(DbgrX64_DIR) " + +!IF "$(USB_DEBUG_TRANSPORT)" == "1" +PeiDbgXportx64Bin : $(PEIDBGXPORTx64_USB_OBJECTS) +!ENDIF + +#//*****************************************************************// +#//*****************************************************************// +#//*****************************************************************// +#//** **// +#//** (C)Copyright 2009, American Megatrends, Inc. **// +#//** **// +#//** All Rights Reserved. **// +#//** **// +#//** 5555 Oakbrook Pkwy, Building 200,Norcross, Georgia 30093 **// +#//** **// +#//** Phone (770)-246-8600 **// +#//** **// +#//*****************************************************************// +#//*****************************************************************// +#//*****************************************************************// diff --git a/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/PeiDbgXportx64.sdl b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/PeiDbgXportx64.sdl new file mode 100644 index 0000000..380f960 --- /dev/null +++ b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/PeiDbgXportx64.sdl @@ -0,0 +1,34 @@ +TOKEN + Name = "PeiDbgXportx64_SUPPORT" + Value = "1" + Help = "Main switch to enable PeiDbgXportx64 support in Project" + TokenType = Boolean + TargetEQU = Yes + TargetMAK = Yes + Master = Yes + Lock = Yes + Token = "x64_BUILD" "=" "1" +End + +PATH + Name = "PeiDbgXportx64_DIR" +End + +MODULE + Help = "Includes PeiDbgXportx64.mak to Project" + File = "PeiDbgXportx64.mak" +End + +ELINK + Name = "$(BUILD_DIR)\PeiDbgXportx64.ffs" + Parent = "FV_MAIN" + Token = "DEBUG_RX_FFS_IN_FVMAIN_SUPPORT" "=" "1" + InvokeOrder = AfterParent +End + +ELINK + Name = "$(BUILD_DIR)\PeiDbgXportx64.ffs" + Parent = "FV_BB" + Token = "DEBUG_RX_FFS_IN_FVMAIN_SUPPORT" "=" "0" + InvokeOrder = AfterParent +End diff --git a/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/PeiXportDbgrx64.cif b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/PeiXportDbgrx64.cif new file mode 100644 index 0000000..5bbd63f --- /dev/null +++ b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/PeiXportDbgrx64.cif @@ -0,0 +1,12 @@ +<component> + name = "PeiXportx64Dbgr" + category = ModulePart + LocalRoot = "Core\em\AMIDebugRx\binaries\PeiAMIDebugRx\x64\XPORT" + RefName = "PeiXportx64Dbgr" +[files] +"DBGR\xp_layer.obj" +"DBGR\transport.obj" +"DBGR\usb_acc.obj" +"DBGR\usb_xp.obj" +"DBGR\UsbDebugPort.obj" +<endComponent> diff --git a/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/PeiXportx64Redir.cif b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/PeiXportx64Redir.cif new file mode 100644 index 0000000..806c72b --- /dev/null +++ b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/PeiXportx64Redir.cif @@ -0,0 +1,12 @@ +<component> + name = "PeiXportx64Redir" + category = ModulePart + LocalRoot = "Core\em\AMIDebugRx\binaries\PeiAMIDebugRx\x64\XPORT" + RefName = "PeiXportx64Redir" +[files] +"REDIR\xp_layer.obj" +"REDIR\transport.obj" +"REDIR\usb_acc.obj" +"REDIR\usb_xp.obj" +"REDIR\UsbDebugPort.obj" +<endComponent> diff --git a/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/REDIR/UsbDebugPort.obj b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/REDIR/UsbDebugPort.obj Binary files differnew file mode 100644 index 0000000..df06970 --- /dev/null +++ b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/REDIR/UsbDebugPort.obj diff --git a/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/REDIR/transport.obj b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/REDIR/transport.obj Binary files differnew file mode 100644 index 0000000..0890fb7 --- /dev/null +++ b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/REDIR/transport.obj diff --git a/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/REDIR/usb_acc.obj b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/REDIR/usb_acc.obj Binary files differnew file mode 100644 index 0000000..2057d96 --- /dev/null +++ b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/REDIR/usb_acc.obj diff --git a/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/REDIR/usb_xp.obj b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/REDIR/usb_xp.obj Binary files differnew file mode 100644 index 0000000..a749ebf --- /dev/null +++ b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/REDIR/usb_xp.obj diff --git a/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/REDIR/xp_layer.obj b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/REDIR/xp_layer.obj Binary files differnew file mode 100644 index 0000000..833dab5 --- /dev/null +++ b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/REDIR/xp_layer.obj diff --git a/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/XportHdr.c b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/XportHdr.c new file mode 100644 index 0000000..3cc95b8 --- /dev/null +++ b/Core/EM/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/XportHdr.c @@ -0,0 +1,445 @@ +//*****************************************************************// +//*****************************************************************// +//*****************************************************************// +//** **// +//** (C)Copyright 2009, American Megatrends, Inc. **// +//** **// +//** All Rights Reserved. **// +//** **// +//** 5555 Oakbrook Pkwy, Building 200,Norcross, Georgia 30093 **// +//** **// +//** Phone (770)-246-8600 **// +//** **// +//*****************************************************************// +//*****************************************************************// +//*****************************************************************// +// $Header: /Alaska/BIN/Modules/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/XportHdr.c 9 4/04/12 4:58p Sudhirv $ +// +// $Revision: 9 $ +// +// $Date: 4/04/12 4:58p $ +//***************************************************************** +//***************************************************************** +// +// Revision History +// ---------------- +// $Log: /Alaska/BIN/Modules/AMIDebugRx/binaries/PeiAMIDebugRx/x64/XPORT/XportHdr.c $ +// +// 9 4/04/12 4:58p Sudhirv +// To Avoid Build errors in special cases. +// +// 8 3/13/12 10:47a Sudhirv +// [TAG] EIP60224 +// [Category] Improvement +// [Description] Function implement When broken in SMM, show the register +// context for 'outside' SMM. +// +// [TAG] EIP80406 +// [Category] Improvement +// [Description] Debugger support for Dynamic pci express base token +// +// [TAG] EIP81423 +// [Category] Improvement +// [Description] VeB Debugger - Improve the EFI tab's Handle Display +// feature +// +// [TAG] EIP84201 +// [Category] Improvement +// [Description] AMIDebugRx\Debugger Target modules usage of the Port 80 +// must be controlable +// +// 7 7/12/11 5:54p Sudhirv +// [TAG] EIP62342 +// [Category] Bug Fix +// [Severity] Normal +// [Symptom] Target Crashes when Debugger enabled and AMIDebugRx is in +// Checkpoint mode +// [RootCause] Debugger is Enabled and AMIDebugRx device is connected in +// checkpoint mode. Target MAchine is unaware of the type of host +// connected in DXE phase. +// [Solution] Support to not crash when Debugger enabled and Rx switch +// in Checkpoint Mode. +// +// 6 3/09/11 8:25a Sudhirv +// EIP 53658 - AMIDebugRx\Debugger support for PI 1.1 +// +// 5 2/15/10 8:05a Mallikarjunanv +// Updated after fix for EIP 35101 - Binary Debug Rx module doesn't report +// BIOS TAG correctly. +// +// 3 9/30/09 3:03p Sudhirv +// For Debugger 1.31.0023_PreAlpha +// +// 2 7/13/09 2:52p Sudhirv +// Updated with Coding Standards +// +// 1 7/07/09 4:47p Sudhirv +// Restructure Binaries Created +// +// 2 5/04/09 11:35a Madhans +// +// 1 5/01/09 7:48p Madhans +// AMIDebug Rx Module. Intial Checkin. +// +// 1 4/29/09 7:52a Sudhirv +// AMI Debug Rx module created +// +// 8 3/27/09 8:43a Sudhirv +// Updated Coding Standards. +// +// 7 8/29/07 12:59p Madhans +// Common code for 4.x and 3.x +// +// 6 6/13/07 3:17p Madhans +// Copyright Year updated. +// +// 5 3/12/07 6:19p Madhans +// !!!coding standards!!!! +// +// 4 1/22/07 11:43a Madhans +// Modification made for Binary Release 1.04.0003. +// +// 4 1/05/07 6:15p Madhan +// +// 3 1/05/07 1:05p Ashrafj +// Latest version 1.04.0001 Beta +// Known issues from previous 1.04.000 Beta release has been fixed. +// +// +//***************************************************************** +//***************************************************************** + +//********************************************************************** +//<AMI_FHDR_START> +// +// Name: XportHdr.c +// +// Description: File containing the globals for CAR base address & size. +// Also the code which make use of this so that it can be +// integrated as it is Debugger eModule of binary. +// +//<AMI_FHDR_END> +//********************************************************************** +#include "efi.h" +#include "Pei.h" + +#include "misc.h" +#ifndef EFIx64 +#include "AMIPeiDebug.h" +#else +#include "AMIPeiDebugX64.h" +#include "AsmDbgrx64Libs.h" +#endif +#include "timestamp.h" + +#define CONVERT_TO_STRING(a) #a +#define STR(a) CONVERT_TO_STRING(a) +#ifndef DBG_WRITE_IO_80_SUPPORT +#define DBG_WRITE_IO_80_SUPPORT 0 +#endif +const char *sTargetProjectTag= STR(TARGET_PROJECT_TAG); + +//EIP 62342 - Support to not crash when Debugger enabled and Rx switch in Checkpoint Mode. +UINTN gAMIDebuggerEnabled = REDIRECTION_ONLY_MODE; + +volatile UINTN gDbgWriteIO80Support = DBG_WRITE_IO_80_SUPPORT; + +typedef struct { + UINT16 Year; + UINT8 Month; + UINT8 Day; + UINT8 Hour; + UINT8 Minute; + UINT8 Second; +} DateTime_T; + +VOID AddExtDelay(); + +//********************************************************************** +//<AMI_SHDR_START> +// +// Name: PeiDbgDataSection of type PEI_DBG_DATA_SECTION +// +// Description: The following global data structure is for relocation purpose +// in order to support debugging after the debugger data section +// is relocated. This second parameter of the data structure has +// to be updated by the debugger service PEIM to point to relocated +// data section into memory.The code section has this module +// has to relocated before the update of second parameter. +// +//<AMI_SHDR_END> +//********************************************************************** + +#if defined (PI_SPECIFICATION_VERSION) && (PI_SPECIFICATION_VERSION >= 0x00010000) +PEI_DBG_DATA_SECTION PeiDbgDataSection = { + "XPRT", + NULL +}; +#else +PEI_DBG_DATA_SECTION PeiDbgDataSection = { + "XPRT", + PEI_DEBUG_DATASECTION_BASEADDRESS +}; + +#endif + +#ifndef EFIx64 +UINTN GetCARBaseAddress() +{ + EFI_PEI_SERVICES **PeiServices; + VOID *PeiDbgData; + EFI_GUID mPeiDbgBasePpiGuid = EFI_PEI_DBG_BASEADDRESS_PPI_GUID; + EFI_STATUS Status; + + if((PeiDbgDataSection.DATABASEADDRESS)==NULL) + { + IDTBASE Idtr; + _asm{ + sidt fword ptr Idtr + } + PeiServices = (EFI_PEI_SERVICES **) (*(UINTN*)(Idtr.IDTBaseAddr - sizeof (UINTN))); + + if (PeiServices == NULL) + return (Idtr.IDTBaseAddr); //Point to the area after PEI Services + else + { + Status = (**PeiServices).LocatePpi( + PeiServices, + &mPeiDbgBasePpiGuid, // GUID + 0, // INSTANCE + NULL, // EFI_PEI_PPI_DESCRIPTOR + &PeiDbgData // PPI + ); + if (!EFI_ERROR(Status)) + return (UINTN)PeiDbgData; + else + return (Idtr.IDTBaseAddr); + } + } + else { + return((UINTN)PeiDbgDataSection.DATABASEADDRESS); + } +} +#endif + +//<AMI_PHDR_START> +//-------------------------------------------------------------------- +// Procedure: IsDbgrInCAR +// +// Description: Internal Helper function. +// +// Input: none +// +// Output: 1 for yes & 0 for no (UINT32) +// +//-------------------------------------------------------------------- +//<AMI_PHDR_END> +UINT32 IsDbgrInCAR() +{ +#if defined (PI_SPECIFICATION_VERSION) && (PI_SPECIFICATION_VERSION >= 0x00010000) + if((PeiDbgDataSection.DATABASEADDRESS)==NULL) +#else + if(PEI_DEBUG_DATA_BASEADDRESS == PEI_DEBUG_DATASECTION_BASEADDRESS) +#endif + return 1; //yes + else + return 0; //no +} + +//<AMI_PHDR_START> +//-------------------------------------------------------------------- +// Procedure: IoRead32 +// +// Description: Internal Helper function. Reads 32-bit value from IO port +// +// Input: UINT16 Port +// +// Output: UINT32 - port data +// +//-------------------------------------------------------------------- +//<AMI_PHDR_END> +UINT32 IoRead32(UINT16 Port) +{ +#ifdef EFIx64 + return IoReadDword(Port); +#else + _asm { + mov dx, Port + in eax, dx + } +#endif +} + +//<AMI_PHDR_START> +//-------------------------------------------------------------------- +// Procedure: Stall +// +// Description: Internal Helper function. +// +// Input: UINTN Usec (microseconds) +// +// Output: void +// +//-------------------------------------------------------------------- +//<AMI_PHDR_END> +VOID Stall (UINTN Usec) +{ + UINTN Counter = (Usec * 7)/2; // 3.58 count per microsec + UINTN i; + UINT32 Data32; + UINT32 PrevData; + + PrevData = IoRead32(PM_BASE_ADDRESS + 8); + for (i=0; i < Counter; ) { + Data32 = IoRead32(PM_BASE_ADDRESS + 8); + if (Data32 < PrevData) { // Reset if there is a overlap + PrevData=Data32; + continue; + } + i += (Data32 - PrevData); + PrevData=Data32; // FIX need to find out the real diff betweek different count. + } +} + +//<AMI_PHDR_START> +//-------------------------------------------------------------------- +// Procedure: AddDelay +// +// Description: Internal Helper function. +// +// Input: is currently designed to provide either software delay +// or through ACPI timer who has fixed frequency. +// +// Output: void +// +//-------------------------------------------------------------------- +//<AMI_PHDR_END> +void AddDelay() +{ + Stall(10*1000); //for 10 milliseconds + return; +} + +//<AMI_PHDR_START> +//-------------------------------------------------------------------- +// Procedure: AddUsbDelay +// +// Description: Internal Helper function. +// +// Input: is currently designed to provide either software delay +// or through ACPI timer who has fixed frequency. +// +// Output: void +// +//-------------------------------------------------------------------- +//<AMI_PHDR_END> +void AddUsbDelay() +{ + Stall(2*1000); //for 2 milliseconds + return; +} + +//<AMI_PHDR_START> +//-------------------------------------------------------------------- +// Procedure: AddSpecialDelay() +// +// Description: Internal Helper function. +// +// Input: void +// +// Output: void +// +//-------------------------------------------------------------------- +//<AMI_PHDR_END> +void AddSpecialDelay() +{ +#if !PEI_CACHE_ENABLED + if(IsDbgrInCAR()) + AddExtDelay(); + else{ + UINTN CriticalDelay = 60; + while(CriticalDelay--) + AddExtDelay(); + } +#else + UINTN CriticalDelay = 60; + +CriticalDelay = 1; // TESTING... + while(CriticalDelay--) + AddExtDelay(); +#endif +} + +//<AMI_PHDR_START> +//-------------------------------------------------------------------- +// Procedure: AddExtDelay() +// +// Description: Internal Helper function. +// +// Input: void +// +// Output: void +// +//-------------------------------------------------------------------- +//<AMI_PHDR_END> +void AddExtDelay() +{ +// UINT8 i = 35; //providing 250 ms delay + UINT8 i = 25; + i =1; // TESTING... + while(i--) + AddDelay(); + return; +} + +//<AMI_PHDR_START> +//-------------------------------------------------------------------- +// Procedure: GetBuildTime() +// +// Description: Sends the Build Time Details +// +// Input: void* +// +// Output: void +// +//-------------------------------------------------------------------- +//<AMI_PHDR_END> + +#define Str2No(A) (A - '0') + +#define TwoDigitStr2BCD(String) (Str2No(String[0])*0x10+Str2No(String[1])) + +VOID GetBuildTime(void *Buffer) +{ + UINT8 *strYear = FOUR_DIGIT_YEAR; + UINT8 *strMonth = TWO_DIGIT_MONTH; + UINT8 *strDay = TWO_DIGIT_DAY; + UINT8 *strHour = TWO_DIGIT_HOUR; + UINT8 *strMin = TWO_DIGIT_MINUTE; + UINT8 *strSec = TWO_DIGIT_SECOND; + + + ((DateTime_T*)Buffer)->Year=(Str2No(strYear[0])*0x1000+Str2No(strYear[1])*0x100+Str2No(strYear[2])*0x10+Str2No(strYear[3])); + ((DateTime_T*)Buffer)->Month=TwoDigitStr2BCD(strMonth); + ((DateTime_T*)Buffer)->Day=TwoDigitStr2BCD(strDay); + ((DateTime_T*)Buffer)->Hour=TwoDigitStr2BCD(strHour); + ((DateTime_T*)Buffer)->Minute=TwoDigitStr2BCD(strMin); + ((DateTime_T*)Buffer)->Second=TwoDigitStr2BCD(strSec); + return; +} + +//*****************************************************************// +//*****************************************************************// +//*****************************************************************// +//** **// +//** (C)Copyright 2009, American Megatrends, Inc. **// +//** **// +//** All Rights Reserved. **// +//** **// +//** 5555 Oakbrook Pkwy, Building 200,Norcross, Georgia 30093 **// +//** **// +//** Phone (770)-246-8600 **// +//** **// +//*****************************************************************// +//*****************************************************************// +//*****************************************************************// |