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; --- 168 unchanged lines hidden (view full) --- 177 // older data not written to yet. 178 panic("Timing packet only partially satisfies the functional" 179 "request. Now what?"); 180 } 181 } else if (func->isWrite()) { 182 if (funcStart >= timingStart) { 183 memcpy(timing->getPtr<uint8_t>() + (funcStart - timingStart), 184 func->getPtr<uint8_t>(), |
185 std::min(funcEnd, timingEnd) - funcStart); |
186 } else { // timingStart > funcStart 187 memcpy(timing->getPtr<uint8_t>(), 188 func->getPtr<uint8_t>() + (timingStart - funcStart), |
189 std::min(funcEnd, timingEnd) - timingStart); |
190 } 191 // we always want to keep going with a write 192 return true; 193 } else 194 panic("Don't know how to handle command type %#x\n", 195 func->cmdToIndex()); 196 197} --- 41 unchanged lines hidden --- |