@Gaurav yaar, excellent article!! Been reading and reviewing it in details. You should be very proud of this accomplishment.
One thought on how to possibly speed up the USB from host to FPGA transfer is to consider the USB 2.0 HS Cypress FX2LP USB Bridge or perhaps even the more current USB 3.0 USB parallel bridge. Then use LibUSB to xfer the data to the widget.
Have you experimented with more than 1 lane MIPI displays? 2 lane or 4 lane?
Would you know if such multi-lane MIPI displays can be configured to operate with a single lane (at slower display data refresh rates)?
Thanks.