Hi,
I have a Kasli and EFC1v1. My goal is to drive a FMC card on the EFC with an interface similar to the PDQ units.
Initially I had some issues with the clocking and I am happy to report that I got the boards up with 100 MHz core/RTIO frequencies. Thanks for the help to troubleshoot that!
When I boot up the boards, I see the the comma alignment step is passed but then the Kasli sends a DRTIO ping to which it doesn't get a response. At the same time the EFC generated a lot of error messages, basically indicating that received packets are invalid. For this I am forwarding the clock via the MMCX connector, removing the cable prevents the EFC from booting, and when the cable is present I get valid UART output for the expected 100 MHz frequency - so I think the clocking here looks solid.
I figured this may be an issue related to my 100 MHz clock setup, so I tried to go back to the standard 125 MHz frequency. When building the shuttlerdemo, the EFC errors out when some hardware ID doesn't match. So I changed the EFC gateware target so that no shuttler-specific gateware modules are build when the variant input does not match "shuttler" while making "shuttler" the default for consistency.
When building gateware with the "--variant blank" AND for 125 MHz (no --drtio100mhz option) I expect to get gateware that establishes the DRTIO link, pings successfully and idles. That is not what I observe, instead I am getting the same DRTIO packet errors that I was seeing with my 100 MHz version. This happens both for a forwarded 125 MHz clock as well as when both boards run on their internal 125 MHz oscillators.
Could you please review what I did here and give me some feedback regarding what I might be missing here? I think it'd be very useful to have a standard EFC gateware build that does not require any specific FMC module (like the shuttler one) and comes up indicating a good DRTIO link. Perhaps my troubleshooting patch (see attached) can serve as the basis for such build. I'll be happy to continue working on this to turn it into a PR if you can agree that a basic test build (without any FMC module attached) is a good idea.
Thank you for the help!
Felix
PS: Uploading patches isn't allowed, so here is a link instead:
Patch to build blank EFC