Popular Content

Showing content with the highest reputation on 05/20/20 in all areas

  1. 1 point

    Access to the GPIO with the API

    Hi @Victor, @zygot is right, you need to pick and choose what you need to do and what your options are. Besides this he is also right when he says that there are different ways of implementing control in user space for IPs. I have suggested UIO because this is the way we do it, and as far as I've seen Xilinx has some examples with it as well. You will most probably not find anything more detailed, in one document, which will explain everything you need to know. You need to take in to account that petalinux is a tool which simplifies an embedded linux build process (which has a lot of different components: FSBL, u-boot, bit streams, device-tree, kernel, user space, etc.) but you still need to understand how they interact and what they are in order to configure it. Once you do your research and stuff clears up you will notice that embedded linux is a powerful tool which can, on the long run, simplify many complex designs which have complicated software stacks. As for the "ioctl" control of a device (similar to what you have used with PCI), the driver must be written in a way that the user space API can grant you ioctl access. Either way, there are some user space libraries that can help with GPIO, like libgpiod which can be added in the petalinux rootfs from the menu. Here is a link to the features: https://kernel.googlesource.com/pub/scm/libs/libgpiod/libgpiod/+/v0.2.x/README.md Good luck, -Ciprian
  2. 1 point

    Access to the GPIO with the API

    Well, perhaps not. You're going to have to pick your poison. Anyway you go, you will have to do a fair amount of research. As you've found out using an OS that you didn't build, or understand what was involved with the build just presents more levels of confusion. If you simply have to use Linux, again that's in doubt because you don't know enough to make that decision, then perhaps you should try and understand how to access hardware on the device level. While it's possible to install a version of Linux on an FPGA target learning basic Linux device programming might be easier on a Raspberry Pi or other platform. You don't need Linux to use Ethernet. Admittedly, FPGA vendors aren't too interested in making this easy. There are a few ways of interacting with your Ethernet MAC that don't involve normal drivers or full TCP/IP stacks. You can waste a lot of time and energy looking for a short-cut only to discover, after lots of frustration, that it would have taken less time to just dig in and do your homework. I say this from experience...
  3. 1 point
    Hi @brhaugen, I apologize for the delay; I have moved your question to a more appropriate section of the forum. The specific screw size that is used in the Digital Discovery is an: M2.26 x 0.91 x 10mm. I do not know if there is a recommended torque value to use, though in the interest of not crushing the PCB layers Additionally (and unfortunately) Digilent does not tend to have any MTBF data for our products. Let me know if you have any questions. Thanks, JColvin