mirror of https://github.com/acidanthera/audk.git
141 lines
4.2 KiB
PHP
141 lines
4.2 KiB
PHP
|
;
|
||
|
; Copyright (c) 2013-2015 Intel Corporation.
|
||
|
;
|
||
|
; 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:
|
||
|
;
|
||
|
; Platform.inc
|
||
|
;
|
||
|
; Abstract:
|
||
|
;
|
||
|
; Quark A0 Platform Specific Definitions
|
||
|
;
|
||
|
;------------------------------------------------------------------------------
|
||
|
|
||
|
JMP32 MACRO FunctionName
|
||
|
lea esp, @F
|
||
|
jmp FunctionName
|
||
|
@@:
|
||
|
ENDM
|
||
|
|
||
|
RET32 MACRO
|
||
|
jmp esp
|
||
|
ENDM
|
||
|
|
||
|
;
|
||
|
; ROM/SPI/MEMORY Definitions
|
||
|
;
|
||
|
QUARK_DDR3_MEM_BASE_ADDRESS EQU 000000000h ; Memory Base Address = 0
|
||
|
QUARK_MAX_DDR3_MEM_SIZE_BYTES EQU 080000000h ; DDR3 Memory Size = 2GB
|
||
|
QUARK_ESRAM_MEM_SIZE_BYTES EQU 000080000h ; eSRAM Memory Size = 512K
|
||
|
QUARK_STACK_SIZE_BYTES EQU 008000h ; Quark stack size = 32K
|
||
|
|
||
|
;
|
||
|
; RTC/CMOS definitions
|
||
|
;
|
||
|
RTC_INDEX EQU 070h
|
||
|
NMI_DISABLE EQU 080h ; Bit7=1 disables NMI
|
||
|
NMI_ENABLE EQU 000h ; Bit7=0 disables NMI
|
||
|
RTC_DATA EQU 071h
|
||
|
|
||
|
;
|
||
|
; PCI Configuration definitions
|
||
|
;
|
||
|
PCI_CFG EQU 1 SHL 01Fh ; PCI configuration access mechanism
|
||
|
PCI_ADDRESS_PORT EQU 0CF8h
|
||
|
PCI_DATA_PORT EQU 0CFCh
|
||
|
|
||
|
;
|
||
|
; Quark PCI devices
|
||
|
;
|
||
|
HOST_BRIDGE_PFA EQU 0000h ; B0:D0:F0 (Host Bridge)
|
||
|
ILB_PFA EQU 00F8h ; B0:D31:F0 (Legacy Block)
|
||
|
|
||
|
;
|
||
|
; ILB PCI Config Registers
|
||
|
;
|
||
|
BDE EQU 0D4h ; BIOS Decode Enable register
|
||
|
DECODE_ALL_REGIONS_ENABLE EQU 0FF000000h ; Decode all BIOS decode ranges
|
||
|
|
||
|
|
||
|
;
|
||
|
; iLB Reset Register
|
||
|
;
|
||
|
ILB_RESET_REG EQU 0CF9h
|
||
|
CF9_WARM_RESET EQU 02h
|
||
|
CF9_COLD_RESET EQU 08h
|
||
|
|
||
|
;
|
||
|
; Host Bridge PCI Config Registers
|
||
|
;
|
||
|
MESSAGE_BUS_CONTROL_REG EQU 0D0h ; Message Bus Control Register
|
||
|
SB_OPCODE_FIELD EQU 018h ; Bit location of Opcode field
|
||
|
OPCODE_SIDEBAND_REG_READ EQU 010h ; Read opcode
|
||
|
OPCODE_SIDEBAND_REG_WRITE EQU 011h ; Write opcode
|
||
|
OPCODE_SIDEBAND_ALT_REG_READ EQU 06h ; Alternate Read opcode
|
||
|
OPCODE_SIDEBAND_ALT_REG_WRITE EQU 07h ; Alternate Write opcode
|
||
|
OPCODE_WARM_RESET_REQUEST EQU 0F4h ; Reset Warm
|
||
|
OPCODE_COLD_RESET_REQUEST EQU 0F5h ; Reset Cold
|
||
|
SB_PORT_FIELD EQU 010h ; Bit location of Port ID field
|
||
|
MEMORY_ARBITER_PORT_ID EQU 00h
|
||
|
HOST_BRIDGE_PORT_ID EQU 03h
|
||
|
RMU_PORT_ID EQU 04h
|
||
|
MEMORY_MANAGER_PORT_ID EQU 05h
|
||
|
SOC_UNIT_PORT_ID EQU 031h
|
||
|
SB_ADDR_FIELD EQU 008h ; Bit location of Register field
|
||
|
SB_BE_FIELD EQU 004h ; Bit location of Byte Enables field
|
||
|
ALL_BYTE_EN EQU 00Fh ; All Byte Enables
|
||
|
MESSAGE_DATA_REG EQU 0D4h ; Message Data Register
|
||
|
|
||
|
;
|
||
|
; Memory Arbiter Config Registers
|
||
|
;
|
||
|
AEC_CTRL_OFFSET EQU 00h
|
||
|
|
||
|
;
|
||
|
; Host Bridge Config Registers
|
||
|
;
|
||
|
HMISC2_OFFSET EQU 03h
|
||
|
OR_PM_FIELD EQU 010h
|
||
|
SMI_EN EQU 1 SHL 13h
|
||
|
|
||
|
HMBOUND_OFFSET EQU 08h
|
||
|
HMBOUND_ADDRESS EQU (QUARK_DDR3_MEM_BASE_ADDRESS + QUARK_MAX_DDR3_MEM_SIZE_BYTES + QUARK_ESRAM_MEM_SIZE_BYTES)
|
||
|
HMBOUND_LOCK EQU 00000001h
|
||
|
HECREG_OFFSET EQU 09h
|
||
|
EC_BASE EQU 0E0000000h
|
||
|
EC_ENABLE EQU 01h
|
||
|
HLEGACY_OFFSET EQU 0Ah
|
||
|
NMI EQU 1 SHL 0Eh ; Pin 14
|
||
|
SMI EQU 1 SHL 0Ch ; Pin 12
|
||
|
INTR EQU 1 SHL 0Ah ; Pin 10
|
||
|
|
||
|
|
||
|
;
|
||
|
; Memory Manager Config Registers
|
||
|
;
|
||
|
ESRAMPGCTRL_BLOCK_OFFSET EQU 082h
|
||
|
BLOCK_ENABLE_PG EQU 010000000h
|
||
|
BIMRVCTL_OFFSET EQU 019h
|
||
|
ENABLE_IMR_INTERRUPT EQU 080000000h
|
||
|
|
||
|
;
|
||
|
; SOC UNIT Debug Registers
|
||
|
;
|
||
|
CFGSTICKY_W1_OFFSET EQU 050h
|
||
|
FORCE_COLD_RESET EQU 00000001h
|
||
|
CFGSTICKY_RW_OFFSET EQU 051h
|
||
|
RESET_FOR_ESRAM_LOCK EQU 00000020h
|
||
|
RESET_FOR_HMBOUND_LOCK EQU 00000040h
|
||
|
CFGNONSTICKY_W1_OFFSET EQU 052h
|
||
|
FORCE_WARM_RESET EQU 00000001h
|