Building tdx-x11 for Verdin i.MX8M Plus

This shouldn’t be difficult.

The closest thing I’ve found one could call documentation for it though is this question:

I simply want to build tdx-x11 for the Verdin i.MX8M Plus on the full sized development carrier.

I dutifully followed the pre-req instructions. Got all the needed packages installed on the Ubuntu 20.04 LTS development VM. I curled down repo, created a directory and did the following:

repo init -u https://git.toradex.com/toradex-manifest.git -b dunfell-5.x.y -m tdxref/default.xml

Here are the questions:

  1. Why does one have to build the wayland package to get x11? Wayland is mostly useless to anyone who needs to use yocto because almost everyone needs a valid X11 distro, that’s how we got to yocto in the first place.
  2. Why doesn’t tdx-x11 build up from the minimal layering on xserver-xorg?
  3. Where are the build instructions to build tdx-x11 for i.MX8M Plus?

This should not be impossible. We should not have to walk backwards from Wayland.

Admittedly I’m not good with yocto. I’ve watched most of the Toradex youtube videos on yocto, but cannot figure this out. One should not have to walk backwards from an incompatible distro.

Greetings @seasoned_geek,

The Verdin i.MX8M Plus was only released recently and thus only has support in our 5.X software which uses Wayland/Weston by default. Furthermore the NXP i.MX8 SoCs do not have support for X11 based graphics. Also the tdx-x11 distro existed only in our 3.0 BSP, again though at the time the Verdin i.MX8M Plus didn’t exist so this combination was never built in our 3.0 BSP.

You are attempting to do a lot of unexplored/unsupported territory, and I doubt this will end up in much success. You can still try this but we won’t be able to adequately support any such unsupported configurations.

Best Regards,
Jeremias

I am attempting to do what everyone else is attempting to do. The Verdin NXP i.MX8 SoCs pages do not spell out in bold or in detail

X11 has been abandoned

That will definitely rule it out from purchase decisions for the vast majority of customers. When working in SAFETY or FDA regulated environments “tried and true will get you through” the approval process. New and shiny will always get you rejected.

That doesn’t appear to be exactly true. Having wasted yet another day with the yocto process, it appears X11 will work and indeed Wayland even has a somewhat feeble X11 listener. There are a handful of spots in the build process where the scripts were modified to hose the building of it. The only way I know of to remove X11 from Linux is to just not build it.

It appears the best way to get the solid stuff to work is to use raw yocto, skipping all of the Toradex build tools.

I will forward this information to your customer so they can update supplier decisions.

I’m not trying to be a jerk. It’s just that every customer across a multitude of market segments is going to be looking to run X11. Debian bullseye has X11 by default.
https://wiki.debian.org/DesktopEnvironment

Granted I left a line out of the center of that quote, but this kind of woke me up in the wee hours of the morning.

Is one to infer that no chip in your current line-up supports X11? Any new chip will be running 5.x which has X11 deliberately compiled out?

Can your new older model chips still run the 3.0 BSP?

This response makes it sound like nothing in your line up is X11 capable anymore. Well, not capable unless someone is going to use raw Yocto project and undo the changes that removed X11.

Roland

The Verdin NXP i.MX8 SoCs pages do not spell out in bold or in detail

In the most recent public “I.MX Linux Reference Manual” from NXP, section 5.3.1. There is the following statement:

X-Windows System (aka X11 or X) is a portable, client-server based, graphics display system. X11 is only supported for i.MX6.

When working in SAFETY or FDA regulated environments “tried and true will get you through” the approval process. New and shiny will always get you rejected.

We have worked with various other customers in the medical industry that have had no significant issues with validating their products using Weston/Wayland based graphics for their UIs.

That doesn’t appear to be exactly true. Having wasted yet another day with the yocto process, it appears X11 will work and indeed Wayland even has a somewhat feeble X11 listener.

Any X11 based graphics if they do run on the i.MX8 will be using CPU rendering at best. Meaning no graphics acceleration and less than ideal performance. Wayland does have a compatibility layer with X11 known as XWayland. Though I can’t guarantee that absolutely everything X11 will work “out of the box” with XWayland.

Is one to infer that no chip in your current line-up supports X11? Any new chip will be running 5.x which has X11 deliberately compiled out?

There are 2 considerations here. One does the chip from NXP support X11, and then which version of our software has X11 out of the box. With our 5.X BSP we provide Weston/Wayland out of the box. Our 3.X BSP was the last release where we provided X11 based graphics out of the box. However, as I said previously the Verdin i.MX8M Plus product did not exist at this time, therefore it’s only been supported on our 5.X BSP.

Best Regards,
Jeremias

They had to be very very far away from the body and from control. If they are doing something like just displaying a DICOM, the FDA cares very little. When you get into actual SAFETY areas where things are required to be much more deterministic, using a compositor becomes an issue. Even in something simple like an infusion pump, you would have to design in lots of hardware fail-safes to get them to allow it.

Any X11 based graphics if they do run on the i.MX8 will be using CPU rendering at best. Meaning no graphics acceleration and less than ideal performance.

With a touchscreen and user interaction, rendering speed isn’t much of a concern. Most buttons have their images pre-loaded and blitted. You aren’t displaying video. At most the devices display stuff like this.

Roughly 90% of those devices don’t even have a GPU.

That is the route we are going to take.

I do wish to personally thank you for all of your assitence Jeremias. You’ve been a big help. We have found a solution for this project.

Best Regards,
Roland

Glad you were able to settle on a solution hope it works with your needs and requirements.