IntelFsp2Pkg SecFspSecPlatformLibNull: Remove MASM/GAS files
Keep NASM file only for new added modules. Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Giri Mudusuru <giri.p.mudusuru@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Giri P Mudusuru <giri.p.mudusuru@intel.com>
This commit is contained in:
parent
01dbab7048
commit
f0fe58bc72
@ -1,131 +0,0 @@
|
|||||||
;; @file
|
|
||||||
; This is the code that goes from real-mode to protected mode.
|
|
||||||
; It consumes the reset vector, configures the stack.
|
|
||||||
;
|
|
||||||
; Copyright (c) 2015 - 2016, 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.
|
|
||||||
;;
|
|
||||||
|
|
||||||
;
|
|
||||||
; Define assembler characteristics
|
|
||||||
;
|
|
||||||
.586p
|
|
||||||
.xmm
|
|
||||||
.model flat, c
|
|
||||||
|
|
||||||
EXTRN TempRamInitApi:NEAR
|
|
||||||
|
|
||||||
.code
|
|
||||||
|
|
||||||
RET_ESI MACRO
|
|
||||||
|
|
||||||
movd esi, mm7 ; restore ESP from MM7
|
|
||||||
jmp esi
|
|
||||||
|
|
||||||
ENDM
|
|
||||||
|
|
||||||
;
|
|
||||||
; Perform early platform initialization
|
|
||||||
;
|
|
||||||
SecPlatformInit PROC NEAR PUBLIC
|
|
||||||
|
|
||||||
RET_ESI
|
|
||||||
|
|
||||||
SecPlatformInit ENDP
|
|
||||||
|
|
||||||
;
|
|
||||||
; Protected mode portion initializes stack, configures cache, and calls C entry point
|
|
||||||
;
|
|
||||||
|
|
||||||
;----------------------------------------------------------------------------
|
|
||||||
;
|
|
||||||
; Procedure: ProtectedModeEntryPoint
|
|
||||||
;
|
|
||||||
; Input: Executing in 32 Bit Protected (flat) mode
|
|
||||||
; cs: 0-4GB
|
|
||||||
; ds: 0-4GB
|
|
||||||
; es: 0-4GB
|
|
||||||
; fs: 0-4GB
|
|
||||||
; gs: 0-4GB
|
|
||||||
; ss: 0-4GB
|
|
||||||
;
|
|
||||||
; Output: This function never returns
|
|
||||||
;
|
|
||||||
; Destroys:
|
|
||||||
; ecx
|
|
||||||
; edi
|
|
||||||
; esi
|
|
||||||
; esp
|
|
||||||
;
|
|
||||||
; Description:
|
|
||||||
; Perform any essential early platform initilaisation
|
|
||||||
; Setup a stack
|
|
||||||
;
|
|
||||||
;----------------------------------------------------------------------------
|
|
||||||
|
|
||||||
ProtectedModeEntryPoint PROC NEAR C PUBLIC
|
|
||||||
;
|
|
||||||
; Dummy function. Consume 2 API to make sure they can be linked.
|
|
||||||
;
|
|
||||||
mov eax, TempRamInitApi
|
|
||||||
|
|
||||||
; Should never return
|
|
||||||
jmp $
|
|
||||||
|
|
||||||
ProtectedModeEntryPoint ENDP
|
|
||||||
|
|
||||||
;
|
|
||||||
; ROM-based Global-Descriptor Table for the PEI Phase
|
|
||||||
;
|
|
||||||
align 16
|
|
||||||
PUBLIC BootGdtTable
|
|
||||||
|
|
||||||
;
|
|
||||||
; GDT[0]: 0x00: Null entry, never used.
|
|
||||||
;
|
|
||||||
NULL_SEL equ $ - GDT_BASE ; Selector [0]
|
|
||||||
GDT_BASE:
|
|
||||||
BootGdtTable DD 0
|
|
||||||
DD 0
|
|
||||||
;
|
|
||||||
; Linear code segment descriptor
|
|
||||||
;
|
|
||||||
LINEAR_CODE_SEL equ $ - GDT_BASE ; Selector [0x8]
|
|
||||||
DW 0FFFFh ; limit 0xFFFF
|
|
||||||
DW 0 ; base 0
|
|
||||||
DB 0
|
|
||||||
DB 09Bh ; present, ring 0, data, expand-up, not-writable
|
|
||||||
DB 0CFh ; page-granular, 32-bit
|
|
||||||
DB 0
|
|
||||||
;
|
|
||||||
; System data segment descriptor
|
|
||||||
;
|
|
||||||
SYS_DATA_SEL equ $ - GDT_BASE ; Selector [0x10]
|
|
||||||
DW 0FFFFh ; limit 0xFFFF
|
|
||||||
DW 0 ; base 0
|
|
||||||
DB 0
|
|
||||||
DB 093h ; present, ring 0, data, expand-up, not-writable
|
|
||||||
DB 0CFh ; page-granular, 32-bit
|
|
||||||
DB 0
|
|
||||||
|
|
||||||
GDT_SIZE EQU $ - BootGDTtable ; Size, in bytes
|
|
||||||
|
|
||||||
;
|
|
||||||
; GDT Descriptor
|
|
||||||
;
|
|
||||||
GdtDesc: ; GDT descriptor
|
|
||||||
DW GDT_SIZE - 1 ; GDT limit
|
|
||||||
DD OFFSET BootGdtTable ; GDT base address
|
|
||||||
|
|
||||||
ProtectedModeEntryLinearAddress LABEL FWORD
|
|
||||||
ProtectedModeEntryLinearOffset LABEL DWORD
|
|
||||||
DD OFFSET ProtectedModeEntryPoint ; Offset of our 32 bit code
|
|
||||||
DW LINEAR_CODE_SEL
|
|
||||||
|
|
||||||
END
|
|
@ -1,110 +0,0 @@
|
|||||||
#------------------------------------------------------------------------------
|
|
||||||
#
|
|
||||||
# Copyright (c) 2015 - 2016, 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:
|
|
||||||
#
|
|
||||||
# This is the code that goes from real-mode to protected mode.
|
|
||||||
# It consumes the reset vector, configures the stack.
|
|
||||||
#
|
|
||||||
#------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
|
|
||||||
#
|
|
||||||
# Contrary to the name, this file contains 16 bit code as well.
|
|
||||||
#
|
|
||||||
.text
|
|
||||||
|
|
||||||
ASM_GLOBAL ASM_PFX(SecPlatformInit)
|
|
||||||
ASM_PFX(SecPlatformInit):
|
|
||||||
movd %mm7, %esi # restore ESP from MM7
|
|
||||||
jmp *%esi
|
|
||||||
|
|
||||||
#----------------------------------------------------------------------------
|
|
||||||
#
|
|
||||||
# Procedure: ProtectedModeEntryPoint
|
|
||||||
#
|
|
||||||
# Input: Executing in 32 Bit Protected (flat) mode
|
|
||||||
# cs: 0-4GB
|
|
||||||
# ds: 0-4GB
|
|
||||||
# es: 0-4GB
|
|
||||||
# fs: 0-4GB
|
|
||||||
# gs: 0-4GB
|
|
||||||
# ss: 0-4GB
|
|
||||||
#
|
|
||||||
# Output: This function never returns
|
|
||||||
#
|
|
||||||
# Destroys:
|
|
||||||
# ecx
|
|
||||||
# edi
|
|
||||||
# esi
|
|
||||||
# esp
|
|
||||||
#
|
|
||||||
# Description:
|
|
||||||
# Perform any essential early platform initilaisation
|
|
||||||
# Setup a stack
|
|
||||||
#
|
|
||||||
#----------------------------------------------------------------------------
|
|
||||||
ProtectedModeEntryPoint:
|
|
||||||
#
|
|
||||||
# Dummy function. Consume 2 API to make sure they can be linked.
|
|
||||||
#
|
|
||||||
movl ASM_PFX(TempRamInitApi), %eax
|
|
||||||
#
|
|
||||||
# Should never return
|
|
||||||
#
|
|
||||||
jmp . #'$'
|
|
||||||
|
|
||||||
#
|
|
||||||
# ROM-based Global-Descriptor Table for the PEI Phase
|
|
||||||
#
|
|
||||||
.align 16
|
|
||||||
#
|
|
||||||
# GDT[0]: 000h: Null entry, never used.
|
|
||||||
#
|
|
||||||
.equ NULL_SEL, . - GDT_BASE # Selector [0]
|
|
||||||
GDT_BASE:
|
|
||||||
BootGdtTable:
|
|
||||||
.long 0
|
|
||||||
.long 0
|
|
||||||
#
|
|
||||||
# Linear code segment descriptor
|
|
||||||
#
|
|
||||||
.equ LINEAR_CODE_SEL, . - GDT_BASE # Selector [08h]
|
|
||||||
.word 0xFFFF # limit 0FFFFh
|
|
||||||
.word 0 # base 0
|
|
||||||
.byte 0
|
|
||||||
.byte 0x9B # present, ring 0, data, expand-up, not-writable
|
|
||||||
.byte 0xCF # page-granular, 32-bit
|
|
||||||
.byte 0
|
|
||||||
#
|
|
||||||
# System data segment descriptor
|
|
||||||
#
|
|
||||||
.equ SYS_DATA_SEL, . - GDT_BASE # Selector [010h]
|
|
||||||
.word 0xFFFF # limit 0FFFFh
|
|
||||||
.word 0 # base 0
|
|
||||||
.byte 0
|
|
||||||
.byte 0x93 # present, ring 0, data, expand-up, not-writable
|
|
||||||
.byte 0xCF # page-granular, 32-bit
|
|
||||||
.byte 0
|
|
||||||
|
|
||||||
.equ GDT_SIZE, . - BootGdtTable # Size, in bytes
|
|
||||||
|
|
||||||
#
|
|
||||||
# GDT Descriptor
|
|
||||||
#
|
|
||||||
GdtDesc: # GDT descriptor
|
|
||||||
.word GDT_SIZE - 1
|
|
||||||
.long BootGdtTable
|
|
||||||
|
|
||||||
ProtectedModeEntryLinearAddress:
|
|
||||||
ProtectedModeEntryLinearOffset:
|
|
||||||
.long ProtectedModeEntryPoint
|
|
||||||
.word LINEAR_CODE_SEL
|
|
@ -1,51 +0,0 @@
|
|||||||
;; @file
|
|
||||||
; SEC CAR function
|
|
||||||
;
|
|
||||||
; Copyright (c) 2015, 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.
|
|
||||||
;;
|
|
||||||
|
|
||||||
;
|
|
||||||
; Define assembler characteristics
|
|
||||||
;
|
|
||||||
.586p
|
|
||||||
.xmm
|
|
||||||
.model flat, c
|
|
||||||
|
|
||||||
RET_ESI MACRO
|
|
||||||
|
|
||||||
movd esi, mm7 ; move ReturnAddress from MM7 to ESI
|
|
||||||
jmp esi
|
|
||||||
|
|
||||||
ENDM
|
|
||||||
|
|
||||||
.code
|
|
||||||
|
|
||||||
;-----------------------------------------------------------------------------
|
|
||||||
;
|
|
||||||
; Section: SecCarInit
|
|
||||||
;
|
|
||||||
; Description: This function initializes the Cache for Data, Stack, and Code
|
|
||||||
;
|
|
||||||
;-----------------------------------------------------------------------------
|
|
||||||
SecCarInit PROC NEAR PUBLIC
|
|
||||||
|
|
||||||
;
|
|
||||||
; Set up CAR
|
|
||||||
;
|
|
||||||
|
|
||||||
xor eax, eax
|
|
||||||
|
|
||||||
SecCarInitExit:
|
|
||||||
|
|
||||||
RET_ESI
|
|
||||||
|
|
||||||
SecCarInit ENDP
|
|
||||||
|
|
||||||
END
|
|
@ -1,37 +0,0 @@
|
|||||||
#------------------------------------------------------------------------------
|
|
||||||
#
|
|
||||||
# Copyright (c) 2015, 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:
|
|
||||||
#
|
|
||||||
# SEC CAR function
|
|
||||||
#
|
|
||||||
#------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
|
||||||
#
|
|
||||||
# Section: SecCarInit
|
|
||||||
#
|
|
||||||
# Description: This function initializes the Cache for Data, Stack, and Code
|
|
||||||
#
|
|
||||||
#-----------------------------------------------------------------------------
|
|
||||||
ASM_GLOBAL ASM_PFX(SecCarInit)
|
|
||||||
ASM_PFX(SecCarInit):
|
|
||||||
|
|
||||||
#
|
|
||||||
# Set up CAR
|
|
||||||
#
|
|
||||||
|
|
||||||
xor %eax, %eax
|
|
||||||
|
|
||||||
SecCarInitExit:
|
|
||||||
|
|
||||||
movd %mm7, %esi #RET_ESI
|
|
||||||
jmp *%esi
|
|
@ -1,7 +1,7 @@
|
|||||||
## @file
|
## @file
|
||||||
# NULL instance of Platform Sec Lib.
|
# NULL instance of Platform Sec Lib.
|
||||||
#
|
#
|
||||||
# Copyright (c) 2014 - 2015, Intel Corporation. All rights reserved.<BR>
|
# Copyright (c) 2014 - 2016, Intel Corporation. All rights reserved.<BR>
|
||||||
#
|
#
|
||||||
# This program and the accompanying materials
|
# This program and the accompanying materials
|
||||||
# are licensed and made available under the terms and conditions of the BSD License
|
# are licensed and made available under the terms and conditions of the BSD License
|
||||||
@ -41,11 +41,7 @@
|
|||||||
PlatformSecLibNull.c
|
PlatformSecLibNull.c
|
||||||
|
|
||||||
[Sources.IA32]
|
[Sources.IA32]
|
||||||
Ia32/Flat32.asm
|
|
||||||
Ia32/Flat32.nasm
|
Ia32/Flat32.nasm
|
||||||
Ia32/Flat32.s
|
|
||||||
Ia32/SecCarInit.asm
|
|
||||||
Ia32/SecCarInit.s
|
|
||||||
Ia32/SecCarInit.nasm
|
Ia32/SecCarInit.nasm
|
||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
|
Loading…
x
Reference in New Issue
Block a user