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 --- 55 unchanged lines hidden (view full) --- 64 return dynamic_cast<const Params *>(_params); 65 } 66 67 LinuxArmSystem(Params *p); 68 ~LinuxArmSystem(); 69 70 void initState(); 71 |
72 bool adderBootUncacheable(Addr a); 73 |
74 private: 75#ifndef NDEBUG 76 /** Event to halt the simulator if the kernel calls panic() */ 77 BreakPCEvent *kernelPanicEvent; 78#endif 79 /** 80 * PC based event to skip udelay(<time>) calls and quiesce the 81 * processor for the appropriate amount of time. This is not functionally 82 * required but does speed up simulation. 83 */ 84 Linux::UDelayEvent *uDelaySkipEvent; 85 86 /** Another PC based skip event for const_udelay(). Similar to the udelay 87 * skip, but this function precomputes the first multiply that is done 88 * in the generic case since the parameter is known at compile time. 89 * Thus we need to do some division to get back to us. 90 */ 91 Linux::UDelayEvent *constUDelaySkipEvent; |
92 93 /** These variables store addresses of important data structures 94 * that are normaly kept coherent at boot with cache mainetence operations. 95 * Since these operations aren't supported in gem5, we keep them coherent 96 * by making them uncacheable until all processors in the system boot. 97 */ 98 Addr secDataPtrAddr; 99 Addr secDataAddr; 100 Addr penReleaseAddr; |
101}; 102 103#endif // __ARCH_ARM_LINUX_SYSTEM_HH__ 104 |