Community
cancel
Showing results for 
Search instead for 
Did you mean: 
aln
Beginner
95 Views

MSGDMA Prefetcher Initialization Error

Hello,

We have a custom hardware solution using Cyclone IV. This is an old design using Quartus 12.0.

We're planning to transition to an Arria 10 with a SoC and therefore we are preparing our design and software to be compatible with Quartus 20.1.

First we could not get the SGDMA to work properly and after doing some investigation it seems like SGMDA isn't supported any more. 

We exchanged the SGDMA with the MSGDMA, but now we're stuck in the alt_msgdma_init() routine where the reset bit never seems to clear.

We're unsure on what we've done wrong. Any help is appreciated.

 

 

void alt_msgdma_init (alt_msgdma_dev *dev, alt_u32 ic_id, alt_u32 irq)
{
    extern alt_llist alt_msgdma_list;
    alt_u32 temporary_control;
    int error;

    if (dev->prefetcher_enable)
    {
        /* start prefetcher reset sequence */
        IOWR_ALT_MSGDMA_PREFETCHER_CONTROL(dev->prefetcher_base, 
                ALT_MSGDMA_PREFETCHER_CTRL_RESET_SET_MASK);
        /* wait until hw clears the bit */    
   
        // Locks inside of this while loop while waiting until HW clears the reset bit       
        while(ALT_MSGDMA_PREFETCHER_CTRL_RESET_GET(
            IORD_ALT_MSGDMA_PREFETCHER_CONTROL(dev->prefetcher_base)));
        ...

 

 

Tags (2)
0 Kudos
1 Reply
EricMunYew_C_Intel
Moderator
36 Views

Reply