Deleted Added
sdiff udiff text old ( 8914:8c3bd7bea667 ) new ( 8948:e95ee70f876c )
full compact
1/*
2 * Copyright (c) 2012 ARM Limited
3 * All rights reserved.
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software

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

65class PacketQueue
66{
67 private:
68 /** A deferred packet, buffered to transmit later. */
69 class DeferredPacket {
70 public:
71 Tick tick; ///< The tick when the packet is ready to transmit
72 PacketPtr pkt; ///< Pointer to the packet to transmit
73 bool sendAsSnoop; ///< Should it be sent as a snoop or not
74 DeferredPacket(Tick t, PacketPtr p, bool send_as_snoop)
75 : tick(t), pkt(p), sendAsSnoop(send_as_snoop)
76 {}
77 };
78
79 typedef std::list<DeferredPacket> DeferredPacketList;
80 typedef std::list<DeferredPacket>::iterator DeferredPacketIterator;
81
82 /** A list of outgoing timing response packets that haven't been
83 * serviced yet. */

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

192 void schedSendEvent(Tick when);
193
194 /**
195 * Add a packet to the transmit list, and ensure that a
196 * processSendEvent is called in the future.
197 *
198 * @param pkt Packet to send
199 * @param when Absolute time (in ticks) to send packet
200 * @param send_as_snoop Send the packet as a snoop or not
201 */
202 void schedSendTiming(PacketPtr pkt, Tick when, bool send_as_snoop = false);
203
204 /**
205 * Used by a port to notify the queue that a retry was received
206 * and that the queue can proceed and retry sending the packet
207 * that caused the wait.
208 */
209 void retry();
210
211 /**
212 * Hook for draining the packet queue.
213 *
214 * @param de An event which is used to signal back to the caller
215 * @return A number indicating how many times process will be called
216 */
217 unsigned int drain(Event *de);
218};
219
220#endif // __MEM_PACKET_QUEUE_HH__