xilinx_axidma | copy Linux driver and a userspace interface library

 by   bperez77 C Version: Current License: MIT

kandi X-RAY | xilinx_axidma Summary

kandi X-RAY | xilinx_axidma Summary

xilinx_axidma is a C library typically used in Embedded System applications. xilinx_axidma has no bugs, it has no vulnerabilities, it has a Permissive License and it has low support. You can download it from GitHub.

A zero-copy, high-bandwidth Linux driver and userspace interface library for Xilinx's AXI DMA and VDMA IP blocks. The purpose of this software stack is to allow userspace Linux applications to interact with hardware on the FPGA fabric. The driver and userspace library act as a generic layer between the procesor and FPGA, and abstracts away the details of setting up DMA transactions. The pupose of AXI DMA and VDMA IP blocks is to serve as bridges for communication between the processing system and the FPGA, through one of the DMA ports on the Zynq processing system. The driver enables userspace application to allocate zero-copy, physically contiguous DMA buffers for transfers, allowing for high bandwidth communication between the FPGA and ARM core. The driver exposes its functionality via a character device, which the library interacts with. This driver supports 4.x version Xilinx kernels. It has been tested with the mainline Xilinx kernel, and the Analog Devices' kernel on the Zedboard. The driver should work with any 4.x kernel and any board that uses a Zynq-7000 series processing system.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              xilinx_axidma has a low active ecosystem.
              It has 370 star(s) with 198 fork(s). There are 38 watchers for this library.
              OutlinedDot
              It had no major release in the last 6 months.
              There are 58 open issues and 80 have been closed. On average issues are closed in 34 days. There are 7 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of xilinx_axidma is current.

            kandi-Quality Quality

              xilinx_axidma has no bugs reported.

            kandi-Security Security

              xilinx_axidma has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.

            kandi-License License

              xilinx_axidma is licensed under the MIT License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              xilinx_axidma releases are not available. You will need to build from source code and install.
              Installation instructions are not available. Examples and code snippets are available.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of xilinx_axidma
            Get all kandi verified functions for this library.

            xilinx_axidma Key Features

            No Key Features are available at this moment for xilinx_axidma.

            xilinx_axidma Examples and Code Snippets

            No Code Snippets are available at this moment for xilinx_axidma.

            Community Discussions

            QUESTION

            How to use axi dma kernel module in custom application in petalinux?
            Asked 2021-Feb-11 at 06:48

            I am trying to build the axidma-benchmark application with the Xilinx-axidma driver (Github repo) provided by bperez77.

            I am using Petalinux 20.2 to build Linux for my custom project. In the new version of the kernel, some functions are changed and I get some errors when running petalinux-build. I changed the driver files as mentioned here and build the kernel module successfully.

            In the following, I create the custom application by running:

            ...

            ANSWER

            Answered 2021-Feb-11 at 06:48

            I have forgotten to add the libaxidma.c files into the file directory. By adding this file application was built successfully.

            Source https://stackoverflow.com/questions/66022207

            QUESTION

            Device tree: How can I change a property of a child's device node
            Asked 2019-Apr-17 at 11:29

            I need to bind a driver to my device tree entry. To accomplish this I need to set the device ID property from dma-channel@00000030 to "1"

            It seems I'm not able to override the properties of these sub nodes. How can I do this?

            The pl.dtsi file, where this snippet came from, cannot be altered as it is auto generated. It would be overwritten in an instant.

            What I did prior to this question

            I tried to override it all, instead of just altering the values I need. But this approach would need a new node name, which works until the dma driver want to bind itself to the node. Then it fails because the virtual file system entry is already there. Hence the first question. How can I overrule just property of a child's node?

            ...

            ANSWER

            Answered 2019-Apr-17 at 11:29

            Kudos for @Ian Abbot for this answer.

            When the next line is added after the main block in your master dts file. ( in this case: system-top.dts ) you can override even child node properties, even if the child nodes are having the same label.

            You'll need to include the source file in which the entry occurs. ( In this case: pl.dtsi )

            Source https://stackoverflow.com/questions/55692139

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install xilinx_axidma

            You can download it from GitHub.

            Support

            At the moment, the driver only supports a single process accessing the AXI DMA/VDMA IP engines. There is a fork of the repository that has support for multiple processes accessing independent DMA engines by @corna. You can find that fork here. Independent DMA engines can be opened by a single process; however, each engine still can only be used by one process at a time. Thus, two processes can not share the TX and RX channels of an engine. In the future, the driver will have proper synchronization for both multiple processes and multiple threads. In the meantime, if you need multi-process support, the fork is a good workaround.
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/bperez77/xilinx_axidma.git

          • CLI

            gh repo clone bperez77/xilinx_axidma

          • sshUrl

            git@github.com:bperez77/xilinx_axidma.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link