mirror of
https://github.com/acidanthera/audk.git
synced 2025-07-31 01:24:12 +02:00
IntelFsp2Pkg: Locate FSP Info Header dynamically
we need to locate the FSP Info Header by calculating offset dynamically to handle the scenario of FSP component is being rebased to different location. Cc: Maurice Ma <maurice.ma@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Giri P Mudusuru <giri.p.mudusuru@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Satya Yarlagadda <satya.p.yarlagadda@intel.com> Reviewed-by: Maurice Ma <maurice.ma@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> Reviewed-by: Giri P Mudusuru <giri.p.mudusuru@intel.com>
This commit is contained in:
parent
d54e2d6c1e
commit
8265373e60
@ -14,22 +14,21 @@
|
|||||||
SECTION .text
|
SECTION .text
|
||||||
|
|
||||||
global ASM_PFX(FspInfoHeaderRelativeOff)
|
global ASM_PFX(FspInfoHeaderRelativeOff)
|
||||||
ASM_PFX(FspInfoHeaderRelativeOff):
|
|
||||||
;
|
|
||||||
; This value will be pached by the build script
|
|
||||||
;
|
|
||||||
DD 0x12345678
|
|
||||||
|
|
||||||
global ASM_PFX(AsmGetFspBaseAddress)
|
global ASM_PFX(AsmGetFspBaseAddress)
|
||||||
ASM_PFX(AsmGetFspBaseAddress):
|
ASM_PFX(AsmGetFspBaseAddress):
|
||||||
mov eax, ASM_PFX(AsmGetFspInfoHeader)
|
call ASM_PFX(AsmGetFspInfoHeader)
|
||||||
sub eax, dword [ASM_PFX(FspInfoHeaderRelativeOff)]
|
|
||||||
add eax, 0x1C
|
add eax, 0x1C
|
||||||
mov eax, dword [eax]
|
mov eax, dword [eax]
|
||||||
ret
|
ret
|
||||||
|
|
||||||
global ASM_PFX(AsmGetFspInfoHeader)
|
global ASM_PFX(AsmGetFspInfoHeader)
|
||||||
ASM_PFX(AsmGetFspInfoHeader):
|
ASM_PFX(AsmGetFspInfoHeader):
|
||||||
mov eax, ASM_PFX(AsmGetFspInfoHeader)
|
call ASM_PFX(NextInstruction)
|
||||||
sub eax, dword [ASM_PFX(FspInfoHeaderRelativeOff)]
|
ASM_PFX(NextInstruction):
|
||||||
|
pop eax
|
||||||
|
sub eax, ASM_PFX(NextInstruction)
|
||||||
|
add eax, ASM_PFX(AsmGetFspInfoHeader)
|
||||||
|
DB 02Dh ; opcode of sub eax, imm32
|
||||||
|
ASM_PFX(FspInfoHeaderRelativeOff): DD 0x12345678 ; sub eax, FspInfoHeaderRelativeOff
|
||||||
ret
|
ret
|
||||||
|
Loading…
x
Reference in New Issue
Block a user