diff --git a/source/ipc_handler.c b/source/ipc_handler.c index fbd4087..ceebae2 100644 --- a/source/ipc_handler.c +++ b/source/ipc_handler.c @@ -42,12 +42,6 @@ invalidateDCacheRange(inBuf->ptr, inBuf->size); } - for(u32 i = inBufs; i < inBufs + outBufs; i++) - { - const IpcBuffer *const outBuf = (IpcBuffer*)&buf[i * sizeof(IpcBuffer)]; - flushDCacheRange(outBuf->ptr, outBuf->size); - } - u32 result = 0; switch(cmdId) { @@ -101,6 +95,12 @@ panic(); } + for(u32 i = inBufs; i < inBufs + outBufs; i++) + { + const IpcBuffer *const outBuf = (IpcBuffer*)&buf[i * sizeof(IpcBuffer)]; + flushDCacheRange(outBuf->ptr, outBuf->size); + } + return result; } @@ -114,12 +114,6 @@ invalidateDCacheRange(inBuf->ptr, inBuf->size); } - for(u32 i = inBufs; i < inBufs + outBufs; i++) - { - const IpcBuffer *const outBuf = (IpcBuffer*)&buf[i * sizeof(IpcBuffer)]; - flushDCacheRange(outBuf->ptr, outBuf->size); - } - u32 result = 0; switch(cmdId) { @@ -133,6 +127,12 @@ panic(); } + for(u32 i = inBufs; i < inBufs + outBufs; i++) + { + const IpcBuffer *const outBuf = (IpcBuffer*)&buf[i * sizeof(IpcBuffer)]; + flushDCacheRange(outBuf->ptr, outBuf->size); + } + return result; } #endif