17 comments

[ 3.0 ms ] story [ 48.1 ms ] thread
They just seem to be piling patch on 5.15 from Oct 2021... you want to have a bad time? Because that's how you have a bad time.
at this point just roll with generic release or xanmod lmfao
Seriously, whenever I need to touch anything Xilinx I cry. PetaLinux is the most useless abstraction over Yocto ever. It does one thing well: build an image exactly as Xilinx specified. As soon as you need to change the tiniest thing the whole system implodes. And as is tradition in this sector their whole support scheme is: "sorry, didn't do it EXACTLY like we did, so no support."

If you want to make your Embedded Linux guy happy, stay far far away from anything Xilinx.

* If you want to make your Embedded Linux guy happy, stay far far away from anything Xilinx.*

Do you mind elaborating? I just selected Zynq Ultrascale+ ZU5EG for a new project. We did run some tests on the EVK and it seems stable.

It's not that it is unstable as much as it is needlessly painful to work with.
the root cause might be yocto which itself is very complex? xilinx just added its own layer on top when the board was made, and it stays un-updated for a few years, you got something initially working, and you need update it yourself after running its demos.

i use petalinux, not great not terribly bad either, I would say it's average.

I wouldn't be surprised if this were the case. IME you're better off either going from scratch, using gentoo, or using a different distro rootfs if they have appropriate binaries and just maintaining a custom kernel.
Sorry, I exaggerated slightly. I think the hardware itself is mostly okay. It's just that my part of the work is providing a working OS on top of it, which is an absolute nightmare with Petalinux.

I mean it's alright. It'll spit out an image that is going to work and you won't have to understand anything about Bitbake/Yocto and so on. But that's exactly the problem: Petalinux cripples Yocto so bad with their "let's make this as easy as possibly"-philosophy, that it makes you go nuts if you want anything slightly custom. We have plenty of different layers for distros, various platforms and applications. Fitting Petalinux into these is a pain.

If you are going to build your OS for exactly one product that runs on a Xilinx device, go for it. If you wanna reuse something across multiple devices, I'd stay away.

Ah thanks for the explanation. Yeah we build our own OS for that specific device.

We don’t use Xilinx’s PetaLinux because it’s too limiting for the SW we want to run on top of it.

Xilinx is about to be folded into AMD. Along with Solarflare.

We might hope AMD fires the Xilinx programmers responsible for customer facing repositories.

Are there any FPGA vendors whose software isn't a garbage fire?
I would like to know too. I gather some of the smaller FPGAs have been reverse-engineered to the point that free-software tooling can be used instead.

They have taken to encrypting their configuration bitmaps on the bigger ones to stymie any further reverse-engineering.

I actually like Xilinx's ultrascale SoCs and the petalinux platform. It's not perfect but it works pretty well and is very customizable.
I've used this kernel on some products and would recommend staying away when possible because you're kind of stuck in a corner wrt to feature and security updates.

Most of Xilinx's SoCs are very close to working on mainline kernels out of the box. You'll need to build/patch some advanced FPGA features, but with nothing more then a kernel config you'll have a functioning Linux system.

IMHO, putting in the work to use a mainline kernel (and Yocto in place of petalinux) is well worth it in the long run for real products.

Xilinx is to be commended for their efforts to mainline many features.

Petalinux and linux-xlnx are ultimately early dev and platform demonstration tools. They provide many features, but are lacking polish and stability needed for real products.

Is there much hope of AMD improving this situation?