Commit graph

1822 commits

Author SHA1 Message Date
Miguel Serrano
74fd4f68c5 .
SConscript:
    add pcifake
dev/ide_ctrl.cc:
dev/ide_ctrl.hh:
dev/ide_disk.cc:
dev/ide_disk.hh:
    endianess
dev/tsunami_io.cc:
    rtc, date/time

--HG--
extra : convert_revision : 21ad27c780749cb6f6eef2b57798c0c292c3f14d
2005-07-28 11:49:01 -04:00
Miguel Serrano
6a8ae7a6a0 ghgfsdf
dev/pciconfigall.cc:
    removed union.
dev/pcidev.cc:
    .
dev/rtcreg.h:
    more macros to avoid magic numbers.
dev/tsunami_io.cc:
    replaced magic numbers, no more advancing RTC as it isn't reaaly necessary.
dev/tsunami_io.hh:
    removed declarations of things that go unused.
dev/uart8250.cc:
    reading the Interrupt ID register should clear TX interrupt flag.
dev/uart8250.hh:
    useful #defines.
kern/freebsd/freebsd_system.cc:
kern/freebsd/freebsd_system.hh:
    nothing.
python/m5/objects/Pci.py:
    new PciFake.

--HG--
extra : convert_revision : 88259704f5b215591d1416360180810fcda14d26
2005-07-28 11:47:06 -04:00
Miguel Serrano
4f2480a18b Merge m5read@m5.eecs.umich.edu:/bk/m5
into zamp.eecs.umich.edu:/.automount/fox/y/mserrano/m5_new/m5

--HG--
extra : convert_revision : bb3e977e79599c459fb32f309ce5b486f1639afa
2005-07-01 15:12:09 -04:00
Miguel Serrano
16a2357e86 .
--HG--
extra : convert_revision : 1ed206b27498641b64d7f35c74ea1f0623398d4e
2005-07-01 15:10:18 -04:00
Steve Reinhardt
efd0c5d4b0 Initialize bpred table pointers.
--HG--
extra : convert_revision : 9999c05b7fb8f66c2b9d5544868994f82d432d19
2005-06-30 21:59:08 -04:00
Steve Reinhardt
5107b3bc83 Fixes for cygwin compile.
dev/ide_atareg.h:
    Need endian.h for LITTLE_ENDIAN.
sim/syscall_emul.hh:
    Need to include sys/fcntl.h to get O_BINARY.

--HG--
extra : convert_revision : 606f9506dc483f3952dcc65b8ba25c28001f2c43
2005-06-30 00:42:27 -04:00
Nathan Binkert
ec1f689d0d Easier remote debugging at boot time.
sim/system.cc:
    Add a global variable that will tell the remote debugger to
    wait when a given CPU is is registered.

--HG--
extra : convert_revision : a093c9331daa675d4b59a321e53a5da6ea292c40
2005-06-29 22:20:38 -04:00
Nathan Binkert
451e41c6e9 Fix uninitialized variables in ide controller
dev/ide_ctrl.cc:
    Initialize variables to zero to avoid uninitialized usage.

--HG--
extra : convert_revision : 98fd0bfc2b7530938c6ab3a55345d0e594098238
2005-06-29 22:16:40 -04:00
Nathan Binkert
8a0bc84022 Allow CPUs to specify their own CPU ids.
Make the AlphaConsole calculate the number of CPUs instead
of passing that in as a parameter.

cpu/base.cc:
    pass the desired cpu_id into registerExecContext, offsetting it
    by the thread number.  a cpu_id of -1 means that it should be
    generated for you.
cpu/base.hh:
    Take the cpu_id as a parameter
cpu/o3/alpha_cpu_builder.cc:
cpu/simple/cpu.cc:
    Accept the cpu_id as a parameter
    while we're here, let's remove the multiplier since it is
    not used.
dev/alpha_console.cc:
    don't take the number of CPUs as a parameter.  Calculate it from
    the system based on the number of CPUs that have been registered.
    move init() code to startup() to ensure that all CPUs are registerd.
dev/alpha_console.hh:
python/m5/objects/AlphaConsole.py:
    don't take the number of CPUs as a parameter.
    move init() code to startup() to ensure that all CPUs are registerd.
python/m5/objects/BaseCPU.py:
    take the cpu_id as a parameter.  Default it to -1 which means
    that it will be generated.
sim/system.cc:
    allow the registerExecContext functioin to take a desired
    cpu_id as a parameter.  Check to ensure that the id isn't
    already used.  Accept -1 as a request to have an id assigned.
sim/system.hh:
    keep track of the number of registered exec contexts.
    provide a function for accessing the number of exec contexts
    that checks to ensure that they are all registered correctly.

--HG--
extra : convert_revision : 8e12f96ff8a49fa16cdbbdb4c05c651376c35788
2005-06-29 01:20:41 -04:00
Nathan Binkert
036a8ceb8d Don't hard code the location of m5AlphaAccess. Instead, move the
code into a function that can be called by the AlphaConsole class.
AlphaConsole will pass in its address.

arch/alpha/ev5.hh:
    Move Phys2K0Seg to ev5.hh and fixup the TSUNAMI uncacheable
    bits so that they will be converted correctly.
dev/alpha_access.h:
    Do not hard code the location of the AlphaConsole
dev/alpha_console.cc:
    fixup #includes
    tell the system where the alpha console is
sim/system.hh:
    Provide a function that will tell the system where the AlphaAccess
    structure (device) lives

--HG--
extra : convert_revision : 92d70ca926151a32eebe9925de597459ac58013e
2005-06-28 12:42:15 -04:00
Nathan Binkert
d172447a7a Pass the location of the m5 console backdoor to the console
instead of compiling it into the console version

dev/alpha_access.h:
    move serialization stuff to alpha_console.hh
    define the ALPHA_ACCESS_BASE in m5 instead of in console.c and
    have m5 pass the value to the console
dev/alpha_console.cc:
dev/alpha_console.hh:
    Move serialization stuff into a derived class of AlphaAccess
sim/system.cc:
    pass the value of ALPHA_ACCESS_BASE to the console code via
    the m5AlphaAccess console variable.

--HG--
extra : convert_revision : 0ea4ba239f03d6dad51a6efae0385aa543064117
2005-06-28 01:09:13 -04:00
Nathan Binkert
769234f69e Reorganize tap code so that more than one method can be used
for accessing physical packets.
Add support for tap devices found on linux and bsd.

--HG--
extra : convert_revision : 198b082f2e847da8471c3f22d6a55beb9f4b592e
2005-06-27 19:30:19 -04:00
Benjamin Nash
8b04218262 Change IDE disk and ethernet device to work better with FreeBSD.
dev/ide_ctrl.cc:
dev/ide_disk.cc:
dev/ide_disk.hh:
    Add support for 32-bit accesses.
dev/ns_gige.cc:
    Change default configuration register value to work with FreeBSD driver.

--HG--
extra : convert_revision : c9dd125338a97ffa8cd95293e6b7877068652387
2005-06-27 18:08:42 -04:00
Nathan Binkert
10a906be52 Update for console code reorganization
dev/alpha_access.h:
    Update the ALPHA_ACCESS_VERSION
    move typedefs to this file since they're only used here.
dev/alpha_console.cc:
    formatting
sim/system.cc:
    xxm -> m5

--HG--
extra : convert_revision : 3aeca50d1385034f5a1e20dd8b0abd03bd6f26f0
2005-06-27 17:04:43 -04:00
Nathan Binkert
c4029ecb30 Implement a state machine clock that acutally limits how fast
the nsgige state machine can run. The frequency is of the actual
state transitions, and not the rate of what underlying
instructions might run at.

dev/ns_gige.cc:
    Implement a state machine clock that acutally limits how fast
    the state machine can run.  After each state transition, a
    variable is kept to hold the next state transition until the
    next clock.  The frequency is of the actual state transitions,
    and not the rate of what underlying instructions might run at.
dev/ns_gige.hh:
    Add back the rxKickEvent and txKickEvent events.
python/m5/objects/Ethernet.py:
    Default the state machine clock to '0ns' so the default
    behaviour doesn't change when we actually implement the
    state machine clock.

--HG--
extra : convert_revision : 2db1943dee4e91ea75aaee6a91e88f27f01a09dd
2005-06-27 17:02:40 -04:00
Nathan Binkert
5ea3c1c8f3 rename m5scons.py scons_helper.py
--HG--
extra : convert_revision : faaacc493b8da5d002d498e10cfa8cf004aafeed
2005-06-27 17:01:24 -04:00
Benjamin Nash
0460a78829 Merge m5read@m5.eecs.umich.edu:/bk/m5
into zed.eecs.umich.edu:/z/benash/bk/m5

--HG--
extra : convert_revision : a0a8fea7224913ef106dc733182abd938feab64d
2005-06-23 16:27:17 -04:00
Benjamin Nash
e8bcecd0a0 Changed timer functionality, ide disk interrupts, and TsunamiFake class to improve FreeBSD compatibility.
dev/ide_disk.cc:
    Make ide disk set interrupts correctly.
dev/tsunami_io.cc:
dev/tsunami_io.hh:
    Implement read of timer counts.
kern/freebsd/freebsd_system.cc:
kern/freebsd/freebsd_system.hh:
    Remove SkipFuncEvents that we don't need to skip.
python/m5/objects/Tsunami.py:
    Add size parameter to TsunamiFake class.

--HG--
extra : convert_revision : a87e74f2cac0036060ca8cb3fde4760d8c91a5db
2005-06-23 16:27:06 -04:00
Ali Saidi
cad549d7aa Added Float class
Fixed printing so the tokenizer in m5 doesn't get confused
Expanded NullSimObject so it could be used as an element in a VectorParam

--HG--
extra : convert_revision : 661b1916967d663ab7aee891f15f7ca190deeba6
2005-06-23 01:07:04 -07:00
Nathan Binkert
91f5736fd3 Move max_time and progress_interval parameters to the Root
object and get rid of the ParamContext that each used to have.

python/m5/objects/Root.py:
    Add max_time and progress_interval to the Root object
sim/root.cc:
    Add max_time and progress_interval to the Root object.  These
    parameters used to be in their own contexts in sim_events.cc
sim/sim_events.cc:
    Get rid of the ParamContext for max cycles and the progress
    event.  Move the functionality to the Root object
sim/sim_events.hh:
    Move ProgressEvent declaration to the header so that it can
    be used in other files.

--HG--
extra : convert_revision : ff664b806855e8eb9201b8a25392aa53204464f0
2005-06-22 09:59:13 -04:00
Nathan Binkert
1331a723c3 Merge zizzer.eecs.umich.edu:/bk/m5
into ziff.eecs.umich.edu:/z/binkertn/research/m5/head

--HG--
extra : convert_revision : 9dc37bbcc1dd5669f6de4e35a7c37e54d0af5c05
2005-06-22 09:52:14 -04:00
Nathan Binkert
c95e1281fc fix tokenize
base/str.cc:
    Fix tokenize so that it doesn't behave incorrectly when there
    are empty strings.
test/tokentest.cc:
    Clean up the test function so it's easier to see what's going on

--HG--
extra : convert_revision : c7a3db7bc516d3575b1cc4ab7afbd0f1fbe1ec6f
2005-06-22 09:52:02 -04:00
Steve Reinhardt
2c2f5f86d7 Fix: opt_cpu and trace_cpu were already defined in syscall_emulation
when I added them to the global list...

SConscript:
    Remove opt_cpu and trace_cpu from syscall_emulation_sources
    to avoid double definition.

--HG--
extra : convert_revision : b10a2e648249b1d742b881aa7580f8d1b0d6fbc1
2005-06-22 07:26:02 -04:00
Steve Reinhardt
48f77af446 Fix cache bug... getting a response on a writeback hit
(from a trace replay).

SConscript:
    Compile in trace-reader CPUs.

--HG--
extra : convert_revision : 35b0da704e94b07a75fd89131028fbfbf31cf3a6
2005-06-21 15:42:10 -04:00
Steve Reinhardt
e26c73fefa Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/z/stever/bk/m5

--HG--
extra : convert_revision : 32a82fce7c12b2a72bc3196a667e96d66b8b0b37
2005-06-21 13:49:37 -04:00
Nathan Binkert
11894d3b4b little bit of formatting
clean up debugging a bit

dev/ns_gige.cc:
    little bit of formatting
    don't break in the debugger if a packet is dropped when the
    receiver is disabled since it can realistically happen

--HG--
extra : convert_revision : 364efa3eb16990db191085f5b847c3bb255a173c
2005-06-19 22:13:31 -04:00
Benjamin Nash
a994f6e07b Merge m5read@m5.eecs.umich.edu:/bk/m5
into zed.eecs.umich.edu:/z/benash/bk/m5

--HG--
extra : convert_revision : 003e19844946e67556c39b7d652d2d61905378b8
2005-06-17 18:08:14 -04:00
Benjamin Nash
f4e5776df4 I/O changes and SkipFuncEvents to increase FreeBSD compatibility.
SConscript:
    Added kern/freebsd/freebsd_events.cc.
arch/alpha/isa_traits.hh:
    Added Argument to support replacement of calibrate_clocks function in FreeBSD.
dev/ns_gige.hh:
    Fixed NIC model number typo.
dev/tsunami_io.cc:
    Added support for RTC writes and PIC 2 mask reads.  Made RTC static member.
dev/tsunami_io.hh:
    Made RTC static member.
kern/freebsd/freebsd_system.cc:
    Added events to skip functions in FreeBSD.
kern/freebsd/freebsd_system.hh:
    Added events to skip certain functions.

--HG--
extra : convert_revision : 8aaca51d3f9b1bb601722a5bae240aae77b445db
2005-06-17 18:08:05 -04:00
Nathan Binkert
5a7bb8b3d2 Make turbolaser stuff compile again
--HG--
extra : convert_revision : 61c100e4dbbf28a5282ae9d38e3e0f85e170ad54
2005-06-14 13:04:24 -04:00
Steve Reinhardt
0ee4f32f87 Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/z/stever/bk/m5

--HG--
extra : convert_revision : 2e4050f58c1ce42187a94d3bbf79d82fe4b5f822
2005-06-13 16:04:56 -04:00
Benjamin Nash
129417d7cb Merge m5read@m5.eecs.umich.edu:/bk/m5
into zed.eecs.umich.edu:/.automount/fox/y/benash/bk/m5

--HG--
extra : convert_revision : 73a3fe048bd3f382454c10524fc4c93d3f117d6a
2005-06-13 12:32:48 -04:00
Nathan Binkert
2578818184 Fix assert in PhysicalMemory object
--HG--
extra : convert_revision : f1da0dde072562248ee587cb452adde3f7e1384e
2005-06-13 12:07:25 -04:00
Nathan Binkert
3a452524ef some cleanup to turbolaser code
--HG--
extra : convert_revision : dc86cc5b7c63e4832cf8a03f6c849611d929d3b9
2005-06-13 12:05:27 -04:00
Nathan Binkert
02f9ea609a Add NFS-dbench, and iscsi dbench benchmarks
--HG--
extra : convert_revision : 71e416668f4bbcf9785ea2363ec406135a217e32
2005-06-13 11:54:23 -04:00
Nathan Binkert
7a8ca6a6b0 use transactions for database access
base/mysql.hh:
    Add support for for transactions
base/stats/mysql.cc:
    get rid of table locking and start using transactions
base/stats/mysql_run.hh:
    setup()/remove()/cleanup() should be protected, not private

--HG--
extra : convert_revision : ace710beb7fb689a6e25831d8032f389fc1347e7
2005-06-13 11:46:56 -04:00
Steve Reinhardt
5102958b8f Minor fixes to release scripts.
--HG--
extra : convert_revision : 134e5281cafb2275277434132d3721bdba16c0ed
2005-06-10 13:48:50 -04:00
Steve Reinhardt
0f3567ea77 Add new "global" release script to util to export
release versions of m5, m5-test, and ext.

--HG--
extra : convert_revision : b5ae04dff9defae64a90faa503015bcd2b0c8762
2005-06-10 13:16:12 -04:00
Benjamin Nash
aa1ebaca33 Removed comment.
--HG--
extra : convert_revision : a19e33b0b522882bf43e21dd02ad76605411e650
2005-06-10 12:48:29 -04:00
Benjamin Nash
baad1bb7af Created FreebsdSystem, for FreeBSD-specific tweaks.
SConscript:
    Included kern/freebsd/freebsd_system.cc

--HG--
extra : convert_revision : 4fa31602acb511b16bf371f78a8e5a8082536b88
2005-06-10 12:44:18 -04:00
Nathan Binkert
ebb35e57ce BaseSystem was renamed to System
--HG--
extra : convert_revision : 74e03fe9447d9d2be59e675b034dc6df0afcde51
2005-06-09 15:09:35 -04:00
Benjamin Nash
c4fdfa3844 Mostly IO modifications, to increase compatibility with FreeBSD.
dev/pcidev.cc:
    Allow writes to some PCI read-only registers.
    Fix problem when writing to a zero offset IO location.
dev/tsunami_io.cc:
    Fix calculation of IO addresses.
    Add registers for keyboard and PCI DMA.
dev/tsunamireg.h:
    Add registers for keyboard and PCI DMA.
python/m5/objects/System.py:
    Allow generic System to be instantiated.

--HG--
extra : convert_revision : 1b985ffa2b8e15aa55246f1d14da615c32ecd3f9
2005-06-09 15:01:15 -04:00
Steve Reinhardt
4cc9fbf61d cache.hh:
Add FALRU & IIC back in.

--HG--
extra : convert_revision : 3c3c67abd89b61593df3ac3dffc105c10b7a7ec2
2005-06-05 11:56:33 -04:00
Steve Reinhardt
754521c2f1 Statistics.py:
get rid of python_file param

--HG--
extra : convert_revision : 94816a98d4263cd2f80e52a0f891db102f1a1fde
2005-06-05 11:55:35 -04:00
Ali Saidi
ca98d70e50 changes linux process names slightly
kern/linux/linux_threadinfo.hh:
kern/linux/sched.hh:
    changed names slightly

--HG--
extra : convert_revision : 8e42ebee1d749a65b78af5733de9e0deda3c548e
2005-06-05 11:39:44 -04:00
Steve Reinhardt
7a9e09d20c YA cache fix.
--HG--
extra : convert_revision : a1d752e6534c826e020a972d76a4baf8aa5d5790
2005-06-05 11:38:38 -04:00
Steve Reinhardt
98a225bbe1 Another cache fix.
--HG--
extra : convert_revision : 6875c6144070b9d43c480756b3863e2d987347dc
2005-06-05 11:35:13 -04:00
Steve Reinhardt
7089957290 Fix up conditional cache stuff.
SConscript:
    Get rid of prefetch & split cache files (temporarily).

--HG--
extra : convert_revision : 72072c06a15ce8187adc76eb3a0b83413750e374
2005-06-05 11:27:20 -04:00
Nathan Binkert
bbee4d487f Merge zizzer.eecs.umich.edu:/bk/m5
into crampon.my.domain:/z/binkertn/research/m5/head

--HG--
extra : convert_revision : 2acf413c32b571c44a6cb01b0427cf3bd31fd8e3
2005-06-05 11:07:47 -04:00
Steve Reinhardt
e79cb1840d Fix documentation formatting bug.
--HG--
extra : convert_revision : 86bb5e5b01742144869eaa2f248650468ed4f861
2005-06-05 11:07:46 -04:00
Nathan Binkert
6ff9439afe Cleanup copyright stuff. Add our copyright files that
are ours

arch/alpha/alpha_linux_process.hh:
arch/alpha/alpha_tru64_process.hh:
base/loader/object_file.cc:
base/loader/object_file.hh:
sim/process.cc:
sim/process.hh:
    remove $Id$ string
cpu/ozone/cpu.cc:
cpu/ozone/cpu_impl.hh:
cpu/ozone/ea_list.cc:
cpu/ozone/ea_list.hh:
kern/linux/sched.hh:
kern/linux/thread_info.hh:
    Add M5 Copyright
cpu/trace/opt_cpu.cc:
dev/rtcreg.h:
    nit
kern/linux/aligned.hh:
kern/linux/hwrpb.hh:
util/oprofile-top.py:
util/stats/db.py:
util/stats/dbinit.py:
util/stats/display.py:
util/stats/info.py:
util/stats/print.py:
util/stats/stats.py:
    Cleanup copyright

--HG--
extra : convert_revision : 4274e9121ef7543e0b3999b31e935edb19c54d46
2005-06-05 11:02:38 -04:00