Den fre. 28. jul. 2023 kl. 08.54 skrev Michael Olbrich
<m.olbr...@pengutronix.de>:
>
> On Thu, Jul 27, 2023 at 06:42:43PM +0200, Bruno Thomsen wrote:
> > Den man. 17. jul. 2023 kl. 15.52 skrev Bruno Thomsen 
> > <bruno.thom...@gmail.com>:
> > >
> > > Without this dependency the following runtime error can be observed:
> > >
> > > uhubctl: error while loading shared libraries: libatomic.so.1: cannot
> > > open shared object file: No such file or directory
> >
> > Please drop this patch.
> > I cannot recreate the issue in an ARM v7a project, only in a ARM v5te 
> > project,
> > so it must be a local issue.
>
> It's an architecture issue. libatomic implements primitives that are not
> available in hardware. For ARM v5 it's probably related to atomics.
> So I won't apply this, because it does not effect the 'major'
> architectures. Unfortunately we don't have a way to specify architecture
> specific dependencies.
>

Hi, thanks for the info.

We have solved this architecture (hardware generation) issue in a
component called octopus
with a Kconfig generation choice, ex. 2GEN or 3GEN. The component
contains many small
systemd services that execute Bash scripts, so it already has many
Kconfig selects on various
command line tools. As not all services run on all hardware generations,
ex. Only 3GEN[1][2] has a TPM chip:

select TPM2_TOOLS if RUNTIME && OCTOPUS_3GEN

It's one of these services that require uhubctl so now we do:

select UHUBCTL if RUNTIME
select GCCLIBS_ATOMIC if RUNTIME && OCTOPUS_2GEN

/Bruno

[1] 
https://elixir.bootlin.com/linux/latest/source/arch/arm/boot/dts/imx7d-flex-concentrator.dts
[2] 
https://elixir.bootlin.com/barebox/latest/source/arch/arm/dts/imx7d-flex-concentrator-mfg.dts

Reply via email to