This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

OMAP 35xx GPMC module problems

Hey

I have used the GPMC module in my Linux driver to access a memory region in a FPGA (4 kB). The setup of the GPMC module is as follow: It is set up to be multiplexing address/data-bus, the size of bus is set to 16 bit and finally asyncronius read/write operations.

I have used mmap to map the memory region from kernel space to user space, to do it I have use the function:

remap_pfn_range(vma, vma->vm_start,
                                  cs_mem_base >> PAGE_SHIFT,  //to get the page frame number of cs_mem_base
                                  BRAM_SIZE, vma->vm_page_prot)

At the moment I only read from the FPGA, and the problem I face is a stricky. The first time I plug in the kernel module  and try to read some known values from the memory region I get errors on some addresses, the same errors repeat for some time. But after a lillte periode I read the correct values and the errors never happent agian. Does any had face the same problem before?

Here  is a sample of the error message:

This file show the errors in FPGA memory region
Error at address 0x39: Value: 0x388A0000 Expected: 0x388AC79E
Error at address 0x47: Value: 0x369B0129 Expected: 0x369B6169
Error at address 0x410: Value: 0x23C8 Expected: 0x51B823C8
Error at address 0x424: Value: 0x3B520000 Expected: 0x3B52DEAF
Error at address 0x442: Value: 0x1E00401 Expected: 0x1E0A0CE
Error at address 0x451: Value: 0x55400C00 Expected: 0x5540EE8C
Error at address 0x493: Value: 0x7DEC020C Expected: 0x7DECF29D
At 0 iteration there are 7 errors
Error at address 0x39: Value: 0x388A0000 Expected: 0x388AC79E
Error at address 0x47: Value: 0x369B0129 Expected: 0x369B6169
Error at address 0x410: Value: 0x23C8 Expected: 0x51B823C8
Error at address 0x424: Value: 0x3B520000 Expected: 0x3B52DEAF
Error at address 0x442: Value: 0x1E00401 Expected: 0x1E0A0CE
Error at address 0x451: Value: 0x55400C00 Expected: 0x5540EE8C
Error at address 0x493: Value: 0x7DEC020C Expected: 0x7DECF29D
At 1 iteration there are 7 errors
Error at address 0x39: Value: 0x388A0000 Expected: 0x388AC79E
Error at address 0x47: Value: 0x369B0129 Expected: 0x369B6169
Error at address 0x410: Value: 0x23C8 Expected: 0x51B823C8
Error at address 0x424: Value: 0x3B520000 Expected: 0x3B52DEAF
Error at address 0x442: Value: 0x1E00401 Expected: 0x1E0A0CE
Error at address 0x451: Value: 0x55400C00 Expected: 0x5540EE8C
Error at address 0x493: Value: 0x7DEC020C Expected: 0x7DECF29D