io_device.cc (3349:fec4a86fa212) io_device.cc (3401:1df0cb879413)
1/*
2 * Copyright (c) 2006 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

--- 23 unchanged lines hidden (view full) ---

32#include "base/chunk_generator.hh"
33#include "base/trace.hh"
34#include "dev/io_device.hh"
35#include "sim/builder.hh"
36#include "sim/system.hh"
37
38
39PioPort::PioPort(PioDevice *dev, System *s, std::string pname)
1/*
2 * Copyright (c) 2006 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

--- 23 unchanged lines hidden (view full) ---

32#include "base/chunk_generator.hh"
33#include "base/trace.hh"
34#include "dev/io_device.hh"
35#include "sim/builder.hh"
36#include "sim/system.hh"
37
38
39PioPort::PioPort(PioDevice *dev, System *s, std::string pname)
40 : SimpleTimingPort(dev->name() + pname), device(dev)
40 : SimpleTimingPort(dev->name() + pname, dev), device(dev)
41{ }
42
43
44Tick
45PioPort::recvAtomic(PacketPtr pkt)
46{
47 return pkt->isRead() ? device->read(pkt) : device->write(pkt);
48}

--- 38 unchanged lines hidden (view full) ---

87{
88 assert(pioSize != 0);
89 range_list.clear();
90 range_list.push_back(RangeSize(pioAddr, pioSize));
91}
92
93
94DmaPort::DmaPort(DmaDevice *dev, System *s)
41{ }
42
43
44Tick
45PioPort::recvAtomic(PacketPtr pkt)
46{
47 return pkt->isRead() ? device->read(pkt) : device->write(pkt);
48}

--- 38 unchanged lines hidden (view full) ---

87{
88 assert(pioSize != 0);
89 range_list.clear();
90 range_list.push_back(RangeSize(pioAddr, pioSize));
91}
92
93
94DmaPort::DmaPort(DmaDevice *dev, System *s)
95 : Port(dev->name() + "-dmaport"), device(dev), sys(s), pendingCount(0),
96 actionInProgress(0), drainEvent(NULL)
95 : Port(dev->name() + "-dmaport", dev), device(dev), sys(s),
96 pendingCount(0), actionInProgress(0), drainEvent(NULL)
97{ }
98
99bool
100DmaPort::recvTiming(PacketPtr pkt)
101{
102
103
104 if (pkt->result == Packet::Nacked) {

--- 161 unchanged lines hidden ---
97{ }
98
99bool
100DmaPort::recvTiming(PacketPtr pkt)
101{
102
103
104 if (pkt->result == Packet::Nacked) {

--- 161 unchanged lines hidden ---