aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Brook <paul@codesourcery.com>2009-12-21 20:19:12 +0000
committerPaul Brook <paul@codesourcery.com>2009-12-21 20:19:12 +0000
commit21a88941686b3626aa7b98660b1e1fa88cb064ec (patch)
tree894ff71680174cdca50f0c8983e40faf84ebe366
parent209bf9658a42a20756f2f0eb5afa1ecf099263f0 (diff)
ARM PBX-A9 memory map tweaks
Add core tile memeory to the RealView PBX-A9 board. Document the memeory maps that are known to work with the qemu bootloader. Signed-off-by: Paul Brook <paul@codesourcery.com>
-rw-r--r--hw/realview.c12
-rw-r--r--qemu-doc.texi13
2 files changed, 21 insertions, 4 deletions
diff --git a/hw/realview.c b/hw/realview.c
index fd2d6be715..f786699a1c 100644
--- a/hw/realview.c
+++ b/hw/realview.c
@@ -192,11 +192,19 @@ static void realview_init(ram_addr_t ram_size,
proc_id = 0x02000000;
}
+ if (is_pb && ram_size > 0x20000000) {
+ /* Core tile RAM. */
+ low_ram_size = ram_size - 0x20000000;
+ ram_size = 0x20000000;
+ ram_offset = qemu_ram_alloc(low_ram_size);
+ cpu_register_physical_memory(0x20000000, low_ram_size,
+ ram_offset | IO_MEM_RAM);
+ }
+
ram_offset = qemu_ram_alloc(ram_size);
low_ram_size = ram_size;
if (low_ram_size > 0x10000000)
low_ram_size = 0x10000000;
- /* ??? RAM should repeat to fill physical memory space. */
/* SDRAM at address zero. */
cpu_register_physical_memory(0, low_ram_size, ram_offset | IO_MEM_RAM);
if (is_pb) {
@@ -356,7 +364,7 @@ static void realview_init(ram_addr_t ram_size,
realview_binfo.initrd_filename = initrd_filename;
realview_binfo.nb_cpus = smp_cpus;
realview_binfo.board_id = realview_board_id[board_type];
- realview_binfo.loader_start = is_pb ? 0x70000000 : 0;
+ realview_binfo.loader_start = (board_type == BOARD_PB_A8 ? 0x70000000 : 0);
arm_load_kernel(first_cpu, &realview_binfo);
}
diff --git a/qemu-doc.texi b/qemu-doc.texi
index 7b8488f7f7..2fb5c0b249 100644
--- a/qemu-doc.texi
+++ b/qemu-doc.texi
@@ -1659,8 +1659,17 @@ LSI53C895A PCI SCSI Host Bus Adapter with hard disk and CD-ROM devices.
PL181 MultiMedia Card Interface with SD card.
@end itemize
-The ARM RealView Emulation/Platform baseboard is emulated with the following
-devices:
+Several variants of the ARM RealView baseboard are emulated,
+including the EB, PB-A8 and PBX-A9. Due to interactions with the
+bootloader, only certain Linux kernel configurations work out
+of the box on these boards.
+
+Kernels for the PB-A8 board should have CONFIG_REALVIEW_HIGH_PHYS_OFFSET
+enabled in the kernel, and expect 512M RAM. Kernels for The PBX-A9 board
+should have CONFIG_SPARSEMEM enabled, CONFIG_REALVIEW_HIGH_PHYS_OFFSET
+disabled and expect 1024M RAM.
+
+The following devices are emuilated:
@itemize @minus
@item