Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Altera_Forum
Honored Contributor I
745 Views

SGDMA status return code 'C'

Hi, 

 

I'm trying to perform a simple SGDMA transaction. 

 

Memory to Memory. 

 

The data is transferred. I use IORD on both memories and read the data to check. 

 

But the status code returned is 'c' in hex. i.e. 12. which shows  

"#define ENOMEM 12 /* Not enough core */" in errorno.h 

 

Any idea what that is and how I can make sure the transactions are correct. 

 

Also, any idea how I can measure the throughput of the system? I run performance counter and check. 

Would it be a good idea to run the counters again and again? or should one counter suffice? 

 

Thanks 

Zubair
0 Kudos
2 Replies
Altera_Forum
Honored Contributor I
36 Views

That's not one of the error codes enumerated in errno.h, but it's the value from the sgdma status register: bits 2 and 3 are set and this tells you the dma transfer has correctly completed. See page 23-13 of the sgdma controller datasheet for thorough status register information.

Altera_Forum
Honored Contributor I
36 Views

Thanks a lot! no wonder it was working correctly :)

Reply