summaryrefslogtreecommitdiff
path: root/kern/linux
diff options
context:
space:
mode:
authorAli Saidi <saidi@eecs.umich.edu>2004-05-09 20:14:18 -0400
committerAli Saidi <saidi@eecs.umich.edu>2004-05-09 20:14:18 -0400
commit3c7071a6be21fc0c87753758fc09ff28890edc99 (patch)
treea19a9f044f9016f0f9a45875d3fde685d79de6a0 /kern/linux
parent4a5dcc37bfb26c152c195061fa70c7aa246b5ca6 (diff)
downloadgem5-3c7071a6be21fc0c87753758fc09ff28890edc99.tar.xz
Added ULL for 64bit ints
Added function to skip determine_cpu_caches(). We may have to update this in the future: see note below. arch/alpha/alpha_memory.cc: dev/ide_ctrl.cc: dev/tsunamireg.h: Added ULL for 64bit ints kern/linux/linux_system.cc: Added a function to skip determine_cpu_caches, right now it is only used for printing in proc, however in the future we may either want to implement the SC_CTL IPR register or manually set alpha_l1i_cacheshape, alpha_l1d_cacheshape, alpha_l2_cacheshape, alpha_l3_cacheshape to ((size << 10) | (linesize>>1)<<4 | way) kern/linux/linux_system.hh: added event to skip determine_cpu_caches() --HG-- extra : convert_revision : 1065f2091bbe6832b730af490f5b4672c2afedce
Diffstat (limited to 'kern/linux')
-rw-r--r--kern/linux/linux_system.cc5
-rw-r--r--kern/linux/linux_system.hh1
2 files changed, 6 insertions, 0 deletions
diff --git a/kern/linux/linux_system.cc b/kern/linux/linux_system.cc
index 8bfad0996..fe39380be 100644
--- a/kern/linux/linux_system.cc
+++ b/kern/linux/linux_system.cc
@@ -230,6 +230,8 @@ LinuxSystem::LinuxSystem(const string _name, const uint64_t _init_param,
skipDelayLoopEvent = new LinuxSkipDelayLoopEvent(&pcEventQueue,
"calibrate_delay");
+ skipCacheProbeEvent = new LinuxSkipFuncEvent(&pcEventQueue, "determine_cpu_caches");
+
/* debugPrintfEvent = new DebugPrintfEvent(&pcEventQueue,
"debug_printf", false);
debugPrintfrEvent = new DebugPrintfEvent(&pcEventQueue,
@@ -342,6 +344,9 @@ LinuxSystem::LinuxSystem(const string _name, const uint64_t _init_param,
if (kernelSymtab->findAddress("calibrate_delay", addr))
skipDelayLoopEvent->schedule(addr+8);
+ if (kernelSymtab->findAddress("determine_cpu_caches", addr))
+ skipCacheProbeEvent->schedule(addr+8);
+
#if TRACING_ON
if (kernelSymtab->findAddress("printk", addr))
printfEvent->schedule(addr);
diff --git a/kern/linux/linux_system.hh b/kern/linux/linux_system.hh
index 53800db29..8b07bedf7 100644
--- a/kern/linux/linux_system.hh
+++ b/kern/linux/linux_system.hh
@@ -102,6 +102,7 @@ class LinuxSystem : public System
LinuxBadAddrEvent *badaddrEvent;
LinuxSkipFuncEvent *skipPowerStateEvent;
LinuxSkipFuncEvent *skipScavengeBootEvent;
+ LinuxSkipFuncEvent *skipCacheProbeEvent;
LinuxSkipIdeDelay50msEvent *skipIdeDelay50msEvent;
LinuxSkipDelayLoopEvent *skipDelayLoopEvent;
LinuxPrintfEvent *printfEvent;