Commit graph

113 commits

Author SHA1 Message Date
Ali Saidi
3c7071a6be 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
2004-05-09 20:14:18 -04:00
Andrew Schultz
4a5dcc37bf Whole mess'o'changes.. see individual files
arch/alpha/vtophys.cc:
    Removed buggy code that tries to fix PAL addresses (may cause problems
    while trying to debug in PAL code, but that should do this fix outside
    of vtophys)
base/loader/symtab.cc:
base/loader/symtab.hh:
cpu/exetrace.cc:
    Changed InstExec traces to always print a symbol name
dev/ide_ctrl.cc:
dev/ide_disk.cc:
    Tabs
dev/ide_disk.hh:
    Change buffer size
dev/tsunami_pchip.cc:
    Fix translatePciToDma to support scatter gather mapping
kern/linux/linux_system.cc:
    Force simulator to wait until remote debugger attaches (should be removed
    or turned on/off with a flag)

--HG--
extra : convert_revision : 1d08aebe3f448c87a963dd613de3e2e0cff0d48d
2004-05-06 15:21:07 -04:00
Andrew Schultz
8538ffdb36 Merge zizzer:/bk/linux
into zower.eecs.umich.edu:/.automount/zizzer/z/alschult/DiskModel/linux

--HG--
extra : convert_revision : 8eca0fba9d96bffea7a24bce9b14f0284bd58c83
2004-05-03 11:48:17 -04:00
Andrew Schultz
6807c319b0 Checkin of latest IDE and some separation between platforms (Tsunami and
Turbolaser)

base/range.hh:
    Change semantics of range to be inclusive of the end value, may need to
    check other users of range to make sure they are semantically correct.
    This was needed for access of last byte in range of address on IDE and
    makes sense for case of range from 0 to all f
dev/ide_ctrl.cc:
dev/ide_ctrl.hh:
dev/ide_disk.cc:
dev/ide_disk.hh:
    Whole mess of changes.. at current state simulator will boot and read
    partition table and then have a bunch of errors and panic
dev/pciconfigall.cc:
dev/pciconfigall.hh:
dev/platform.hh:
    Changes to work with platform separation
dev/tsunami.cc:
dev/tsunami.hh:
    Change to work with platform separation

--HG--
extra : convert_revision : e1de22b54df7fdcf391efc2a8555ada93f46beab
2004-05-03 11:47:52 -04:00
Lisa Hsu
53b54c2b65 just comment ns_gige.cc a little more
dev/ns_gige.cc:
    add some comments

--HG--
extra : convert_revision : 96ae82f1f48b8e2e2ba8a6a0e2f37d8f992d15b3
2004-04-21 18:43:39 -04:00
Lisa Hsu
bf8de77465 This is where I'm at for Linux Ethernet before I head to Mexico.
base/range.hh:
    andrew thought this might be a bug.
dev/etherpkt.cc:
    don't need std:: since there is a using directive
dev/ns_gige.cc:
    update to new PIO and PCI system
dev/ns_gige.hh:
    update to deal with new PIO and PCI setup
dev/ns_gige_reg.h:
    Add some new #defines that I ended up needing
dev/pcidev.cc:
    some changes to the debugging printfs of pci device

--HG--
extra : convert_revision : 955ba8e8e1c418cfe1c6549dc3451ea091541556
2004-04-21 18:23:41 -04:00
Lisa Hsu
f4168a708c Merge zizzer:/bk/linux into zower.eecs.umich.edu:/z/hsul/work/bk/linux
--HG--
extra : convert_revision : 69440981a018ce8b7c1c8a73404da0a39faa3ac3
2004-03-23 17:11:19 -05:00
Andrew Schultz
75cef1a801 Add initial support for IDE
--HG--
extra : convert_revision : e07dc6c87b0b692d428b541d4032fcf82996ef15
2004-03-23 17:10:07 -05:00
Lisa Hsu
b45fd9c541 Merge zizzer:/bk/linux into zower.eecs.umich.edu:/z/hsul/work/bk/linux
--HG--
extra : convert_revision : 7af5650ceae277ce838e778bba1fba86285d6dca
2004-03-22 17:11:36 -05:00
Andrew Schultz
e8f7aca8cf Automerge
--HG--
extra : convert_revision : d79abea2623f31a27735640363dfbf655c226b62
2004-03-22 16:59:43 -05:00
Andrew Schultz
c8640365c2 Change member variable names to lower case
--HG--
extra : convert_revision : 390c30b8313e7acbd7d77b106716f7147d181111
2004-03-22 16:58:18 -05:00
Andrew Schultz
8baccdc6d3 Changed to inherit from DmaDevice to avoid multiple inheritance (now
assumes that all PCI devices are DmaDevices, and if not, they can just
ignore the DMA stuff)

--HG--
extra : convert_revision : aa58b658370696674ca4c32b265bc0400e5dda5a
2004-03-22 16:50:09 -05:00
Lisa Hsu
ddeaa4d5e1 Merge zizzer:/bk/linux into zower.eecs.umich.edu:/z/hsul/work/bk/linux
--HG--
extra : convert_revision : b4e2fc55ec9cd0caa7cdf02de8a61c66e8b35c67
2004-03-22 13:21:18 -05:00
Lisa Hsu
3bc851b7db forgot to check this in earlier - no confusion between types and member names!
dev/pcidev.cc:
    member variables should begin with lowercase so they don't get confused with types.
dev/pcidev.hh:
    member variables must begin with lowercase so they don't get confused with types.

--HG--
extra : convert_revision : f083baa60d0fbf64d858d684ff70ee06e7b7765d
2004-03-22 13:15:14 -05:00
Ron Dreslinski
b4ff8c555f Make it so that alpha_console can read the frequency from the correct
sim object(depends on which platform tsunami/tlaser is being used)

dev/alpha_console.cc:
    Use dynamice casting once during build to get at the proper device to calculate the frequency.
    It is either a tsunami_IO or a tlaser_clock depending on platform (tsunami/tlaser).
    If the simobject is not of either of those types then panic
dev/alpha_console.hh:
    Pass in a SimObject * that is to either a tlaser_clock or a tsunami_IO
sim/sim_object.cc:
    Make it so that you can have a SimObjectParam of type SimObject:

    example:
    SimObjectParam<SimObject *> so;

--HG--
extra : convert_revision : 08239ef23762b8ea11311630b73fe885d939402e
2004-03-19 14:51:02 -05:00
Lisa Hsu
25a07e7467 merge etherpkt and makefile
--HG--
extra : convert_revision : 8f416468c7c239a4de6f8df2d632832921c1ced8
2004-03-12 11:07:32 -05:00
Lisa Hsu
48e6ed48e0 first pass at ns_ethernet device. more will come later as i merge in nate's new ether infrastructure.
dev/etherpkt.hh:
    add some stuff for support of the NS ethernet device.

--HG--
extra : convert_revision : 51f6508463b6394055e3428a42b7de490a9ae6c1
2004-03-12 11:04:58 -05:00
Lisa Hsu
256a1ac478 merge from head of m5. note: i did not bother to merge the PIO stuff with scsi since we're not going that route anymore anyway. esp because it was giving me an error i couldn't seem to fix.
dev/alpha_console.cc:
    missed this >>>> after i merged
kern/linux/linux_system.cc:
    get rid of FS_MEASURES and change FnEvent to LinuxFnEvent
kern/linux/linux_system.hh:
    get rid of FS_MEASURE

--HG--
extra : convert_revision : 210f46573bba0c772a224ce110af9a9230fabf6a
2004-03-11 20:04:41 -05:00
Lisa Hsu
3bc8cffc75 merge with m5 head
--HG--
extra : convert_revision : c90339248d1ee74df1c6b90a77ec9ea41f646311
2004-03-11 18:52:29 -05:00
Lisa Hsu
c6c61870fa It was annoying me that there was PCIConfigAll and PciDev and PciConfigData. so for consistency I changed it.
dev/pciconfigall.cc:
dev/pciconfigall.hh:
dev/pcidev.cc:
dev/pcidev.hh:
dev/tsunami.hh:
    change PCIConfigAll to PciConfigAll

--HG--
extra : convert_revision : d2fa3f59b906c870fd9d46cfa94728c7587e3652
2004-03-11 12:45:27 -05:00
Nathan Binkert
c74cb77fa4 Add support for a propagation delay on the link. The electrical
delay is more or less folded into the packet time, but an additional
delay is possible representing crossing a long haul link, or some
switches, etc.

--HG--
extra : convert_revision : 8fd689c2a7e3051e77f47a4cd5f51c6999d92c8f
2004-03-05 05:47:05 -05:00
Nathan Binkert
2272164d66 Fix dumping to work on the opteron. struct timeval can
vary in size, so we're explicit about the fields.

--HG--
extra : convert_revision : e5264849dafb878676b2bfd3a6e6f95f6f94ea48
2004-02-29 17:05:23 -05:00
Erik Hallnor
b491bda241 Add support for multiple address ranges in memory interfaces.
dev/alpha_console.cc:
    setAddrRange -> addAddrRange

--HG--
extra : convert_revision : 9dc853b80bea443b54a130ca4c110a68077cb336
2004-02-29 16:18:49 -05:00
Nathan Binkert
bc5ed80b32 configurable latency for programmed IO
fix serialization

dev/etherlink.cc:
    fix serialization

--HG--
extra : convert_revision : 6739001f3f97b745d9874bb4c5729cc4909625c2
2004-02-22 18:09:11 -05:00
Andrew Schultz
43787ad863 Added initial (hackish) support for translating between a PCI bus address
and a physical memory address for DMA

dev/tsunami_pchip.cc:
dev/tsunami_pchip.hh:
    Changed registers to array and added mapping function to translate between
    PCI bus space and physical address space

--HG--
extra : convert_revision : e9dc4de4e7effe8e8e2365298843d6f767b5a289
2004-02-21 20:29:38 -05:00
Nathan Binkert
610081079c New Ethernet device. Descriptors are now done via DMA instead
of faking it.  Renamed stuff to follow our style.  Lots of
general cleanup.

dev/etherpkt.hh:
    fix up includes

--HG--
extra : convert_revision : fb3a21466cdae00f8747d6e3027c9f2c63569c48
2004-02-21 10:43:37 -05:00
Ron Dreslinski
4768c72964 Fix the RTC code so it is in the cchip, only interrupt processors that
are present

dev/tsunami_cchip.cc:
    Only need to interrupt processors that are there
    Move RTC interrupt code into a function
dev/tsunami_cchip.hh:
    Make a RTC interrupt function, move variables out of public scope
dev/tsunami_io.cc:
    Make a call to the RTC interrupt routine instead

--HG--
extra : convert_revision : 88113664d0e54a7dddc00ec11ff9b9d088232b31
2004-02-20 16:51:19 -05:00
Nathan Binkert
ec06c63cc7 make the dma interface useable.
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
2004-02-20 15:23:27 -05:00
Nathan Binkert
ee8c8cbcd8 make etherdump work again
dev/etherdump.cc:
    now that init is automatically called by the framework, don't
    init twice.

--HG--
extra : convert_revision : 16dcdef67aa193ed71ff546e7b255d60f39bf13d
2004-02-20 15:19:19 -05:00
Nathan Binkert
7ad5b6ee22 Merge zizzer.eecs.umich.edu:/bk/m5
into ziff.eecs.umich.edu:/z/binkertn/research/m5/memory

--HG--
extra : convert_revision : 691c89ebacb3c5a5eb67359ed102646b8547dd17
2004-02-20 15:08:02 -05:00
Ron Dreslinski
db940dd0b0 Add support for IPI's and extend RTC to interrupt all Processors
dev/tsunami_cchip.cc:
    Add support for IPI, making changes to read/write to MISC register
    Particularly the IPREQ, IPINTR, and ITINTR subfields
dev/tsunami_cchip.hh:
    Make an array to keep track of the number of outstanding IPI's,
    Extend RTC to interrupt all processors, not just cpu0
dev/tsunami_io.cc:
    Extend RTC to interrupt all present proccessors, not just cpu0

--HG--
extra : convert_revision : 0715cbf0abb06002c0fb0b05ef369304cdf75001
2004-02-20 14:28:59 -05:00
Ron Dreslinski
373d70980e Add serialization for packets on the ethernet link,
and for link events

--HG--
extra : convert_revision : 0054dbc4a42dd38ff8bbf64af303bc509dd5aa8a
2004-02-20 12:44:41 -05:00
Ali Saidi
706d6bea52 1 << x != (uint64_t)1 << x
dev/tsunami_cchip.cc:
    fixed another problem with the interrupt code, should all work now

--HG--
extra : convert_revision : 1d9fe6081b6391e3e09f1c4a9380a30240fac6dc
2004-02-16 16:04:34 -05:00
Andrew Schultz
9c9d1cb5bf Changed device IRQ back to 1
--HG--
extra : convert_revision : 3fb611e6e0305fe9854cdf7813492b75750cd7a9
2004-02-16 01:33:43 -05:00
Andrew Schultz
484a4de65a Added new aic register definition, fix some interrupt related calls
dev/tsunami_cchip.cc:
    Change interrupt level to 20 for devices

--HG--
extra : convert_revision : deee68d5434643dc751de08e5a804c14d1a86efd
2004-02-16 01:07:16 -05:00
Ali Saidi
03e8793f89 Merge
dev/tsunami_cchip.cc:
    SCCS merged

--HG--
extra : convert_revision : a4b2b0b92038217608a733a6c8f27edb018e910d
2004-02-16 00:00:23 -05:00
Ali Saidi
de5fa66714 Rewrote interrupt code to handle masking correctly and changed every
interrupt to use a different subnumber since both devices could
interrupt at the same time and we don't want to loose one.

dev/tsunami_cchip.cc:
    rewrote interrupt code to handle interrupt mask clearing correctly
dev/tsunami_cchip.hh:
    changed (post/clear)DRIR to use a interrupt number rather than a vecotr
dev/tsunami_io.cc:
    updated for new post/clearDRIR calls

--HG--
extra : convert_revision : 5b39f5e15a66d5eb6e689e6ece62f99b5fa735ab
2004-02-15 23:56:44 -05:00
Andrew Schultz
44b277a62f Interrupt changes
dev/tsunami_cchip.cc:
    Changed to point to IPL 20 rather than 21

--HG--
extra : convert_revision : ee70f4bae4e06b92a0e02ea71ed65d4e260e7967
2004-02-15 22:36:23 -05:00
Andrew Schultz
1978851fc7 Fix some debug printing errors
--HG--
extra : convert_revision : 3ef3d2c7eb67c45a7e005c1c072f3098142ea210
2004-02-15 18:24:14 -05:00
Andrew Schultz
092ec1978d Fix to remote debugger while in PAL
arch/alpha/vtophys.cc:
base/remote_gdb.cc:
    Fix to remote debugger while in PAL code
dev/pcidev.cc:
    Remove extra debug printf

--HG--
extra : convert_revision : e64988846ad05cd3ddf47034d72d99dae3501591
2004-02-13 18:15:04 -05:00
Nathan Binkert
cc53465cd5 Add support for all devices to get requests from a timing memory bus.
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
2004-02-11 16:07:55 -05:00
Ali Saidi
29eae76153 Merge
dev/tsunami_cchip.cc:
dev/tsunami_io.cc:
dev/tsunami_pchip.cc:
dev/tsunami_uart.cc:
    SCCS merged

--HG--
extra : convert_revision : da3d1998d6dd39e0d3f8754074c513cdd8a4193c
2004-02-11 15:36:36 -05:00
Ali Saidi
0f34a00703 added serializeation code
--HG--
extra : convert_revision : 468f3c739707d167af43562695b604fd7dead661
2004-02-11 15:32:30 -05:00
Andrew Schultz
e72e8b28c8 Fix masking of read/write address to get read/write offset
Changed base_linux.ini file to use physical addresses

dev/alpha_console.cc:
dev/pciconfigall.cc:
dev/tsunami_cchip.cc:
dev/tsunami_io.cc:
dev/tsunami_pchip.cc:
    Fix masking of read/write address to get read/write offset
dev/tsunami_uart.cc:
    Fix masking of read/write address to get read/write offset
    Also added add_child call that was missed
dev/tsunami_uart.hh:
    Changed size to 0x8

--HG--
extra : convert_revision : 1468ca43167bfb28b28c4510401a1ebad683e102
2004-02-10 22:35:18 -05:00
Andrew Schultz
81d5ffe7de Changed new linux stuff to work with new FunctionalMemory interface and
some sundry problems with new interface

dev/alpha_console.cc:
dev/alpha_console.hh:
dev/baddev.cc:
dev/baddev.hh:
dev/pciconfigall.cc:
dev/pciconfigall.hh:
dev/pcidev.cc:
dev/pcidev.hh:
dev/tsunami_cchip.cc:
dev/tsunami_cchip.hh:
dev/tsunami_io.cc:
dev/tsunami_io.hh:
dev/tsunami_pchip.cc:
dev/tsunami_pchip.hh:
dev/tsunami_uart.cc:
dev/tsunami_uart.hh:
    Fixed to use new FunctionalMemory interface

--HG--
extra : convert_revision : bee98e6285d92f28fafacf919ab06eaf333a9b56
2004-02-10 00:19:43 -05:00
Andrew Schultz
eac2d6a668 Merge linux tree with head
arch/alpha/alpha_memory.cc:
dev/alpha_console.cc:
dev/alpha_console.hh:
    Merge

--HG--
extra : convert_revision : 3233648f204338ab3f102ff117754dce955dcc37
2004-02-09 17:50:47 -05:00
Andrew Schultz
48bb27be72 Added platform.hh
--HG--
extra : convert_revision : c11fde5e5f0e344d2f4c89c57a4d41ca179a31e5
2004-02-09 14:52:41 -05:00
Andrew Schultz
581a6ea0dd Fixes for updating mmu mappings
dev/tsunami.hh:
    Added generic platform base class

--HG--
extra : convert_revision : ff74956937f9fca5bdfa5e3779add776e4a91f8b
2004-02-09 14:47:39 -05:00
Ali Saidi
b93cab4e85 Merge zizzer.eecs.umich.edu:/m5/Bitkeeper/linux
into zizzer.eecs.umich.edu:/y/saidi/work/m5

--HG--
extra : convert_revision : 35c2de18adad0957538453b2a083e59de535aa88
2004-02-09 13:46:38 -05:00
Ali Saidi
1ded394fc3 Some changes to for linux 2.6.2
dev/pcidev.cc:
    Linux 2.6 writes the latency timer, so it was added to the list of
    allowable writes
dev/tsunami_uart.cc:
dev/tsunami_uart.hh:
    A couple of changes so that the new linux autoconf serial driver thinks
    that the serial port exists and configures it

--HG--
extra : convert_revision : 6c026ef754e31de56c9b837ceb8f6be48c8d8d9c
2004-02-09 13:40:58 -05:00