1 /******************************************************************************
3 * Copyright (C) 2014 Xilinx, Inc. All rights reserved.
5 * Permission is hereby granted, free of charge, to any person obtaining a copy
6 * of this software and associated documentation files (the "Software"), to deal
7 * in the Software without restriction, including without limitation the rights
8 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 * copies of the Software, and to permit persons to whom the Software is
10 * furnished to do so, subject to the following conditions:
12 * The above copyright notice and this permission notice shall be included in
13 * all copies or substantial portions of the Software.
15 * Use of the Software is limited solely to applications:
16 * (a) running on a Xilinx device, or
17 * (b) that interact with a Xilinx device through a bus or interconnect.
19 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
22 * XILINX BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
23 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
24 * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
27 * Except as contained in this notice, the name of the Xilinx shall not be used
28 * in advertising or otherwise to promote the sale, use or other dealings in
29 * this Software without prior written authorization from Xilinx.
31 ******************************************************************************/
32 /*****************************************************************************/
34 * @file translation_table.s
36 * This file contains the initialization for the MMU table in RAM
37 * needed by the Cortex A53 processor
40 * MODIFICATION HISTORY:
42 * Ver Who Date Changes
43 * ----- ---- -------- ---------------------------------------------------
44 * 5.00 pkp 05/21/14 Initial version
51 ******************************************************************************/
56 .set reserved, 0x0 /* Fault*/
57 .set Memory, 0x405 | (3 << 8) | (0x0) /* normal writeback write allocate inner shared read write */
58 .set Device, 0x409 | (1 << 53)| (1 << 54) |(0x0) /* strongly ordered read write non executable*/
59 .section .mmu_tbl0,"a"
65 .set SECT, MMUTableL1+0x1000
68 .section .mmu_tbl1,"a"
72 .set SECT, MMUTableL2 /*1GB DDR*/
75 .rept 0x3 /*1GB DDR, 1GB PL, 2GB other devices n memory*/
76 .set SECT, SECT + 0x1000
82 .8byte SECT + reserved
83 .set SECT, SECT + 0x40000000 /*12GB Reserved*/
88 .set SECT, SECT + 0x40000000 /*8GB PL, 8GB PCIe*/
95 .set SECT, SECT + 0x40000000 /*32GB DDR*/
101 .set SECT, SECT + 0x40000000 /*192GB PL*/
107 .set SECT, SECT + 0x40000000 /*256GB PL/PCIe*/
113 .set SECT, SECT + 0x40000000 /*512GB PL/DDR*/
117 .section .mmu_tbl2,"a"
123 .rept 0x0400 /*2GB DDR */
125 .set SECT, SECT+0x200000
128 .rept 0x0200 /*1GB lower PL*/
130 .set SECT, SECT+0x200000
132 .rept 0x0100 /*512MB QSPI*/
134 .set SECT, SECT+0x200000
136 .rept 0x080 /*256MB lower PCIe*/
138 .set SECT, SECT+0x200000
140 .rept 0x040 /*128MB Reserved*/
141 .8byte SECT + reserved
142 .set SECT, SECT+0x200000
144 .rept 0x8 /*16MB coresight*/
146 .set SECT, SECT+0x200000
148 .rept 0x8 /*16MB RPU low latency port*/
150 .set SECT, SECT+0x200000
153 .rept 0x022 /*68MB Device*/
155 .set SECT, SECT+0x200000
157 .rept 0x8 /*8MB FPS*/
159 .set SECT, SECT+0x200000
162 .rept 0x4 /*16MB LPS*/
164 .set SECT, SECT+0x200000
167 .8byte SECT + Device /*2MB PMU/CSU */
168 .set SECT, SECT+0x200000
169 .8byte SECT + Memory /*2MB OCM/TCM*/