Nios® II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++
Announcements
Intel Support hours are Monday-Fridays, 8am-5pm PST, except Holidays. Thanks to our community members who provide support during our down time or before we get to your questions. We appreciate you!

Need Forum Guidance? Click here
Search our FPGA Knowledge Articles here.

SGDMA status return code 'C'

Altera_Forum
Honored Contributor II
798 Views

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 II
89 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 II
89 Views

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

Reply