io_device.hh (8922:17f037ad8918) io_device.hh (8948:e95ee70f876c)
1/*
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
9 * licensed hereunder. You may use the software subject to the license
10 * terms below provided that you ensure that this notice is replicated
11 * unmodified and in its entirety in all distributions of the software,
12 * modified or unmodified, in source code or in binary form.
13 *
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;
9 * redistributions in binary form must reproduce the above copyright

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

130 /** If the port is currently waiting for a retry before it can send whatever
131 * it is that it's sending. */
132 bool inRetry;
133
134 /** Port accesses a cache which requires snooping */
135 bool recvSnoops;
136
137 virtual bool recvTiming(PacketPtr pkt);
14 * Copyright (c) 2004-2005 The Regents of The University of Michigan
15 * All rights reserved.
16 *
17 * Redistribution and use in source and binary forms, with or without
18 * modification, are permitted provided that the following conditions are
19 * met: redistributions of source code must retain the above copyright
20 * notice, this list of conditions and the following disclaimer;
21 * redistributions in binary form must reproduce the above copyright

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

142 /** If the port is currently waiting for a retry before it can send whatever
143 * it is that it's sending. */
144 bool inRetry;
145
146 /** Port accesses a cache which requires snooping */
147 bool recvSnoops;
148
149 virtual bool recvTiming(PacketPtr pkt);
138 virtual Tick recvAtomic(PacketPtr pkt)
139 {
140 if (recvSnoops) return 0;
141
150
142 panic("dma port shouldn't be used for pio access."); M5_DUMMY_RETURN
151 virtual bool recvTimingSnoop(PacketPtr pkt)
152 {
153 if (!recvSnoops)
154 panic("%s was not expecting a snoop\n", name());
155 return true;
143 }
156 }
144 virtual void recvFunctional(PacketPtr pkt)
157
158 virtual Tick recvAtomicSnoop(PacketPtr pkt)
145 {
159 {
146 if (recvSnoops) return;
160 if (!recvSnoops)
161 panic("%s was not expecting a snoop\n", name());
162 return 0;
163 }
147
164
148 panic("dma port shouldn't be used for pio access.");
165 virtual void recvFunctionalSnoop(PacketPtr pkt)
166 {
167 if (!recvSnoops)
168 panic("%s was not expecting a snoop\n", name());
149 }
150
151 virtual void recvRetry() ;
152
153 virtual bool isSnooping() const { return recvSnoops; }
154
155 void queueDma(PacketPtr pkt, bool front = false);
156 void sendDma();

--- 151 unchanged lines hidden ---
169 }
170
171 virtual void recvRetry() ;
172
173 virtual bool isSnooping() const { return recvSnoops; }
174
175 void queueDma(PacketPtr pkt, bool front = false);
176 void sendDma();

--- 151 unchanged lines hidden ---