Compare commits

...

16 commits

Author SHA1 Message Date
Luis Guzmán
4138538b04 linux-meta-hwe-6.17: add meta package for linux-hwe-6.17 2026-03-02 15:07:25 -06:00
Ark74
03da90ceaf linux-hwe-6.17: workaround built-in modules on 6.17 2026-03-01 23:57:05 -06:00
Ark74
5bd0493157 linux-hwe-6.17: let deblob tool to clean documentation 2026-03-01 10:08:34 -06:00
Luis Guzmán
cd4156e593 linux-hwe-6.17: add linux-hwe-6.17 to ecne 2026-03-01 00:33:04 -06:00
Ruben Rodriguez
abda6d461c added make-pavucontrol 2026-02-28 14:43:19 -05:00
Ruben Rodriguez
b7df6f7847 ubiquity: run with sudo in kde, improved method 2026-02-28 12:59:37 -05:00
Ruben Rodriguez
4a1c9a64ef ubiquity: run with sudo in kde 2026-02-28 12:23:34 -05:00
Ark74
075bc846ff tuba: backport tuba and dep into backports 2026-02-26 23:43:22 -06:00
Ark74
61b1d8dd14 yt-dlp: remove deprecated patch now fixed upstream 2026-02-22 21:13:53 -06:00
Ark74
97dd7bacf1 synaptic: rearrange version to match current scheme 2026-02-22 02:23:02 -06:00
Ark74
4378a6a51f linux-hwe-6.14: workaround tmp disabled module hibmc-drm ; improve udeb logic 2026-02-20 14:46:36 -06:00
Luis Guzmán
aae253a2b9 linux-hwe-6.14: restore udebs on 6.14 branch 2026-02-19 18:11:31 -06:00
Luis Guzmán
29b3357597 config: add and export deblob var 2026-02-19 04:05:42 -06:00
Luis Guzman
d55fefcc11 ungoogled-chromium: restore ppc64el build 2026-02-16 16:59:06 +00:00
Ark74
b750350681 packagekit: manually add Priority to debian/control 2026-02-10 00:14:05 -06:00
Luis Guzmán
2723868c3d yt-dlp: manually add Priority to debian/control 2026-02-09 00:09:53 -06:00
359 changed files with 19973 additions and 161 deletions

View file

@ -1,67 +0,0 @@
diff --git a/debian/rules b/debian/rules
index a625a4c5..35f2aa25 100755
--- a/debian/rules
+++ b/debian/rules
@@ -176,6 +176,9 @@ debian/control: debian/canonical-revoked-certs.pem $(DEBIAN)/changelog FORCE
-e 's|\(^Maintainer:.*\)|\1\nXSC-Ubuntu-Compatible-Signing: $(UBUNTU_COMPATIBLE_SIGNING)|g' \
-e 's/\(^Build-Depends:$$\)/\1\n$(GCC_BUILD_DEPENDS)/g' \
$@
+ KW_DEFCONFIG_DIR=$(DEBIAN)/d-i KW_CONFIG_DIR=$(DEBIAN)/d-i \
+ LANG=C kernel-wedge gen-control $(DEB_VERSION_UPSTREAM)-$(abinum) | \
+ grep-dctrl -FArchitecture $(arch) >> $@
debian/canonical-certs.pem: $(wildcard debian/certs/*.pem $(DEBIAN)/certs/*.pem)
for cert in $(sort $(notdir $^)); \
diff --git a/debian/rules b/debian/rules_
index a625a4c5..1d9b5834 100755
--- a/debian/rules
+++ b/debian/rules_
@@ -129,10 +129,10 @@ do_any_tools=$(sort $(filter-out false,$(do_linux_tools) $(do_cloud_tools)))
# Debian Build System targets
.PHONY: binary
-binary: binary-indep binary-arch
+binary: debian/control binary-indep binary-arch
.PHONY: build
-build: build-arch build-indep
+build: debian/control build-arch build-indep
.PHONY: clean
clean: debian/control debian/canonical-certs.pem debian/canonical-revoked-certs.pem
@@ -140,6 +140,11 @@ clean: debian/control debian/canonical-certs.pem debian/canonical-revoked-certs.
dh_testroot
dh_clean
+ # d-i stuff
+ rm -rf $(DEBIAN)/d-i-$(arch)
+ # Generated on the fly.
+ rm -f $(DEBIAN)/d-i/firmware/$(arch)/kernel-image
+
# normal build junk
rm -rf $(DEBIAN)/abi
rm -rf $(builddir) $(stampdir)
diff --git a/debian/rules.d/2-binary-arch.mk b/debian/rules.d/2-binary-arch.mk
index 41985338..3943d0da 100644
--- a/debian/rules.d/2-binary-arch.mk
+++ b/debian/rules.d/2-binary-arch.mk
@@ -181,10 +181,14 @@ endif
install -m600 $(build_dir)/System.map \
$(pkgdir)/boot/System.map-$(abi_release)-$*
-ifeq ($(do_dtbs),true)
- $(kmake) O=$(build_dir) $(conc_level) dtbs_install \
- INSTALL_DTBS_PATH=$(pkgdir)/lib/firmware/$(abi_release)-$*/device-tree
-endif
+ if [ "$(filter true,$(do_dtbs))" ]; then \
+ $(kmake) O=$(build_dir) $(conc_level) dtbs_install \
+ INSTALL_DTBS_PATH=$(pkgdir)/lib/firmware/$(abi_release)-$*/device-tree; \
+ ( cd $(pkgdir)/lib/firmware/$(abi_release)-$*/ && find device-tree -print ) | \
+ while read dtb_file; do \
+ echo "$$dtb_file ?" >> $(DEBIAN)/d-i/firmware/$(arch)/kernel-image; \
+ done; \
+ fi
ifeq ($(no_dumpfile),)
makedumpfile -g $(pkgdir)/boot/vmcoreinfo-$(abi_release)-$* \

View file

@ -0,0 +1,34 @@
diff --git a/debian/scripts/control-create b/debian/scripts/control-create
index 887f2863..faacf67f 100644
--- a/debian/scripts/control-create
+++ b/debian/scripts/control-create
@@ -70,23 +70,12 @@ gen_per_flavour () {
-e "s/TARGET/${target}/g"
)
- if [ "${#signed_arch[@]}" != 0 ]; then
- sed "${sed_common_patterns[@]}" \
- -e "s/ARCH/${signed_arch[*]}/g" \
- -e "s/=SIGN-ME-PKG=/-unsigned/g" \
- -e "s/=SIGN-ME-TXT=/ unsigned/g" \
- -e "s/=SIGN-PEER-PKG=//g" \
- "${DEBIAN}/control.d/flavour-signed-control.stub"
- fi
-
- if [ "${#unsigned_arch[@]}" != 0 ]; then
- sed "${sed_common_patterns[@]}" \
- -e "s/ARCH/${unsigned_arch[*]}/g" \
- -e "s/=SIGN-ME-PKG=//g" \
- -e "s/=SIGN-ME-TXT=//g" \
- -e "s/=SIGN-PEER-PKG=/-unsigned/g" \
- "${DEBIAN}/control.d/flavour-signed-control.stub"
- fi
+ sed "${sed_common_patterns[@]}" \
+ -e "s/ARCH/${arch}/g" \
+ -e "s/=SIGN-ME-PKG=//g" \
+ -e "s/=SIGN-ME-TXT=//g" \
+ -e "s/=SIGN-PEER-PKG=//g" \
+ "${DEBIAN}/control.d/flavour-signed-control.stub"
sed "${sed_common_patterns[@]}" \
-e "s/ARCH/${arch}/g" \

View file

@ -6,7 +6,11 @@ ifeq ($(disable_d_i),)
do-binary-udebs
endif
do-binary-udebs: linux_udeb_name=$(shell if echo $(src_pkg_name)|egrep -q '(linux-lts|linux-hwe|linux-[0-9]+\.[0-9]+)'; then echo $(src_pkg_name); else echo linux; fi)
# Hook into Ubuntu's architecture build process without modifying their files
binary-arch: binary-udebs
# Prefer DEB_SOURCE when available; fallback to src_pkg_name; otherwise "linux"
do-binary-udebs: linux_udeb_name=$(if $(DEB_SOURCE),$(DEB_SOURCE),$(if $(src_pkg_name),$(src_pkg_name),linux))
do-binary-udebs: debian/control
@echo Debug: $@
dh_testdir
@ -15,18 +19,50 @@ do-binary-udebs: debian/control
# unpack the kernels into a temporary directory
mkdir -p debian/d-i-${arch}
outdir="$${DPKG_BUILDPACKAGE_OUTPUT_DIR:-..}" && \
imagelist=$$(cat $(CURDIR)/$(DEBIAN)/d-i/kernel-versions | grep ^${arch} | gawk '{print $$3}') && \
for f in $$imagelist; do \
i=$(release)-$(abinum)-$$f; \
for f in \
../linux-image-$$i\_$(release)-$(revision)_${arch}.deb \
../linux-image-unsigned-$$i\_$(release)-$(revision)_${arch}.deb \
../linux-modules-$$i\_$(release)-$(revision)_${arch}.deb \
../linux-modules-extra-$$i\_$(release)-$(revision)_${arch}.deb; \
for flavour in $$imagelist; do \
i=$(DEB_VERSION_UPSTREAM)-$(abinum)-$$flavour; \
found=0; \
for deb in \
"$$outdir"/linux-image-$$i\_*_${arch}.deb \
"$$outdir"/linux-image-unsigned-$$i\_*_${arch}.deb \
"$$outdir"/linux-modules-$$i\_*_${arch}.deb \
"$$outdir"/linux-modules-extra-$$i\_*_${arch}.deb; \
do \
[ -f $$f ] && dpkg -x $$f debian/d-i-${arch}; \
if [ -f "$$deb" ]; then \
found=1; \
dpkg -x "$$deb" debian/d-i-${arch}; \
fi; \
done; \
/sbin/depmod -b debian/d-i-${arch} $$i; \
if [ "$$found" = 0 ]; then \
echo "E: missing .deb for $$i in $$outdir (DPKG_BUILDPACKAGE_OUTPUT_DIR)." >&2; \
ls -1 "$$outdir"/linux-image-$$i\_*_${arch}.deb \
"$$outdir"/linux-image-unsigned-$$i\_*_${arch}.deb \
"$$outdir"/linux-modules-$$i\_*_${arch}.deb \
"$$outdir"/linux-modules-extra-$$i\_*_${arch}.deb 2>/dev/null >&2 || true; \
exit 1; \
fi; \
rm -rf debian/d-i-${arch}/DEBIAN; \
if [ ! -e debian/d-i-${arch}/lib/modules ] && [ -d debian/d-i-${arch}/usr/lib/modules ]; then \
mkdir -p debian/d-i-${arch}/lib; \
ln -s ../usr/lib/modules debian/d-i-${arch}/lib/modules; \
fi; \
if [ ! -d debian/d-i-${arch}/lib/modules/$$i ]; then \
echo "E: missing debian/d-i-${arch}/lib/modules/$$i" >&2; \
exit 1; \
fi; \
/sbin/depmod -b debian/d-i-${arch} -- $$i; \
if [ "$(filter true,$(do_dtbs))" ]; then \
if [ -d debian/d-i-${arch}/lib/firmware/$$i/device-tree ]; then \
echo ">> Trisquel: Extracting dtbs for $$i..."; \
mkdir -p $(CURDIR)/$(DEBIAN)/d-i/firmware/${arch}; \
( cd debian/d-i-${arch}/lib/firmware/$$i/ && find device-tree -print 2>/dev/null || true ) | \
while read dtb_file; do \
echo "$$dtb_file ?" >> $(CURDIR)/$(DEBIAN)/d-i/firmware/${arch}/kernel-image; \
done; \
fi; \
fi; \
done
# kernel-wedge will error if no modules unless this is touched
@ -36,44 +72,49 @@ do-binary-udebs: debian/control
export KW_DEFCONFIG_DIR=$(CURDIR)/$(DEBIAN)/d-i && \
export KW_CONFIG_DIR=$(CURDIR)/$(DEBIAN)/d-i && \
export SOURCEDIR=$(CURDIR)/debian/d-i-${arch} && \
kernel-wedge install-files $(release)-$(abinum) && \
kernel-wedge install-files $(DEB_VERSION_UPSTREAM)-$(abinum) && \
kernel-wedge check
# Build just the udebs
dilist=$$(dh_listpackages -s | grep "\-di$$") && \
[ -z "$dilist" ] || \
# Build just the udebs
dilist=$$(dh_listpackages -a | grep "\-di$$") && \
[ -z "$$dilist" ] || \
for i in $$dilist; do \
dh_fixperms -p$$i; \
$(lockme) dh_gencontrol -p$$i; \
dh_builddeb -p$$i; \
done
# Generate the meta-udeb dependancy lists.
@gawk ' \
/^Package:/ { \
package=$$2; flavour=""; parch="" } \
(/Package-Type: udeb/ && package !~ /^$(linux_udeb_name)-udebs-/) { \
match(package, "'$(release)'-'$(abinum)'-(.*)-di", bits); \
flavour = bits[1]; \
} \
(/^Architecture:/ && $$0 " " ~ / '$(arch)'/) { \
parch=$$0; \
} \
(flavour != "" && parch != "") { \
udebs[flavour] = udebs[flavour] package ", "; \
flavour=""; parch=""; \
} \
END { \
for (flavour in udebs) { \
package="$(linux_udeb_name)-udebs-" flavour; \
file="debian/" package ".substvars"; \
print("udeb:Depends=" udebs[flavour]) > file; \
metas="'$(builddir)'/udeb-meta-packages"; \
print(package) >metas \
} \
} \
mkdir -p $(builddir)
touch $(builddir)/udeb-meta-packages.list
@gawk ' \
/^Package:/ { \
package=$$2; flavour=""; match_arch=0 } \
(/Package-Type: udeb/ && package !~ /^$(linux_udeb_name)-udebs-/) { \
match(package, "$(DEB_VERSION_UPSTREAM)-$(abinum)-(.*)-di", bits); \
flavour = bits[1]; \
} \
/^Architecture:/ { \
match_arch=0; \
for (i=2; i<=NF; i++) if ($$i=="$(arch)") match_arch=1; \
} \
(flavour != "" && match_arch) { \
udebs[flavour] = udebs[flavour] package ", "; \
flavour=""; match_arch=0; \
} \
END { \
for (flavour in udebs) { \
package="$(linux_udeb_name)-udebs-" flavour; \
file="debian/" package ".substvars"; \
print("udeb:Depends=" udebs[flavour]) > file; \
metas="$(builddir)/udeb-meta-packages.list"; \
print(package) >>metas \
} \
} \
' <$(CURDIR)/debian/control
@while read i; do \
$(lockme) dh_gencontrol -p$$i; \
dh_builddeb -p$$i; \
done <$(builddir)/udeb-meta-packages
if [ -n "$$i" ]; then \
$(lockme) dh_gencontrol -p$$i; \
dh_builddeb -p$$i; \
fi; \
done <$(builddir)/udeb-meta-packages.list

View file

@ -3,7 +3,8 @@
ast
tegra-drm
rockchipdrm
hibmc-drm
# Temporarily disabled DRM_HISI_HIBMC, FTBFS on 6.14
hibmc-drm ?
# For panel/backlight on some chromeos devices
panel-simple

View file

@ -1,5 +1,4 @@
crc-ccitt
libcrc32c
crc32_generic
crc32c_generic
crc-itu-t

View file

@ -5,7 +5,6 @@ mii ?
# CRC modules
crc-ccitt ?
crc-itu-t ?
libcrc32c ?
# mac80211 stuff
mac80211 ?

View file

@ -0,0 +1,43 @@
#!/bin/bash
# trisquel-gen-udeb-control.sh
# Generates the udeb stanzas for debian/control using kernel-wedge.
set -e
ARCH=$1
DEBIAN=$2
VERSION=$3
ABINUM=$4
CONTROL_FILE=$5
if [ -z "$ARCH" ] || [ -z "$DEBIAN" ] || [ -z "$VERSION" ] || [ -z "$ABINUM" ] || [ -z "$CONTROL_FILE" ]; then
echo "Usage: $0 <arch> <debian_dir> <upstream_version> <abinum> <control_file>"
exit 1
fi
# Prevent duplicate udeb stanzas if the script is called multiple times
if grep -q '^Package-Type: udeb' "$CONTROL_FILE"; then
echo ">> Trisquel: Udeb packages already present in $CONTROL_FILE. Skipping generation."
exit 0
fi
echo ">> Trisquel: Generating udeb control stanzas for $ARCH..."
# Create an isolated environment for kernel-wedge
KWTMP="debian/build/kw-d-i-$ARCH"
rm -rf "$KWTMP"
mkdir -p "$KWTMP"
# Copy the static d-i configuration for processing
cp -a "$DEBIAN/d-i/." "$KWTMP/"
# Filter kernel-versions to process only the current architecture
grep -E "^$ARCH[[:space:]]" "$KWTMP/kernel-versions" > "$KWTMP/kernel-versions.new"
mv -f "$KWTMP/kernel-versions.new" "$KWTMP/kernel-versions"
# Generate control data and append to the main control file
KW_DEFCONFIG_DIR="$KWTMP" KW_CONFIG_DIR="$KWTMP" LANG=C \
kernel-wedge gen-control "$VERSION-$ABINUM" | \
grep-dctrl -FArchitecture "$ARCH" >> "$CONTROL_FILE"
echo ">> Trisquel: Udeb control generation completed."

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,58 @@
reverts https://lore.kernel.org/all/iwlwifi.20211210110539.1f742f0eb58a.I1315f22f6aa632d94ae2069f85e1bca5e734dce0@changeid/
--- b/drivers/net/wireless/intel/iwlwifi/iwl-drv.c
+++ a/drivers/net/wireless/intel/iwlwifi/iwl-drv.c
@@ -130,9 +130,6 @@
for (i = 0; i < IWL_UCODE_TYPE_MAX; i++)
iwl_free_fw_img(drv, drv->fw.img + i);
-
- /* clear the data for the aborted load case */
- memset(&drv->fw, 0, sizeof(drv->fw));
}
static int iwl_alloc_fw_desc(struct iwl_drv *drv, struct fw_desc *desc,
@@ -1429,7 +1426,6 @@
int i;
bool load_module = false;
bool usniffer_images = false;
- bool failure = true;
fw->ucode_capa.max_probe_length = IWL_DEFAULT_MAX_PROBE_LENGTH;
fw->ucode_capa.standard_phy_calibration_size =
# this is change is related to patch "001" need review.
#@@ -1699,7 +1695,6 @@
# op->name, err);
# #endif
# }
#- failure = false;
# goto free;
#
# try_again:
diff --git a/drivers/net/wireless/intel/iwlwifi/iwl-drv.c b/drivers/net/wireless/intel/iwlwifi/iwl-drv.c
index 81d06847..9d13e812 100644
--- a/drivers/net/wireless/intel/iwlwifi/iwl-drv.c
+++ b/drivers/net/wireless/intel/iwlwifi/iwl-drv.c
@@ -1717,7 +1717,6 @@ static void iwl_req_fw_callback(const struct firmware *ucode_raw, void *context)
complete(&drv->request_firmware_complete);
- failure = false;
goto free;
try_again:
diff --git a/drivers/net/wireless/intel/iwlwifi/iwl-drv.c b/drivers/net/wireless/intel/iwlwifi/iwl-drv.c
index 81d06847..9d13e812 100644
--- a/drivers/net/wireless/intel/iwlwifi/iwl-drv.c
+++ b/drivers/net/wireless/intel/iwlwifi/iwl-drv.c
@@ -1715,9 +1710,6 @@
complete(&drv->request_firmware_complete);
device_release_driver(drv->trans->dev);
free:
- if (failure)
- iwl_dealloc_ucode(drv);
-
if (pieces) {
for (i = 0; i < ARRAY_SIZE(pieces->img); i++)
kfree(pieces->img[i].sec);

View file

@ -0,0 +1,13 @@
reverts https://lore.kernel.org/all/iwlwifi.20211210110539.1f742f0eb58a.I1315f22f6aa632d94ae2069f85e1bca5e734dce0@changeid/
diff -ru source.orig/drivers/net/wireless/intel/iwlwifi/iwl-drv.c source/drivers/net/wireless/intel/iwlwifi/iwl-drv.c
--- source.orig/drivers/net/wireless/intel/iwlwifi/iwl-drv.c 2022-05-13 16:10:11.883295769 -0400
+++ source/drivers/net/wireless/intel/iwlwifi/iwl-drv.c 2022-05-13 20:13:06.568151229 -0400
@@ -1605,7 +1605,6 @@
complete(&drv->request_firmware_complete);
device_release_driver(drv->trans->dev);
/* drv has just been freed by the release */
- failure = false;
free:
if (pieces) {
for (i = 0; i < ARRAY_SIZE(pieces->img); i++)

View file

@ -0,0 +1,228 @@
Based on https://libreplanet.org/wiki/Group:Hardware/research/gpu/radeon
diff -ru a/drivers/gpu/drm/radeon/btc_dpm.c b/drivers/gpu/drm/radeon/btc_dpm.c
--- a/drivers/gpu/drm/radeon/btc_dpm.c 2021-10-31 16:53:10.000000000 -0400
+++ b/drivers/gpu/drm/radeon/btc_dpm.c 2023-02-13 15:50:41.218608376 -0500
@@ -2437,7 +2437,6 @@
ret = rv770_upload_firmware(rdev);
if (ret) {
DRM_ERROR("rv770_upload_firmware failed\n");
- return ret;
}
ret = cypress_get_table_locations(rdev);
if (ret) {
diff -ru a/drivers/gpu/drm/radeon/ci_dpm.c b/drivers/gpu/drm/radeon/ci_dpm.c
--- a/drivers/gpu/drm/radeon/ci_dpm.c 2021-10-31 16:53:10.000000000 -0400
+++ b/drivers/gpu/drm/radeon/ci_dpm.c 2023-02-13 15:53:38.591724496 -0500
@@ -5157,7 +5157,6 @@
ret = ci_upload_firmware(rdev);
if (ret) {
DRM_ERROR("ci_upload_firmware failed\n");
- return ret;
}
ret = ci_process_firmware_header(rdev);
if (ret) {
diff -ru a/drivers/gpu/drm/radeon/cik.c b/drivers/gpu/drm/radeon/cik.c
--- a/drivers/gpu/drm/radeon/cik.c 2023-02-13 15:21:35.174999782 -0500
+++ b/drivers/gpu/drm/radeon/cik.c 2023-02-13 15:47:37.149601121 -0500
@@ -8285,7 +8285,6 @@
r = ci_mc_load_microcode(rdev);
if (r) {
DRM_ERROR("Failed to load MC firmware!\n");
- return r;
}
}
@@ -8591,7 +8590,6 @@
r = cik_init_microcode(rdev);
if (r) {
DRM_ERROR("Failed to load firmware!\n");
- return r;
}
}
} else {
@@ -8601,7 +8599,6 @@
r = cik_init_microcode(rdev);
if (r) {
DRM_ERROR("Failed to load firmware!\n");
- return r;
}
}
}
@@ -8672,8 +8672,6 @@ int cik_init(struct radeon_device *rdev)
*/
if (!rdev->mc_fw && !(rdev->flags & RADEON_IS_IGP)) {
DRM_ERROR("radeon: MC ucode required for NI+.\n");
- r = -EINVAL;
- goto out;
}
return 0;
diff -ru a/drivers/gpu/drm/radeon/cypress_dpm.c b/drivers/gpu/drm/radeon/cypress_dpm.c
--- a/drivers/gpu/drm/radeon/cypress_dpm.c 2021-10-31 16:53:10.000000000 -0400
+++ b/drivers/gpu/drm/radeon/cypress_dpm.c 2023-02-13 15:50:25.130869935 -0500
@@ -1862,7 +1862,6 @@
ret = rv770_upload_firmware(rdev);
if (ret) {
DRM_ERROR("rv770_upload_firmware failed\n");
- return ret;
}
ret = cypress_get_table_locations(rdev);
diff -ru a/drivers/gpu/drm/radeon/evergreen.c b/drivers/gpu/drm/radeon/evergreen.c
--- a/drivers/gpu/drm/radeon/evergreen.c 2021-10-31 16:53:10.000000000 -0400
+++ b/drivers/gpu/drm/radeon/evergreen.c 2023-02-13 15:47:50.457384749 -0500
@@ -5018,7 +5018,6 @@
r = ni_mc_load_microcode(rdev);
if (r) {
DRM_ERROR("Failed to load MC firmware!\n");
- return r;
}
}
@@ -5235,7 +5234,6 @@
r = ni_init_microcode(rdev);
if (r) {
DRM_ERROR("Failed to load firmware!\n");
- return r;
}
}
} else {
@@ -5243,7 +5241,6 @@
r = r600_init_microcode(rdev);
if (r) {
DRM_ERROR("Failed to load firmware!\n");
- return r;
}
}
}
@@ -5289,7 +5286,6 @@
if (ASIC_IS_DCE5(rdev)) {
if (!rdev->mc_fw && !(rdev->flags & RADEON_IS_IGP)) {
DRM_ERROR("radeon: MC ucode required for NI+.\n");
- return -EINVAL;
}
}
diff -ru a/drivers/gpu/drm/radeon/ni.c b/drivers/gpu/drm/radeon/ni.c
--- a/drivers/gpu/drm/radeon/ni.c 2021-10-31 16:53:10.000000000 -0400
+++ b/drivers/gpu/drm/radeon/ni.c 2023-02-13 15:46:45.402442454 -0500
@@ -2163,7 +2163,6 @@
r = ni_mc_load_microcode(rdev);
if (r) {
DRM_ERROR("Failed to load MC firmware!\n");
- return r;
}
}
@@ -2390,7 +2389,6 @@
r = ni_init_microcode(rdev);
if (r) {
DRM_ERROR("Failed to load firmware!\n");
- return r;
}
}
} else {
@@ -2398,7 +2396,6 @@
r = ni_init_microcode(rdev);
if (r) {
DRM_ERROR("Failed to load firmware!\n");
- return r;
}
}
}
@@ -2453,7 +2450,6 @@
*/
if (!rdev->mc_fw && !(rdev->flags & RADEON_IS_IGP)) {
DRM_ERROR("radeon: MC ucode required for NI+.\n");
- return -EINVAL;
}
return 0;
diff -ru a/drivers/gpu/drm/radeon/r100.c b/drivers/gpu/drm/radeon/r100.c
--- a/drivers/gpu/drm/radeon/r100.c 2023-02-13 15:21:35.174999782 -0500
+++ b/drivers/gpu/drm/radeon/r100.c 2023-02-13 15:49:15.548001277 -0500
@@ -1134,7 +1134,6 @@
r = r100_cp_init_microcode(rdev);
if (r) {
DRM_ERROR("Failed to load firmware!\n");
- return r;
}
}
diff -ru a/drivers/gpu/drm/radeon/r600.c b/drivers/gpu/drm/radeon/r600.c
--- a/drivers/gpu/drm/radeon/r600.c 2023-02-13 15:21:35.174999782 -0500
+++ b/drivers/gpu/drm/radeon/r600.c 2023-02-13 15:46:07.291062125 -0500
@@ -3299,7 +3299,6 @@
r = r600_init_microcode(rdev);
if (r) {
DRM_ERROR("Failed to load firmware!\n");
- return r;
}
}
diff -ru a/drivers/gpu/drm/radeon/rv770.c b/drivers/gpu/drm/radeon/rv770.c
--- a/drivers/gpu/drm/radeon/rv770.c 2021-10-31 16:53:10.000000000 -0400
+++ b/drivers/gpu/drm/radeon/rv770.c 2023-02-13 15:26:54.385808292 -0500
@@ -1966,7 +1966,6 @@
r = r600_init_microcode(rdev);
if (r) {
DRM_ERROR("Failed to load firmware!\n");
- return r;
}
}
diff -ru a/drivers/gpu/drm/radeon/rv770_dpm.c b/drivers/gpu/drm/radeon/rv770_dpm.c
--- a/drivers/gpu/drm/radeon/rv770_dpm.c 2021-10-31 16:53:10.000000000 -0400
+++ b/drivers/gpu/drm/radeon/rv770_dpm.c 2023-02-13 15:50:13.591057564 -0500
@@ -1948,12 +1948,10 @@
ret = rv770_upload_firmware(rdev);
if (ret) {
DRM_ERROR("rv770_upload_firmware failed\n");
- return ret;
}
ret = rv770_init_smc_table(rdev, boot_ps);
if (ret) {
DRM_ERROR("rv770_init_smc_table failed\n");
- return ret;
}
rv770_program_response_times(rdev);
diff -ru a/drivers/gpu/drm/radeon/si.c b/drivers/gpu/drm/radeon/si.c
--- a/drivers/gpu/drm/radeon/si.c 2023-02-13 15:21:35.178999717 -0500
+++ b/drivers/gpu/drm/radeon/si.c 2023-02-13 15:47:00.042204445 -0500
@@ -6619,7 +6619,6 @@
r = si_mc_load_microcode(rdev);
if (r) {
DRM_ERROR("Failed to load MC firmware!\n");
- return r;
}
}
@@ -6867,7 +6866,6 @@
r = si_init_microcode(rdev);
if (r) {
DRM_ERROR("Failed to load firmware!\n");
- return r;
}
}
@@ -6926,7 +6924,6 @@
*/
if (!rdev->mc_fw) {
DRM_ERROR("radeon: MC ucode required for NI+.\n");
- return -EINVAL;
}
return 0;
diff -ru a/drivers/gpu/drm/radeon/si_dpm.c b/drivers/gpu/drm/radeon/si_dpm.c
--- a/drivers/gpu/drm/radeon/si_dpm.c 2021-10-31 16:53:10.000000000 -0400
+++ b/drivers/gpu/drm/radeon/si_dpm.c 2023-02-13 15:53:00.844338238 -0500
@@ -6366,7 +6366,6 @@
ret = si_upload_firmware(rdev);
if (ret) {
DRM_ERROR("si_upload_firmware failed\n");
- return ret;
}
ret = si_process_firmware_header(rdev);
if (ret) {

View file

@ -0,0 +1,17 @@
Removal of references to external repositories we can't manage what kind of firmware is pointed to.
The only firmware we can confirm to work with is the one contained on the packge source code.
Update: Linux-libre has debblobed the external URL, we remove the whole thing.
diff --git a/drivers/net/wireless/atmel/at76c50x-usb.c b/drivers/net/wireless/atmel/at76c50x-usb.c
index 447b51cf..898b83af 100644
--- a/drivers/net/wireless/atmel/at76c50x-usb.c
+++ b/drivers/net/wireless/atmel/at76c50x-usb.c
@@ -1619,8 +1619,6 @@ static struct fwentry *at76_load_firmware(struct usb_device *udev,
if (ret < 0) {
dev_err(&udev->dev, "firmware %s not found!\n",
fwe->fwname);
- dev_err(&udev->dev,
- "you may need to download the firmware from http://developer.berlios.de/projects/at76c503a/\n");
goto exit;
}

View file

@ -0,0 +1,7 @@
#!/bin/bash
files=`find -type f`
while read -r line
do
./deblob-check $line
done <<< "$files"

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,21 @@
reverts https://lore.kernel.org/all/iwlwifi.20211210110539.1f742f0eb58a.I1315f22f6aa632d94ae2069f85e1bca5e734dce0@changeid/
--- b/drivers/net/wireless/intel/iwlwifi/iwl-drv.c
+++ a/drivers/net/wireless/intel/iwlwifi/iwl-drv.c
@@ -1597,8 +1597,15 @@
* else from proceeding if the module fails to load
* or hangs loading.
*/
+ if (load_module) {
- if (load_module)
request_module("%s", op->name);
+#ifdef CONFIG_IWLWIFI_OPMODE_MODULAR
+ if (err)
+ IWL_ERR(drv,
+ "failed to load module %s (error %d), is dynamic loading enabled?\n",
+ op->name, err);
+#endif
+ }
failure = false;
goto free;

View file

@ -0,0 +1,20 @@
Debian doesn't use zstd compression for kernel modules by default, and
kernel-wedge does not currently support this compression. It is recommended
to continue using XZ compression to maintain compatibility with udeb
packages in Trisquel, at least while this changes.
diff --git a/debian/rules.d/0-common-vars.mk b/debian/rules.d/0-common-vars.mk
index d832106b..4afdd290 100644
--- a/debian/rules.d/0-common-vars.mk
+++ b/debian/rules.d/0-common-vars.mk
@@ -154,6 +154,10 @@ do_zstd_ko=true
ifeq ($(series),jammy)
do_zstd_ko=
endif
+# Trisquel use udebs, so it disable zstd by default.
+ifeq (yes,$(shell dpkg-vendor --is Trisquel && echo yes))
+do_zstd_ko=
+endif
# Support parallel=<n> in DEB_BUILD_OPTIONS (see #209008)
#

View file

@ -0,0 +1,34 @@
diff --git a/debian/scripts/control-create b/debian/scripts/control-create
index 887f2863..faacf67f 100644
--- a/debian/scripts/control-create
+++ b/debian/scripts/control-create
@@ -70,23 +70,12 @@ gen_per_flavour () {
-e "s/TARGET/${target}/g"
)
- if [ "${#signed_arch[@]}" != 0 ]; then
- sed "${sed_common_patterns[@]}" \
- -e "s/ARCH/${signed_arch[*]}/g" \
- -e "s/=SIGN-ME-PKG=/-unsigned/g" \
- -e "s/=SIGN-ME-TXT=/ unsigned/g" \
- -e "s/=SIGN-PEER-PKG=//g" \
- "${DEBIAN}/control.d/flavour-signed-control.stub"
- fi
-
- if [ "${#unsigned_arch[@]}" != 0 ]; then
- sed "${sed_common_patterns[@]}" \
- -e "s/ARCH/${unsigned_arch[*]}/g" \
- -e "s/=SIGN-ME-PKG=//g" \
- -e "s/=SIGN-ME-TXT=//g" \
- -e "s/=SIGN-PEER-PKG=/-unsigned/g" \
- "${DEBIAN}/control.d/flavour-signed-control.stub"
- fi
+ sed "${sed_common_patterns[@]}" \
+ -e "s/ARCH/${arch}/g" \
+ -e "s/=SIGN-ME-PKG=//g" \
+ -e "s/=SIGN-ME-TXT=//g" \
+ -e "s/=SIGN-PEER-PKG=//g" \
+ "${DEBIAN}/control.d/flavour-signed-control.stub"
sed "${sed_common_patterns[@]}" \
-e "s/ARCH/${arch}/g" \

View file

@ -0,0 +1,120 @@
# Do udebs if not disabled in the arch-specific makefile
binary-udebs: binary-debs
@echo Debug: $@
ifeq ($(disable_d_i),)
@$(MAKE) --no-print-directory -f debian/rules DEBIAN=$(DEBIAN) \
do-binary-udebs
endif
# Hook into Ubuntu's architecture build process without modifying their files
binary-arch: binary-udebs
# Prefer DEB_SOURCE when available; fallback to src_pkg_name; otherwise "linux"
do-binary-udebs: linux_udeb_name=$(if $(DEB_SOURCE),$(DEB_SOURCE),$(if $(src_pkg_name),$(src_pkg_name),linux))
do-binary-udebs: debian/control
@echo Debug: $@
dh_testdir
dh_testroot
# unpack the kernels into a temporary directory
mkdir -p debian/d-i-${arch}
outdir="$${DPKG_BUILDPACKAGE_OUTPUT_DIR:-..}" && \
imagelist=$$(cat $(CURDIR)/$(DEBIAN)/d-i/kernel-versions | grep ^${arch} | gawk '{print $$3}') && \
for flavour in $$imagelist; do \
i=$(DEB_VERSION_UPSTREAM)-$(abinum)-$$flavour; \
found=0; \
for deb in \
"$$outdir"/linux-image-$$i\_*_${arch}.deb \
"$$outdir"/linux-image-unsigned-$$i\_*_${arch}.deb \
"$$outdir"/linux-modules-$$i\_*_${arch}.deb \
"$$outdir"/linux-modules-extra-$$i\_*_${arch}.deb; \
do \
if [ -f "$$deb" ]; then \
found=1; \
dpkg -x "$$deb" debian/d-i-${arch}; \
fi; \
done; \
if [ "$$found" = 0 ]; then \
echo "E: missing .deb for $$i in $$outdir (DPKG_BUILDPACKAGE_OUTPUT_DIR)." >&2; \
ls -1 "$$outdir"/linux-image-$$i\_*_${arch}.deb \
"$$outdir"/linux-image-unsigned-$$i\_*_${arch}.deb \
"$$outdir"/linux-modules-$$i\_*_${arch}.deb \
"$$outdir"/linux-modules-extra-$$i\_*_${arch}.deb 2>/dev/null >&2 || true; \
exit 1; \
fi; \
rm -rf debian/d-i-${arch}/DEBIAN; \
if [ ! -e debian/d-i-${arch}/lib/modules ] && [ -d debian/d-i-${arch}/usr/lib/modules ]; then \
mkdir -p debian/d-i-${arch}/lib; \
ln -s ../usr/lib/modules debian/d-i-${arch}/lib/modules; \
fi; \
if [ ! -d debian/d-i-${arch}/lib/modules/$$i ]; then \
echo "E: missing debian/d-i-${arch}/lib/modules/$$i" >&2; \
exit 1; \
fi; \
/sbin/depmod -b debian/d-i-${arch} -- $$i; \
if [ "$(filter true,$(do_dtbs))" ]; then \
if [ -d debian/d-i-${arch}/lib/firmware/$$i/device-tree ]; then \
echo ">> Trisquel: Extracting dtbs for $$i..."; \
mkdir -p $(CURDIR)/$(DEBIAN)/d-i/firmware/${arch}; \
( cd debian/d-i-${arch}/lib/firmware/$$i/ && find device-tree -print 2>/dev/null || true ) | \
while read dtb_file; do \
echo "$$dtb_file ?" >> $(CURDIR)/$(DEBIAN)/d-i/firmware/${arch}/kernel-image; \
done; \
fi; \
fi; \
done
# kernel-wedge will error if no modules unless this is touched
touch $(DEBIAN)/d-i/no-modules
touch $(CURDIR)/$(DEBIAN)/d-i/ignore-dups
export KW_DEFCONFIG_DIR=$(CURDIR)/$(DEBIAN)/d-i && \
export KW_CONFIG_DIR=$(CURDIR)/$(DEBIAN)/d-i && \
export SOURCEDIR=$(CURDIR)/debian/d-i-${arch} && \
kernel-wedge install-files $(DEB_VERSION_UPSTREAM)-$(abinum) && \
kernel-wedge check
# Build just the udebs
dilist=$$(dh_listpackages -a | grep "\-di$$") && \
[ -z "$$dilist" ] || \
for i in $$dilist; do \
dh_fixperms -p$$i; \
$(lockme) dh_gencontrol -p$$i; \
dh_builddeb -p$$i; \
done
# Generate the meta-udeb dependancy lists.
mkdir -p $(builddir)
touch $(builddir)/udeb-meta-packages.list
@gawk ' \
/^Package:/ { \
package=$$2; flavour=""; match_arch=0 } \
(/Package-Type: udeb/ && package !~ /^$(linux_udeb_name)-udebs-/) { \
match(package, "$(DEB_VERSION_UPSTREAM)-$(abinum)-(.*)-di", bits); \
flavour = bits[1]; \
} \
/^Architecture:/ { \
match_arch=0; \
for (i=2; i<=NF; i++) if ($$i=="$(arch)") match_arch=1; \
} \
(flavour != "" && match_arch) { \
udebs[flavour] = udebs[flavour] package ", "; \
flavour=""; match_arch=0; \
} \
END { \
for (flavour in udebs) { \
package="$(linux_udeb_name)-udebs-" flavour; \
file="debian/" package ".substvars"; \
print("udeb:Depends=" udebs[flavour]) > file; \
metas="$(builddir)/udeb-meta-packages.list"; \
print(package) >>metas \
} \
} \
' <$(CURDIR)/debian/control
@while read i; do \
if [ -n "$$i" ]; then \
$(lockme) dh_gencontrol -p$$i; \
dh_builddeb -p$$i; \
fi; \
done <$(builddir)/udeb-meta-packages.list

View file

@ -0,0 +1,4 @@
#
# Place the names of udeb modules into this directory that require
# runtime firmware.
#

View file

@ -0,0 +1,4 @@
#
# Place the names of udeb modules into this directory that require
# runtime firmware.
#

View file

@ -0,0 +1 @@
#include <nic-modules>

View file

@ -0,0 +1 @@
#include <scsi-modules>

View file

@ -0,0 +1,4 @@
#
# Place the names of udeb modules into this directory that require
# runtime firmware.
#

View file

@ -0,0 +1 @@
#include <nic-modules>

View file

@ -0,0 +1 @@
#include <scsi-modules>

View file

@ -0,0 +1,4 @@
#
# Place the names of udeb modules into this directory that require
# runtime firmware.
#

View file

@ -0,0 +1,4 @@
#
# Place the names of udeb modules into this directory that require
# runtime firmware.
#

View file

@ -0,0 +1 @@
#include <nic-modules>

View file

@ -0,0 +1 @@
#include <scsi-modules>

View file

@ -0,0 +1 @@

View file

@ -0,0 +1,4 @@
#
# Place the names of udeb modules into this directory that require
# runtime firmware.
#

View file

@ -0,0 +1 @@
#include <nic-modules>

View file

@ -0,0 +1 @@
#include <scsi-modules>

View file

@ -0,0 +1,4 @@
#
# Place the names of udeb modules into this directory that require
# runtime firmware.
#

View file

@ -0,0 +1 @@
#include <nic-modules>

View file

@ -0,0 +1 @@
#include <scsi-modules>

View file

@ -0,0 +1,4 @@
#
# Place the names of udeb modules into this directory that require
# runtime firmware.
#

View file

@ -0,0 +1 @@
#include <nic-modules>

View file

@ -0,0 +1 @@
#include <scsi-modules>

View file

@ -0,0 +1 @@

View file

@ -0,0 +1,16 @@
# arch version flavour installedname suffix bdep
amd64 - generic - - -
i386 - generic - - -
armhf - generic - - -
#armhf - generic-lpae - - -
arm64 - generic - - -
ppc64el - generic - - -
s390x - generic - - -
# Ports
# arch version flavour installedname suffix bdep

View file

@ -0,0 +1 @@
#include <block-modules>

View file

@ -0,0 +1 @@
#include <crc-modules>

View file

@ -0,0 +1 @@
#include <crypto-modules>

View file

@ -0,0 +1 @@
#include <fat-modules>

View file

@ -0,0 +1 @@
#include <fb-modules>

View file

@ -0,0 +1 @@
#include <floppy-modules>

View file

@ -0,0 +1 @@
#include <fs-core-modules>

View file

@ -0,0 +1 @@
#include <fs-secondary-modules>

View file

@ -0,0 +1 @@
#include <isofs-modules>

View file

@ -0,0 +1 @@
#include <kernel-image>

View file

@ -0,0 +1 @@
#include <md-modules>

View file

@ -0,0 +1 @@
#include <message-modules>

View file

@ -0,0 +1 @@
#include <mouse-modules>

View file

@ -0,0 +1 @@
#include <multipath-modules>

View file

@ -0,0 +1 @@
#include <nic-modules>

View file

@ -0,0 +1 @@
#include <nic-shared-modules>

View file

@ -0,0 +1 @@
#include <nic-wireless-modules>

View file

@ -0,0 +1 @@
#include <parport-modules>

View file

@ -0,0 +1,4 @@
#include <scsi-core-modules>
# Needed by hv_storvsc in hyperv-modules as well as scsi-modules
scsi_transport_fc

View file

@ -0,0 +1,2 @@
#include <scsi-modules>
ipr ?

View file

@ -0,0 +1 @@
#include <serial-modules>

View file

@ -0,0 +1 @@
#include <storage-core-modules>

View file

@ -0,0 +1 @@
#include <usb-storage-modules>

View file

@ -0,0 +1 @@
#include <virtio-modules>

View file

@ -0,0 +1 @@
#include <vlan-modules>

View file

@ -0,0 +1 @@
#include <block-modules>

View file

@ -0,0 +1 @@
#include <crc-modules>

View file

@ -0,0 +1 @@
#include <crypto-modules>

View file

@ -0,0 +1 @@
#include <fat-modules>

View file

@ -0,0 +1,5 @@
#include <fb-modules>
vesafb ?
vga16fb

View file

@ -0,0 +1 @@
#include <firewire-core-modules>

View file

@ -0,0 +1 @@
#include <floppy-modules>

View file

@ -0,0 +1 @@
#include <fs-core-modules>

View file

@ -0,0 +1 @@
#include <fs-secondary-modules>

View file

@ -0,0 +1 @@
#include <i2c-modules>

View file

@ -0,0 +1 @@
#include <input-modules>

View file

@ -0,0 +1 @@
#include <ipmi-modules>

View file

@ -0,0 +1 @@
#include <isofs-modules>

View file

@ -0,0 +1 @@
#include <kernel-image>

View file

@ -0,0 +1 @@
#include <md-modules>

View file

@ -0,0 +1 @@
#include <message-modules>

View file

@ -0,0 +1 @@
#include <mouse-modules>

View file

@ -0,0 +1 @@
#include <mtd-core-modules>

View file

@ -0,0 +1 @@
#include <multipath-modules>

View file

@ -0,0 +1 @@
#include <nfs-modules>

View file

@ -0,0 +1 @@
#include <nic-modules>

View file

@ -0,0 +1 @@
#include <nic-pcmcia-modules>

View file

@ -0,0 +1 @@
#include <nic-shared-modules>

View file

@ -0,0 +1 @@
#include <nic-usb-modules>

View file

@ -0,0 +1 @@
#include <nic-wireless-modules>

View file

@ -0,0 +1 @@
#include <parport-modules>

View file

@ -0,0 +1 @@
#include <pata-modules>

View file

@ -0,0 +1 @@
#include <pcmcia-modules>

View file

@ -0,0 +1 @@
#include <pcmcia-storage-modules>

View file

@ -0,0 +1 @@
#include <plip-modules>

View file

@ -0,0 +1 @@
#include <ppp-modules>

View file

@ -0,0 +1 @@
#include <sata-modules>

View file

@ -0,0 +1,4 @@
#include <scsi-core-modules>
# Needed by hv_storvsc in hyperv-modules as well as scsi-modules
scsi_transport_fc

Some files were not shown because too many files have changed in this diff Show more