Discussion:
[yocto] NVIDIA or AMD accelerated graphics on x86 or x86-64 machine architecture
Matt Ervin
2018-10-26 20:00:48 UTC
Permalink
I’m creating a poky (sumo branch) based OS image for x86_64 PC hardware.
It’s an embedded device that is essentially a desktop PC in a box with
additional features. My device requires accelerated graphics (either
NVIDIA or AMD, not Intel) and I’m having difficulty identifying which
layer and recipe to use for either device. Are there any recipes that
encapsulate the NVIDIA Linux desktop binary drivers for x86? If not then
are there any consultants willing to sell me some time to help me create
one, or to create one for me? I did some google searching and found a
layer from OakLabs, but it doesn’t work (at least not with the sumo
branch). The README file in the recipe also states that it’s likely to
break the build, and it did produce errors for me. I’m not familiar with
AMD on Linux so I don’t know if the xf86-video-ati recipe in the meta-oe
layer provides accelerated desktop drivers or, if it does, which AMD
devices it supports. I’m obviously very new to Yocto so any guidance is
greatly appreciated.

- Matt
Jon Szymaniak
2018-10-27 18:36:37 UTC
Permalink
Post by Matt Ervin
I’m creating a poky (sumo branch) based OS image for x86_64 PC hardware.
It’s an embedded device that is essentially a desktop PC in a box with
additional features. My device requires accelerated graphics (either NVIDIA
or AMD, not Intel) and I’m having difficulty identifying which layer and
recipe to use for either device. Are there any recipes that encapsulate the
NVIDIA Linux desktop binary drivers for x86? If not then are there any
consultants willing to sell me some time to help me create one, or to
create one for me? I did some google searching and found a layer from
OakLabs, but it doesn’t work (at least not with the sumo branch). The
README file in the recipe also states that it’s likely to break the build,
and it did produce errors for me. I’m not familiar with AMD on Linux so I
don’t know if the xf86-video-ati recipe in the meta-oe layer provides
accelerated desktop drivers or, if it does, which AMD devices it supports.
I’m obviously very new to Yocto so any guidance is greatly appreciated.
- Matt
Hi Matt,

Any chance you share a bit more info including:

1) Which OakLabs layer you using, and what exactly the failures messages
are?

2) Which NVIDIA and AMD devices you need to support? Specifically which
drivers do you want installed?


Thanks,
Jon
Matt Ervin
2018-10-27 20:14:21 UTC
Permalink
Hi Jon,

Q: 1) Which OakLabs layer you using, and what exactly the failures
messages are?

A: I’m using the Oak Labs repo located here:
https://github.com/OakLabsInc/meta-nvidia
I have the “pyro” branch checked out, as it’s the only branch in the
repo, and I followed the instructions in the “README” to add the recipe
to my build by modifying my “local.conf” file.  This is the output it
produces:

$ bitbake sockeye-gm
WARNING: Layer nvidia should set LAYERSERIES_COMPAT_nvidia in its
conf/layer.conf file to list the core layer names it is compatible with.
WARNING: Layer nvidia should set LAYERSERIES_COMPAT_nvidia in its
conf/layer.conf file to list the core layer names it is compatible with.
WARNING: Host distribution "ubuntu-18.04" has not been validated with
this version of the build system; you may possibly experience unexpected
failures. It is recommended that you use a tested distribution.
Parsing recipes: 100%
|########################################################################################################################################################|
Time: 0:00:21
Parsing of 1553 .bb files complete (0 cached, 1553 parsed). 2188
targets, 73 skipped, 0 masked, 0 errors.
ERROR: No recipes available for:
/home/peniwize/yocto/poky/meta-nvidia/recipes-graphics/mesa/mesa_17.0.2.bbappend
/home/peniwize/yocto/poky/meta-nvidia/recipes-graphics/xorg-xserver/xserver-xorg_1.19.1.bbappend

Q: 2) Which NVIDIA and AMD devices you need to support? Specifically
which drivers do you want installed?

A: I’m planning to use an NVIDIA 1050 ti, if I can get the NVIDIA
drivers working with Yocto.  The latest driver installer can be
downloaded from:
https://us.download.nvidia.com/XFree86/Linux-x86_64/410.73/NVIDIA-Linux-x86_64-410.73.run,
which I found from https://www.geforce.com/drivers/results/139110, which
I found from https://www.geforce.com/drivers.

I’m not certain about which AMD device I would use.  I’m trying to find
out which devices are supported by Yocto to see if I can find a hardware
provider for any of them.  I currently have one hardware provider that
offers these AMD devices:

AMD Embedded Radeon™ GFX-E9175
AMD Radeon™ RX 560 GFX-AR560F16-5A
AMD Radeon™ Pro WX 5100 GFX-5100 Radeon Pro
AMD Radeon™ HD7750 GPU
AMD Radeon™ E6760 Embedded GPU
AMD Radeon™ E6760 Embedded GPU
AMD Radeon™ E6760 Embedded GPU

A quick google search for drivers led me to:
https://www.amd.com/en/support/graphics/radeon-500-series/radeon-rx-500-series/radeon-rx-560.
It looks like I can download rpm’s or deb’s so perhaps I can extract the
required drivers directly from those packages and use them verbatim. 
I’ve never used a Radeon so I don’t know it it requires kernel modules
or if there is any compilation involved with installing its drivers like
there is with NVIDIA drivers.

Thanks for the help!

- Matt
Post by Matt Ervin
I’m creating a poky (sumo branch) based OS image for x86_64 PC
hardware. It’s an embedded device that is essentially a desktop PC
in a box with additional features. My device requires accelerated
graphics (either NVIDIA or AMD, not Intel) and I’m having
difficulty identifying which layer and recipe to use for either
device. Are there any recipes that encapsulate the NVIDIA Linux
desktop binary drivers for x86? If not then are there any
consultants willing to sell me some time to help me create one, or
to create one for me? I did some google searching and found a
layer from OakLabs, but it doesn’t work (at least not with the
sumo branch). The README file in the recipe also states that it’s
likely to break the build, and it did produce errors for me. I’m
not familiar with AMD on Linux so I don’t know if the
xf86-video-ati recipe in the meta-oe layer provides accelerated
desktop drivers or, if it does, which AMD devices it supports. I’m
obviously very new to Yocto so any guidance is greatly appreciated.
- Matt
Hi Matt,
1) Which OakLabs layer you using, and what exactly the failures
messages are?
2) Which NVIDIA and AMD devices you need to support?  Specifically
which drivers do you want installed?
Thanks,
Jon
Loading...