Forum Discussion

andy25's avatar
andy25
Icon for Occasional Contributor rankOccasional Contributor
2 years ago
Solved

altera_avalon_fifo_write_ienable IE_ALMOSTFULL

Hi all. In my Nios V code, I'm trying to use: status = altera_avalon_fifo_write_ienable(IPMB_0_FIFO_IN_CSR_BASE, IE_FULL | IE_ALMOSTFULL); I'm guessing the IE_FULL and IE_ALMOSTFULL are the masks ...
  • andy25's avatar
    andy25
    2 years ago

    No, you don't understand.

    I obviously read the documentation and that's where I got the names IE_FULL, etc.

    Then I wrote some C code:

    status = altera_avalon_fifo_write_ienable(IPMB_0_FIFO_IN_CSR_BASE, IE_FULL | IE_ALMOSTFULL);

    And tried to compile it, and it errors saying IE_FULL (and friends) are not defined.

    grepping the hal_bsp directory reveals those names are not defined anywhere.

    But that was 5 days ago.

    The correct answer is:

    #include "altera_avalon_fifo_regs.h"

    Use:

    ALTERA_AVALON_FIFO_IENABLE_F_MSK

    ALTERA_AVALON_FIFO_IENABLE_AF_MSK

    etc.

    But the real real correct answer is:

    You cant call altera_avalon_fifo_write_ienable() function after altera_avalon_fifo_init(). Instead, pass the ienable flags you want as the second parameter of altera_avalon_fifo_init().

    -Andy