Hi all,
I got hardware and bare metal software of Zynq Base TRD 14.3 reference design working on the zedboard. Starting from this (http://wiki.analog.com/resources/tools-software/linux-drivers/platforms/zynq#enable_xf86-video-modesetting_xorg_driver) working design I added the VDMA_filter and sobel_filter_engine and wrote a simple test program to send the image to the filter and to get back the filtered image and display both on the hdmi output.
Next step, I want to get linux drivers working on this kernel tree that supports zedboard.(e.g. https://github.com/Digilent/linux-3.3-digilent.)
This hardware design uses a vdma for the hdmi output (this is in addition to the vdma for the filter operations). I added the patch from (http://wiki.xilinx.com/zynq-base-trd-14-3). This patch adds two drivers: xvdma (for vdma filter) and xfilter (for filter engine). Xvdma is extended driver of the xilinx_dma driver. With few minor tweaks I managed to compile the kernel. At bootup, when the device tree file doesnu2019t contain the entries for new vdma_filter and filter_engine, the kernel crashes at a line from xvdma (static bool xvdma_filter(struct dma_chan *chan, void *param). This means, vdma_hdmi is also somehow also to trying to run the xvdma driver.
I added a compatibility string to the xvdma driver (the extended driver) such that device tree entry for the vdma_hdmi only matches xilinx_dma driver and it doesnu2019t match xvdma driver. But it still crashes at the above point.
Alternatively is it possible to get user space access to the hardware to run my bare metal application earlier? I guess the memory mapped register IO access should be alright, but DMA access might be an issue?
Thanks in advance.
Cheers
Shakith