[ptxdist] [PATCH] linux-fiwmare: Version bump. 20240115 -> 20240220

2024-02-20 Thread Christian Melki
Pretty substantial bump. New firmwares galore.
https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/log/?h=20240220

* Add license for Intel Xe Graphics micro Controller (GuC)
* Add license for Montage-TSSE crypto accelerator.
* Add license for Gen10 Mali GPUs (Panthor)

Signed-off-by: Christian Melki 
---
 rules/linux-firmware.make | 7 +--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/rules/linux-firmware.make b/rules/linux-firmware.make
index 180fd6010..69e350d7d 100644
--- a/rules/linux-firmware.make
+++ b/rules/linux-firmware.make
@@ -14,8 +14,8 @@ PACKAGES-$(PTXCONF_LINUX_FIRMWARE) += linux-firmware
 #
 # Paths and names
 #
-LINUX_FIRMWARE_VERSION := 20240115
-LINUX_FIRMWARE_MD5 := c361d22d6eae6325fc163c2589eab427
+LINUX_FIRMWARE_VERSION := 20240220
+LINUX_FIRMWARE_MD5 := cf98535691464e21bb27acff2989cc6f
 LINUX_FIRMWARE := linux-firmware-$(LINUX_FIRMWARE_VERSION)
 LINUX_FIRMWARE_SUFFIX  := tar.gz
 LINUX_FIRMWARE_URL := $(call ptx/mirror, KERNEL, 
kernel/firmware/$(LINUX_FIRMWARE).$(LINUX_FIRMWARE_SUFFIX))
@@ -28,6 +28,7 @@ LINUX_FIRMWARE_LICENSE:= proprietary
 LINUX_FIRMWARE_LICENSE_FILES := \
file://LICENCE.xc4000;md5=0ff51d2dc49fce04814c9155081092f0 \
file://LICENCE.iwlwifi_firmware;md5=2ce6786e0fc11ac6e36b54bb9b799f1b \
+   file://LICENCE.mali_csffw;md5=e064aaec4d21ef856e1b76a6f5dc435f \
file://LICENSE.dib0700;md5=f7411825c8a555a1a3e5eab9ca773431 \
file://LICENCE.linaro;md5=936d91e71cf9cd30e733db4bf11661cc \
file://LICENCE.adsp_sst;md5=615c45b91a5a4a9fe046d6ab9a2df728 \
@@ -38,6 +39,7 @@ LINUX_FIRMWARE_LICENSE_FILES := \
file://LICENSE.amphion_vpu;md5=2bcdc00527b2d0542bd92b52aaec2b60 \
file://LICENSE.ivsc;md5=4f1f696a12c18dd058d3cc51006c640d \
file://LICENCE.cw1200;md5=f0f770864e7a8444a5c5aa9d12a3a7ed \
+   file://LICENSE.montage;md5=12a9f2b351f60fc9374da61c8b2f11ed \
file://LICENCE.moxa;md5=1086614767d8ccf744a923289d3d4261 \
file://LICENCE.NXP;md5=58bb8ba632cd729b9ba6183bc6aed36f \
file://LICENSE.i915;md5=2b0b2e0d20984affd4490ba2cba02570 \
@@ -101,6 +103,7 @@ LINUX_FIRMWARE_LICENSE_FILES := \
file://LICENCE.atheros_firmware;md5=30a14c7823beedac9fa39c64fdd01a13 \
file://LICENCE.ti-connectivity;md5=c5e02be633f1499c109d1652514d85ec \
file://LICENSE.amlogic;md5=80e4e3f27def8bc4b232009c3a587c07 \
+   file://LICENSE.xe;md5=c674d38774242bc0c528214721488118 \
file://LICENCE.r8a779x_usb3;md5=4c1671656153025d7076105a5da7e498 \
file://LICENCE.cypress;md5=48cd9436c763bf873961f9ed7b5c147b \
file://wfx/LICENCE.wf200;md5=4d1beff00d902c05c9c7e95a5d8eb52d \
-- 
2.34.1




[ptxdist] [PATCH] canfestival: port to Python 3

2024-02-20 Thread Roland Hieber
The gnosis library is extracted and moved around by the objdictgen
Makefile. Extract it early and do the same moving-around in the extract
stage so we can patch it in PTXdist.

Not all of the Python code was ported, only enough to make the build
work, which calls objdictgen.py to generate the C code for the examples.
The examples are fairly extensive, so this should work for most
user-supplied XML schema definitions. Of gnosis, only the XML pickle
modules and the introspection module was ported since those are the only
modules used by objdictgen. The test cases were mostly ignored, and some
of them that test Python-specific class internals also don't apply any
more since Python 3 refactored the whole type system. Also no care was
taken to stay compatible with Python 1 (duh!) or Python 2.

Upstream is apparently still dead, judging from the Mercurial repo (last
commit in 2019), the messages in the SourceForge mailing list archive
(last message in 2020, none by the authors), and the issue tracker (last
in 2020, none by the authors). gnosis is a whole different can of worms
which doesn't even have a publicly available repository or contact
information. So no attempt was made to send the changes upstream.

Remove a comment which referenced the old repository URL, which no
longer exists.

Signed-off-by: Roland Hieber 
---
 .../0007-gnosis-port-to-python3.patch | 1912 +
 .../0008-port-to-python3.patch|  945 
 patches/canfestival-3+hg20180126.794/series   |4 +-
 rules/canfestival.in  |4 +-
 rules/canfestival.make|   19 +-
 5 files changed, 2880 insertions(+), 4 deletions(-)
 create mode 100644 
patches/canfestival-3+hg20180126.794/0007-gnosis-port-to-python3.patch
 create mode 100644 
patches/canfestival-3+hg20180126.794/0008-port-to-python3.patch

diff --git 
a/patches/canfestival-3+hg20180126.794/0007-gnosis-port-to-python3.patch 
b/patches/canfestival-3+hg20180126.794/0007-gnosis-port-to-python3.patch
new file mode 100644
index ..bc62c6b9a4e0
--- /dev/null
+++ b/patches/canfestival-3+hg20180126.794/0007-gnosis-port-to-python3.patch
@@ -0,0 +1,1912 @@
+From: Roland Hieber 
+Date: Sun, 11 Feb 2024 22:51:48 +0100
+Subject: [PATCH] gnosis: port to python3
+
+Not all of the code was ported, only enough to make objdictgen calls in
+the Makefile work enough to generate the code in examples/.
+---
+ objdictgen/gnosis/__init__.py  |  7 +-
+ objdictgen/gnosis/doc/xml_matters_39.txt   |  2 +-
+ objdictgen/gnosis/indexer.py   |  2 +-
+ objdictgen/gnosis/magic/dtdgenerator.py|  2 +-
+ objdictgen/gnosis/magic/multimethods.py|  4 +-
+ objdictgen/gnosis/pyconfig.py  | 34 -
+ objdictgen/gnosis/trigramlib.py|  2 +-
+ objdictgen/gnosis/util/XtoY.py | 22 +++---
+ objdictgen/gnosis/util/introspect.py   | 30 
+ objdictgen/gnosis/util/test/__init__.py|  0
+ objdictgen/gnosis/util/test/funcs.py   |  2 +-
+ objdictgen/gnosis/util/test/test_data2attr.py  | 16 ++---
+ objdictgen/gnosis/util/test/test_introspect.py | 39 +-
+ objdictgen/gnosis/util/test/test_noinit.py | 43 ++--
+ .../gnosis/util/test/test_variants_noinit.py   | 53 +-
+ objdictgen/gnosis/util/xml2sql.py  |  2 +-
+ objdictgen/gnosis/xml/indexer.py   | 14 ++--
+ objdictgen/gnosis/xml/objectify/_objectify.py  | 14 ++--
+ objdictgen/gnosis/xml/objectify/utils.py   |  4 +-
+ objdictgen/gnosis/xml/pickle/__init__.py   |  4 +-
+ objdictgen/gnosis/xml/pickle/_pickle.py| 82 ++
+ objdictgen/gnosis/xml/pickle/doc/HOWTO.extensions  |  6 +-
+ objdictgen/gnosis/xml/pickle/exception.py  |  2 +
+ objdictgen/gnosis/xml/pickle/ext/__init__.py   |  2 +-
+ objdictgen/gnosis/xml/pickle/ext/_mutate.py| 17 +++--
+ objdictgen/gnosis/xml/pickle/ext/_mutators.py  | 14 ++--
+ objdictgen/gnosis/xml/pickle/parsers/_dom.py   | 34 -
+ objdictgen/gnosis/xml/pickle/parsers/_sax.py   | 41 ++-
+ objdictgen/gnosis/xml/pickle/test/test_all.py  |  6 +-
+ .../gnosis/xml/pickle/test/test_badstring.py   |  2 +-
+ objdictgen/gnosis/xml/pickle/test/test_bltin.py|  2 +-
+ objdictgen/gnosis/xml/pickle/test/test_mutators.py | 18 ++---
+ objdictgen/gnosis/xml/pickle/test/test_unicode.py  | 31 
+ objdictgen/gnosis/xml/pickle/util/__init__.py  |  4 +-
+ objdictgen/gnosis/xml/pickle/util/_flags.py| 11 ++-
+ objdictgen/gnosis/xml/pickle/util/_util.py | 20 +++---
+ objdictgen/gnosis/xml/relax/lex.py | 12 ++--
+ objdictgen/gnosis/xml/relax/rnctree.py |  2 +-
+ objdictgen/gnosis/xml/xmlmap.py| 32 -
+ 39 files changed, 322 insertions(+), 312 deletions(-)
+ 

[ptxdist] [PATCH] image-rauc: improve error detection for hook script

2024-02-20 Thread Roland Hieber
If config/images/rauc-hooks.sh is not found, genimage will instead try
to copy a file with an empty file name from the temporary build folder,
resulting in the less helpful error message about "cp: -r not specified;
omitting directory". Catch this case early and error out with a better
message.

Signed-off-by: Roland Hieber 
---
 rules/image-rauc.make | 4 
 1 file changed, 4 insertions(+)

diff --git a/rules/image-rauc.make b/rules/image-rauc.make
index def2ade1e237..a05c19f61de2 100644
--- a/rules/image-rauc.make
+++ b/rules/image-rauc.make
@@ -41,6 +41,10 @@ IMAGE_RAUC_BUNDLE_FORMAT := "crypt"
 endif
 
 ifdef PTXCONF_IMAGE_RAUC_HOOK
+ifndef IMAGE_RAUC_HOOK_FILE
+$(error IMAGE_RAUC_HOOK is enabled, but config/images/rauc-hooks.sh was not \
+   found in any component of PTXDIST_PATH)
+endif
 IMAGE_RAUC_ENV_HOOK = \
RAUC_HOOK_FILE="file hooks.sh { image = \\"$(IMAGE_RAUC_HOOK_FILE)\\" 
}" \
RAUC_HOOK_MANIFEST="filename=hooks.sh"
-- 
2.39.2




[ptxdist] [PATCH] rauc: version bump 1.10.1 -> 1.11.1

2024-02-20 Thread Roland Hieber
Until recently, RAUC's license was only given implicitly in the
meson.build file, but v1.11 explicitly mentions LGPL-2.1-or-later in the
README [1]. The license identifier in PTXdist was previously ported from
"LGPL-2.1" to "LGPL-2.1-only" in PTXdist commit 4850f7aac30aebf4ef64
(2018-02-12, Michael Olbrich: "update all spdx license identifier to the
new version") without adding any license file checksum as source, which
turned out to be slightly incorrect. Fix the identifier based on the
newly added patch, and pin down the checksum.

Other than that, upstream dropped autotools support, so there is no need
to have an '-meson' in the archive name; drop that.

[1]: https://github.com/rauc/rauc/commit/b20002582f6c754a9161

Signed-off-by: Roland Hieber 
---
 rules/rauc.make | 11 +++
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/rules/rauc.make b/rules/rauc.make
index 660b5e52684f..50b1ec35d57c 100644
--- a/rules/rauc.make
+++ b/rules/rauc.make
@@ -14,15 +14,16 @@ PACKAGES-$(PTXCONF_RAUC) += rauc
 #
 # Paths and names
 #
-RAUC_VERSION   := 1.10.1
-RAUC_MD5   := 610621cc062d2fba41754335c7faee35
+RAUC_VERSION   := 1.11.1
+RAUC_MD5   := 16e193e5e396a419a7ceee5777e7c077
 RAUC   := rauc-$(RAUC_VERSION)
 RAUC_SUFFIX:= tar.xz
 RAUC_URL   := 
https://github.com/rauc/rauc/releases/download/v$(RAUC_VERSION)/$(RAUC).$(RAUC_SUFFIX)
-RAUC_SOURCE:= $(SRCDIR)/$(RAUC)-meson.$(RAUC_SUFFIX)
+RAUC_SOURCE:= $(SRCDIR)/$(RAUC).$(RAUC_SUFFIX)
 RAUC_DIR   := $(BUILDDIR)/$(RAUC)
-RAUC_LICENSE   := LGPL-2.1-only
+RAUC_LICENSE   := LGPL-2.1-or-later
 RAUC_LICENSE_FILES := \
+   
file://README.rst;startline=281;endline=294;md5=d98e15259a1a004b59d4701b3d49cf44
 \
file://COPYING;md5=4fbd65380cdd255951079008b364516c
 
 # 
@@ -39,7 +40,9 @@ RAUC_CONF_OPT := \
-Ddbusinterfacesdir=/usr/share/dbus-1/interfaces \
-Ddbuspolicydir=/usr/share/dbus-1/system.d \
-Ddbussystemservicedir=/usr/share/dbus-1/system-services \
+   -Dfuzzing=false \
-Dgpt=$(call ptx/endis,PTXCONF_RAUC_GPT)d \
+   -Dhtmldocs=false \
-Djson=$(call ptx/endis,PTXCONF_RAUC_JSON)d \
-Dnetwork=$(call ptx/truefalse,PTXCONF_RAUC_NETWORK) \
-Dservice=$(call ptx/truefalse,PTXCONF_RAUC_SERVICE) \
-- 
2.39.2




Re: [ptxdist] setting from localsetup differing from setup not honoured

2024-02-20 Thread Alexander Dahl
Hello Michael,

Am Tue, Feb 20, 2024 at 09:55:39AM +0100 schrieb Michael Olbrich:
> Hi,
> 
> On Tue, Feb 20, 2024 at 09:14:58AM +0100, Alexander Dahl wrote:
> > currently tinkering with bootloaders and wondered why at91bootstrap 4
> > _always_ printed '2020-08-01 00:00:00' as build time, although I had set
> > PTXCONF_SETUP_DISABLE_REPRODUCIBLE with `ptxdist localsetup`?
> > 
> > Turns out PTXDIST_BUILD_TIMESTAMP is set correctly if
> > PTXCONF_SETUP_DISABLE_REPRODUCIBLE is set through `ptxdist setup` but
> > not if it is set through `ptxdist localsetup`.  If set through
> > localsetup `ptxdist print PTXCONF_SETUP_DISABLE_REPRODUCIBLE` gives
> > 'undefined' while it gives 'y' when set through 'setup'.
> > 
> > BSP is layered, two layers actually.  ptxdist version is still
> > 2023.05.0, but I could not find any significant changes to that
> > mechanism after that.  I'm afraid I am currently not able to provide a
> > solution for that problem, but I wanted to let you know.
> 
> I cannot reproduce this on master. 

Tried in another BSP now which already has ptxdist-2023.12.0.  Same
result, also with other variables like PTXCONF_SETUP_DEPRECATED_FATAL,
see output from a BSP on top of DistroKit master:

% cat .ptxdistrc.diff
5ff908847d27f19d31c328b51f205bf0
PTXCONF_SETUP_DEPRECATED_FATAL=y
PTXCONF_SETUP_DISABLE_REPRODUCIBLE=y
% p print PTXCONF_SETUP_DISABLE_REPRODUCIBLE
PTXCONF_SETUP_DISABLE_REPRODUCIBLE undefined
% p version
2023.12.0

> Are you running `ptxdist localsetup` and
> `ptxdist print` in the same layer? The localsetup config is only used from
> the toplevel layer, not stacked across all layers. So only
> ${PTXDIST_WORKSPACE}/.ptxdistrc.diff is used.

Yes, running from the top layer only.
Host system is Debian GNU/Linux 12 (bookworm) and my shell is zsh
(no difference from bash though).

Greets
Alex




Re: [ptxdist] setting from localsetup differing from setup not honoured

2024-02-20 Thread Michael Olbrich
Hi,

On Tue, Feb 20, 2024 at 09:14:58AM +0100, Alexander Dahl wrote:
> currently tinkering with bootloaders and wondered why at91bootstrap 4
> _always_ printed '2020-08-01 00:00:00' as build time, although I had set
> PTXCONF_SETUP_DISABLE_REPRODUCIBLE with `ptxdist localsetup`?
> 
> Turns out PTXDIST_BUILD_TIMESTAMP is set correctly if
> PTXCONF_SETUP_DISABLE_REPRODUCIBLE is set through `ptxdist setup` but
> not if it is set through `ptxdist localsetup`.  If set through
> localsetup `ptxdist print PTXCONF_SETUP_DISABLE_REPRODUCIBLE` gives
> 'undefined' while it gives 'y' when set through 'setup'.
> 
> BSP is layered, two layers actually.  ptxdist version is still
> 2023.05.0, but I could not find any significant changes to that
> mechanism after that.  I'm afraid I am currently not able to provide a
> solution for that problem, but I wanted to let you know.

I cannot reproduce this on master. Are you running `ptxdist localsetup` and
`ptxdist print` in the same layer? The localsetup config is only used from
the toplevel layer, not stacked across all layers. So only
${PTXDIST_WORKSPACE}/.ptxdistrc.diff is used.

Regards,
Michael

-- 
Pengutronix e.K.   | |
Steuerwalder Str. 21   | http://www.pengutronix.de/  |
31137 Hildesheim, Germany  | Phone: +49-5121-206917-0|
Amtsgericht Hildesheim, HRA 2686   | Fax:   +49-5121-206917- |



[ptxdist] setting from localsetup differing from setup not honoured

2024-02-20 Thread Alexander Dahl
Hello everyone,

currently tinkering with bootloaders and wondered why at91bootstrap 4
_always_ printed '2020-08-01 00:00:00' as build time, although I had set
PTXCONF_SETUP_DISABLE_REPRODUCIBLE with `ptxdist localsetup`?

Turns out PTXDIST_BUILD_TIMESTAMP is set correctly if
PTXCONF_SETUP_DISABLE_REPRODUCIBLE is set through `ptxdist setup` but
not if it is set through `ptxdist localsetup`.  If set through
localsetup `ptxdist print PTXCONF_SETUP_DISABLE_REPRODUCIBLE` gives
'undefined' while it gives 'y' when set through 'setup'.

BSP is layered, two layers actually.  ptxdist version is still
2023.05.0, but I could not find any significant changes to that
mechanism after that.  I'm afraid I am currently not able to provide a
solution for that problem, but I wanted to let you know.

Greets
Alex