Deleted Added
sdiff udiff text old ( 2738:5d7a31c7fa29 ) new ( 2784:6cff1a1c2935 )
full compact
1/*
2 * Copyright (c) 2004-2005 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;

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

114
115 public:
116 PioPort(PioDevice *dev, Platform *p);
117
118 friend class PioPort::SendEvent;
119};
120
121
122class DmaPort : public Port
123{
124 protected:
125 struct DmaReqState : public Packet::SenderState
126 {
127 /** Event to call on the device when this transaction (all packets)
128 * complete. */
129 Event *completionEvent;
130
131 /** Where we came from for some sanity checking. */
132 Port *outPort;
133
134 /** Total number of bytes that this transaction involves. */
135 Addr totBytes;
136
137 /** Number of bytes that have been acked for this transaction. */
138 Addr numBytes;
139
140 DmaReqState(Event *ce, Port *p, Addr tb)
141 : completionEvent(ce), outPort(p), totBytes(tb), numBytes(0)
142 {}
143 };
144
145 DmaDevice *device;
146 std::list<Packet*> transmitList;
147
148 /** The platform that device/port are in. This is used to select which mode
149 * we are currently operating in. */
150 Platform *platform;
151
152 /** Number of outstanding packets the dma port has. */

--- 179 unchanged lines hidden ---