Date   

Re: Shared lib symlinks in target image

Khem Raj
 


Libraries have another symlink which looks something like libfoo.so.1 and 2 etc that is the one which should be used by apps 

On Mon, Oct 4, 2021 at 6:12 AM Lijun Chen <lijchen@...> wrote:

I have an app built in a different environment that has lower versioned libs, such as boost. I was wondering if on the target there are symlinks to those libs, whether the app can be run on a target that has newer libs without resbuild against a matched env. Seems that is not viable.


From: Khem Raj <raj.khem@...>
Sent: Saturday, October 2, 2021 11:23:58 PM
To: Lijun Chen
Cc: yocto@...
Subject: Re: [yocto] Shared lib symlinks in target image
 
On Sat, Oct 2, 2021 at 6:55 PM Lijun Chen <lijchen@...> wrote:
>
> Hi,
>
>
> When I build a yocto image, I added some packages into IMAGE_INSTALL, such as boost, thrift, etc. I notice in the target OS image, the shared libs don't the symlinks. But in the SDK image, the symlinks are there. For example,
>
> lrwxrwxrwx 1 root root       22 Oct  2 16:41 libboost_filesystem-mt.so -> libboost_filesystem.so
> lrwxrwxrwx 1 root root       29 Oct  2 16:41 libboost_filesystem.so -> libboost_filesystem.so.1.75.0
>
> Is there a way to add the symlinks to the target image as well?
>
>
> With the symlinks, I assume we can run an old application even the dependent lib is a newer version?
>

unversioned symlinks should not be used they are there to be used for
linking during build time. Unless you need to do builds on targets you
really do not need them
so explain you usecase. Are you trying to build stuff on device ?

>
> Thanks,
>
> Lijun
>
> ________________________________
> This transmission (including any attachments) may contain confidential information, privileged material (including material protected by the solicitor-client or other applicable privileges), or constitute non-public information. Any use of this information by anyone other than the intended recipient is prohibited. If you have received this transmission in error, please immediately reply to the sender and delete this information from your system. Use, dissemination, distribution, or reproduction of this transmission by unintended recipients is not authorized and may be unlawful.
>
>
>

This transmission (including any attachments) may contain confidential information, privileged material (including material protected by the solicitor-client or other applicable privileges), or constitute non-public information. Any use of this information by anyone other than the intended recipient is prohibited. If you have received this transmission in error, please immediately reply to the sender and delete this information from your system. Use, dissemination, distribution, or reproduction of this transmission by unintended recipients is not authorized and may be unlawful.


Re: Shared lib symlinks in target image

Lijun Chen
 

I have an app built in a different environment that has lower versioned libs, such as boost. I was wondering if on the target there are symlinks to those libs, whether the app can be run on a target that has newer libs without resbuild against a matched env. Seems that is not viable.


From: Khem Raj <raj.khem@...>
Sent: Saturday, October 2, 2021 11:23:58 PM
To: Lijun Chen
Cc: yocto@...
Subject: Re: [yocto] Shared lib symlinks in target image
 
On Sat, Oct 2, 2021 at 6:55 PM Lijun Chen <lijchen@...> wrote:
>
> Hi,
>
>
> When I build a yocto image, I added some packages into IMAGE_INSTALL, such as boost, thrift, etc. I notice in the target OS image, the shared libs don't the symlinks. But in the SDK image, the symlinks are there. For example,
>
> lrwxrwxrwx 1 root root       22 Oct  2 16:41 libboost_filesystem-mt.so -> libboost_filesystem.so
> lrwxrwxrwx 1 root root       29 Oct  2 16:41 libboost_filesystem.so -> libboost_filesystem.so.1.75.0
>
> Is there a way to add the symlinks to the target image as well?
>
>
> With the symlinks, I assume we can run an old application even the dependent lib is a newer version?
>

unversioned symlinks should not be used they are there to be used for
linking during build time. Unless you need to do builds on targets you
really do not need them
so explain you usecase. Are you trying to build stuff on device ?

>
> Thanks,
>
> Lijun
>
> ________________________________
> This transmission (including any attachments) may contain confidential information, privileged material (including material protected by the solicitor-client or other applicable privileges), or constitute non-public information. Any use of this information by anyone other than the intended recipient is prohibited. If you have received this transmission in error, please immediately reply to the sender and delete this information from your system. Use, dissemination, distribution, or reproduction of this transmission by unintended recipients is not authorized and may be unlawful.
>
>
>

This transmission (including any attachments) may contain confidential information, privileged material (including material protected by the solicitor-client or other applicable privileges), or constitute non-public information. Any use of this information by anyone other than the intended recipient is prohibited. If you have received this transmission in error, please immediately reply to the sender and delete this information from your system. Use, dissemination, distribution, or reproduction of this transmission by unintended recipients is not authorized and may be unlawful.


Re: Meta-raspberrypi - how to configure device tree for MCP251x

Chris Tapp
 

Sorry, I meant to add that I have tried adding the following to local.conf:

RPI_EXTRA_CONFIG = ' \n \
    dtparam=spi=on \n \
    dtoverlay=mcp2515-can0,oscillator=16000000,interrupt=25 \n \
    dtoverlay=mcp2515-can1,oscillator=16000000,interrupt=23 \n \
    '

However, this did not make any difference to the interrupts.

Since then, I have manually changed mcp2515-can1-overlay.dts in the kernel build tree (after running bitbake - c do_configure virtual/kernel) and rebuilt the kernel / image. This does result in the interrupt mapping changing, and both CAN channels then operate correctly.

Does anyone know why RPI_EXTRA_CONFIG doesn’t appear to be taking effect?

--

Chris Tapp

----
You can tell you're getting older when your car insurance gets real cheap!

On 1 Oct 2021, at 22:38, Chris Tapp <opensource@...> wrote:

I am having trouble getting the Waveshare 2-CH CAN HAT working with an RPI4. Channel 0 does not come up, channel 1 does, but it will only send one message (eventually reporting "write: No buffer space available”) and not receive anything.

Looking at the mcp2515-can0-overlay.dts and mcp2515-can1-overlay.dts device tree files in /tmp/work-shared/raspberrypi4/kernel-source/arch/arm/boot/dts/overlays/, it looks as if the interrupts are not mapped as required for the board.

      DTS               HAT
CAN0  brcm,pins = <25>  PIN23
CAN1  brcm,pins = <25>  PIN25

This doesn’t look right, and seems consistent with the behaviour I am seeing.

I would also like to check the device chip select signals, but I can't see how (if) they are mapped in the dts files.

How can I override these settings when I build the image?






Re: Shared lib symlinks in target image

Khem Raj
 

On Sat, Oct 2, 2021 at 6:55 PM Lijun Chen <lijchen@...> wrote:

Hi,


When I build a yocto image, I added some packages into IMAGE_INSTALL, such as boost, thrift, etc. I notice in the target OS image, the shared libs don't the symlinks. But in the SDK image, the symlinks are there. For example,

lrwxrwxrwx 1 root root 22 Oct 2 16:41 libboost_filesystem-mt.so -> libboost_filesystem.so
lrwxrwxrwx 1 root root 29 Oct 2 16:41 libboost_filesystem.so -> libboost_filesystem.so.1.75.0

Is there a way to add the symlinks to the target image as well?


With the symlinks, I assume we can run an old application even the dependent lib is a newer version?
unversioned symlinks should not be used they are there to be used for
linking during build time. Unless you need to do builds on targets you
really do not need them
so explain you usecase. Are you trying to build stuff on device ?


Thanks,

Lijun

________________________________
This transmission (including any attachments) may contain confidential information, privileged material (including material protected by the solicitor-client or other applicable privileges), or constitute non-public information. Any use of this information by anyone other than the intended recipient is prohibited. If you have received this transmission in error, please immediately reply to the sender and delete this information from your system. Use, dissemination, distribution, or reproduction of this transmission by unintended recipients is not authorized and may be unlawful.



Shared lib symlinks in target image

Lijun Chen
 

Hi,


When I build a yocto image, I added some packages into IMAGE_INSTALL, such as boost, thrift, etc. I notice in the target OS image, the shared libs don't the symlinks. But in the SDK image, the symlinks are there. For example,

lrwxrwxrwx 1 root root       22 Oct  2 16:41 libboost_filesystem-mt.so -> libboost_filesystem.so
lrwxrwxrwx 1 root root       29 Oct  2 16:41 libboost_filesystem.so -> libboost_filesystem.so.1.75.0

Is there a way to add the symlinks to the target image as well?


With the symlinks, I assume we can run an old application even the dependent lib is a newer version?


Thanks,

Lijun


This transmission (including any attachments) may contain confidential information, privileged material (including material protected by the solicitor-client or other applicable privileges), or constitute non-public information. Any use of this information by anyone other than the intended recipient is prohibited. If you have received this transmission in error, please immediately reply to the sender and delete this information from your system. Use, dissemination, distribution, or reproduction of this transmission by unintended recipients is not authorized and may be unlawful.


Re: gcov support for target in Yocto

Lijun Chen
 

Thank


From: Khem Raj <raj.khem@...>
Sent: Friday, September 24, 2021 12:53:26 AM
To: Lijun Chen
Cc: yocto@...
Subject: Re: [yocto] gcov support for target in Yocto
 
On Thu, Sep 23, 2021 at 9:53 AM Lijun Chen <lijchen@...> wrote:
>
> Hi,
>
>
> Anybody knows how to enable gcov support for the target in Yocto?
>

IMAGE_INSTALL += "gcov gcov-symlinks"

>
> Thanks,
>
> Lijun
>
> ________________________________
> This transmission (including any attachments) may contain confidential information, privileged material (including material protected by the solicitor-client or other applicable privileges), or constitute non-public information. Any use of this information by anyone other than the intended recipient is prohibited. If you have received this transmission in error, please immediately reply to the sender and delete this information from your system. Use, dissemination, distribution, or reproduction of this transmission by unintended recipients is not authorized and may be unlawful.
>
>
>

This transmission (including any attachments) may contain confidential information, privileged material (including material protected by the solicitor-client or other applicable privileges), or constitute non-public information. Any use of this information by anyone other than the intended recipient is prohibited. If you have received this transmission in error, please immediately reply to the sender and delete this information from your system. Use, dissemination, distribution, or reproduction of this transmission by unintended recipients is not authorized and may be unlawful.


[meta-security][PATCH v2] swtpm: update to 0.6.1

Kristian Klausen <kristian@...>
 

swtpm no longer depends on Python[1] so the dependencies have been
removed.

"inherit perlnative" has been added due to (in oe-core):
deda455b3c ("bitbake.conf: drop pod2man from hosttools")

Some leftover dependencies have also been removed, ex: tpm-tools
required in the past by swtpm_setup.sh (<0.4.0)[2].

[1] https://github.com/stefanberger/swtpm/issues/437
[2] https://github.com/stefanberger/swtpm/commit/eee8cb5dfb13f87140dddda3=
8f65bf61aff19508

Signed-off-by: Kristian Klausen <kristian@...>
---
V2:
Squashed chnanges from https://lists.yoctoproject.org/g/yocto/topic/86012=
566
(decided to still use RRECOMMENDS for swtpm-create-tpmca deps)
Fix build error due to missing expect (expect -> expect-native)
Changed socat to socat-native

Building tested with:
bitbake swtpm && bitbake swtpm-native (with and without gnutls)

.../swtpm/swtpm-wrappers-native.bb | 12 ++++------
.../swtpm/{swtpm_0.5.2.bb =3D> swtpm_0.6.1.bb} | 23 ++++++++-----------
2 files changed, 14 insertions(+), 21 deletions(-)
rename meta-tpm/recipes-tpm/swtpm/{swtpm_0.5.2.bb =3D> swtpm_0.6.1.bb} (=
69%)

diff --git a/meta-tpm/recipes-tpm/swtpm/swtpm-wrappers-native.bb b/meta-t=
pm/recipes-tpm/swtpm/swtpm-wrappers-native.bb
index 644f3ac..bb93374 100644
--- a/meta-tpm/recipes-tpm/swtpm/swtpm-wrappers-native.bb
+++ b/meta-tpm/recipes-tpm/swtpm/swtpm-wrappers-native.bb
@@ -1,6 +1,6 @@
SUMMARY =3D "SWTPM - OpenEmbedded wrapper scripts for native swtpm tools=
"
LICENSE =3D "MIT"
-DEPENDS =3D "swtpm-native tpm-tools-native net-tools-native"
+DEPENDS =3D "swtpm-native"
=20
inherit native
=20
@@ -14,23 +14,19 @@ do_create_wrapper () {
for i in `find ${bindir} ${base_bindir} ${sbindir} ${base_sbindir} -=
name 'swtpm*' -perm /+x -type f`; do
exe=3D`basename $i`
case $exe in
- swtpm_setup.sh)
+ swtpm_setup)
cat >${WORKDIR}/swtpm_setup_oe.sh <<EOF
#! /bin/sh
#
-# Wrapper around swtpm_setup.sh which adds parameters required to
+# Wrapper around swtpm_setup which adds parameters required to
# run the setup as non-root directly from the native sysroot.
=20
PATH=3D"${bindir}:${base_bindir}:${sbindir}:${base_sbindir}:\$PATH"
export PATH
=20
-# tcsd only allows to be run as root or tss. Pretend to be root...
-exec env ${FAKEROOTENV} ${FAKEROOTCMD} swtpm_setup.sh --config ${STAGING=
_DIR_NATIVE}/etc/swtpm_setup.conf "\$@"
+exec swtpm_setup --config ${STAGING_DIR_NATIVE}/etc/swtpm_setup.conf "\$=
@"
EOF
;;
- swtpm_setup)
- true
- ;;
*)
cat >${WORKDIR}/${exe}_oe.sh <<EOF
#! /bin/sh
diff --git a/meta-tpm/recipes-tpm/swtpm/swtpm_0.5.2.bb b/meta-tpm/recipes=
-tpm/swtpm/swtpm_0.6.1.bb
similarity index 69%
rename from meta-tpm/recipes-tpm/swtpm/swtpm_0.5.2.bb
rename to meta-tpm/recipes-tpm/swtpm/swtpm_0.6.1.bb
index 912e939..c7fc131 100644
--- a/meta-tpm/recipes-tpm/swtpm/swtpm_0.5.2.bb
+++ b/meta-tpm/recipes-tpm/swtpm/swtpm_0.6.1.bb
@@ -3,14 +3,11 @@ LICENSE =3D "BSD-3-Clause"
LIC_FILES_CHKSUM =3D "file://LICENSE;md5=3Dfe8092c832b71ef20dfe4c6d3decb=
3a8"
SECTION =3D "apps"
=20
-DEPENDS =3D "libtasn1 coreutils-native expect socat glib-2.0 net-tools-n=
ative libtpm libtpm-native"
+# expect-native, socat-native, coreutils-native and net-tools-native are=
reportedly only required for the tests
+DEPENDS =3D "libtasn1 coreutils-native expect-native socat-native glib-2=
.0 net-tools-native libtpm json-glib"
=20
-# configure checks for the tools already during compilation and
-# then swtpm_setup needs them at runtime
-DEPENDS:append =3D " tpm-tools-native expect-native socat-native python3=
-pip-native python3-cryptography-native"
-
-SRCREV =3D "e59c0c1a7b4c8d652dbb280fd6126895a7057464"
-SRC_URI =3D "git://github.com/stefanberger/swtpm.git;branch=3Dstable-0.5=
\
+SRCREV =3D "98187d24fe14851653a7c46eb16e9c5f0b9beaa1"
+SRC_URI =3D "git://github.com/stefanberger/swtpm.git;branch=3Dstable-0.6=
\
file://ioctl_h.patch \
file://oe_configure.patch \
"
@@ -19,7 +16,7 @@ PE =3D "1"
S =3D "${WORKDIR}/git"
=20
PARALLEL_MAKE =3D ""
-inherit autotools pkgconfig python3native
+inherit autotools pkgconfig perlnative
=20
TSS_USER=3D"tss"
TSS_GROUP=3D"tss"
@@ -28,7 +25,10 @@ PACKAGECONFIG ?=3D "openssl"
PACKAGECONFIG +=3D "${@bb.utils.contains('DISTRO_FEATURES', 'selinux', '=
selinux', '', d)}"
PACKAGECONFIG +=3D "${@bb.utils.contains('BBFILE_COLLECTIONS', 'filesyst=
ems-layer', 'cuse', '', d)}"
PACKAGECONFIG[openssl] =3D "--with-openssl, --without-openssl, openssl"
-PACKAGECONFIG[gnutls] =3D "--with-gnutls, --without-gnutls, gnutls"
+# expect, bash, tpm2-pkcs11-tools (tpm2_ptool), tpmtool and certtool is
+# used by swtpm-create-tpmca (the last two is provided by gnutls)
+# gnutls is required by: swtpm-create-tpmca, swtpm-localca and swtpm_cer=
t
+PACKAGECONFIG[gnutls] =3D "--with-gnutls, --without-gnutls, gnutls, gnut=
ls, expect bash tpm2-pkcs11-tools"
PACKAGECONFIG[selinux] =3D "--with-selinux, --without-selinux, libselinu=
x"
PACKAGECONFIG[cuse] =3D "--with-cuse, --without-cuse, fuse"
PACKAGECONFIG[seccomp] =3D "--with-seccomp, --without-seccomp, libseccom=
p"
@@ -41,14 +41,11 @@ USERADD_PARAM:${PN} =3D "--system -g ${TSS_GROUP} --h=
ome-dir \
--no-create-home --shell /bin/false ${BPN}"
=20
=20
-PACKAGES =3D+ "${PN}-python"
-FILES:${PN}-python =3D "${PYTHON_SITEPACKAGES_DIR}"
-
PACKAGE_BEFORE_PN =3D "${PN}-cuse"
FILES:${PN}-cuse =3D "${bindir}/swtpm_cuse"
=20
INSANE_SKIP:${PN} +=3D "dev-so"
=20
-RDEPENDS:${PN} =3D "libtpm expect socat bash tpm-tools python3 python3-c=
ryptography python3-twisted"
+RDEPENDS:${PN} =3D "libtpm"
=20
BBCLASSEXTEND =3D "native nativesdk"
--=20
2.25.1


Re: [meta-tpm][v2][PATCH] swtpm: fix build issues of missing expect

Armin Kuster
 

On 10/1/21 4:06 PM, Kristian Klausen wrote:
Den Fri, Oct 01, 2021 at 15:25:17 -0700 skrev Armin Kuster:
Signed-off-by: Armin Kuster <akuster808@...>

--
V2]
Only need expect-native
Clean up PACKAGECONFGI[gnutils] to conform to spec
---
meta-tpm/recipes-tpm/swtpm/swtpm_0.6.1.bb | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta-tpm/recipes-tpm/swtpm/swtpm_0.6.1.bb b/meta-tpm/recipes-tpm/swtpm/swtpm_0.6.1.bb
index 807c02b..0087367 100644
--- a/meta-tpm/recipes-tpm/swtpm/swtpm_0.6.1.bb
+++ b/meta-tpm/recipes-tpm/swtpm/swtpm_0.6.1.bb
@@ -4,7 +4,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=fe8092c832b71ef20dfe4c6d3decb3a8"
SECTION = "apps"

# coreutils-native and net-tools-native are reportedly only required for the tests
-DEPENDS = "libtasn1 coreutils-native expect socat glib-2.0 net-tools-native libtpm json-glib"
+DEPENDS = "libtasn1 coreutils-native expect-native socat glib-2.0 net-tools-native libtpm json-glib"

SRCREV = "98187d24fe14851653a7c46eb16e9c5f0b9beaa1"
SRC_URI = "git://github.com/stefanberger/swtpm.git;branch=stable-0.6 \
@@ -28,7 +28,7 @@ PACKAGECONFIG[openssl] = "--with-openssl, --without-openssl, openssl"
# expect, bash, tpm2-pkcs11-tools (tpm2_ptool), tpmtool and certtool is
# used by swtpm-create-tpmca (the last two is provided by gnutls)
# gnutls is required by: swtpm-create-tpmca, swtpm-localca and swtpm_cert
-PACKAGECONFIG[gnutls] = "--with-gnutls, --without-gnutls, gnutls, gnutls, expect bash tpm2-pkcs11-tools"
+PACKAGECONFIG[gnutls] = "--with-gnutls, --without-gnutls, gnutls, gnutls expect bash tpm2-pkcs11-tools"
Hi Armin

Support for RRECOMMENDS in the PACKAGECONFIG was added some years
ago[1][2]. Whatever they should be RRECOMMENDS or RDEPENDS I'm not sure
about (I don't think swtpm-create-tpmca is a hard requirement for most
people).

If you like I can squash the changes into my own patch and resend it.
Please do, that sounds great.

-armin

[1] https://git.openembedded.org/openembedded-core/commit/?id=ec96c985ce1c888c3ce3c4d964d7a106c3c88a5c
[2] https://www.yoctoproject.org/docs/latest/ref-manual/ref-manual.html#var-PACKAGECONFIG

Cheers,
Kristian

PACKAGECONFIG[selinux] = "--with-selinux, --without-selinux, libselinux"
PACKAGECONFIG[cuse] = "--with-cuse, --without-cuse, fuse"
PACKAGECONFIG[seccomp] = "--with-seccomp, --without-seccomp, libseccomp"
--
2.25.1



How to include PostgreSQL development stuff in SDK?

tboeckel
 

Hi everybody!

I successfully built an image for an ARM based system running a PostgreSQL server and client by adding the packages "postgresql" and "postgresql-client". However, so far I failed to make the development stuff (libpq-fe.h, pg_config, etc) available in the generated SDK.

Usuallly one uses pg_config to obtain the required include path (pg_config --includedir), the required compiler flags for C and C++ (pg_config --cflags and pg_config --cppflags) as well as the required linker flags (pg_config --libdir and pg_config --ldflags). However, I get the warning during compilation of my own programs:

cc1plus: warning: include location "/usr/include/postgresql" is unsafe for cross-compilation [-Wpoison-system-directories]

Obviously the native pg_config binary of my Ubuntu system is called and hence causes references to the local installation of the libpq-dev package of my Ubuntu system instead of a pg_config binary provided by the SDK. Even worse, the SDK just includes the pg_config binary for the ARM platform, but not for x86_64.

The only way to silence these warnings is to include -Wno-poison-system-directories in my compiler flags. But this is something I really like to avoid. Who knows whether the PostgreSQL development stuff of my local Ubuntu system will always be compatible to the one for the ARM system?

Unfortunately I had no luck including the PostgreSQL development stuff in the SDK. I already tried 'TOOLCHAIN_HOST_TASK_append = " nativesdk-postgresql"', but this ends in an error message like this:

ERROR: Nothing RPROVIDES 'nativesdk-postgresql' (but /opt/PHYTEC_BSPs/yocto_imx7/sources/poky/meta/recipes-core/meta/buildtools-tarball.bb, /opt/PHYTEC_BSPs/yocto_imx7/sources/poky/meta/recipes-core/meta/uninative-tarball.bb RDEPENDS on or otherwise requires it)
NOTE: Runtime target 'nativesdk-postgresql' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['nativesdk-postgresql']
ERROR: Required build target 'fsl-image-qt5' has no buildable providers.
Missing or unbuildable dependency chain was: ['fsl-image-qt5', 'buildtools-tarball', 'nativesdk-postgresql']

Adding 'PACKAGECONFIG_append_pn-nativesdk += " postgresql"' also does not cause the x86_64 binary of pg_config to be included in the SDK. I assume this causes the ARM binary to be included, but this cannot be used on an x86_64 system.

I searched lots of sites for a solution already, but so far I only found hints how to add packages in general, but nothing in respect to this specific issue.

Can anybody please point out what I am doing wrong or what I need to change to solve this issue?

Many thanks in advance!

Mit freundlichem Gruß
best regards

iNOEX GmbH
Thore Böckelmann
Software Design

Mit freundlichen Grüßen / Kind regards 
i. A. Thore Böckelmann

 

iNOEX GmbH | Maschweg 70 | 49324 Melle | Germany | www.inoex.de

Dipl.-Inform. Thore Böckelmann
Software Engineering
thore.boeckelmann@...

FON +49 5422 60507-958 | FAX +49 5422 60507-101

 

Follow us on   

 


iNOEX GmbH
Innovationen und Ausruestungen fuer die Extrusionstechnik

Geschaeftsfuehrer / Managing Director: Martin Deters, Jan Lohoff 
Sitz der Gesellschaft / Headquarter: Maschweg 70, D-49324 Melle
Registergericht / Register: Amtsgericht Osnabrück
Handelsregisternummer / Registration number: HRB 207338

Bitte beachten Sie die Datenschutzinformationen


Re: [meta-tpm][v2][PATCH] swtpm: fix build issues of missing expect

Kristian Klausen <kristian@...>
 

Den Fri, Oct 01, 2021 at 15:25:17 -0700 skrev Armin Kuster:
Signed-off-by: Armin Kuster <akuster808@...>

--
V2]
Only need expect-native
Clean up PACKAGECONFGI[gnutils] to conform to spec
---
meta-tpm/recipes-tpm/swtpm/swtpm_0.6.1.bb | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta-tpm/recipes-tpm/swtpm/swtpm_0.6.1.bb b/meta-tpm/recipes-tpm/swtpm/swtpm_0.6.1.bb
index 807c02b..0087367 100644
--- a/meta-tpm/recipes-tpm/swtpm/swtpm_0.6.1.bb
+++ b/meta-tpm/recipes-tpm/swtpm/swtpm_0.6.1.bb
@@ -4,7 +4,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=fe8092c832b71ef20dfe4c6d3decb3a8"
SECTION = "apps"

# coreutils-native and net-tools-native are reportedly only required for the tests
-DEPENDS = "libtasn1 coreutils-native expect socat glib-2.0 net-tools-native libtpm json-glib"
+DEPENDS = "libtasn1 coreutils-native expect-native socat glib-2.0 net-tools-native libtpm json-glib"

SRCREV = "98187d24fe14851653a7c46eb16e9c5f0b9beaa1"
SRC_URI = "git://github.com/stefanberger/swtpm.git;branch=stable-0.6 \
@@ -28,7 +28,7 @@ PACKAGECONFIG[openssl] = "--with-openssl, --without-openssl, openssl"
# expect, bash, tpm2-pkcs11-tools (tpm2_ptool), tpmtool and certtool is
# used by swtpm-create-tpmca (the last two is provided by gnutls)
# gnutls is required by: swtpm-create-tpmca, swtpm-localca and swtpm_cert
-PACKAGECONFIG[gnutls] = "--with-gnutls, --without-gnutls, gnutls, gnutls, expect bash tpm2-pkcs11-tools"
+PACKAGECONFIG[gnutls] = "--with-gnutls, --without-gnutls, gnutls, gnutls expect bash tpm2-pkcs11-tools"
Hi Armin

Support for RRECOMMENDS in the PACKAGECONFIG was added some years
ago[1][2]. Whatever they should be RRECOMMENDS or RDEPENDS I'm not sure
about (I don't think swtpm-create-tpmca is a hard requirement for most
people).

If you like I can squash the changes into my own patch and resend it.

[1] https://git.openembedded.org/openembedded-core/commit/?id=ec96c985ce1c888c3ce3c4d964d7a106c3c88a5c
[2] https://www.yoctoproject.org/docs/latest/ref-manual/ref-manual.html#var-PACKAGECONFIG

Cheers,
Kristian

PACKAGECONFIG[selinux] = "--with-selinux, --without-selinux, libselinux"
PACKAGECONFIG[cuse] = "--with-cuse, --without-cuse, fuse"
PACKAGECONFIG[seccomp] = "--with-seccomp, --without-seccomp, libseccomp"
--
2.25.1



[meta-tpm][v2][PATCH] swtpm: fix build issues of missing expect

Armin Kuster
 

Signed-off-by: Armin Kuster <akuster808@...>

--
V2]
Only need expect-native
Clean up PACKAGECONFGI[gnutils] to conform to spec
---
meta-tpm/recipes-tpm/swtpm/swtpm_0.6.1.bb | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta-tpm/recipes-tpm/swtpm/swtpm_0.6.1.bb b/meta-tpm/recipes-tpm/swtpm/swtpm_0.6.1.bb
index 807c02b..0087367 100644
--- a/meta-tpm/recipes-tpm/swtpm/swtpm_0.6.1.bb
+++ b/meta-tpm/recipes-tpm/swtpm/swtpm_0.6.1.bb
@@ -4,7 +4,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=fe8092c832b71ef20dfe4c6d3decb3a8"
SECTION = "apps"

# coreutils-native and net-tools-native are reportedly only required for the tests
-DEPENDS = "libtasn1 coreutils-native expect socat glib-2.0 net-tools-native libtpm json-glib"
+DEPENDS = "libtasn1 coreutils-native expect-native socat glib-2.0 net-tools-native libtpm json-glib"

SRCREV = "98187d24fe14851653a7c46eb16e9c5f0b9beaa1"
SRC_URI = "git://github.com/stefanberger/swtpm.git;branch=stable-0.6 \
@@ -28,7 +28,7 @@ PACKAGECONFIG[openssl] = "--with-openssl, --without-openssl, openssl"
# expect, bash, tpm2-pkcs11-tools (tpm2_ptool), tpmtool and certtool is
# used by swtpm-create-tpmca (the last two is provided by gnutls)
# gnutls is required by: swtpm-create-tpmca, swtpm-localca and swtpm_cert
-PACKAGECONFIG[gnutls] = "--with-gnutls, --without-gnutls, gnutls, gnutls, expect bash tpm2-pkcs11-tools"
+PACKAGECONFIG[gnutls] = "--with-gnutls, --without-gnutls, gnutls, gnutls expect bash tpm2-pkcs11-tools"
PACKAGECONFIG[selinux] = "--with-selinux, --without-selinux, libselinux"
PACKAGECONFIG[cuse] = "--with-cuse, --without-cuse, fuse"
PACKAGECONFIG[seccomp] = "--with-seccomp, --without-seccomp, libseccomp"
--
2.25.1


Meta-raspberrypi - how to configure device tree for MCP251x

Chris Tapp
 

I am having trouble getting the Waveshare 2-CH CAN HAT working with an RPI4. Channel 0 does not come up, channel 1 does, but it will only send one message (eventually reporting "write: No buffer space available”) and not receive anything.

Looking at the mcp2515-can0-overlay.dts and mcp2515-can1-overlay.dts device tree files in /tmp/work-shared/raspberrypi4/kernel-source/arch/arm/boot/dts/overlays/, it looks as if the interrupts are not mapped as required for the board.

      DTS               HAT
CAN0  brcm,pins = <25>  PIN23
CAN1  brcm,pins = <25>  PIN25

This doesn’t look right, and seems consistent with the behaviour I am seeing.

I would also like to check the device chip select signals, but I can't see how (if) they are mapped in the dts files.

How can I override these settings when I build the image?

--

Chris Tapp
opensource@...
www.keylevel.com


[meta-rockchip][PATCH] rockchip.wks: use uuid for /boot during fstab-update

Markus Volk
 

Since the recent patch to switch to UUIDs [0aa5e600: "use uuid
instead of hard-coding root device"] wic fstab-update is not able
to get the correct value for the used device anymore and falls to
the default 'sda'. Thus wrong /dev/sda entries are generated in fstab.

For partitions that should be updated automatically this can be avoided
by either generate entries using uuid or label.

Signed-off-by: MarkusVolk <f_l_k@...>
---
wic/rockchip.wks | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/wic/rockchip.wks b/wic/rockchip.wks
index 5ee276b..bd36ab0 100644
--- a/wic/rockchip.wks
+++ b/wic/rockchip.wks
@@ -20,7 +20,7 @@ part reserved1 --offset 4032 --fixed-size 64K
part reserved2 --offset 4096 --fixed-size 4096K
part loader2 --offset 8192 --fixed-size 4096K --source r=
awcopy --sourceparams=3D"=
file=3Du-boot.${UBOOT_SUFFIX}"
part atf --offset 12288 --fixed-size 4096K
-part /boot --offset 16384 --size 114688K --active --source b=
ootimg-partition --fstype=3Dvfat --label boot --sourceparams=3D=
"loader=3Du-boot"
+part /boot --offset 16384 --size 114688K --active --source b=
ootimg-partition --fstype=3Dvfat --label boot --sourceparams=3D=
"loader=3Du-boot" --use-uuid
part / --source r=
ootfs --fstype=3Dext4 --label root --use-uuid
=20
bootloader --ptable gpt --append=3D"console=3Dtty1 console=3D${RK_CONSOL=
E_DEVICE},${RK_CONSOLE_BAUD}n8 rw rootfstype=3Dext4 init=3D/sbin/init"
--=20
2.25.1


Re: Enabling Websockets in Mosquitto in yocto zeus #zeus

Poornesh G
 

Greetings !

I could able to add Mosquitto in Yocto Zeus , but as default websockets is disabled in Mosquitto . Can anyone help me how to enable websockets in Mosquitto in yocto zeus.

Thanks in Advance


How to add Firefox with Yocto build for RPI4.

@prashant2314
 

Dear Team,
I'm using poky-hardknotte for building the image for rpi4, here my need is to add one desktop and a Firefox browser with it,
I built xfce desktop and it's working fine, but when I'm adding Firefox browser with it's getting segmentation fault when executing it from terminal, and from desktop menu it's responding anything may be back end it's getting same segmentation fault,
please give me some hint so that I can conclude my task.

Thanks & Regards.


How to enable and disable device tree node at runtime from linux userspace #dunfell

james@...
 

Hai All,

I wanted to use a GPIO to put the SOM into sleep mode and again use it to wake it up from the sleep. 
I used the below node to configure the SOM to use the GPIO1 18 to wake up from sleep.
 
keys {
compatible = "gpio-keys";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_gpio_userkeys> ;
 
wakeup {
gpios = <&gpio1 18 GPIO_ACTIVE_LOW>;
linux,code = <KEY_WAKEUP>;
gpio-key,wakeup;
};
}

But again to put into sleep I am unable to read the GPIO state from linux userspace as it is used by driver. I am using libgpiod to read the gpio status for which I am getting device or resource busy error

# gpioget gpiochip0 18
gpioget: error reading GPIO values: Device or resource busy

How to disable the device tree node from linux user space so it is possible to read the GPIO staus. And onces the button is pressed enable the device tree node and enter the sleep mode so the driver will take care of waking of the SOM.
Or
Any other way to force read the status of GPIO status 

Regards,
James A


Re: Meta-respberrypi socketcan - how do I bring up the interfaces?

Chris Tapp
 

Hi Stephen,

I managed to miss some of the output to ip -s -d link show can0, which should have shown:

3: can0: <NOARP,ECHO> mtu 16 qdisc noop state DOWN mode DEFAULT group default qlen 10
    link/can  promiscuity 0 minmtu 0 maxmtu 0 
    can state STOPPED restart-ms 0 
  bitrate 1000000 sample-point 0.750 
  tq 125 prop-seg 2 phase-seg1 3 phase-seg2 2 sjw 1
  mcp251x: tseg1 3..16 tseg2 2..8 sjw 1..4 brp 1..64 brp-inc 1
  clock 8000000 
  re-started bus-errors arbit-lost error-warn error-pass bus-off
  0          0          0          0          0          0         numtxqueues 1 numrxqueues 1 gso_max_size 65536 gso_max_segs 65535 
    RX: bytes  packets  errors  dropped missed  mcast   
    0          0        0       0       0       0       
    TX: bytes  packets  errors  dropped carrier collsns 
    0          0        0       0       0       0       

This shows “DOWN” as well as “STOPPED”, and is different because I have found that I can set the bitrate using:

ip link set can0 type can bitrate 1000000

Note that this does not include ‘up’ as that is what was causing the SSH session to stop responding.

However, any attempt to bring it up:

ifconfig can0 up

stops the SSH session again. If I set a second connection up first and run ‘ps’, I can see:

  480 root      2140 D    ifconfig can0 up
  481 root         0 DW   [irq/65-spi0.1]
  482 root         0 IW<  [mcp251x_wq]

So it’s stuck in an uninterruptible sleep (which explains the ssh session behaviour)!

The output of dmesg shows:

[  735.196538] INFO: task irq/65-spi0.1:481 blocked for more than 122 seconds.
[  735.196559]       Tainted: G         C        5.10.31-v7l #1
[  735.196578] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[  735.196598] task:irq/65-spi0.1   state:D stack:    0 pid:  481 ppid:     2 flags:0x00000000
[  735.196634] Backtrace: 
[  735.196671] [<c0ca4808>] (__schedule) from [<c0ca523c>] (schedule+0x6c/0xe0)
[  735.196696]  r10:c2e286b8 r9:00000000 r8:c1952000 r7:00000002 r6:c1953e4c r5:c1952000
[  735.196717]  r4:c2e35d00
[  735.196742] [<c0ca51d0>] (schedule) from [<c0ca56ac>] (schedule_preempt_disabled+0x18/0x1c)
[  735.196763]  r5:c1952000 r4:c2e286b4
[  735.196789] [<c0ca5694>] (schedule_preempt_disabled) from [<c0ca6d9c>] (__mutex_lock.constprop.0+0x2e0/0x58c)
[  735.196816] [<c0ca6abc>] (__mutex_lock.constprop.0) from [<c0ca7164>] (__mutex_lock_slowpath+0x1c/0x20)
[  735.196840]  r10:ffffe000 r9:c2e28000 r8:c30491c0 r7:c2a3f400 r6:c30491e4 r5:c2e285c0
[  735.196861]  r4:c2e286b4
[  735.196885] [<c0ca7148>] (__mutex_lock_slowpath) from [<c0ca71c4>] (mutex_lock+0x5c/0x60)
[  735.196915] [<c0ca7168>] (mutex_lock) from [<bf05ab60>] (mcp251x_can_ist+0x54/0x434 [mcp251x])
[  735.196937]  r5:c2e285c0 r4:c30491c0
[  735.196969] [<bf05ab0c>] (mcp251x_can_ist [mcp251x]) from [<c02975c8>] (irq_thread_fn+0x2c/0x8c)
[  735.196994]  r10:ffffe000 r9:c029759c r8:c30491c0 r7:c270cb00 r6:c30491e4 r5:c270cb00
[  735.197014]  r4:c30491c0
[  735.197041] [<c029759c>] (irq_thread_fn) from [<c02978d4>] (irq_thread+0x1e0/0x2b4)
[  735.197064]  r7:c270cb00 r6:c30491e4 r5:c1952000 r4:00000000
[  735.197091] [<c02976f4>] (irq_thread) from [<c02486dc>] (kthread+0x168/0x16c)
[  735.197116]  r10:c1925c3c r9:c30491c0 r8:c02976f4 r7:c1952000 r6:00000000 r5:c18cfe00
[  735.197136]  r4:c316fd80
[  735.197161] [<c0248574>] (kthread) from [<c020010c>] (ret_from_fork+0x14/0x28)
[  735.197182] Exception stack(0xc1953fb0 to 0xc1953ff8)
[  735.197205] 3fa0:                                     00000000 00000000 00000000 00000000
[  735.197228] 3fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  735.197251] 3fe0: 00000000 00000000 00000000 00000000 00000013 00000000
[  735.197276]  r10:00000000 r9:00000000 r8:00000000 r7:00000000 r6:00000000 r5:c0248574
[  735.197296]  r4:c18cfe00

I think this means the driver is stuck in a wait loop. No idea (yet) on how to work this one out ;-)

--

Chris Tapp

----
You can tell you're getting older when your car insurance gets real cheap!

On 30 Sep 2021, at 13:16, Stephen John Smoogen <smooge@...> wrote:

On Thu, 30 Sept 2021 at 05:21, Chris Tapp <opensource@...> wrote:

I am trying to get a Waveshare CAN interface[1] running on an RPi4 using meta-raspberrypi with hardknott.


I am looking at getting one of these so do not have final answers.
However looking at
http://www.port.de/cgi-bin/CAN/CanFaqErrors
https://stackoverflow.com/questions/64892746/socketcan-device-state-stopped
https://www.can-cia.org/can-knowledge/canopen/network-management/

The STOPPED state indicates that the device is detecting some sort of
error and can not continue. My guess is that the iproute2 command
tried to bring things up and found the bus in a non-workable state or
too many errors. For other buses this could be due to non-termination
(aka is the CAN bus connected to anything?) For some buses they have a
'self-termination' if the leads do not have the voltages/resistance on
the end. Others will fail (like removing the end terminator on a
thinwire ethernet network or not having a good loop on one of the
RS422? networks (memory is fuzzy if this is the one or it was a
different one))

Sorry I can't be of more help.

I have added ENABLE_SPI_BUS = “1” and ENABLE_DUAL_CAN = “1” to my local.conf and see the following at boot:

[    2.858284] CAN device driver interface
[    2.879431] mcp251x spi0.1 can0: MCP2515 successfully initialized.
[    2.891019] mcp251x spi0.0 can1: MCP2515 successfully initialized.
[  176.170231] can: controller area network core
[  176.178987] can: raw protocol

So, the interfaces are detected.

However, I cannot bring the interfaces up. I am expecting to use something like:

 ip link set can0 up type can bitrate 1000000
 ifconfig can0 up

But that results in :

 ip: either "dev" is duplicate, or "type" is garbage

This appears to be due to the ‘ip’ command not working with Busybox, so I tried adding iproute2 to the image, but the command then hangs the system.

I have tried skipping the ‘ip’ command, but ifconfig then reports:

 ifconfig: SIOCSIFFLAGS: Invalid argument

I can get some information for the interface:

 ip -s -d link show can0
   link/can  promiscuity 0 minmtu 0 maxmtu 0
   can state STOPPED restart-ms 0
         mcp251x: tseg1 3..16 tseg2 2..8 sjw 1..4 brp 1..64 brp-inc 1
         clock 8000000
         re-started bus-errors arbit-lost error-warn error-pass bus-off
         0          0          0          0          0          0         numtxqueues 1 numrxqueues 1 gso_max_size 65536 gso_max_segs 65535
   RX: bytes  packets  errors  dropped missed  mcast
   0          0        0       0       0       0
   TX: bytes  packets  errors  dropped carrier collsns
   0          0        0       0       0       0

What do I need to do to bring the interface up?

Chris



[1] https://www.waveshare.com/wiki/2-CH_CAN_HAT

--

Chris Tapp
opensource@...
www.keylevel.com






--
Stephen J Smoogen.
I've seen things you people wouldn't believe. Flame wars in
sci.astro.orion. I have seen SPAM filters overload because of Godwin's
Law. All those moments will be lost in time... like posts on a BBS...
time to shutdown -h now.





Minutes: Yocto Project Weekly Triage Meeting 9/30/2021

Trevor Gamblin
 

Wiki: https://wiki.yoctoproject.org/wiki/Bug_Triage

Attendees: Alex, Diane, Joshua, Michael, Oleksiy, Randy, Richard, Ross, Saul, Stephen, Steve, Tim, Trevor

ARs:

- Trevor to revisit Make parallelization as part of look at bugs 14564 and 14565 (originally encountered errors such as https://errors.yoctoproject.org/Errors/Details/593109/ while attempting to add load average checking to dunfell)

Notes:

- N/A

Medium+ 3.4 Unassigned Enhancements/Bugs: 69 (Last week 68)

Medium+ 3.5 Unassigned Enhancements/Bugs: 10 (No change)

Medium+ 3.99 Unassigned Enhancements/Bugs: 39 (No change)

AB-INT Bugs: 62 (Last week 54)


Re: [meta-security][PATCH] swtpm: update to 0.6.1

Armin Kuster
 

On 9/29/21 1:15 AM, Anton Antonov wrote:

This recipe fails because of the wrong format in
"PACKAGECONFIG[gnutls] = "--with-gnutls, --without-gnutls, gnutls,
gnutls, expect bash tpm2-pkcs11-tools"
good catch. yeah, there should only be 4.

-armin

There should be only four parts in the line separated by commas as
defined here
https://www.yoctoproject.org/docs/2.4.2/ref-manual/ref-manual.html#var-PACKAGECONFIG
<https://www.yoctoproject.org/docs/2.4.2/ref-manual/ref-manual.html#var-PACKAGECONFIG>

 




Re: [meta-security][PATCH 2/2] swtpm: fix build issues of missing expect

Armin Kuster
 

On 9/28/21 11:44 PM, Kristian Klausen wrote:
Den Tue, Sep 28, 2021 at 16:39:09 -0700 skrev Armin Kuster:
Signed-off-by: Armin Kuster <akuster808@...>
---
meta-tpm/recipes-tpm/swtpm/swtpm_0.6.1.bb | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta-tpm/recipes-tpm/swtpm/swtpm_0.6.1.bb b/meta-tpm/recipes-tpm/swtpm/swtpm_0.6.1.bb
index 807c02b..d602ee0 100644
--- a/meta-tpm/recipes-tpm/swtpm/swtpm_0.6.1.bb
+++ b/meta-tpm/recipes-tpm/swtpm/swtpm_0.6.1.bb
@@ -4,7 +4,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=fe8092c832b71ef20dfe4c6d3decb3a8"
SECTION = "apps"

# coreutils-native and net-tools-native are reportedly only required for the tests
-DEPENDS = "libtasn1 coreutils-native expect socat glib-2.0 net-tools-native libtpm json-glib"
+DEPENDS = "libtasn1 coreutils-native expect socat glib-2.0 net-tools-native libtpm json-glib expect expect-native"
expect is there twice now (+ native). Would expect-native be enough or
do we also need expect?
expect-native only fixes the build issue.


SRCREV = "98187d24fe14851653a7c46eb16e9c5f0b9beaa1"
SRC_URI = "git://github.com/stefanberger/swtpm.git;branch=stable-0.6 \
@@ -28,7 +28,7 @@ PACKAGECONFIG[openssl] = "--with-openssl, --without-openssl, openssl"
# expect, bash, tpm2-pkcs11-tools (tpm2_ptool), tpmtool and certtool is
# used by swtpm-create-tpmca (the last two is provided by gnutls)
# gnutls is required by: swtpm-create-tpmca, swtpm-localca and swtpm_cert
-PACKAGECONFIG[gnutls] = "--with-gnutls, --without-gnutls, gnutls, gnutls, expect bash tpm2-pkcs11-tools"
+PACKAGECONFIG[gnutls] = "--with-gnutls, --without-gnutls, gnutls, gnutls, bash tpm2-pkcs11-tools"
expect is needed as a runtime dependency for swtpm-create-tpmca, but I
added it as a recommended dependency as I don't think all people are
interesting in swtpm-create-tpmca working out-of-the-box.
expect should still be here, no?

PACKAGECONFIG[selinux] = "--with-selinux, --without-selinux, libselinux"
PACKAGECONFIG[cuse] = "--with-cuse, --without-cuse, fuse"
PACKAGECONFIG[seccomp] = "--with-seccomp, --without-seccomp, libseccomp"
--
2.25.1