On Thu, 16 Jan 2020, at 07:59, Eddie James wrote: > This commits adds a miscdevice to provide a user interface to the XDMA > engine. The interface provides the write operation to start DMA > operations. The DMA parameters are passed as the data to the write call. > The actual data to transfer is NOT passed through write. Note that both > directions of DMA operation are accomplished through the write command; > BMC to host and host to BMC. > > The XDMA driver reserves an area of physical memory for DMA operations, > as the XDMA engine is restricted to accessing certain physical memory > areas on some platforms. This memory forms a pool from which users can > allocate pages for their usage with calls to mmap. The space allocated > by a client will be the space used in the DMA operation. For an > "upstream" (BMC to host) operation, the data in the client's area will > be transferred to the host. For a "downstream" (host to BMC) operation, > the host data will be placed in the client's memory area. > > Poll is also provided in order to determine when the DMA operation is > complete for non-blocking IO. > > Signed-off-by: Eddie James <eajames@xxxxxxxxxxxxx> Reviewed-by: Andrew Jeffery <andrew@xxxxxxxx>