blob: 9bee946730eb22a03a58842adc72e0185c386c14 [file] [log] [blame]
Hung-Te Lin7635a602013-02-12 00:07:38 +08001##
2## This file is part of the coreboot project.
3##
4## Copyright (C) 2013 Google Inc.
5##
6## This software is licensed under the terms of the GNU General Public
7## License version 2, as published by the Free Software Foundation, and
8## may be copied, distributed, and modified under those terms.
9##
10## This program is distributed in the hope that it will be useful,
11## but WITHOUT ANY WARRANTY; without even the implied warranty of
12## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13## GNU General Public License for more details.
14
15# Emulation for ARM Ltd Versatile Express Cortex-A9
16# http://www.arm.com/products/tools/development-boards/versatile-express
17
18# To execute, do:
19# export QEMU_AUDIO_DRV=none
20# qemu-system-arm -M vexpress-a9 -m 1024M -nographic -kernel build/coreboot.rom
21
22if BOARD_EMULATION_QEMU_ARMV7
23
24config BOARD_SPECIFIC_OPTIONS # dummy
25 def_bool y
26 select ARCH_ARMV7
27 select CPU_ARMLTD_CORTEX_A9
Ronald G. Minnichc8fadd92013-02-20 14:13:01 -080028 select HAVE_UART_MEMORY_MAPPED
Hung-Te Lin7635a602013-02-12 00:07:38 +080029 select HAVE_UART_SPECIAL
30 select BOARD_ROMSIZE_KB_4096
31
32config MAINBOARD_DIR
33 string
34 default emulation/qemu-armv7
35
36config MAINBOARD_PART_NUMBER
37 string
38 default "QEMU ARMV7"
39
40config MAX_CPUS
41 int
42 default 2
43
44config MAINBOARD_VENDOR
45 string
46 default "ARM Ltd."
47
48config BOOTBLOCK_MAINBOARD_INIT
49 string
50 default "mainboard/emulation/qemu-armv7/bootblock.c"
51
52config DRAM_SIZE_MB
53 int
54 default 1024
55
56# Memory map for qemu vexpress-a9:
57#
58# 0x0000_0000: jump instruction (by qemu)
59# 0x0001_0000: bootblock (entry of kernel / firmware)
60# 0x0002_0000: romstage, assume up to 128KB in size.
61# 0x0007_ff00: stack pointer
62# 0x0010_0000: CBFS header
63# 0x0011_0000: CBFS data
64# 0x0100_0000: reserved for ramstage
65# 0x1000_0000: I/O map address
66
67config BOOTBLOCK_BASE
68 hex
69 default 0x00010000
70
71config ID_SECTION_BASE
72 hex
73 default 0x0001f000
74
75config ROMSTAGE_BASE
76 hex
77 default 0x00020000
78
79config ROMSTAGE_SIZE
80 hex
81 default 0x20000
82
Hung-Te Lind63bddc2013-06-11 21:55:58 -070083config BOOTBLOCK_ROM_OFFSET
84 hex
85 default 0x0
86
Hung-Te Lin7635a602013-02-12 00:07:38 +080087config CBFS_HEADER_ROM_OFFSET
88 hex
89 default 0x0100000
90
91config CBFS_ROM_OFFSET
92 hex
93 default 0x0110000
94
95config IRAM_STACK
96 hex
97 default 0x0007ff00
98
99config XIP_ROM_SIZE
100 hex
101 default ROMSTAGE_SIZE
102
103config SYS_SDRAM_BASE
104 hex "SDRAM base address"
105 default 0x01000000
106
107config SYS_TEXT_BASE
108 hex "Executable code section"
109 default 0x04e00000
110
111config RAMBASE
112 hex
113 default SYS_SDRAM_BASE
114
115# according to stefan, this is RAMBASE + 1M.
116config RAMTOP
117 hex
118 default 0x01100000
119
120endif # BOARD_EMULATION_QEMU_ARMV7