summaryrefslogtreecommitdiff
path: root/src/arch/arm
diff options
context:
space:
mode:
Diffstat (limited to 'src/arch/arm')
-rw-r--r--src/arch/arm/ArmSystem.py4
-rw-r--r--src/arch/arm/linux/system.cc9
-rw-r--r--src/arch/arm/remote_gdb.hh1
-rw-r--r--src/arch/arm/system.cc3
4 files changed, 7 insertions, 10 deletions
diff --git a/src/arch/arm/ArmSystem.py b/src/arch/arm/ArmSystem.py
index e744c026c..f4aedaf98 100644
--- a/src/arch/arm/ArmSystem.py
+++ b/src/arch/arm/ArmSystem.py
@@ -56,8 +56,6 @@ class ArmSystem(System):
# 0x0 Revision
midr_regval = Param.UInt32(0x350fc000, "MIDR value")
boot_loader = Param.String("", "File that contains the boot loader code if any")
- boot_loader_mem = Param.PhysicalMemory(NULL,
- "Memory object that boot loader is to be loaded into")
gic_cpu_addr = Param.Addr(0, "Addres of the GIC CPU interface")
flags_addr = Param.Addr(0, "Address of the flags register for MP booting")
@@ -67,5 +65,3 @@ class LinuxArmSystem(ArmSystem):
machine_type = Param.ArmMachineType('RealView_PBX',
"Machine id from http://www.arm.linux.org.uk/developer/machines/")
atags_addr = Param.Addr(0x100, "Address where default atags structure should be written")
-
-
diff --git a/src/arch/arm/linux/system.cc b/src/arch/arm/linux/system.cc
index 64bda4b4d..0d9e73a53 100644
--- a/src/arch/arm/linux/system.cc
+++ b/src/arch/arm/linux/system.cc
@@ -125,9 +125,14 @@ LinuxArmSystem::initState()
ac->pagesize(8192);
ac->rootdev(0);
+ AddrRangeList atagRanges = physmem.getConfAddrRanges();
+ if (atagRanges.size() != 1) {
+ fatal("Expected a single ATAG memory entry but got %d\n",
+ atagRanges.size());
+ }
AtagMem *am = new AtagMem;
- am->memSize(params()->physmem->size());
- am->memStart(params()->physmem->start());
+ am->memSize(atagRanges.begin()->size());
+ am->memStart(atagRanges.begin()->start);
AtagCmdline *ad = new AtagCmdline;
ad->cmdline(params()->boot_osflags);
diff --git a/src/arch/arm/remote_gdb.hh b/src/arch/arm/remote_gdb.hh
index 9ff93b8e6..b75d921fb 100644
--- a/src/arch/arm/remote_gdb.hh
+++ b/src/arch/arm/remote_gdb.hh
@@ -37,7 +37,6 @@
class System;
class ThreadContext;
-class PhysicalMemory;
namespace ArmISA
{
diff --git a/src/arch/arm/system.cc b/src/arch/arm/system.cc
index 7fbabafcb..f6c4ad783 100644
--- a/src/arch/arm/system.cc
+++ b/src/arch/arm/system.cc
@@ -55,9 +55,6 @@ using namespace Linux;
ArmSystem::ArmSystem(Params *p)
: System(p), bootldr(NULL)
{
- if ((p->boot_loader == "") != (p->boot_loader_mem == NULL))
- fatal("If boot_loader is specifed, memory to load it must be also.\n");
-
if (p->boot_loader != "") {
bootldr = createObjectFile(p->boot_loader);