public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Ma, Maurice" <maurice.ma@intel.com>
To: "Zhang, Shenglei" <shenglei.zhang@intel.com>
Cc: "Agyeman, Prince" <prince.agyeman@intel.com>,
	"You, Benjamin" <benjamin.you@intel.com>,
	"edk2-devel@lists.01.org" <edk2-devel@lists.01.org>
Subject: Re: [PATCH v4 14/14] CorebootModulePkg/SecCore: Remove .S files for IA32 arch
Date: Tue, 2 Apr 2019 03:25:48 +0000	[thread overview]
Message-ID: <7AAC936950815649B5F88FAE785306C2F6F4A0BB@ORSMSX105.amr.corp.intel.com> (raw)
In-Reply-To: <20190401082943.4152-15-shenglei.zhang@intel.com>

Looks good to me!
Reviewed-by: Maurice Ma <maurice.ma@intel.com>

Thanks
Maurice

> -----Original Message-----
> From: Zhang, Shenglei
> Sent: Monday, April 1, 2019 1:30
> To: edk2-devel@lists.01.org
> Cc: Ma, Maurice <maurice.ma@intel.com>; Agyeman, Prince
> <prince.agyeman@intel.com>; You, Benjamin <benjamin.you@intel.com>
> Subject: [PATCH v4 14/14] CorebootModulePkg/SecCore: Remove .S files for
> IA32 arch
> 
> .nasm file has been added for X86 arch. .S assembly code is not required any
> more.
> https://bugzilla.tianocore.org/show_bug.cgi?id=1594
> 
> Cc: Maurice Ma <maurice.ma@intel.com>
> Cc: Prince Agyeman <prince.agyeman@intel.com>
> Cc: Benjamin You <benjamin.you@intel.com>
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Shenglei Zhang <shenglei.zhang@intel.com>
> ---
>  CorebootModulePkg/SecCore/Ia32/SecEntry.S | 74 ---------------------
>  CorebootModulePkg/SecCore/Ia32/Stack.S    | 78 -----------------------
>  2 files changed, 152 deletions(-)
>  delete mode 100644 CorebootModulePkg/SecCore/Ia32/SecEntry.S
>  delete mode 100644 CorebootModulePkg/SecCore/Ia32/Stack.S
> 
> diff --git a/CorebootModulePkg/SecCore/Ia32/SecEntry.S
> b/CorebootModulePkg/SecCore/Ia32/SecEntry.S
> deleted file mode 100644
> index 3a3f76ed6b..0000000000
> --- a/CorebootModulePkg/SecCore/Ia32/SecEntry.S
> +++ /dev/null
> @@ -1,74 +0,0 @@
> -#------------------------------------------------------------------------------
> -#
> -# Copyright (c) 2013, Intel Corporation. All rights reserved.<BR> -# 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.
> -#
> -# Module Name:
> -#
> -#  SecEntry.S
> -#
> -# Abstract:
> -#
> -#  This is the code that begins in protected mode.
> -#   It will transfer the control to pei core.
> -#
> -#------------------------------------------------------------------------------
> -
> -ASM_GLOBAL  ASM_PFX(SecStartup)
> -
> -# Pcds
> -ASM_GLOBAL  ASM_PFX(PcdGet32 (PcdPayloadFdMemBase))
> -
> -#
> -# SecCore Entry Point
> -#
> -# Processor is in flat protected mode
> -#
> -# @param[in]  EAX   Initial value of the EAX register (BIST: Built-in Self Test)
> -# @param[in]  DI    'BP': boot-strap processor, or 'AP': application processor
> -# @param[in]  EBP   Pointer to the start of the Boot Firmware Volume
> -#
> -# @return     None  This routine does not return
> -#
> -ASM_GLOBAL ASM_PFX(_ModuleEntryPoint)
> -ASM_PFX(_ModuleEntryPoint):
> -  #
> -  # Disable all the interrupts
> -  #
> -  cli
> -
> -  #
> -  # Construct the temporary memory at 0x80000, length 0x10000
> -  #
> -  movl $(BASE_512KB + SIZE_64KB), %esp
> -
> -  #
> -  # Pass BFV into the PEI Core
> -  #
> -  pushl ASM_PFX(PcdGet32 (PcdPayloadFdMemBase))
> -
> -  #
> -  # Pass stack base into the PEI Core
> -  #
> -  pushl $BASE_512KB
> -
> -  #
> -  # Pass stack size into the PEI Core
> -  #
> -  pushl $SIZE_64KB
> -
> -  #
> -  # Pass Control into the PEI Core
> -  #
> -  call SecStartup
> -
> -  #
> -  # Never return to here
> -  #
> -  jmp .
> diff --git a/CorebootModulePkg/SecCore/Ia32/Stack.S
> b/CorebootModulePkg/SecCore/Ia32/Stack.S
> deleted file mode 100644
> index 6a8e0e4b15..0000000000
> --- a/CorebootModulePkg/SecCore/Ia32/Stack.S
> +++ /dev/null
> @@ -1,78 +0,0 @@
> -#------------------------------------------------------------------------------
> -#
> -# Copyright (c) 2013, Intel Corporation. All rights reserved.<BR> -# 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.
> -#
> -# Abstract:
> -#
> -#   Switch the stack from temporary memory to permanent memory.
> -#
> -#------------------------------------------------------------------------------
> -
> -
> -#------------------------------------------------------------------------------
> -# VOID
> -# EFIAPI
> -# SecSwitchStack (
> -#   UINT32   TemporaryMemoryBase,
> -#   UINT32   PermenentMemoryBase
> -#   )#
> -#------------------------------------------------------------------------------
> -ASM_GLOBAL ASM_PFX (SecSwitchStack)
> -ASM_PFX(SecSwitchStack):
> -    #
> -    # Save standard registers so they can be used to change stack
> -    #
> -    pushl %eax
> -    pushl %ebx
> -    pushl %ecx
> -    pushl %edx
> -
> -    #
> -    # !!CAUTION!! this function address's is pushed into stack after
> -    # migration of whole temporary memory, so need save it to permanent
> -    # memory at first!
> -    #
> -    movl  20(%esp), %ebx         # Save the first parameter
> -    movl  24(%esp), %ecx         # Save the second parameter
> -
> -    #
> -    # Save this function's return address into permanent memory at first.
> -    # Then, Fixup the esp point to permanent memory
> -    #
> -    movl  %esp, %eax
> -    subl  %ebx, %eax
> -    addl  %ecx, %eax
> -    movl  0(%esp), %edx          # copy pushed register's value to permanent
> memory
> -    movl  %edx, 0(%eax)
> -    movl  4(%esp), %edx
> -    movl  %edx, 4(%eax)
> -    movl  8(%esp), %edx
> -    movl  %edx, 8(%eax)
> -    movl  12(%esp), %edx
> -    movl  %edx, 12(%eax)
> -    movl  16(%esp), %edx        # Update this function's return address into
> permanent memory
> -    movl  %edx, 16(%eax)
> -    movl  %eax, %esp            # From now, esp is pointed to permanent memory
> -
> -    #
> -    # Fixup the ebp point to permanent memory
> -    #
> -    movl  %ebp, %eax
> -    subl  %ebx, %eax
> -    addl  %ecx, %eax
> -    movl  %eax, %ebp            # From now, ebp is pointed to permanent
> memory
> -
> -    popl  %edx
> -    popl  %ecx
> -    popl  %ebx
> -    popl  %eax
> -    ret
> -
> -
> --
> 2.18.0.windows.1



      reply	other threads:[~2019-04-02  3:25 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-01  8:29 [PATCH v4 00/14] Remove .S files for IA32 and X64 arch in MdePkg and UefiCpuPkg Shenglei Zhang
2019-04-01  8:29 ` [PATCH v3 01/14] UefiCpuPkg/SmmCpuFeaturesLib: Remove .S files for IA32 and X64 arch Shenglei Zhang
2019-04-01  8:29 ` [PATCH v3 02/14] UefiCpuPkg/BaseUefiCpuLib: " Shenglei Zhang
2019-04-01  8:29 ` [PATCH v3 03/14] UefiCpuPkg/CpuExceptionHandlerLib:Remove.S " Shenglei Zhang
2019-04-01  8:29 ` [PATCH v3 04/14] MdePkg/BaseCpuLib: Remove .S " Shenglei Zhang
2019-04-01  8:29 ` [PATCH v3 05/14] MdePkg/BaseLib: " Shenglei Zhang
2019-04-01  8:29 ` [PATCH v3 06/14] MdePkg/BaseMemoryLibMmx: " Shenglei Zhang
2019-04-01  8:29 ` [PATCH v3 07/14] MdePkg/BaseMemoryLibOptDxe: " Shenglei Zhang
2019-04-01  8:29 ` [PATCH v3 08/14] MdePkg/BaseMemoryLibOptPei: " Shenglei Zhang
2019-04-01  8:29 ` [PATCH v3 09/14] MdePkg/BaseMemoryLibRepStr: " Shenglei Zhang
2019-04-01  8:29 ` [PATCH v3 10/14] MdePkg/BaseMemoryLibSse2: " Shenglei Zhang
2019-04-01  8:29 ` [PATCH v3 11/14] CryptoPkg/IntrinsicLib: Remove .S files for IA32 arch Shenglei Zhang
2019-04-01  8:29 ` [PATCH v3 12/14] SourceLevelDebugPkg/DebugAgentCommon: Remove .S files Shenglei Zhang
2019-04-02  1:31   ` Wu, Hao A
2019-04-01  8:29 ` [PATCH v4 13/14] SourceLevelDebugPkg/PeCoffExtraActionLibDebug: " Shenglei Zhang
2019-04-02  1:33   ` Wu, Hao A
2019-04-01  8:29 ` [PATCH v4 14/14] CorebootModulePkg/SecCore: Remove .S files for IA32 arch Shenglei Zhang
2019-04-02  3:25   ` Ma, Maurice [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=7AAC936950815649B5F88FAE785306C2F6F4A0BB@ORSMSX105.amr.corp.intel.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox