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
prev parent 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