Adding unused mSGDMA component freezes the read of my UARTs?
Hi,
I have a design working on CycloneV Soc (Atlas/DE0 Nano Soc board), that has:
- a linux environment on the HPS side. It does nothing at the moment.
- On the FPGA side, a QSys-generaatd project including
- a set of UARTs, based on Altera UART
- a NIOSII/e core using OnChip memory for code & data.
The NIOS2 reads incoming data over the UARTs, and stores the received byte in local NIOS memory (=onchip memory), and everything works fine.
Now, I added a mSGDMA core in the QSys project, with the intent to let the NIOS2 use it to push received data to HPS memory (DDR3) via the FPGA-to-Host bridge.
Just adding this mSGMA component and connecting it (clock, reset, csr on NIOS data bus, source on onchip memory, and destination on F2H bridge of the HPS), without accessing/using this mSGMA core, results in my earlier NIOS code failing: somehow the main loop gets stuck on the "read" operation on the UART, that was working just fine before the mSGDMA core was added.
I have re-generated the preloader, as well as the NIOS BSP, rebuilt everything, to no avail.
If I just comment out the "read" on the UART, the NIOS application main loop executes normally (doing pretty much nothing, but toggling LEDs to indicate it is alive).
Does anyone have clues as to what I may have overlooked that could cause this problem ?
Thanks