Posts
-
Patching U-Boot boot script in Petalinux 2021.1
Sep 22, 2021
The U-Boot boot script process was changed in Petalinux 2021.1, and modifying it now requires a recipe to overwrite the original script.
Temperature sensor
Aug 12, 2021
In this post we will look at controlling a temperature sensor IC over I2C from Linux, and pre-setting its critical output setpoint from U-Boot.
Upgrading to Petalinux 2021
Jul 17, 2021
The latest Petalinux 2021.1 from Xilinx comes with a few improvements and changes that can also trip the unsuspecting user.
QSPI boot then loading from MMC
May 12, 2021
The flexibility of U-Boot distro boot feature is exercised in this post, where we configure the target to boot from QSPI flash, then load the rest of the binaries from MMC.
U-Boot handling MAC address
Sep 16, 2020
There’s several ways for U-Boot to store the Ethernet MAC address in non-volatile memory set at production time. In this post, we’ll analyze the different approaches and point to solutions how to implement them.
Using PS SPI to access flash
Sep 10, 2020
The ZynqMP Processing System (PS) counts with two embedded SPI controllers that can be used to access SPI Flash devices. In this post, we configure the PS SPI to talk to an unsupported flash device, adding support by patching the Linux kernel.
U-Boot 2020.1 changes to distro boot
Sep 3, 2020
One of the disrupting changes that Petalinux 2020.1 has brought, includes U-Boot moving to what’s called “distro boot”. In this post, we discuss how to handle them while upgrading from earlier versions.
JTAG boot in QSPI mode
Aug 27, 2020
Booting a ZynqMP target over JTAG is very useful for a development cycle, as the alternative to programming the flash device is time consuming. However, while in previous Xilinx Vivado versions (<=2017.2) programming the QSPI flash was possible over JTAG, in the latest versions of the tool, the programming fails with errors.
Linux Userspace Memory & I/O
Aug 15, 2020
In this post we’ll be looking at how Linux handles accesses to memory devices and I/O from userspace, and comparing the default method used for development (/dev/mem) against the one better prepared for deployment (/dev/uio). We’ll also look at how to reserve memory and make it available for DMA use.
Device tree hacking
Jul 5, 2020
Upgrading to a newer version is always recommended, as it brings bug fixes and improvements to the code. However, sometimes upgrading is not smooth and things break, making the process often frustrating. Such was the case when I upgraded this design running smoothly in 2019.2 to the latest Petalinux 2020.1. The standalone device tree generator tool was used to detect and fix the issue.
Petalinux notes
Apr 18, 2020
Petalinux tools provide a reference Linux distribution tailored for Xilinx embedded processors, such as Microblaze™ and Zynq™ devices. It’s a layer on top of Yocto, OpenEmbedded and BitBake tools, that makes working with these devices more straightforward. The following notes are the result of working with Petalinux on a custom product development. As always, the Xilinx documentation is indispensable to navigate the complex web of options, although it’s not sufficient to understand the whole flow.
Using Xilinx Parameterizable FIFO Macros
Dec 1, 2019
XPM or Xilinx Parameterized Macros are simple modules provided by Xilinx that solve common use cases in an HDL flow, such as RAM or ROM, cross domain crossings and FIFOs.
Installing Lattice Diamond on Fedora 29
May 23, 2019
Lattice Diamond is an IDE to design, compile and simulate several families of Lattice FPGA’s. While they support .rpm based distros such as RedHat and CentOS, the installation on Fedora 29 required a few tweaks.
Using Docker with Petalinux
Oct 1, 2018
How to run Petalinux on a non-supported Linux distro without a VM. Docker is similar to a virtual machine in many respects, but much lighter and faster, and having a reproducible environment to run Petalinux may be of useful when switching versions.
Installing Petalinux 2018.2 on Fedora 28
Sep 9, 2018
Fedora 28 is not a supported platform for Petalinux 2018.2, but with a little effort, it can be installed with a workaround. We will install bash-4.3 from source rpm and use it to install Petalinux.
Adding ethtool to Petalinux
Aug 30, 2018
This post documents the steps required to add ethtool to an existing Petalinux project.
AXI Traffic Generator Tool
Aug 29, 2018
File editor for the Xilinx AXI Traffic Generator IP
Git patch flow
May 31, 2018
Git is a very flexible distributed source control system, so flexible in fact, that can be used in a variety of ways or flows. In this post, I describe a flow that I’ve been doing while working remotely and not having access to the central code repository.
Tweaks to Fedora 28
May 31, 2018
Upgrading to Fedora 28 was quite a smooth experience, on all 3 of my computers, two upgraded from Fedora 27 and one installed from scratch. Here’s a few tweaks I did afterwards to make it better suited for my use case.
Vivado simulator fix on Fedora 28
May 26, 2018
Xilinx Vivado HLx is not currently supported on the latest version of Fedora (28) but since living on the edge entails some suffering, I decided to stick with 28 and plough my way through the challenge. I installed Vivado 2018.1 on Fedora 28, and found some issues during installation, detailed on this post of mine in Xilinx’ forums: Installing Vivado 2018.1 on Fedora 28
Installing MCUxpresso Config Tools on Fedora
Jan 20, 2018
MCUxpresso Config Tools package comes with its installer for Ubuntu (14,16) in .deb.bin format, a self-extracting command-line installer. In order to install it in Fedora (or CentOS or RHEL), we’ll extract it and then copy its files to the filesystem.
Installing MCUxpresso IDE on Fedora
Jan 17, 2018
MCUxpresso IDE comes with its installer for Ubuntu (14,16) in .deb.bin format, a self-extracting command-line installer. In order to install it in Fedora (or CentOS or RHEL), we’ll extract it and then copy its files to the filesystem.
Installing jekyll on Fedora 26
Oct 15, 2017
Installing the static site generator jekyll on Fedora should be a simple matter, but as usual, there’s always a few things that are needed.
VNC over reverse SSH
Feb 6, 2016
Playing with network tunnels is fun, and almost magical. SSH is such a toolbox of neat surprises that keeps on giving the more you learn it.
Subscribe via RSS