• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/* SPDX-License-Identifier: GPL-2.0-only */
2
3#include <memlayout.h>
4
5#include <arch/header.ld>
6
7/*
8 * Memory map for qemu vexpress-a9 since
9 * 6ec1588e09770ac7e9c60194faff6101111fc7f0 (Jul 2014):
10 *
11 * 0x0000_0000: NOR flash
12 * 0x1000_0000: I/O map address
13 * 0x6000_0000: RAM
14 */
15
16/*
17 * This map is designed to work with new qemu vexpress memory layout and
18 * with -bios option which neatly puts coreboot into flash and so payloads
19 * can find CBFS and we don't risk overwriting CBFS.
20 *
21 * Prior to Jul 2014 qemu aliased 0 to beginning of RAM instead of flash
22 * and -bios was unusable as $pc pointed to 0 which was zero-filled as a
23 * workaround we suggested using -kernel but this still had all the issues
24 * of having fake-ROM in RAM. In fact it was even worse as fake ROM ends
25 * up exactly at addresses needed to load Linux.
26 */
27SECTIONS
28{
29	/* TODO: does this thing emulate SRAM? */
30
31	REGION(flash, 0, CONFIG_ROM_SIZE, 4K)
32
33	DRAM_START(0x60000000)
34	STACK(0x60000000, 64K)
35	BOOTBLOCK(0x60010000, 128K)
36	FMAP_CACHE(0x60030000, 4K)
37	TIMESTAMP(0x60031000, 1K)
38	CBFS_MCACHE(0x60031400, 7K)
39	/* TODO: Implement MMU support and move TTB to a better location. */
40	TTB(0x60034000, 16K)
41	ROMSTAGE(0x60038000, 128K)
42	RAMSTAGE(0x60060000, 16M)
43	POSTRAM_CBFS_CACHE(0x61060000, 8M)
44}
45