mirror of https://github.com/acidanthera/audk.git
103 lines
5.1 KiB
C
103 lines
5.1 KiB
C
|
/*++
|
|||
|
|
|||
|
Copyright (c) 2010, Apple Inc. 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.
|
|||
|
|
|||
|
--*/
|
|||
|
|
|||
|
#ifndef __ARM_EB_H__
|
|||
|
#define __ARM_EB_H__
|
|||
|
|
|||
|
#include <ArmEb/ArmEbUart.h>
|
|||
|
#include <ArmEb/ArmEbTimer.h>
|
|||
|
|
|||
|
///
|
|||
|
/// ARM EB Memory Map
|
|||
|
///
|
|||
|
// 0x00000000 - 0x0FFFFFFF SDRAM 256MB
|
|||
|
// 0x10000000 - 0x100FFFFF System FPGA (config registers) 1MB
|
|||
|
// 0x10000000<30>0x10000FFF 4KB System registers
|
|||
|
// 0x10001000<30>0x10001FFF 4KB System controller
|
|||
|
// 0x10002000<30>0x10002FFF 4KB Two-Wire Serial Bus Interface
|
|||
|
// 0x10003000<30>0x10003FFF 4KB Reserved
|
|||
|
// 0x10004000<30>0x10004FFF 4KB Advanced Audio CODEC Interface
|
|||
|
// 0x10005000<30>0x10005FFF 4KB MultiMedia Card Interface (MCI)
|
|||
|
// 0x10006000<30>0x10006FFF 4KB Keyboard/Mouse Interface 0
|
|||
|
// 0x10007000<30>0x10007FFF 4KB Keyboard/Mouse Interface 1
|
|||
|
// 0x10008000<30>0x10008FFF 4KB Character LCD Interface
|
|||
|
// 0x10009000<30>0x10009FFF 4KB UART 0 Interface
|
|||
|
// 0x1000A000<30>0x1000AFFF 4KB UART 1 Interface
|
|||
|
// 0x1000B000<30>0x1000BFFF 4KB UART 2 Interface
|
|||
|
// 0x1000C000<30>0x1000CFFF 4KB UART 3 Interface
|
|||
|
// 0x1000D000<30>0x1000DFFF 4KB Synchronous Serial Port Interface
|
|||
|
// 0x1000E000<30>0x1000EFFF 4KB Smart Card Interface
|
|||
|
// 0x1000F000<30>0x1000FFFF 4KB Reserved
|
|||
|
// 0x10010000<30>0x10010FFF 4KB Watchdog Interface
|
|||
|
// 0x10011000<30>0x10011FFF 4KB Timer modules 0 and 1 interface (Timer 1 starts at 0x10011020)
|
|||
|
// 0x10012000<30>0x10012FFF 4KB Timer modules 2 and 3 interface (Timer 3 starts at 0x10012020)
|
|||
|
// 0x10013000<30>0x10013FFF 4KB GPIO Interface 0
|
|||
|
// 0x10014000<30>0x10014FFF 4KB GPIO Interface 1
|
|||
|
// 0x10015000<30>0x10015FFF 4KB GPIO Interface 2 (miscellaneous onboard I/O)
|
|||
|
// 0x10016000<30>0x10016FFF 4KB Reserved
|
|||
|
// 0x10017000<30>0x10017FFF 4KB Real Time Clock Interface
|
|||
|
// 0x10018000<30>0x10018FFF 4KB Dynamic Memory Controller configuration
|
|||
|
// 0x10019000<30>0x10019FFF 4KB PCI controller configuration registers
|
|||
|
// 0x1001A000<30>0x1001FFFF 24KB Reserved
|
|||
|
// 0x10020000<30>0x1002FFFF 64KB Color LCD Controller
|
|||
|
// 0x10030000<30>0x1003FFFF 64KB DMA Controller configuration registers
|
|||
|
// 0x10040000<30>0x1004FFFF 64KB Generic Interrupt Controller 1 (nIRQ for tile 1)
|
|||
|
// 0x10050000<30>0x1005FFFF 64KB Generic Interrupt Controller 2 (nFIQ for tile 1)
|
|||
|
// 0x10060000<30>0x1006FFFF 64KB Generic Interrupt Controller 3 (nIRQ for tile 2)
|
|||
|
// 0x10070000<30>0x1007FFFF 64KB Generic Interrupt Controller 4 (nFIQ for tile 2)
|
|||
|
// 0x10080000<30>0x1008FFFF 64KB Static Memory Controller configuration registers
|
|||
|
// 0x100A0000<30>0x100EFFFF 448MB Reserved
|
|||
|
// 0x10090000<30>0x100FFFFF 64KB Debug Access Port (DAP)
|
|||
|
// 0x10100000 - 0x100FFFFF Reserved 3MB
|
|||
|
// 0x10400000 - 0x17FFFFFF System FPGA 124MB
|
|||
|
// 0x18000000 - 0x1FFFFFFF Logic Tile 1 128MB
|
|||
|
// 0x20000000 - 0x3FFFFFFF Reserved 512MB
|
|||
|
// 0x40000000 - 0x7FFFFFFF System FPGA 1GB
|
|||
|
// 0x40000000<30>0x43FFFFFF CS0 NOR flash (nNOR_CS1)
|
|||
|
// 0x44000000<30>0x47FFFFFF CS1 NOR flash (nNOR_CS2)
|
|||
|
// 0x48000000<30>0x4BFFFFFF CS2 SRAM (nSRAMCS)
|
|||
|
// 0x4C000000<30>0x4DFFFFFF CS3 Config flash
|
|||
|
// 0x4E000000<30>0x4EFFFFFF Ethernet
|
|||
|
// 0x4F000000<30>0x4FFFFFFF USB
|
|||
|
// 0x50000000<30>0x53FFFFFF CS4 (nEXPCS) PISMO (nCS0)
|
|||
|
// 0x54000000<30>0x57FFFFFF CS5 (nSTATICCS4) PISMO (nCS1)
|
|||
|
// 0x58000000<30>0x5BFFFFFF CS6 (nSTATICCS5) PISMO (nCS2)
|
|||
|
// 0x5C000000<30>0x5FFFFFFF CS7 (nSTATICCS6) PISMO (nCS3)
|
|||
|
// 0x61000000<30>0x61FFFFFF PCI SelfCfg window
|
|||
|
// 0x62000000<30>0x62FFFFFF PCI Cfg window
|
|||
|
// 0x63000000<30>0x63FFFFFF PCI I/O window
|
|||
|
// 0x64000000<30>0x67FFFFFF PCI memory window 0
|
|||
|
// 0x68000000<30>0x6BFFFFFF PCI memory window 1
|
|||
|
// 0x6C000000<30>0x6FFFFFFF PCI memory window 2
|
|||
|
// 0x70000000 - 0x7FFFFFFF DRAM Mirror
|
|||
|
// 0x80000000 - 0xFFFFFFFF Logic Tile site 2 2GB
|
|||
|
|
|||
|
//
|
|||
|
// At reset EB_DRAM_BASE is alaised to EB_CS0_NOR_BASE
|
|||
|
//
|
|||
|
#define EB_DRAM_BASE 0x00000000 // 256 MB DRAM
|
|||
|
#define EB_CONFIG_BASE 0x10000000
|
|||
|
|
|||
|
#define EB_CSO_NOR_BASE 0x40000000 // 64 MB NOR FLASH
|
|||
|
#define EB_CS1_NOR_BASE 0x44000000 // 64 MB NOR FLASH
|
|||
|
#define EB_CS2_SRAM 0x48000000 // 2 MB of SRAM
|
|||
|
#define EB_CS3_CONFIG_FLASH 0x4c000000 // 8 MB Config FLASH for FPGA. Not to be used by application code
|
|||
|
#define EB_CS3_ETHERNET 0x4e000000 // 16 MB Ethernet controller
|
|||
|
#define EB_CS4_PISMO_CS0 0x50000000 // Expansion CS0
|
|||
|
#define EB_CS5_PISMO_CS0 0x54000000 // Expansion CS0
|
|||
|
#define EB_CS6_PISMO_CS0 0x58000000 // Expansion CS0
|
|||
|
|
|||
|
#define EB_DRAM_REMAP_BASE 0x70000000 // if REMAPSTAT is HIGH alais of EB_DRAM_BASE
|
|||
|
|
|||
|
#endif
|