10-01-2018 12:22 PM
Does anyone have a good reference on the dependencies between petalinux and vivado?
I am running Vivado 2017.3 and petalinux 2017.3 and I'm about to install Vivado 2018.1 and am wondering if my linux built in petalinux 2017.3 will run on HW designs built in Vivado 2018.3, or if I will have to forward migrate it, which entails another huge petalinux installation.
10-02-2018 04:15 AM - edited 10-02-2018 04:17 AM
It's definitely true that Xilinx is unclear about this in it's documentation : should Vivado / SDK and Petalinux versions always and exactly match?
I once saw this clear reply on this post: "Vivado and Petalinux Builds need to be in sync or you will run into isues"
but, when someone asks for a more detailed explanation, no further comment is given by Xilinx
So indeed, why not be very clear on this, and add a clear statement in the Methodology guides?
Personally I don't take any risk for running into obscure and hard to track bugs, and I make sure these versions always match. Somehow it's logical that they should match. Take for example a Vivado 2018.1 design that uses a DMA IP in (imaginary) version 1.2 The corresponding SDK / Petalinux version will contain drivers and device tree descriptors for this IP, in it's version 1.2
If Vivado 2018.2 would add features to this IP, and make it 1.3, then the bitstream created in 2018.1 would not necessarily be compatible with the firmware driver from SDK 2018.2 ...
But if I'm correct, IP versions are always incremented on new Vivado releases, even if nothing changed (?)
but again ... Xilinx should be clear on this, and answer your question.
10-03-2018 02:17 AM - edited 10-03-2018 02:19 AM
@mckinjo4, I just discovered this in the Petalinux UG1144, this phrase was not present in the older versions that I used so far
looks a clear statement to me :
(dough the manual is 2018.2 version, but talks about Petalinux 2018.1 :-)
10-03-2018 05:12 AM
I hadn't seen that, but even so, that seems like a cop out.
If I use Vivado 2017.3 and 2018.1 to create the same HW design that the only interface between the Processing Segment and Programmable Logic is a simple axi-lite register interface, embedded linux created in on plnx 2017.3 won't run on the HW design from vivado 2018.1 and vice versa?
Despite no apparent changes to either the CPU system upon which linux is running, nor the interfaces to IO? And maybe no changes to the petalinux tools?
I get that there a million configuration items in plnx and an almost infinite number of ways one can create and connect peripherals, but only being version-matched compatible is untenable.
10-03-2018 03:16 PM
You maybe able to get away within the same year, ie 2017.1 -> 2017.4. In 2018.2 petalinux, it has a new kernel and a new way to handle device trees. 2017.4 device tree pin group names have changed in 2018.2. We had to migrate from 2017.4 to 2018.2. I mistakenly used a 2017.4 HDF in 2018.2 petalinux and got very strange errors when I ran it on our board.
10-03-2018 11:48 PM
@kallensf, I would not assume that you can mix versions within the same year, as you say, in 2018.2 the kernel has changed, so that breaks with 2018.1
Indeed, you get errors that are hard to track down, so I have one rule : don't mix the versions.
02-21-2019 09:45 AM
Just as a heads up, I am having difficulties trying to get a build of Petalinux 2018.3 to work with a BSP from Vivado 2018.2.
This is compounded by the problem on the target board (ZCU102) which (in the latest batch of boards) have a different DDR RAM thus forcing the developer to move to Petalinux 2018.3 (2018.2 FSBL does not recognize or initialize the newer RAM type).
It would have been nice if they had rev'd the PCB up to indicate the change... its not obvious.
02-22-2019 05:53 AM
@rwillis that isn't very friendly of Xilinx indeed - however I think it's marked in the latest version of UG1182 :
but indeed, who thinks about checking these manuals all the time ...
I just checked my two ZCU102 boards, they both show rev 1.1 ... I cannot find some 'assembly' number which could indicate a different assembly ... also strange that they dropped ECC ...
02-22-2019 09:44 AM
Just trying to spread the word on this. The board revisions break toolchains older than 2018.3.
"I just checked my two ZCU102 boards, they both show rev 1.1"
If I would have seen a revision change on the new board then I would have looked at the board docs to determine if I needed to update my toolchain. As it was I did not immediately look; from all outward appearances, the board was identical to the previous 2 that I have. It was only when I tried an SDCard with a working image and the board failed to boot that I started to investigate why.