system.cc (8286:abc8ab4ddd93) system.cc (8299:64a938a8b7fc)
1/*
2 * Copyright (c) 2010 ARM Limited
3 * All rights reserved
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software

--- 90 unchanged lines hidden (view full) ---

99 threadContexts[i]->setIntReg(7, bootldr->entryPoint());
100 }
101 if (!params()->gic_cpu_addr || !params()->flags_addr)
102 fatal("gic_cpu_addr && flags_addr must be set with bootloader\n");
103 } else {
104 // Set the initial PC to be at start of the kernel code
105 threadContexts[0]->pcState(kernelEntry & loadAddrMask);
106 }
1/*
2 * Copyright (c) 2010 ARM Limited
3 * All rights reserved
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software

--- 90 unchanged lines hidden (view full) ---

99 threadContexts[i]->setIntReg(7, bootldr->entryPoint());
100 }
101 if (!params()->gic_cpu_addr || !params()->flags_addr)
102 fatal("gic_cpu_addr && flags_addr must be set with bootloader\n");
103 } else {
104 // Set the initial PC to be at start of the kernel code
105 threadContexts[0]->pcState(kernelEntry & loadAddrMask);
106 }
107 for (int i = 0; i < threadContexts.size(); i++) {
108 if (params()->midr_regval) {
109 threadContexts[i]->setMiscReg(ArmISA::MISCREG_MIDR,
110 params()->midr_regval);
111 }
112 }
113
107}
108
109ArmSystem::~ArmSystem()
110{
111 if (debugPrintkEvent)
112 delete debugPrintkEvent;
113}
114
115
116ArmSystem *
117ArmSystemParams::create()
118{
119 return new ArmSystem(this);
120}
114}
115
116ArmSystem::~ArmSystem()
117{
118 if (debugPrintkEvent)
119 delete debugPrintkEvent;
120}
121
122
123ArmSystem *
124ArmSystemParams::create()
125{
126 return new ArmSystem(this);
127}