Deleted Added
sdiff udiff text old ( 2662:f24ae2d09e27 ) new ( 2663:c82193ae8467 )
full compact
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;

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

161 uint8_t *data)
162{
163 assert(event);
164
165 int prevSize = 0;
166
167 for (ChunkGenerator gen(addr, size, peerBlockSize());
168 !gen.done(); gen.next()) {
169 Request *req = new Request(false);
170 req->setPaddr(gen.addr());
171 req->setSize(gen.size());
172 req->setTime(curTick);
173 Packet *pkt = new Packet(req, cmd, Packet::Broadcast);
174
175 // Increment the data pointer on a write
176 if (data)
177 pkt->dataStatic(data + prevSize) ;
178
179 prevSize += gen.size();
180
181 // Set the last bit of the dma as the final packet for this dma
182 // and set it's completion event.
183 if (prevSize == size) {
184 pkt->senderState = new DmaReqState(event, true);
185 }

--- 55 unchanged lines hidden ---