|
@@ -857,7 +857,7 @@ void readDataPhase(int len, byte* p)
|
|
|
/*
|
|
/*
|
|
|
* See writeDataLoop for optimization info.
|
|
* See writeDataLoop for optimization info.
|
|
|
*/
|
|
*/
|
|
|
-void readDataLoop(uint32_t blockSize) __attribute__ ((aligned(8)));
|
|
|
|
|
|
|
+void readDataLoop(uint32_t blockSize) __attribute__ ((aligned(16)));
|
|
|
void readDataLoop(uint32_t blockSize)
|
|
void readDataLoop(uint32_t blockSize)
|
|
|
{
|
|
{
|
|
|
register byte *dstptr= m_buf;
|
|
register byte *dstptr= m_buf;
|
|
@@ -878,7 +878,7 @@ void readDataLoop(uint32_t blockSize)
|
|
|
REQ_OFF();
|
|
REQ_OFF();
|
|
|
*dstptr++ = ~(ret >> 8);
|
|
*dstptr++ = ~(ret >> 8);
|
|
|
// Move wait loop in to a single 8 byte prefetch buffer
|
|
// Move wait loop in to a single 8 byte prefetch buffer
|
|
|
- asm("nop.w");
|
|
|
|
|
|
|
+ asm("nop.w;nop");
|
|
|
WAIT_ACK_INACTIVE();
|
|
WAIT_ACK_INACTIVE();
|
|
|
REQ_ON();
|
|
REQ_ON();
|
|
|
// Extra 1 cycle delay
|
|
// Extra 1 cycle delay
|