I am trying to follow the example provided by Digilent for their Nexys4 development board (which has no DDR) for generating the LWIP Echo server. I first had an issue where the BRAM that was recommended (64K) was too small - bumping that up to 128K for dlmb and ilmb fixed that. I also found and fixed an issue in lwip202_v1_1 file xadapter.c as well (thanks to a forum post on the Xilinx website)
However, now I have one I can't figure out, probably due to being a complete newbie with respect to IP (other than getting the UART/button example working fine). The block design has an AXI_TIMER block, a Concat block, and an AXI Interrupt Controller amongst other things with a Microblaze processor. This generates a platform.h with the following lines (the #define PLATFORM_TIMER_INTERRUPT_INTR is all one line.)
#define PLATFORM_TIMER_BASEADDR XPAR_AXI_TIMER_0_BASEADDR
#define PLATFORM_TIMER_INTERRUPT_INTR XPAR_MICROBLAZE_0_AXI_INTC_AXI_TIMER_0_INTERRUPT_INTR <<<<<<<<<<<<<<<<<<< This one
#define PLATFORM_TIMER_INTERRUPT_MASK (1 << XPAR_MICROBLAZE_0_AXI_INTC_AXI_TIMER_0_INTERRUPT_INTR)
And platform_setup_interrupts() has these lines:
#ifdef XPAR_INTC_0_EMACLITE_0_VEC_ID
#ifdef __MICROBLAZE__
XIntc_Enable(intcp, PLATFORM_TIMER_INTERRUPT_INTR); <<<< USED HERE
#endif
XIntc_Enable(intcp, XPAR_INTC_0_EMACLITE_0_VEC_ID);
#endif
The problem is that XPAR_MICROBLAZE_0_AXI_INTC_AXI_TIMER_0_INTERRUPT_INTR is not defined anywhere. (I tried various substrings to see if maybe one of the underscores was supposed to be "|", but came up empty).
Question
cube1us
Vivado 2018.2, Windows 10, 64 bit.
I am trying to follow the example provided by Digilent for their Nexys4 development board (which has no DDR) for generating the LWIP Echo server. I first had an issue where the BRAM that was recommended (64K) was too small - bumping that up to 128K for dlmb and ilmb fixed that. I also found and fixed an issue in lwip202_v1_1 file xadapter.c as well (thanks to a forum post on the Xilinx website)
https://reference.digilentinc.com/learn/programmable-logic/tutorials/nexys-4-getting-started-with-microblaze-servers/start
However, now I have one I can't figure out, probably due to being a complete newbie with respect to IP (other than getting the UART/button example working fine). The block design has an AXI_TIMER block, a Concat block, and an AXI Interrupt Controller amongst other things with a Microblaze processor. This generates a platform.h with the following lines (the #define PLATFORM_TIMER_INTERRUPT_INTR is all one line.)
#define PLATFORM_EMAC_BASEADDR XPAR_AXI_ETHERNETLITE_0_BASEADDR
#define PLATFORM_TIMER_BASEADDR XPAR_AXI_TIMER_0_BASEADDR
#define PLATFORM_TIMER_INTERRUPT_INTR XPAR_MICROBLAZE_0_AXI_INTC_AXI_TIMER_0_INTERRUPT_INTR <<<<<<<<<<<<<<<<<<< This one
#define PLATFORM_TIMER_INTERRUPT_MASK (1 << XPAR_MICROBLAZE_0_AXI_INTC_AXI_TIMER_0_INTERRUPT_INTR)
And platform_setup_interrupts() has these lines:
#ifdef XPAR_INTC_0_EMACLITE_0_VEC_ID
#ifdef __MICROBLAZE__
XIntc_Enable(intcp, PLATFORM_TIMER_INTERRUPT_INTR); <<<< USED HERE
#endif
XIntc_Enable(intcp, XPAR_INTC_0_EMACLITE_0_VEC_ID);
#endif
The problem is that XPAR_MICROBLAZE_0_AXI_INTC_AXI_TIMER_0_INTERRUPT_INTR is not defined anywhere. (I tried various substrings to see if maybe one of the underscores was supposed to be "|", but came up empty).
Any thoughts?
TIA.
JRJ
Link to comment
Share on other sites
8 answers to this question
Recommended Posts
Archived
This topic is now archived and is closed to further replies.