00001 #include <string.h> 00002 00003 #include <moc.h> 00004 #include <ppu/moc_dma_ppu.h> 00005 #include <internal/imoc_macros.h> 00006 #include <internal/ppu/imoc_dma_ppu.h> 00007 #include <internal/ppu/imoc_core_ppu.h> 00008 00009 int MOC_Get_data(void* target, uint32_t source, int count, 00010 MOC_Datatype datatype, int dest) 00011 { 00012 int bytecount; 00013 00014 if (((datatype & 0xF0) >> 4) == 0) 00015 bytecount = count; 00016 else 00017 bytecount = count * (((datatype & 0xF0) >> 4) * 2); 00018 00019 if (target == 0 || source == 0 || bytecount == 0) 00020 return 0; 00021 if ((((uint64_t) target) % 16) != 0 || (source % 16) != 0) 00022 return MOC_ERR_BAD_ALIGNMENT; 00023 IMOC_TEST_BYTECOUNT(bytecount) 00024 IMOC_TEST_RANK(dest) 00025 00026 return IMOC_get_data(target, source, bytecount, dest); 00027 } 00028
1.5.6