We have a custom display that we connect to via the PL and I am trying to write a DRM driver for it. All the work to encode the data will be handled in the PL so the interface could be very simple, like a BRAM.
I started with the SDI driver and created the device-tree nodes and thought I could use the ZDMA in the PS. However, I get this error on boot:
[ 9.952755] OF: /drm-pl-disp-drv: could not get #dma-cells for /amba/dma@fd500000 [ 9.958737] xlnx-pl-disp drm-pl-disp-drv: failed to request dma channel
This is because fpd_dma_chan1 do not have #dma-cells = <1> in the node. I can get around this by modifying the node in system-user.dtsi; however, I see another problem.
I don't see the dst_start field set in xlnx_pl_disp.c for the DMA so now I think I cannot use the generic ZDMA and must use the VDMA IP. I believe the VDMA would be recognized correctly and somehow be configured to move the data into the PL.
Anybody know about connecting the the DMA in a DRM driver?