I had a chance to take part in GSoC 2017 for with a project for BeagleBoard.org foundation called "BeagleBone PRU DMA", whose purpose was to enable developers targeting BeagleBone/PRU platform usage of DMA transfers performed by the EDMA controller which is a part of BBB's SoC.
The project consists of 3 main parts, which all are developed in one GitHub repository under following link: