[edk2] [PATCH] IntelFsp2Pkg: Delete useless external TempRamInitApi API

Song, BinX posted 1 patch 6 years, 8 months ago
Failed in applying to current master (apply log)
IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm | 7 -------
1 file changed, 7 deletions(-)
[edk2] [PATCH] IntelFsp2Pkg: Delete useless external TempRamInitApi API
Posted by Song, BinX 6 years, 8 months ago
- Delete useless external TempRamInitApi API to fix /WHOLEARCHIVE build 
  error with VS2015 tool chain

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: Bell Song <binx.song@intel.com>
---
 IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm | 7 -------
 1 file changed, 7 deletions(-)

diff --git a/IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm b/IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm
index 122eb9e..ee78312 100644
--- a/IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm
+++ b/IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm
@@ -16,8 +16,6 @@
 ; Define assembler characteristics
 ;
 
-extern   ASM_PFX(TempRamInitApi)
-
 SECTION .text
 
 %macro RET_ESI  0
@@ -66,11 +64,6 @@ ASM_PFX(SecPlatformInit):
 ;----------------------------------------------------------------------------
 global ASM_PFX(ProtectedModeEntryPoint)
 ASM_PFX(ProtectedModeEntryPoint):
-  ;
-  ; Dummy function. Consume 2 API to make sure they can be linked.
-  ;
-  mov  eax, ASM_PFX(TempRamInitApi)
-
   ; Should never return
   jmp  $
 
-- 
2.10.2.windows.1

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH] IntelFsp2Pkg: Delete useless external TempRamInitApi API
Posted by Yao, Jiewen 6 years, 8 months ago
Hi
May I know what test you have done to remove this?

Have you built a real FSP and boot it with FSP Wrapper?

Thank you
Yao Jiewen

> -----Original Message-----
> From: Song, BinX
> Sent: Thursday, August 3, 2017 1:47 PM
> To: edk2-devel@lists.01.org
> Cc: Yao, Jiewen <jiewen.yao@intel.com>; Giri P Mudusuru
> <giri.p.mudusuru@intel.com>
> Subject: [PATCH] IntelFsp2Pkg: Delete useless external TempRamInitApi API
> 
> - Delete useless external TempRamInitApi API to fix /WHOLEARCHIVE build
>   error with VS2015 tool chain
> 
> 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: Bell Song <binx.song@intel.com>
> ---
>  IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm | 7 -------
>  1 file changed, 7 deletions(-)
> 
> diff --git a/IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm
> b/IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm
> index 122eb9e..ee78312 100644
> --- a/IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm
> +++ b/IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm
> @@ -16,8 +16,6 @@
>  ; Define assembler characteristics
>  ;
> 
> -extern   ASM_PFX(TempRamInitApi)
> -
>  SECTION .text
> 
>  %macro RET_ESI  0
> @@ -66,11 +64,6 @@ ASM_PFX(SecPlatformInit):
>  ;----------------------------------------------------------------------------
>  global ASM_PFX(ProtectedModeEntryPoint)
>  ASM_PFX(ProtectedModeEntryPoint):
> -  ;
> -  ; Dummy function. Consume 2 API to make sure they can be linked.
> -  ;
> -  mov  eax, ASM_PFX(TempRamInitApi)
> -
>    ; Should never return
>    jmp  $
> 
> --
> 2.10.2.windows.1

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH] IntelFsp2Pkg: Delete useless external TempRamInitApi API
Posted by Gao, Liming 6 years, 8 months ago
Jiewen:
  The change is in SecFspSecPlatformLibNull. This library instance provides the dummy function. It should not be used by any real FSP. We meet with the build issue with /WHOLEARCHIVE option. Because this library depends on the external TempRamInitApi(), but FspSecCoreS and FspSecCoreT don't provide TempRamInitApi(). Then, FspSecCoreS and FspSecCoreT will build failure. To fix this build failure, we choose to remove this unnecessary dependency. 

> >  global ASM_PFX(ProtectedModeEntryPoint)
> >  ASM_PFX(ProtectedModeEntryPoint):
> > -  ;
> > -  ; Dummy function. Consume 2 API to make sure they can be linked.
> > -  ;	

Thanks
Liming
> -----Original Message-----
> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Yao, Jiewen
> Sent: Thursday, August 3, 2017 9:03 PM
> To: Song, BinX <binx.song@intel.com>; edk2-devel@lists.01.org
> Cc: Giri P Mudusuru <giri.p.mudusuru@intel.com>
> Subject: Re: [edk2] [PATCH] IntelFsp2Pkg: Delete useless external TempRamInitApi API
> 
> Hi
> May I know what test you have done to remove this?
> 
> Have you built a real FSP and boot it with FSP Wrapper?
> 
> Thank you
> Yao Jiewen
> 
> > -----Original Message-----
> > From: Song, BinX
> > Sent: Thursday, August 3, 2017 1:47 PM
> > To: edk2-devel@lists.01.org
> > Cc: Yao, Jiewen <jiewen.yao@intel.com>; Giri P Mudusuru
> > <giri.p.mudusuru@intel.com>
> > Subject: [PATCH] IntelFsp2Pkg: Delete useless external TempRamInitApi API
> >
> > - Delete useless external TempRamInitApi API to fix /WHOLEARCHIVE build
> >   error with VS2015 tool chain
> >
> > 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: Bell Song <binx.song@intel.com>
> > ---
> >  IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm | 7 -------
> >  1 file changed, 7 deletions(-)
> >
> > diff --git a/IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm
> > b/IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm
> > index 122eb9e..ee78312 100644
> > --- a/IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm
> > +++ b/IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm
> > @@ -16,8 +16,6 @@
> >  ; Define assembler characteristics
> >  ;
> >
> > -extern   ASM_PFX(TempRamInitApi)
> > -
> >  SECTION .text
> >
> >  %macro RET_ESI  0
> > @@ -66,11 +64,6 @@ ASM_PFX(SecPlatformInit):
> >  ;----------------------------------------------------------------------------
> >  global ASM_PFX(ProtectedModeEntryPoint)
> >  ASM_PFX(ProtectedModeEntryPoint):
> > -  ;
> > -  ; Dummy function. Consume 2 API to make sure they can be linked.
> > -  ;	
> > -  mov  eax, ASM_PFX(TempRamInitApi)
> > -
> >    ; Should never return
> >    jmp  $
> >
> > --
> > 2.10.2.windows.1
> 
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH] IntelFsp2Pkg: Delete useless external TempRamInitApi API
Posted by Yao, Jiewen 6 years, 8 months ago
Thanks for the explanation.
Yes, I agree we need resolve the build issue.

I do not suggest to remove the API in SecFspSecPlatformLibNull, because we need provide a good sample to real FSP implementation.

Can we add empty symbol in FspApiEntryM.nasm and FspApiEntryS.nasm?

Thank you
Yao Jiewen

From: Gao, Liming
Sent: Thursday, August 3, 2017 11:05 PM
To: Yao, Jiewen <jiewen.yao@intel.com>; Song, BinX <binx.song@intel.com>; edk2-devel@lists.01.org
Subject: RE: [PATCH] IntelFsp2Pkg: Delete useless external TempRamInitApi API

Jiewen:
  The change is in SecFspSecPlatformLibNull. This library instance provides the dummy function. It should not be used by any real FSP. We meet with the build issue with /WHOLEARCHIVE option. Because this library depends on the external TempRamInitApi(), but FspSecCoreS and FspSecCoreT don't provide TempRamInitApi(). Then, FspSecCoreS and FspSecCoreT will build failure. To fix this build failure, we choose to remove this unnecessary dependency.

> >  global ASM_PFX(ProtectedModeEntryPoint)
> >  ASM_PFX(ProtectedModeEntryPoint):
> > -  ;
> > -  ; Dummy function. Consume 2 API to make sure they can be linked.
> > -  ;

Thanks
Liming
> -----Original Message-----
> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Yao, Jiewen
> Sent: Thursday, August 3, 2017 9:03 PM
> To: Song, BinX <binx.song@intel.com<mailto:binx.song@intel.com>>; edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org>
> Cc: Giri P Mudusuru <giri.p.mudusuru@intel.com<mailto:giri.p.mudusuru@intel.com>>
> Subject: Re: [edk2] [PATCH] IntelFsp2Pkg: Delete useless external TempRamInitApi API
>
> Hi
> May I know what test you have done to remove this?
>
> Have you built a real FSP and boot it with FSP Wrapper?
>
> Thank you
> Yao Jiewen
>
> > -----Original Message-----
> > From: Song, BinX
> > Sent: Thursday, August 3, 2017 1:47 PM
> > To: edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org>
> > Cc: Yao, Jiewen <jiewen.yao@intel.com<mailto:jiewen.yao@intel.com>>; Giri P Mudusuru
> > <giri.p.mudusuru@intel.com<mailto:giri.p.mudusuru@intel.com>>
> > Subject: [PATCH] IntelFsp2Pkg: Delete useless external TempRamInitApi API
> >
> > - Delete useless external TempRamInitApi API to fix /WHOLEARCHIVE build
> >   error with VS2015 tool chain
> >
> > Cc: Jiewen Yao <jiewen.yao@intel.com<mailto:jiewen.yao@intel.com>>
> > Cc: Giri P Mudusuru <giri.p.mudusuru@intel.com<mailto:giri.p.mudusuru@intel.com>>
> > Contributed-under: TianoCore Contribution Agreement 1.0
> > Signed-off-by: Bell Song <binx.song@intel.com<mailto:binx.song@intel.com>>
> > ---
> >  IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm | 7 -------
> >  1 file changed, 7 deletions(-)
> >
> > diff --git a/IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm
> > b/IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm
> > index 122eb9e..ee78312 100644
> > --- a/IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm
> > +++ b/IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm
> > @@ -16,8 +16,6 @@
> >  ; Define assembler characteristics
> >  ;
> >
> > -extern   ASM_PFX(TempRamInitApi)
> > -
> >  SECTION .text
> >
> >  %macro RET_ESI  0
> > @@ -66,11 +64,6 @@ ASM_PFX(SecPlatformInit):
> >  ;----------------------------------------------------------------------------
> >  global ASM_PFX(ProtectedModeEntryPoint)
> >  ASM_PFX(ProtectedModeEntryPoint):
> > -  ;
> > -  ; Dummy function. Consume 2 API to make sure they can be linked.
> > -  ;
> > -  mov  eax, ASM_PFX(TempRamInitApi)
> > -
> >    ; Should never return
> >    jmp  $
> >
> > --
> > 2.10.2.windows.1
>
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org>
> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH] IntelFsp2Pkg: Delete useless external TempRamInitApi API
Posted by Gao, Liming 6 years, 8 months ago
Yes. This way does work. We will update the patch for it.

From: Yao, Jiewen
Sent: Thursday, August 17, 2017 3:53 PM
To: Gao, Liming <liming.gao@intel.com>; Song, BinX <binx.song@intel.com>; edk2-devel@lists.01.org
Subject: RE: [PATCH] IntelFsp2Pkg: Delete useless external TempRamInitApi API

Thanks for the explanation.
Yes, I agree we need resolve the build issue.

I do not suggest to remove the API in SecFspSecPlatformLibNull, because we need provide a good sample to real FSP implementation.

Can we add empty symbol in FspApiEntryM.nasm and FspApiEntryS.nasm?

Thank you
Yao Jiewen

From: Gao, Liming
Sent: Thursday, August 3, 2017 11:05 PM
To: Yao, Jiewen <jiewen.yao@intel.com<mailto:jiewen.yao@intel.com>>; Song, BinX <binx.song@intel.com<mailto:binx.song@intel.com>>; edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org>
Subject: RE: [PATCH] IntelFsp2Pkg: Delete useless external TempRamInitApi API

Jiewen:
  The change is in SecFspSecPlatformLibNull. This library instance provides the dummy function. It should not be used by any real FSP. We meet with the build issue with /WHOLEARCHIVE option. Because this library depends on the external TempRamInitApi(), but FspSecCoreS and FspSecCoreT don't provide TempRamInitApi(). Then, FspSecCoreS and FspSecCoreT will build failure. To fix this build failure, we choose to remove this unnecessary dependency.

> >  global ASM_PFX(ProtectedModeEntryPoint)
> >  ASM_PFX(ProtectedModeEntryPoint):
> > -  ;
> > -  ; Dummy function. Consume 2 API to make sure they can be linked.
> > -  ;

Thanks
Liming
> -----Original Message-----
> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Yao, Jiewen
> Sent: Thursday, August 3, 2017 9:03 PM
> To: Song, BinX <binx.song@intel.com<mailto:binx.song@intel.com>>; edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org>
> Cc: Giri P Mudusuru <giri.p.mudusuru@intel.com<mailto:giri.p.mudusuru@intel.com>>
> Subject: Re: [edk2] [PATCH] IntelFsp2Pkg: Delete useless external TempRamInitApi API
>
> Hi
> May I know what test you have done to remove this?
>
> Have you built a real FSP and boot it with FSP Wrapper?
>
> Thank you
> Yao Jiewen
>
> > -----Original Message-----
> > From: Song, BinX
> > Sent: Thursday, August 3, 2017 1:47 PM
> > To: edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org>
> > Cc: Yao, Jiewen <jiewen.yao@intel.com<mailto:jiewen.yao@intel.com>>; Giri P Mudusuru
> > <giri.p.mudusuru@intel.com<mailto:giri.p.mudusuru@intel.com>>
> > Subject: [PATCH] IntelFsp2Pkg: Delete useless external TempRamInitApi API
> >
> > - Delete useless external TempRamInitApi API to fix /WHOLEARCHIVE build
> >   error with VS2015 tool chain
> >
> > Cc: Jiewen Yao <jiewen.yao@intel.com<mailto:jiewen.yao@intel.com>>
> > Cc: Giri P Mudusuru <giri.p.mudusuru@intel.com<mailto:giri.p.mudusuru@intel.com>>
> > Contributed-under: TianoCore Contribution Agreement 1.0
> > Signed-off-by: Bell Song <binx.song@intel.com<mailto:binx.song@intel.com>>
> > ---
> >  IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm | 7 -------
> >  1 file changed, 7 deletions(-)
> >
> > diff --git a/IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm
> > b/IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm
> > index 122eb9e..ee78312 100644
> > --- a/IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm
> > +++ b/IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/Ia32/Flat32.nasm
> > @@ -16,8 +16,6 @@
> >  ; Define assembler characteristics
> >  ;
> >
> > -extern   ASM_PFX(TempRamInitApi)
> > -
> >  SECTION .text
> >
> >  %macro RET_ESI  0
> > @@ -66,11 +64,6 @@ ASM_PFX(SecPlatformInit):
> >  ;----------------------------------------------------------------------------
> >  global ASM_PFX(ProtectedModeEntryPoint)
> >  ASM_PFX(ProtectedModeEntryPoint):
> > -  ;
> > -  ; Dummy function. Consume 2 API to make sure they can be linked.
> > -  ;
> > -  mov  eax, ASM_PFX(TempRamInitApi)
> > -
> >    ; Should never return
> >    jmp  $
> >
> > --
> > 2.10.2.windows.1
>
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org>
> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel