• Content count

  • Joined

  • Last visited

  • Days Won


sbobrowicz last won the day on July 10

sbobrowicz had the most liked content!


About sbobrowicz

  • Rank
    Prolific Poster

Contact Methods

  • Website URL

Profile Information

  • Gender
  • Location
    Seattle, WA

Recent Profile Visitors

4723 profile views
  1. sbobrowicz

    Yocto Zedboard

    What yocto project and/or guide are you using? Hopefully this will give me more info, because I will need to know a lot more, including what version of yocto support and vivado you are using from Xilinx, and also how your VGA port is connected in your Vivado block diagram (VDMA?).
  2. sbobrowicz

    Zybo yocto boots up not at 115200

    @TAC Ahhhhh, I understand a bit more now... you are not using the PL (FPGA) in the Zynq, only the processors. I peaked at the meta-zybo layer hosted on github. I think you will need to do at least two things to make it work on any level: 1) Open and change the following: ps-clk-frequency = <50000000>; to: ps-clk-frequency = <33333333>; and also: ps7_ddr_0: memory@0 { device_type = "memory"; reg = <0x0 0x20000000>; } ; to: ps7_ddr_0: memory@0 { device_type = "memory"; reg = <0x0 0x40000000>; } ; 2) Replace ps7_init.c and ps7_init.h with those found here: I'm still not going to guarantee that this will work, but it might. If you can manage to get a terminal, ethernet and USB might not be working because I think some things may need to change in the device tree for those devices too. For an example of what the ethernet and USB modifications in the device tree dtsi should look like, you can refer here: . Only look at the ethernet and USB stuff, most of the other modifications are for devices that are expected to be in the FPGA. ... Also you could just follow this Digilent provided guide and use petalinux
  3. sbobrowicz

    Zybo yocto boots up not at 115200

    Any chance you are using the Zybo Z7-10, not the original ZYBO? The input oscillator on that board changed from 50MHz to 33.333MHz, which means if you try to run software made for the original ZYBO on it, I would expect things to run at about 66.66% of the expected speed, which explains your observation. I'd also expect a lot of other things to not function correctly, which would make me somewhat surprised you got as far as you did.
  4. @MauroChimenti Unfortunately we don't have Linux examples for the Pmod IP cores. In general, for devices that have good Linux support you should modify system-user.dtsi in your petalinux project to load the required drivers. Often times you will need to add the device as a child node of an existing I2C or SPI bus. To find out if the external device you are trying to use has drivers in the kernel, look for a document that corresponds to it here: . If you find one, then it will describe what your device tree will need to look like in order for the driver to get loaded. For devices that don't seem to have good linux support, I would look around for petalinux examples that describe how to use /dev/mem or UIO to gain access to the register maps of devices in the PL. From there it will be a matter of porting any existing SDK examples to use the mmaped files to access the registers.
  5. sbobrowicz

    PCAM 5C Petalinux support Zybo Z7-20

    @mmongu @nicmoseli Sorry for the delay, hit a couple unexpected speed bumps. Anyways, Pcam 5C support has now been integrated into the Petalinux project: I'm on to reVISION support now.
  6. sbobrowicz

    Basic PL -> PS data stream transfer on Zynq 7000

    I'd bet this is a caching issue. You should try calling some functions to flush the cache after the DMA transfer completes. You could also try using the ACP port (instead of the HP0) to keep the cache coherent, but I'm not really sure if that requires some additional work in the PL or software. See here for some info on functions that can be used to flush the cache: . Also, you should probably reserve the range of memory you are using for your buffers in your device tree so that the system doesn't try to use it. See here for example:
  7. sbobrowicz

    Zybot + USB WIFI Adapter (RALink 5370)

    @fandrei I'll admit I haven't used a Linaro image in a while, but I used to start by finding an armhf image here that seemed suitable for my needs: . Here is one that is an example of a good, light-weight desktop that is built around Ubuntu 16.04 LTS: . Then I would do the following to get it to work with my Petalinux system: 1) Set the root file system to "SD" using petalinux-config. Follow the instructions here to do this, but stop before you get to the "dd" command: . 2)Download the root fs from Linaro and extract it 3)Copy the contents of the extracted archive to the second partition of your SD card using "sudo rsync -a". The root of second partition should look like a standard Linux root filesystem if done correctly (/lib, /usr, /home, /mnt, /media, ...). 4) Execute "sync" to ensure all data is copied to the SD card, then unmount both partitions and eject it from your computer. In my experience that used to work most of the time, but you need to make sure you are using a kernel that is pretty close to the one that is expected to be packaged with the image. Also, you will need to manually copy over any kernel modules you need from petalinux.
  8. sbobrowicz

    Arty Z7 USB

    @jacobfeder USB wifi drivers tend to require there to be firmware blobs installed into your rootfs at /lib/firmware. The drivers use these blobs to configure the proprietary SoC's in the wifi dongle. In your case, you need "/lib/firmware/rtlwifi/rtl8192cufw_TMSC.bin" and/or "/lib/firmware/rtlwifi/rtl8192cufw.bin" to be present. You can find these files in the linux-firmware package, which can be installed from standard linux distros using apt-get, dnf, yum, etc., and then simply copy them to where they need to be on your rootfs. If you are using petalinux, you could build a simple app that copies the files into the rootfs during the build process, which might be most convenient in the long run. A third option is to find a yocto recipe out there for linux-firmware and just point your project towards it (UG1144 describes how to do this).
  9. sbobrowicz

    Program code on PetaLinux

    Try printing the values of fd and ptr to see if open and mmap are returning successfully. Also, you should see the XADC wizard documentation: . The register space section of that document indicates that 0x40 is not a valid address on the AXI Lite interface. You are likely trying to access the DRP registers, which have been mapped to addresses starting at 0x300. Also, you should probably cast ptr to (volatile uint32_t *) or (volatile unsigned long *) in order to read the entire 32-bit register. See this example for a good way to do this rather than using array notation:
  10. K, so it looks like you have it nailed down to petalinux 2017.4 not working on your system (since the xilinx-zc702 also seems to fail). Also, whatever issue you are running into seems to have been resolved in 2018.1. I don't like punting people to other places, but at this point I'd recommend reaching out on the Xilinx forums and seeing what they have to say. You should also try opening a support ticket with them. The fact that it seems to have been fixed in 2018.1 suggests that someone over there knows what is going on. Be sure to provide error.txt to them. We can keep trying here too... It looks like yocto has generated an invalid git command for the 5 repos that throw errors. The command tries to fetch a remote branch directly onto the current branch, which is not allowed. Perhaps the git repo is in a different state than yocto expects for some reason. Another possibility is that your git configuration is not compatible with the version of yocto present in 2017.4. Can you provide ~/.gitconfig, and any other git configuration files you might have on your system (you might want to strip them of personal info, your call)? Also, what version of git are you using?
  11. sbobrowicz

    Can't get Digilent/Petalinux-Zybo-Z7-20 to work

    Any flickering on the LEDs, or does DONE go low? What branch and commit are you checked out at? For comparison, try downloading the BSP from the release tab in github and building using that flow.
  12. sbobrowicz

    Program code on PetaLinux

    @theAsker Please provide more information about what you mean when you say you cannot write to the XADC registers. Are you receiving an error? Also, I'm not certain your addresses in the code above are correct. For one, in the commented out line where you try to enable the core, you write to address 0x02, which doesn't make sense since the registers are 32-bits (they should all be 4-byte aligned: 0x00,0x04,0x08,0x0C...)
  13. sbobrowicz

    Can't get Digilent/Petalinux-Zybo-Z7-20 to work

    @fandrei What do you have connected to the Zybo (USB devices, Monitor, network, etc.)? Also, how are you powering the board? Something like this can occur commonly if attempting to power from USB, so you should power from an external 5V regulator. Does the DONE LED go low when the processor freezes, or does the power LED flicker?
  14. sbobrowicz

    Petalinux-Zybo-Z7-20 project doesn't build

    @fandrei Not that I am aware of, but feel free to start one up here Update: still working on the push, hopefully it will come soon
  15. sbobrowicz

    Arty Z7 USB

    What about USB Flash drives, do those work in Linux? The Wifi dongles require building in some drivers and adding firmware images to the rootfs, so this will help indicate if the problem is with your device tree config. Also, have you tried using this project? That might be an easier starting point for you because the USB host functionality is validated already. I can also help you build in the needed drivers and firmware.