system.cc (8286:abc8ab4ddd93) system.cc (8527:6bac5b04d588)
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

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

112 // constant arguments to udelay() have some precomputation done ahead of
113 // time. Constant comes from code.
114 if (kernelSymtab->findAddress("__const_udelay", addr)) {
115 constUDelaySkipEvent = new UDelayEvent(&pcEventQueue, "__const_udelay",
116 fixFuncEventAddr(addr), 1000, 107374);
117 } else {
118 panic("couldn't find kernel symbol \'udelay\'");
119 }
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

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

112 // constant arguments to udelay() have some precomputation done ahead of
113 // time. Constant comes from code.
114 if (kernelSymtab->findAddress("__const_udelay", addr)) {
115 constUDelaySkipEvent = new UDelayEvent(&pcEventQueue, "__const_udelay",
116 fixFuncEventAddr(addr), 1000, 107374);
117 } else {
118 panic("couldn't find kernel symbol \'udelay\'");
119 }
120
121 secDataPtrAddr = 0;
122 secDataAddr = 0;
123 penReleaseAddr = 0;
124 kernelSymtab->findAddress("__secondary_data", secDataPtrAddr);
125 kernelSymtab->findAddress("secondary_data", secDataAddr);
126 kernelSymtab->findAddress("pen_release", penReleaseAddr);
127
128 secDataPtrAddr &= ~ULL(0x7F);
129 secDataAddr &= ~ULL(0x7F);
130 penReleaseAddr &= ~ULL(0x7F);
120}
121
131}
132
133bool
134LinuxArmSystem::adderBootUncacheable(Addr a)
135{
136 Addr block = a & ~ULL(0x7F);
137 if (block == secDataPtrAddr || block == secDataAddr ||
138 block == penReleaseAddr)
139 return true;
140 return false;
141}
142
122void
123LinuxArmSystem::initState()
124{
125 ArmSystem::initState();
126
127 for (int i = 0; i < threadContexts.size(); i++) {
128 threadContexts[i]->setIntReg(0, 0);
129 threadContexts[i]->setIntReg(1, params()->machine_type);

--- 17 unchanged lines hidden ---
143void
144LinuxArmSystem::initState()
145{
146 ArmSystem::initState();
147
148 for (int i = 0; i < threadContexts.size(); i++) {
149 threadContexts[i]->setIntReg(0, 0);
150 threadContexts[i]->setIntReg(1, params()->machine_type);

--- 17 unchanged lines hidden ---