so add some states to indicate that the dma read/write
hasn't issued yet, and add some support to reissue the
request when the interface becomes unblocked.
--HG--
extra : convert_revision : 448695a8eb2e9f98554769f3165df1f796adf44a
sim/sim_object.cc:
serialize objects in the reverse order of their creation.
This causes a SimObject that is dependent on another
to be serialized first. For example, the ethernet device
writes back some data to physical memory while serializing,
so this will cause the physical memory to be serialized
after that, preserving the data written back.
--HG--
extra : convert_revision : f9a37b63ce777df1cfecefa80f94f8fc69e42448
of faking it. Renamed stuff to follow our style. Lots of
general cleanup.
dev/etherpkt.hh:
fix up includes
--HG--
extra : convert_revision : fb3a21466cdae00f8747d6e3027c9f2c63569c48
make it so that pio devices must respond with some delay.
dev/io_device.cc:
don't forget to include dma_interface.hh so we could use it.
dev/io_device.hh:
the generic BusInterface isn't enough for doing DMA
we need the actual DMAInterface
--HG--
extra : convert_revision : 70298d33c8520a3f4ad11aa600825a8cec7e44bf
dev/etherdump.cc:
now that init is automatically called by the framework, don't
init twice.
--HG--
extra : convert_revision : 16dcdef67aa193ed71ff546e7b255d60f39bf13d
tlb index calls that are called from ExecContext::readIpr
arch/alpha/ev5.cc:
Fix misspeculation bugs for misspeculated IPR accesses
--HG--
extra : convert_revision : c9ffcf9ef8123dfcaee1606c05aee8ad60d893d7
cpu/memtest/memtest.cc:
cpu/memtest/memtest.hh:
Add 2 new parameters to control the percentage of unaligned copy sources and destinations.
--HG--
extra : convert_revision : 2646ee2f195e9f3e76bc257b8716163ef63a9f40
arch/alpha/vtophys.cc:
fix up vtophys to deal with translations if there
is no ptbr, and to deal with PAL addresses
add ptomem which is just a wrapper for dma_addr
arch/alpha/vtophys.hh:
add ptomem which is a wrapper for dma_addr with the
same usage as vtomem
--HG--
extra : convert_revision : 1ae22073d400e87b708a4a7ef501124227fc6c39
In the future, this can be used for actual data, but for now, it's
so that devices can respond to timing accesses properly. This way,
an uncached access on a bus further away will take longer to respond.
dev/alpha_console.cc:
dev/alpha_console.hh:
suport the separate IO bus
--HG--
extra : convert_revision : ececb70f5febfd00231f6e406f93b2a79be01261
cpu/memtest/memtest.cc:
cpu/memtest/memtest.hh:
Add aligned copy tests, percent of copies is specified by percent_copies
--HG--
extra : convert_revision : eaf1900fcb8832db98249e94e3472ebfb049eb48
- Make the MemoryController use address ranges (via Range) instead
of an address and a mask
base/remote_gdb.cc:
reflect name change
dev/alpha_access.h:
better include
dev/alpha_console.cc:
- FunctionalMemory no longer takes care of mapping my address into
the proper address space. It must be done locally.
- the memory controller no longer uses a mask, but a size, and the
size is determined by the device, not the .ini file
- fix up address calculations to reflect the removal of a mask
- PhysicalMemory::getSize() -> PhysicalMemory::size()
dev/alpha_console.hh:
- FunctionalMemory no longer takes care of mapping my address into
the proper address space. It must be done locally.
- the memory controller no longer uses a mask, but a size, and the
size is determined by the device, not the .ini file
- fix up address calculations to reflect the removal of a mask
- get rid of MmapDevice and inherit from FunctionalMemory
--HG--
extra : convert_revision : e3a65c9debf6f899632d62c70781cbdc2826616b
base/range.hh:
Add a constructor that takes the beginning and end as arguments
size returns T not a bool
quick make_range() function that is a shortcut for making a range
kinda like make_pair()
quick formatting fix
--HG--
extra : convert_revision : 94b1d462710e6fb55e72e1da2ad8c46993af1ef7
to be consistent with the way that the stl works. It also makes
lots of other stuff easier. (Maybe those guys were smart?)
Overload the various comparison operators so that you can test
for overlapping of ranges, etc.
base/range.hh:
Totally rework the Range class. Now the range is from [start, end)
to be consistent with the way that the stl works. It also makes
lots of other stuff easier. (Maybe those guys were smart?)
Overload the various comparison operators so that you can test
for overlapping of ranges, etc.
make parse function private and offer operator= instead
isValid -> valid
and for you erik, I add comments
test/Makefile:
add range.o
test/rangetest.cc:
better tests
--HG--
extra : convert_revision : dd58720aa3d02f20b03e933f2eaa3320c82bb27a