linux: base helper for aramo

This commit is contained in:
Luis Guzmán 2022-05-31 16:38:26 +00:00
parent 2ae36e17d1
commit a3bcd567f4
12 changed files with 950 additions and 13568 deletions

View file

@ -1,9 +0,0 @@
#!/bin/bash
WD=$(dirname $0)
files=`find -type f`
while read -r line
do
sh $WD/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

@ -1,6 +1,6 @@
#! /bin/sh #! /bin/sh
# Copyright (C) 2008-2020 Alexandre Oliva <lxoliva@fsfla.org> # Copyright (C) 2008-2022 Alexandre Oliva <lxoliva@fsfla.org>
# Copyright (C) 2008 Jeff Moe # Copyright (C) 2008 Jeff Moe
# Copyright (C) 2009 Rubén Rodríguez <ruben@gnu.org> # Copyright (C) 2009 Rubén Rodríguez <ruben@gnu.org>
# #
@ -48,7 +48,7 @@
# For each kver release, start extra with an empty string, then count # For each kver release, start extra with an empty string, then count
# from 1 if changes are needed that require rebuilding the tarball. # from 1 if changes are needed that require rebuilding the tarball.
kver=5.8 extra= kver=5.15 extra=
case $1 in case $1 in
--force) --force)
@ -126,44 +126,12 @@ clean_blob () {
else else
die failed removing blobs from $name die failed removing blobs from $name
fi fi
check_changed $name && echo $name: removed blobs check_changed $name && echo $name: removed blobs or mentions thereof
else else
clean_file $1 clean_file $1
fi fi
} }
dummy_blob () {
#$1 = filename
if test -f $1; then
die $1 exists, something is wrong && return 0
elif test ! -f firmware/Makefile; then
die firmware/Makefile does not exist, something is wrong && return 0
fi
clean_sed "s,`echo $1 | sed s,^firmware/,,`,\$(DEBLOBBED),g" \
firmware/Makefile "dropped $1"
}
clean_fw () {
#$1 = firmware text input, $2 = firmware output
filetest $1 || return 0
if test -f $2; then
die $2 exists, something is wrong && return 0
fi
clean_blob $1 -s 4
dummy_blob $2
}
drop_fw_file () {
#$1 = firmware text input, $2 = firmware output
filetest $1 || return 0
if test -f $2; then
die $2 exists, something is wrong && return 0
fi
clean_file $1
dummy_blob $2
}
clean_kconfig () { clean_kconfig () {
#$1 = filename $2 = things to remove #$1 = filename $2 = things to remove
case $1 in case $1 in
@ -216,7 +184,7 @@ reject_firmware () {
#$1 = file $2 = pre sed pattern #$1 = file $2 = pre sed pattern
filetest $1 || return 0 filetest $1 || return 0
clean_sed "$2"' clean_sed "$2"'
s,\(^\|[^>.0-9a-zA-Z_$]\)\(request\(_ihex\)\?_firmware\|firmware_request_platform\)\(_nowait\|_direct\|_into_buf\)\?\($\|[^-.0-9a-zA-Z_$),; ]\),\1reject_firmware\4\5,g s,\(^\|[^>.0-9a-zA-Z_$]\)\(request\(_ihex\|\(_partial\)\)\?_firmware\|firmware_request_platform\)\(_nowait\|_direct\|_into_buf\)\?\($\|[^-.0-9a-zA-Z_$),; ]\),\1reject\4_firmware\5\6,g
' "$1" 'disabled non-Free firmware-loading machinery' ' "$1" 'disabled non-Free firmware-loading machinery'
} }
@ -232,7 +200,7 @@ maybe_reject_firmware () {
#$1 = file $2 = pre sed pattern #$1 = file $2 = pre sed pattern
filetest $1 || return 0 filetest $1 || return 0
clean_sed "$2"' clean_sed "$2"'
s,\(^\|[^>.0-9a-zA-Z_$]\)request_\(ihex_\)\?firmware\(_nowait\|_direct\|_into_buf\)\?\($\|[^-.0-9a-zA-Z_$),; ]\),\1maybe_reject_\2firmware\3\4,g s,\(^\|[^>.0-9a-zA-Z_$]\)request_\(ihex_\|partial_\)\?firmware\(_nowait\|_direct\|_into_buf\)\?\($\|[^-.0-9a-zA-Z_$),; ]\),\1maybe_reject_\2firmware\3\4,g
' "$1" 'retain Free firmware-loading machinery, disabling non-Free one' ' "$1" 'retain Free firmware-loading machinery, disabling non-Free one'
} }
@ -244,7 +212,7 @@ undefine_macro () {
macro=$1 repl=$2 msg=$3; shift 3 macro=$1 repl=$2 msg=$3; shift 3
for f in "$@"; do for f in "$@"; do
clean_sed " clean_sed "
s,^#define $macro .*\$,/*(DEBLOBBED)*/,; s,^#[ ]*define[ ][ ]*$macro[ ].*\$,/*(DEBLOBBED)*/,;
s,$macro,$repl,g; s,$macro,$repl,g;
" "$f" "$msg" " "$f" "$msg"
done done
@ -344,6 +312,9 @@ for f in \
drivers/scsi/sym53c8xx_2/sym_fw1.h \ drivers/scsi/sym53c8xx_2/sym_fw1.h \
drivers/scsi/sym53c8xx_2/sym_fw2.h \ drivers/scsi/sym53c8xx_2/sym_fw2.h \
drivers/scsi/sym53c8xx_2/sym_fw2.h \ drivers/scsi/sym53c8xx_2/sym_fw2.h \
\
kernel/bpf/preload/iterators/iterators.skel.h \
kernel/bpf/preload/iterators/iterators.bpf.c \
; do ; do
filetest $f || : filetest $f || :
done done
@ -416,6 +387,12 @@ What is GNU Linux-libre?\
contribution to the entire system, so its mascot deserves more\ contribution to the entire system, so its mascot deserves more\
promotion. See our web page for their images.\ promotion. See our web page for their images.\
http://linux-libre.fsfla.org/\ http://linux-libre.fsfla.org/\
\
If you are the author of an awesome program and want to join us in\
writing Free (libre) Software, please consider making it an official\
GNU program and become a GNU Maintainer. You can find instructions\
on how to do so at https://www.gnu.org/help/evaluation. We look\
forward to hacking with you! :)\
' Documentation/admin-guide/README.rst 'added blurb about GNU Linux-libre' ' Documentation/admin-guide/README.rst 'added blurb about GNU Linux-libre'
@ -439,9 +416,12 @@ clean_sed '
s,git://git\..*torvalds/linux\.git,/*(DEBLOBBED)*/, s,git://git\..*torvalds/linux\.git,/*(DEBLOBBED)*/,
' scripts/package/mkdebian 'upstream development repo' ' scripts/package/mkdebian 'upstream development repo'
clean_sed ' # The tarball name and its expansion do not include -libre.
s,Name: kernel,&-libre, # We could change KERNELPATH and keep this, but what else would break?
' scripts/package/mkspec 'package name' # Enabling this would require the other commented-out mkspec bits below.
# clean_sed '
# s,Name: kernel,&-libre,
# ' scripts/package/mkspec 'package name'
clean_sed ' clean_sed '
s,The Linux,The GNU Linux-libre, s,The Linux,The GNU Linux-libre,
@ -455,13 +435,33 @@ clean_sed '
s,https\?://www\.kernel\.org,https://linux-libre.fsfla.org, s,https\?://www\.kernel\.org,https://linux-libre.fsfla.org,
' scripts/package/mkspec 'home page' ' scripts/package/mkspec 'home page'
# clean_sed '
# s,\(%description\) -n kernel-,\1 ,
# ' scripts/package/mkspec '-libre subpackages'
# clean_sed '
# /Provides: kernel-/{p;s,kernel-,&libre-,;}
# ' scripts/package/mkspec '-libre provides'
# As with rpms, we leave the package name as kernel.
clean_sed ' clean_sed '
s,\(%description\) -n kernel-,\1 , s,The upstream Linux kernel,The GNU Linux-libre kernel,
' scripts/package/mkspec '-libre subpackages' ' scripts/package/snapcraft.template 'description'
clean_sed ' clean_sed '
/Provides: kernel-/{p;s,kernel-,&libre-,;} s,Linux kernel,GNU Linux-libre,
' scripts/package/mkspec '-libre provides' ' scripts/package/snapcraft.template 'summary'
clean_sed '
s,linux-upstream,linux-libre,
' scripts/Makefile.package 'libre, not upstream'
# We replace several blob name s[n]printf format strings
# with "/*(DEBLOBBED)*/", counting on extra args to be ignored.
# These are warned about, but -Werror turns them into errors.
clean_sed '
s, -Werror$, -Werror -Wno-error=format-extra-args -Wno-error=comment -Wno-error=unused-function -Wno-error=unused-variable,
' Makefile 'avoid compile failures at /*(DEBLOBBED)*/ warnings'
# Add reject_firmware and maybe_reject_firmware # Add reject_firmware and maybe_reject_firmware
grep -q _LINUX_LIBRE_FIRMWARE_H include/linux/firmware.h || grep -q _LINUX_LIBRE_FIRMWARE_H include/linux/firmware.h ||
@ -476,7 +476,7 @@ clean_sed '$i\
static inline int\ static inline int\
is_nonfree_firmware(const char *name)\ is_nonfree_firmware(const char *name)\
{\ {\
return strstr(name, NONFREE_FIRMWARE) != 0;\ return strstr(name, NONFREE_FIRMWARE) != 0;\
}\ }\
\ \
static inline int\ static inline int\
@ -492,6 +492,7 @@ firmware_reject_nowarn(const struct firmware **fw,\
{\ {\
const struct firmware *xfw = NULL;\ const struct firmware *xfw = NULL;\
int retval, retval0 = -ENOENT;\ int retval, retval0 = -ENOENT;\
if (fw) *fw = xfw;\
retval = firmware_request_nowarn(&xfw, NONFREE_FIRMWARE, device);\ retval = firmware_request_nowarn(&xfw, NONFREE_FIRMWARE, device);\
if (!retval) {\ if (!retval) {\
release_firmware(xfw);\ release_firmware(xfw);\
@ -526,6 +527,7 @@ reject_firmware_direct(const struct firmware **fw,\
{\ {\
const struct firmware *xfw = NULL;\ const struct firmware *xfw = NULL;\
int retval, retval0;\ int retval, retval0;\
if (fw) *fw = xfw;\
retval0 = report_missing_free_firmware(dev_name(device), NULL);\ retval0 = report_missing_free_firmware(dev_name(device), NULL);\
retval = request_firmware_direct(&xfw, NONFREE_FIRMWARE, device);\ retval = request_firmware_direct(&xfw, NONFREE_FIRMWARE, device);\
if (!retval) {\ if (!retval) {\
@ -566,6 +568,7 @@ reject_firmware_into_buf(const struct firmware **firmware_p, const char *name,\
{\ {\
const struct firmware *xfw = NULL;\ const struct firmware *xfw = NULL;\
int retval, retval0;\ int retval, retval0;\
if (firmware_p) *firmware_p = xfw;\
retval0 = report_missing_free_firmware(dev_name(device), NULL);\ retval0 = report_missing_free_firmware(dev_name(device), NULL);\
retval = request_firmware_into_buf(&xfw, NONFREE_FIRMWARE, device, buf, size);\ retval = request_firmware_into_buf(&xfw, NONFREE_FIRMWARE, device, buf, size);\
if (!retval) {\ if (!retval) {\
@ -583,6 +586,30 @@ maybe_reject_firmware_into_buf(const struct firmware **firmware_p, const char *n
else\ else\
return request_firmware_into_buf(firmware_p, name, device, buf, size);\ return request_firmware_into_buf(firmware_p, name, device, buf, size);\
}\ }\
static inline int\
reject_partial_firmware_into_buf(const struct firmware **firmware_p, const char *name,\
struct device *device, void *buf, size_t size, size_t offset)\
{\
const struct firmware *xfw = NULL;\
int retval, retval0;\
if (firmware_p) *firmware_p = xfw;\
retval0 = report_missing_free_firmware(dev_name(device), NULL);\
retval = request_partial_firmware_into_buf(&xfw, NONFREE_FIRMWARE, device, buf, size, offset);\
if (!retval) {\
release_firmware(xfw);\
retval = retval0;\
}\
return retval;\
}\
static inline int\
maybe_reject_partial_firmware_into_buf(const struct firmware **firmware_p, const char *name,\
struct device *device, void *buf, size_t size, size_t offset)\
{\
if (is_nonfree_firmware(name))\
return reject_partial_firmware_into_buf(firmware_p, name, device, buf, size, offset);\
else\
return request_partial_firmware_into_buf(firmware_p, name, device, buf, size, offset);\
}\
\ \
#endif /* _LINUX_LIBRE_FIRMWARE_H */\ #endif /* _LINUX_LIBRE_FIRMWARE_H */\
' include/linux/firmware.h 'added non-Free firmware notification support' ' include/linux/firmware.h 'added non-Free firmware notification support'
@ -625,17 +652,32 @@ clean_mk CONFIG_MICROCODE_AMD arch/x86/kernel/cpu/microcode/Makefile
announce MICROCODE_INTEL - "Intel microcode patch loading support" announce MICROCODE_INTEL - "Intel microcode patch loading support"
reject_firmware arch/x86/kernel/cpu/microcode/intel.c reject_firmware arch/x86/kernel/cpu/microcode/intel.c
clean_blob arch/x86/kernel/cpu/microcode/intel.c clean_blob arch/x86/kernel/cpu/microcode/intel.c
clean_blob arch/x86/events/intel/core.c
clean_kconfig arch/x86/Kconfig MICROCODE_INTEL clean_kconfig arch/x86/Kconfig MICROCODE_INTEL
clean_mk CONFIG_MICROCODE_INTEL arch/x86/kernel/cpu/microcode/Makefile clean_mk CONFIG_MICROCODE_INTEL arch/x86/kernel/cpu/microcode/Makefile
announce MICROCODE - "CPU microcode loading support" announce MICROCODE - "CPU microcode loading support"
clean_blob Documentation/x86/microcode.rst clean_blob Documentation/x86/microcode.rst
clean_blob arch/x86/kernel/apic/apic.c
clean_blob drivers/hwmon/coretemp.c
clean_kconfig arch/x86/Kconfig MICROCODE clean_kconfig arch/x86/Kconfig MICROCODE
clean_mk CONFIG_MICROCODE arch/x86/kernel/cpu/Makefile clean_mk CONFIG_MICROCODE arch/x86/kernel/cpu/Makefile
# Do no recommend non-Free microcode update.
announce X86_LOCAL_APIC - Undocumented
clean_blob arch/x86/kernel/apic/apic.c
clean_kconfig arch/x86/Kconfig X86_LOCAL_APIC
clean_mk CONFIG_X86_LOCAL_APIC arch/x86/kernel/apic/Makefile
# Do no recommend non-Free microcode update.
announce CPU_SUP_INTEL - "Support Intel processors"
clean_blob arch/x86/events/intel/core.c
clean_kconfig arch/x86/Kconfig.cpu CPU_SUP_INTEL
clean_mk CONFIG_CPU_SUP_INTEL arch/x86/events/intel/Makefile
# Do no recommend non-Free microcode update.
announce SENSORS_CORETEMP - "Intel Core/Core2/Atom temperature sensor"
clean_blob drivers/hwmon/coretemp.c
clean_kconfig drivers/hwmon/Kconfig SENSORS_CORETEMP
clean_mk CONFIG_SENSORS_CORETEMP drivers/hwmon/Makefile
# arm # arm
announce IXP4XX_NPE - "IXP4xx Network Processor Engine support" announce IXP4XX_NPE - "IXP4xx Network Processor Engine support"
@ -686,7 +728,7 @@ clean_mk CONFIG_ATM_AMBASSADOR drivers/atm/Makefile
announce ATM_FORE200E - "FORE Systems 200E-series" announce ATM_FORE200E - "FORE Systems 200E-series"
reject_firmware drivers/atm/fore200e.c reject_firmware drivers/atm/fore200e.c
clean_blob drivers/atm/fore200e.c clean_blob drivers/atm/fore200e.c
clean_blob Documentation/networking/fore200e.rst clean_blob Documentation/networking/device_drivers/atm/fore200e.rst
clean_blob drivers/atm/.gitignore clean_blob drivers/atm/.gitignore
clean_blob Documentation/dontdiff clean_blob Documentation/dontdiff
clean_kconfig drivers/atm/Kconfig ATM_FORE200E clean_kconfig drivers/atm/Kconfig ATM_FORE200E
@ -732,6 +774,12 @@ clean_blob drivers/crypto/marvell/octeontx/otx_cptpf_ucode.h
clean_kconfig drivers/crypto/marvell/Kconfig CRYPTO_DEV_OCTEONTX_CPT clean_kconfig drivers/crypto/marvell/Kconfig CRYPTO_DEV_OCTEONTX_CPT
clean_mk CONFIG_CRYPTO_DEV_OCTEONTX_CPT drivers/crypto/marvell/octeontx/Makefile clean_mk CONFIG_CRYPTO_DEV_OCTEONTX_CPT drivers/crypto/marvell/octeontx/Makefile
announce CRYPTO_DEV_OCTEONTX2_CPT - "Marvell OcteonTX2 CPT driver"
reject_firmware drivers/crypto/marvell/octeontx2/otx2_cptpf_ucode.c
clean_blob drivers/crypto/marvell/octeontx2/otx2_cptpf_ucode.c
clean_kconfig drivers/crypto/marvell/Kconfig CRYPTO_DEV_OCTEONTX2_CPT
clean_mk CONFIG_CRYPTO_DEV_OCTEONTX2_CPT drivers/crypto/marvell/octeontx2/Makefile
announce CRYPTO_DEV_QAT_DH895xCC - "Support for Intel(R) DH895xCC" announce CRYPTO_DEV_QAT_DH895xCC - "Support for Intel(R) DH895xCC"
clean_blob drivers/crypto/qat/qat_dh895xcc/adf_dh895xcc_hw_data.h clean_blob drivers/crypto/qat/qat_dh895xcc/adf_dh895xcc_hw_data.h
clean_blob drivers/crypto/qat/qat_dh895xcc/adf_drv.c clean_blob drivers/crypto/qat/qat_dh895xcc/adf_drv.c
@ -755,6 +803,12 @@ clean_blob drivers/crypto/qat/qat_c62x/adf_drv.c
clean_kconfig drivers/crypto/qat/Kconfig CRYPTO_DEV_QAT_C62X clean_kconfig drivers/crypto/qat/Kconfig CRYPTO_DEV_QAT_C62X
clean_mk CONFIG_CRYPTO_DEV_QAT_C62X drivers/crypto/qat/Makefile clean_mk CONFIG_CRYPTO_DEV_QAT_C62X drivers/crypto/qat/Makefile
announce CRYPTO_DEV_QAT_4XXX - "Support for Intel(R) QAT_4XXX"
clean_blob drivers/crypto/qat/qat_4xxx/adf_4xxx_hw_data.h
clean_blob drivers/crypto/qat/qat_4xxx/adf_drv.c
clean_kconfig drivers/crypto/qat/Kconfig CRYPTO_DEV_QAT_4XXX
clean_mk CONFIG_CRYPTO_DEV_QAT_4XXX drivers/crypto/qat/Makefile
announce AMDTEE - "AMD's Trusted Execution Environment (TEE)" announce AMDTEE - "AMD's Trusted Execution Environment (TEE)"
reject_firmware drivers/tee/amdtee/core.c reject_firmware drivers/tee/amdtee/core.c
clean_blob drivers/tee/amdtee/core.c clean_blob drivers/tee/amdtee/core.c
@ -765,18 +819,6 @@ clean_mk CONFIG_AMDTEE drivers/tee/amdtee/Makefile
# tty # # tty #
######## ########
announce CYCLADES - "Cyclades async mux support"
reject_firmware drivers/tty/cyclades.c
clean_blob drivers/tty/cyclades.c
clean_kconfig drivers/tty/Kconfig CYCLADES
clean_mk CONFIG_CYCLADES drivers/tty/Makefile
announce ISI - "Multi-Tech multiport card support"
reject_firmware drivers/tty/isicom.c
clean_blob drivers/tty/isicom.c
clean_kconfig drivers/tty/Kconfig ISI
clean_mk CONFIG_ISI drivers/tty/Makefile
announce MOXA_INTELLIO - "Moxa Intellio support" announce MOXA_INTELLIO - "Moxa Intellio support"
reject_firmware drivers/tty/moxa.c reject_firmware drivers/tty/moxa.c
clean_blob drivers/tty/moxa.c clean_blob drivers/tty/moxa.c
@ -814,7 +856,9 @@ reject_firmware drivers/gpu/drm/amd/amdgpu/psp_v10_0.c
clean_blob drivers/gpu/drm/amd/amdgpu/psp_v10_0.c clean_blob drivers/gpu/drm/amd/amdgpu/psp_v10_0.c
reject_firmware drivers/gpu/drm/amd/amdgpu/psp_v11_0.c reject_firmware drivers/gpu/drm/amd/amdgpu/psp_v11_0.c
clean_blob drivers/gpu/drm/amd/amdgpu/psp_v11_0.c clean_blob drivers/gpu/drm/amd/amdgpu/psp_v11_0.c
reject_firmware drivers/gpu/drm/amd/amdgpu/psp_v12_0.c
clean_blob drivers/gpu/drm/amd/amdgpu/psp_v12_0.c clean_blob drivers/gpu/drm/amd/amdgpu/psp_v12_0.c
clean_blob drivers/gpu/drm/amd/amdgpu/psp_v13_0.c
reject_firmware drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c reject_firmware drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c
clean_blob drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c clean_blob drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c
reject_firmware drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c reject_firmware drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c
@ -823,15 +867,19 @@ reject_firmware drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c
clean_blob drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c clean_blob drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c
reject_firmware drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c reject_firmware drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c
clean_blob drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c clean_blob drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c
reject_firmware drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c
clean_blob drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c
reject_firmware drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c reject_firmware drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
clean_blob drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c clean_blob drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
reject_firmware drivers/gpu/drm/amd/amdgpu/amdgpu_device.c reject_firmware drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
clean_blob drivers/gpu/drm/amd/amdgpu/amdgpu_device.c clean_blob drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
reject_firmware drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c reject_firmware drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
clean_blob drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c clean_blob drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
clean_blob drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c clean_blob drivers/gpu/drm/amd/pm/powerplay/smumgr/smumgr.c
reject_firmware drivers/gpu/drm/amd/powerplay/smu_v11_0.c reject_firmware drivers/gpu/drm/amd/pm/swsmu/smu11/smu_v11_0.c
clean_blob drivers/gpu/drm/amd/powerplay/smu_v11_0.c clean_blob drivers/gpu/drm/amd/pm/swsmu/smu11/smu_v11_0.c
reject_firmware drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0.c
clean_blob drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0.c
reject_firmware drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c reject_firmware drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
clean_blob drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c clean_blob drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
clean_kconfig drivers/gpu/drm/Kconfig DRM_AMDGPU clean_kconfig drivers/gpu/drm/Kconfig DRM_AMDGPU
@ -847,9 +895,9 @@ clean_blob drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c
clean_kconfig drivers/gpu/drm/amd/amdgpu/Kconfig DRM_AMDGPU_CIK clean_kconfig drivers/gpu/drm/amd/amdgpu/Kconfig DRM_AMDGPU_CIK
clean_mk CONFIG_DRM_AMDGPU_CIK drivers/gpu/drm/amd/amdgpu/Makefile clean_mk CONFIG_DRM_AMDGPU_CIK drivers/gpu/drm/amd/amdgpu/Makefile
announce DRM_AMDGPU_SI - "Enable amdgpu support for CIK parts" announce DRM_AMDGPU_SI - "Enable amdgpu support for SI parts"
reject_firmware drivers/gpu/drm/amd/amdgpu/si_dpm.c reject_firmware drivers/gpu/drm/amd/pm/powerplay/si_dpm.c
clean_blob drivers/gpu/drm/amd/amdgpu/si_dpm.c clean_blob drivers/gpu/drm/amd/pm/powerplay/si_dpm.c
reject_firmware drivers/gpu/drm/amd/amdgpu/gfx_v6_0.c reject_firmware drivers/gpu/drm/amd/amdgpu/gfx_v6_0.c
clean_blob drivers/gpu/drm/amd/amdgpu/gfx_v6_0.c clean_blob drivers/gpu/drm/amd/amdgpu/gfx_v6_0.c
reject_firmware drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c reject_firmware drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c
@ -863,9 +911,16 @@ clean_blob drivers/gpu/drm/ast/ast_dp501.c
clean_kconfig drivers/gpu/drm/ast/Kconfig DRM_AST clean_kconfig drivers/gpu/drm/ast/Kconfig DRM_AST
clean_mk CONFIG_DRM_AST drivers/gpu/drm/ast/Makefile clean_mk CONFIG_DRM_AST drivers/gpu/drm/ast/Makefile
announce DRM_CDNS_MHDP8546 - "Cadence DPI/DP bridge"
reject_firmware drivers/gpu/drm/bridge/cadence/cdns-mhdp8546-core.c
clean_blob drivers/gpu/drm/bridge/cadence/cdns-mhdp8546-core.c
clean_blob drivers/gpu/drm/bridge/cadence/cdns-mhdp8546-core.h
clean_kconfig drivers/gpu/drm/bridge/cadence/Kconfig DRM_CDNS_MHDP8546
clean_mk CONFIG_DRM_CDNS_MHDP8546 drivers/gpu/drm/bridge/cadence/Makefile
announce DRM_I915 - "Intel 8xx/9xx/G3x/G4x/HD Graphics" announce DRM_I915 - "Intel 8xx/9xx/G3x/G4x/HD Graphics"
reject_firmware drivers/gpu/drm/i915/display/intel_csr.c reject_firmware drivers/gpu/drm/i915/display/intel_dmc.c
clean_blob drivers/gpu/drm/i915/display/intel_csr.c clean_blob drivers/gpu/drm/i915/display/intel_dmc.c
reject_firmware drivers/gpu/drm/i915/display/intel_opregion.c reject_firmware drivers/gpu/drm/i915/display/intel_opregion.c
reject_firmware drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c reject_firmware drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c
clean_blob drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c clean_blob drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c
@ -878,6 +933,12 @@ reject_firmware drivers/gpu/drm/i915/gvt/firmware.c
clean_kconfig drivers/gpu/drm/i915/Kconfig DRM_I915_GVT clean_kconfig drivers/gpu/drm/i915/Kconfig DRM_I915_GVT
clean_mk CONFIG_DRM_I915_GVT drivers/gpu/drm/i915/Makefile clean_mk CONFIG_DRM_I915_GVT drivers/gpu/drm/i915/Makefile
announce DRM_LONTIUM_LT9611UXC - "Lontium LT9611UXC DSI/HDMI bridge"
reject_firmware drivers/gpu/drm/bridge/lontium-lt9611uxc.c
clean_blob drivers/gpu/drm/bridge/lontium-lt9611uxc.c
clean_kconfig drivers/gpu/drm/bridge/Kconfig DRM_LONTIUM_LT9611UXC
clean_mk CONFIG_DRM_LONTIUM_LT9611UXC drivers/gpu/drm/bridge/Makefile
announce DRM_NOUVEAU - "Nouveau (nVidia) cards" announce DRM_NOUVEAU - "Nouveau (nVidia) cards"
reject_firmware_nowarn drivers/gpu/drm/nouveau/nvkm/core/firmware.c reject_firmware_nowarn drivers/gpu/drm/nouveau/nvkm/core/firmware.c
clean_blob drivers/gpu/drm/nouveau/nvkm/core/firmware.c clean_blob drivers/gpu/drm/nouveau/nvkm/core/firmware.c
@ -925,6 +986,7 @@ clean_mk CONFIG_DRM_MGA drivers/gpu/drm/Makefile
announce DRM_MSM - "MSM DRM" announce DRM_MSM - "MSM DRM"
reject_firmware drivers/gpu/drm/msm/adreno/adreno_gpu.c reject_firmware drivers/gpu/drm/msm/adreno/adreno_gpu.c
clean_blob drivers/gpu/drm/msm/adreno/adreno_device.c clean_blob drivers/gpu/drm/msm/adreno/adreno_device.c
clean_blob drivers/gpu/drm/msm/adreno/a6xx_gpu.c
clean_kconfig drivers/gpu/drm/msm/Kconfig DRM_MSM clean_kconfig drivers/gpu/drm/msm/Kconfig DRM_MSM
clean_mk CONFIG_DRM_MSM drivers/gpu/drm/msm/Makefile clean_mk CONFIG_DRM_MSM drivers/gpu/drm/msm/Makefile
@ -1000,7 +1062,6 @@ clean_mk CONFIG_DRM_TEGRA drivers/gpu/drm/tegra/Makefile
announce IMX_SDMA - "i.MX SDMA support" announce IMX_SDMA - "i.MX SDMA support"
reject_firmware drivers/dma/imx-sdma.c reject_firmware drivers/dma/imx-sdma.c
clean_blob drivers/dma/imx-sdma.c clean_blob drivers/dma/imx-sdma.c
clean_blob arch/arm/mach-imx/mm-imx3.c
clean_blob arch/arm/boot/dts/imx25.dtsi clean_blob arch/arm/boot/dts/imx25.dtsi
clean_blob arch/arm/boot/dts/imx31.dtsi clean_blob arch/arm/boot/dts/imx31.dtsi
clean_blob arch/arm/boot/dts/imx35.dtsi clean_blob arch/arm/boot/dts/imx35.dtsi
@ -1298,6 +1359,13 @@ clean_blob drivers/media/dvb-frontends/m88ds3103_priv.h
clean_kconfig drivers/media/dvb-frontends/Kconfig DVB_M88DS3103 clean_kconfig drivers/media/dvb-frontends/Kconfig DVB_M88DS3103
clean_mk CONFIG_DVB_M88DS3103 drivers/media/dvb-frontends/Makefile clean_mk CONFIG_DVB_M88DS3103 drivers/media/dvb-frontends/Makefile
announce DVB_MXL692 - "MaxLinear MXL692 based"
reject_firmware drivers/media/dvb-frontends/mxl692.c
clean_blob drivers/media/dvb-frontends/mxl692.c
clean_blob drivers/media/dvb-frontends/mxl692.h
clean_kconfig drivers/media/dvb-frontends/Kconfig DVB_MXL692
clean_mk CONFIG_DVB_MXL692 drivers/media/dvb-frontends/Makefile
announce DVB_NXT200X - "NxtWave Communications NXT2002/NXT2004 based" announce DVB_NXT200X - "NxtWave Communications NXT2002/NXT2004 based"
undefault_firmware 'NXT200[24]' drivers/media/dvb-frontends/nxt200x.c undefault_firmware 'NXT200[24]' drivers/media/dvb-frontends/nxt200x.c
reject_firmware drivers/media/dvb-frontends/nxt200x.c reject_firmware drivers/media/dvb-frontends/nxt200x.c
@ -1332,10 +1400,10 @@ clean_kconfig drivers/media/dvb-frontends/Kconfig DVB_SI2168
clean_mk CONFIG_DVB_SI2168 drivers/media/dvb-frontends/Makefile clean_mk CONFIG_DVB_SI2168 drivers/media/dvb-frontends/Makefile
announce DVB_SP8870 - "Spase sp8870" announce DVB_SP8870 - "Spase sp8870"
undefault_firmware 'SP8870' drivers/media/dvb-frontends/sp8870.c undefault_firmware 'SP8870' drivers/staging/media/av7110/sp8870.c
clean_blob drivers/media/dvb-frontends/sp8870.c clean_blob drivers/staging/media/av7110/sp8870.c
clean_kconfig drivers/media/dvb-frontends/Kconfig DVB_SP8870 clean_kconfig drivers/staging/media/av7110/Kconfig DVB_SP8870
clean_mk CONFIG_DVB_SP8870 drivers/media/dvb-frontends/Makefile clean_mk CONFIG_DVB_SP8870 drivers/staging/media/av7110/Makefile
announce DVB_SP887X - "Spase sp887x based" announce DVB_SP887X - "Spase sp887x based"
undefault_firmware 'SP887X' drivers/media/dvb-frontends/sp887x.c undefault_firmware 'SP887X' drivers/media/dvb-frontends/sp887x.c
@ -1373,10 +1441,10 @@ clean_kconfig drivers/media/usb/as102/Kconfig DVB_AS102
clean_mk CONFIG_DVB_AS102 drivers/media/usb/as102/Makefile clean_mk CONFIG_DVB_AS102 drivers/media/usb/as102/Makefile
announce DVB_AV7110 - "AV7110 cards" announce DVB_AV7110 - "AV7110 cards"
reject_firmware drivers/media/pci/ttpci/av7110.c reject_firmware drivers/staging/media/av7110/av7110.c
clean_blob drivers/media/pci/ttpci/av7110.c clean_blob drivers/staging/media/av7110/av7110.c
clean_kconfig drivers/media/pci/ttpci/Kconfig DVB_AV7110 clean_kconfig drivers/staging/media/av7110/Kconfig DVB_AV7110
clean_mk CONFIG_DVB_AV7110 drivers/media/pci/ttpci/Makefile clean_mk CONFIG_DVB_AV7110 drivers/staging/media/av7110/Makefile
announce DVB_BUDGET - "Budget cards" announce DVB_BUDGET - "Budget cards"
reject_firmware drivers/media/pci/ttpci/budget.c reject_firmware drivers/media/pci/ttpci/budget.c
@ -1456,10 +1524,10 @@ clean_mk CONFIG_DVB_TTUSB_DEC drivers/media/usb/ttusb-dec/Makefile
# video # video
announce VIDEO_ALLEGRO_DVT - "Allegro DVT Video IP Core" announce VIDEO_ALLEGRO_DVT - "Allegro DVT Video IP Core"
reject_firmware drivers/staging/media/allegro-dvt/allegro-core.c reject_firmware drivers/media/platform/allegro-dvt/allegro-core.c
clean_blob drivers/staging/media/allegro-dvt/allegro-core.c clean_blob drivers/media/platform/allegro-dvt/allegro-core.c
clean_kconfig drivers/staging/media/allegro-dvt/Kconfig VIDEO_ALLEGRO_DVT clean_kconfig drivers/media/platform/Kconfig VIDEO_ALLEGRO_DVT
clean_mk CONFIG_VIDEO_ALLEGRO_DVT drivers/staging/media/allegro-dvt/Makefile clean_mk CONFIG_VIDEO_ALLEGRO_DVT drivers/media/platform/allegro-dvt/Makefile
announce VIDEO_ATOMISP - "Intel Atom Image Signal Processor Driver" announce VIDEO_ATOMISP - "Intel Atom Image Signal Processor Driver"
reject_firmware drivers/staging/media/atomisp/pci/atomisp_v4l2.c reject_firmware drivers/staging/media/atomisp/pci/atomisp_v4l2.c
@ -1475,6 +1543,12 @@ clean_blob Documentation/admin-guide/media/bttv.rst
clean_kconfig drivers/media/pci/bt8xx/Kconfig VIDEO_BT848 clean_kconfig drivers/media/pci/bt8xx/Kconfig VIDEO_BT848
clean_mk CONFIG_VIDEO_BT848 drivers/media/pci/bt8xx/Makefile clean_mk CONFIG_VIDEO_BT848 drivers/media/pci/bt8xx/Makefile
announce VIDEO_CCS - "MIPI CCS/SMIA++/SMIA sensor support"
reject_firmware drivers/media/i2c/ccs/ccs-core.c
clean_blob drivers/media/i2c/ccs/ccs-core.c
clean_kconfig drivers/media/i2c/ccs/Kconfig VIDEO_CCS
clean_mk CONFIG_VIDEO_CCS drivers/media/i2c/ccs/Makefile
announce VIDEO_CODA - "Chips&Media Coda multi-standard codec IP" announce VIDEO_CODA - "Chips&Media Coda multi-standard codec IP"
reject_firmware drivers/media/platform/coda/coda-common.c reject_firmware drivers/media/platform/coda/coda-common.c
clean_blob drivers/media/platform/coda/coda-common.c clean_blob drivers/media/platform/coda/coda-common.c
@ -1708,7 +1782,10 @@ clean_sed '
-EINVAL) -EINVAL)
}' drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c 'report missing Free firmware' }' drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c 'report missing Free firmware'
clean_blob drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c clean_blob drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
clean_sed ' if grep -q loaded_fw_major drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c; then
clean_blob drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c
else
clean_sed '
/^int bnx2x_compare_fw_ver/,/^}$/{ /^int bnx2x_compare_fw_ver/,/^}$/{
/^ u32 my_fw = /i\ /^ u32 my_fw = /i\
/*(DEBLOBBED)*/ /*(DEBLOBBED)*/
@ -1719,6 +1796,7 @@ clean_sed '
u32 my_fw = ~loaded_fw; u32 my_fw = ~loaded_fw;
} }
}' drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c 'fail already-loaded test' }' drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c 'fail already-loaded test'
fi
clean_blob drivers/net/ethernet/broadcom/bnx2x/bnx2x_hsi.h clean_blob drivers/net/ethernet/broadcom/bnx2x/bnx2x_hsi.h
clean_sed ' clean_sed '
/static void bnx2x_init_wr_wb/{ /static void bnx2x_init_wr_wb/{
@ -1761,6 +1839,7 @@ announce ICE - "Intel(R) Ethernet Connection E800 Series Support"
reject_firmware_nowarn drivers/net/ethernet/intel/ice/ice_main.c reject_firmware_nowarn drivers/net/ethernet/intel/ice/ice_main.c
reject_firmware drivers/net/ethernet/intel/ice/ice_main.c reject_firmware drivers/net/ethernet/intel/ice/ice_main.c
clean_blob drivers/net/ethernet/intel/ice/ice_main.c clean_blob drivers/net/ethernet/intel/ice/ice_main.c
clean_blob Documentation/networking/device_drivers/ethernet/intel/ice.rst
clean_kconfig drivers/net/ethernet/intel/Kconfig ICE clean_kconfig drivers/net/ethernet/intel/Kconfig ICE
clean_mk CONFIG_ICE drivers/net/ethernet/intel/Makefile clean_mk CONFIG_ICE drivers/net/ethernet/intel/Makefile
@ -1771,8 +1850,8 @@ clean_kconfig drivers/net/ethernet/cavium/Kconfig LIQUIDIO
clean_mk CONFIG_LIQUIDIO drivers/net/ethernet/cavium/liquidio/Makefile clean_mk CONFIG_LIQUIDIO drivers/net/ethernet/cavium/liquidio/Makefile
announce MLXSW_SPECTRUM - "Mellanox Technologies Spectrum support" announce MLXSW_SPECTRUM - "Mellanox Technologies Spectrum support"
reject_firmware drivers/net/ethernet/mellanox/mlxsw/spectrum.c ' reject_firmware drivers/net/ethernet/mellanox/mlxsw/core.c '
/request_firmware_direct.*fw_filename/!{p;d;}; /request_firmware_direct.*[ ]params->file_name/{p;d;};
' '
clean_blob drivers/net/ethernet/mellanox/mlxsw/spectrum.c clean_blob drivers/net/ethernet/mellanox/mlxsw/spectrum.c
clean_kconfig drivers/net/ethernet/mellanox/mlxsw/Kconfig MLXSW_SPECTRUM clean_kconfig drivers/net/ethernet/mellanox/mlxsw/Kconfig MLXSW_SPECTRUM
@ -1787,7 +1866,7 @@ clean_mk CONFIG_MYRI10GE drivers/net/ethernet/myricom/myri10ge/Makefile
announce NFP - "Netronome(R) NFP4000/NFP6000 NIC driver" announce NFP - "Netronome(R) NFP4000/NFP6000 NIC driver"
reject_firmware drivers/net/ethernet/netronome/nfp/nfp_main.c reject_firmware drivers/net/ethernet/netronome/nfp/nfp_main.c
clean_blob drivers/net/ethernet/netronome/nfp/nfp_main.c clean_blob drivers/net/ethernet/netronome/nfp/nfp_main.c
clean_blob Documentation/networking/device_drivers/netronome/nfp.rst clean_blob Documentation/networking/device_drivers/ethernet/netronome/nfp.rst
clean_kconfig drivers/net/ethernet/netronome/Kconfig NFP clean_kconfig drivers/net/ethernet/netronome/Kconfig NFP
clean_mk CONFIG_NFP drivers/net/ethernet/netronome/nfp/Makefile clean_mk CONFIG_NFP drivers/net/ethernet/netronome/nfp/Makefile
@ -2076,7 +2155,8 @@ clean_mk CONFIG_IWL4965 drivers/net/wireless/intel/iwlegacy/Makefile
announce IWLWIFI - "Intel Wireless WiFi Next Gen AGN" announce IWLWIFI - "Intel Wireless WiFi Next Gen AGN"
reject_firmware drivers/net/wireless/intel/iwlwifi/iwl-nvm-parse.c reject_firmware drivers/net/wireless/intel/iwlwifi/iwl-nvm-parse.c
reject_firmware drivers/net/wireless/intel/iwlwifi/iwl-drv.c reject_firmware drivers/net/wireless/intel/iwlwifi/iwl-drv.c
reject_firmware drivers/net/wireless/intel/iwlwifi/iwl-dbg-tlv.c reject_firmware_nowarn drivers/net/wireless/intel/iwlwifi/iwl-dbg-tlv.c
reject_firmware_nowarn drivers/net/wireless/intel/iwlwifi/fw/pnvm.c
clean_blob drivers/net/wireless/intel/iwlwifi/iwl-drv.c clean_blob drivers/net/wireless/intel/iwlwifi/iwl-drv.c
clean_blob drivers/net/wireless/intel/iwlwifi/iwl-dbg-tlv.c clean_blob drivers/net/wireless/intel/iwlwifi/iwl-dbg-tlv.c
clean_kconfig drivers/net/wireless/intel/iwlwifi/Kconfig IWLWIFI clean_kconfig drivers/net/wireless/intel/iwlwifi/Kconfig IWLWIFI
@ -2187,6 +2267,7 @@ reject_firmware_nowarn drivers/net/wireless/mediatek/mt76/mt7615/mcu.c
reject_firmware drivers/net/wireless/mediatek/mt76/mt7615/mcu.c reject_firmware drivers/net/wireless/mediatek/mt76/mt7615/mcu.c
clean_blob drivers/net/wireless/mediatek/mt76/mt7615/mt7615.h clean_blob drivers/net/wireless/mediatek/mt76/mt7615/mt7615.h
clean_blob drivers/net/wireless/mediatek/mt76/mt7615/pci.c clean_blob drivers/net/wireless/mediatek/mt76/mt7615/pci.c
clean_blob drivers/net/wireless/mediatek/mt76/mt7615/sdio.c
clean_kconfig drivers/net/wireless/mediatek/mt76/mt7615/Kconfig MT7615E clean_kconfig drivers/net/wireless/mediatek/mt76/mt7615/Kconfig MT7615E
clean_mk CONFIG_MT7615E drivers/net/wireless/mediatek/mt76/mt7615/Makefile clean_mk CONFIG_MT7615E drivers/net/wireless/mediatek/mt76/mt7615/Makefile
@ -2207,6 +2288,13 @@ clean_blob drivers/net/wireless/mediatek/mt76/mt7915/pci.c
clean_kconfig drivers/net/wireless/mediatek/mt76/mt7915/Kconfig MT7915E clean_kconfig drivers/net/wireless/mediatek/mt76/mt7915/Kconfig MT7915E
clean_mk CONFIG_MT7915E drivers/net/wireless/mediatek/mt76/mt7915/Makefile clean_mk CONFIG_MT7915E drivers/net/wireless/mediatek/mt76/mt7915/Makefile
announce MT7921E - "MediaTek MT7921E (PCIe) support"
reject_firmware drivers/net/wireless/mediatek/mt76/mt7921/mcu.c
clean_blob drivers/net/wireless/mediatek/mt76/mt7921/mt7921.h
clean_blob drivers/net/wireless/mediatek/mt76/mt7921/pci.c
clean_kconfig drivers/net/wireless/mediatek/mt76/mt7921/Kconfig MT7921E
clean_mk CONFIG_MT7921E drivers/net/wireless/mediatek/mt76/mt7921/Makefile
announce MWIFIEX - "Marvell WiFi-Ex Driver" announce MWIFIEX - "Marvell WiFi-Ex Driver"
clean_blob drivers/net/wireless/marvell/mwifiex/README clean_blob drivers/net/wireless/marvell/mwifiex/README
reject_firmware drivers/net/wireless/marvell/mwifiex/main.c reject_firmware drivers/net/wireless/marvell/mwifiex/main.c
@ -2237,6 +2325,12 @@ clean_blob drivers/net/wireless/marvell/mwl8k.c
clean_kconfig drivers/net/wireless/marvell/Kconfig MWL8K clean_kconfig drivers/net/wireless/marvell/Kconfig MWL8K
clean_mk CONFIG_MWL8K drivers/net/wireless/marvell/Makefile clean_mk CONFIG_MWL8K drivers/net/wireless/marvell/Makefile
announce PRESTERA_PCI - "PCI interface driver for Marvell Prestera Switch ASICs family"
reject_firmware drivers/net/ethernet/marvell/prestera/prestera_pci.c
clean_blob drivers/net/ethernet/marvell/prestera/prestera_pci.c
clean_kconfig drivers/net/ethernet/marvell/prestera/Kconfig PRESTERA_PCI
clean_mk CONFIG_PRESTERA_PCI drivers/net/ethernet/marvell/prestera/Makefile
announce AR5523 - "Atheros AR5523 wireless driver support" announce AR5523 - "Atheros AR5523 wireless driver support"
reject_firmware drivers/net/wireless/ath/ar5523/ar5523.c reject_firmware drivers/net/wireless/ath/ar5523/ar5523.c
clean_blob drivers/net/wireless/ath/ar5523/ar5523.c clean_blob drivers/net/wireless/ath/ar5523/ar5523.c
@ -2285,13 +2379,17 @@ clean_mk CONFIG_ATH10K_PCI drivers/net/wireless/ath/ath10k/Makefile
announce ATH11K - "Qualcomm Technologies 802.11ax chipset support" announce ATH11K - "Qualcomm Technologies 802.11ax chipset support"
reject_firmware_nowarn drivers/net/wireless/ath/ath11k/core.c reject_firmware_nowarn drivers/net/wireless/ath/ath11k/core.c
reject_firmware drivers/net/wireless/ath/ath11k/qmi.c
clean_blob drivers/net/wireless/ath/ath11k/hw.h clean_blob drivers/net/wireless/ath/ath11k/hw.h
clean_blob drivers/net/wireless/ath/ath11k/qmi.h
clean_blob drivers/net/wireless/ath/ath11k/core.c clean_blob drivers/net/wireless/ath/ath11k/core.c
clean_blob Documentation/devicetree/bindings/net/wireless/qcom,ath11k.yaml
clean_kconfig drivers/net/wireless/ath/ath11k/Kconfig ATH11K clean_kconfig drivers/net/wireless/ath/ath11k/Kconfig ATH11K
clean_mk CONFIG_ATH11K drivers/net/wireless/ath/ath11k/Makefile clean_mk CONFIG_ATH11K drivers/net/wireless/ath/ath11k/Makefile
announce ATH11K_PCI - "Atheros ath11k PCI support"
clean_blob drivers/net/wireless/ath/ath11k/pci.c
clean_kconfig drivers/net/wireless/ath/ath11k/Kconfig ATH11K_PCI
clean_mk CONFIG_ATH11K_PCI drivers/net/wireless/ath/ath11k/Makefile
announce WIL6210 - "Wilocity 60g WiFi card wil6210 support" announce WIL6210 - "Wilocity 60g WiFi card wil6210 support"
reject_firmware drivers/net/wireless/ath/wil6210/fw_inc.c reject_firmware drivers/net/wireless/ath/wil6210/fw_inc.c
clean_blob drivers/net/wireless/ath/wil6210/fw.c clean_blob drivers/net/wireless/ath/wil6210/fw.c
@ -2342,12 +2440,6 @@ clean_blob drivers/net/wireless/intersil/p54/p54usb.h
clean_kconfig drivers/net/wireless/intersil/p54/Kconfig P54_USB clean_kconfig drivers/net/wireless/intersil/p54/Kconfig P54_USB
clean_mk CONFIG_P54_USB drivers/net/wireless/intersil/p54/Makefile clean_mk CONFIG_P54_USB drivers/net/wireless/intersil/p54/Makefile
announce PRISM54 - "Intersil Prism GT/Duette/Indigo PCI/Cardbus"
reject_firmware drivers/net/wireless/intersil/prism54/islpci_dev.c
clean_blob drivers/net/wireless/intersil/prism54/islpci_dev.c
clean_kconfig drivers/net/wireless/intersil/Kconfig PRISM54
clean_mk CONFIG_PRISM54 drivers/net/wireless/intersil/prism54/Makefile
announce QTNFMAC_PCIE - "Quantenna QSR1000/QSR2000/QSR10g PCIe support" announce QTNFMAC_PCIE - "Quantenna QSR1000/QSR2000/QSR10g PCIe support"
reject_firmware drivers/net/wireless/quantenna/qtnfmac/pcie/pearl_pcie.c reject_firmware drivers/net/wireless/quantenna/qtnfmac/pcie/pearl_pcie.c
reject_firmware drivers/net/wireless/quantenna/qtnfmac/pcie/topaz_pcie.c reject_firmware drivers/net/wireless/quantenna/qtnfmac/pcie/topaz_pcie.c
@ -2423,12 +2515,11 @@ clean_kconfig drivers/net/wireless/realtek/rtlwifi/Kconfig RTL8188EE
clean_mk CONFIG_RTL8188EE drivers/net/wireless/realtek/rtlwifi/rtl8188ee/Makefile clean_mk CONFIG_RTL8188EE drivers/net/wireless/realtek/rtlwifi/rtl8188ee/Makefile
announce R8188EU - "Realtek RTL8188EU Wireless LAN NIC driver" announce R8188EU - "Realtek RTL8188EU Wireless LAN NIC driver"
reject_firmware drivers/staging/rtl8188eu/hal/fw.c reject_firmware drivers/staging/r8188eu/hal/rtl8188e_hal_init.c
clean_blob drivers/staging/rtl8188eu/hal/fw.c clean_blob drivers/staging/r8188eu/hal/rtl8188e_hal_init.c
clean_blob drivers/staging/rtl8188eu/include/rtl8188e_hal.h clean_blob drivers/staging/r8188eu/include/rtl8188e_hal.h
clean_blob drivers/staging/rtl8188eu/os_dep/os_intfs.c clean_kconfig drivers/staging/r8188eu/Kconfig R8188EU
clean_kconfig drivers/staging/rtl8188eu/Kconfig R8188EU clean_mk CONFIG_R8188EU drivers/staging/r8188eu/Makefile
clean_mk CONFIG_R8188EU drivers/staging/rtl8188eu/Makefile
announce RTL8192CE - "Realtek RTL8192CE/RTL8188CE Wireless Network Adapter" announce RTL8192CE - "Realtek RTL8192CE/RTL8188CE Wireless Network Adapter"
reject_firmware drivers/net/wireless/realtek/rtlwifi/rtl8192ce/sw.c reject_firmware drivers/net/wireless/realtek/rtlwifi/rtl8192ce/sw.c
@ -2512,6 +2603,11 @@ reject_firmware drivers/net/wireless/realtek/rtw88/main.c
clean_kconfig drivers/net/wireless/realtek/rtw88/Kconfig RTW88 clean_kconfig drivers/net/wireless/realtek/rtw88/Kconfig RTW88
clean_mk CONFIG_RTW88 drivers/net/wireless/realtek/rtw88/Makefile clean_mk CONFIG_RTW88 drivers/net/wireless/realtek/rtw88/Makefile
announce RTW88_8821C - "Realtek 8821CE PCI wireless network adapter"
clean_blob drivers/net/wireless/realtek/rtw88/rtw8821c.c
clean_kconfig drivers/net/wireless/realtek/rtw88/Kconfig RTW88_8821C
clean_mk CONFIG_RTW88_8821C drivers/net/wireless/realtek/rtw88/Makefile
announce RTW88_8822BE - "Realtek 8822BE PCI wireless network adapter" announce RTW88_8822BE - "Realtek 8822BE PCI wireless network adapter"
clean_blob drivers/net/wireless/realtek/rtw88/rtw8822b.c clean_blob drivers/net/wireless/realtek/rtw88/rtw8822b.c
clean_kconfig drivers/net/wireless/realtek/rtw88/Kconfig RTW88_8822BE clean_kconfig drivers/net/wireless/realtek/rtw88/Kconfig RTW88_8822BE
@ -2594,12 +2690,12 @@ clean_kconfig drivers/staging/wfx/Kconfig WFX
clean_mk CONFIG_WFX drivers/staging/wfx/Makefile clean_mk CONFIG_WFX drivers/staging/wfx/Makefile
announce WILC1000 - "WILC1000 support (WiFi only)" announce WILC1000 - "WILC1000 support (WiFi only)"
reject_firmware drivers/staging/wilc1000/netdev.c reject_firmware drivers/net/wireless/microchip/wilc1000/netdev.c
clean_blob drivers/staging/wilc1000/Makefile undefine_macro "WILC1000_FW_PREFIX" "\"/*(DEBLOBBED)*/\"" \
clean_sed 's,\\"/\*(DEBLOBBED)\*/\\","&",g' drivers/staging/wilc1000/Makefile \ "disabled non-Free firmware" drivers/net/wireless/microchip/wilc1000/netdev.c
"quote deblobbing markers" clean_blob drivers/net/wireless/microchip/wilc1000/netdev.c
clean_kconfig drivers/staging/wilc1000/Kconfig WILC1000 clean_kconfig drivers/net/wireless/microchip/wilc1000/Kconfig WILC1000
clean_mk CONFIG_WILC1000 drivers/staging/wilc1000/Makefile clean_mk CONFIG_WILC1000 drivers/net/wireless/microchip/wilc1000/Makefile
announce ZD1211RW - "ZyDAS ZD1211/ZD1211B USB-wireless support" announce ZD1211RW - "ZyDAS ZD1211/ZD1211B USB-wireless support"
reject_firmware drivers/net/wireless/zydas/zd1211rw/zd_usb.c reject_firmware drivers/net/wireless/zydas/zd1211rw/zd_usb.c
@ -2678,6 +2774,7 @@ clean_kconfig drivers/bluetooth/Kconfig BT_HCIBTUSB
clean_mk CONFIG_BT_HCIBTUSB drivers/bluetooth/Makefile clean_mk CONFIG_BT_HCIBTUSB drivers/bluetooth/Makefile
announce BT_INTEL - "Bluetooth support for Intel devices" announce BT_INTEL - "Bluetooth support for Intel devices"
reject_firmware_nowarn drivers/bluetooth/btintel.c
reject_firmware drivers/bluetooth/btintel.c reject_firmware drivers/bluetooth/btintel.c
clean_blob drivers/bluetooth/btintel.c clean_blob drivers/bluetooth/btintel.c
clean_kconfig drivers/bluetooth/Kconfig BT_INTEL clean_kconfig drivers/bluetooth/Kconfig BT_INTEL
@ -2711,7 +2808,7 @@ clean_mk CONFIG_BT_MTKUART drivers/bluetooth/Makefile
announce BT_QCA - "Bluetooh support for Qualcomm/Atheros devices" announce BT_QCA - "Bluetooh support for Qualcomm/Atheros devices"
reject_firmware drivers/bluetooth/btqca.c reject_firmware drivers/bluetooth/btqca.c
clean_blob drivers/bluetooth/btqca.c clean_blob drivers/bluetooth/btqca.c
clean_blob Documentation/devicetree/bindings/net/qualcomm-bluetooth.txt clean_blob Documentation/devicetree/bindings/net/qualcomm-bluetooth.yaml
clean_kconfig drivers/bluetooth/Kconfig BT_QCA clean_kconfig drivers/bluetooth/Kconfig BT_QCA
clean_mk CONFIG_BT_QCA drivers/bluetooth/Makefile clean_mk CONFIG_BT_QCA drivers/bluetooth/Makefile
@ -2727,15 +2824,6 @@ clean_blob drivers/misc/ti-st/st_kim.c
clean_kconfig drivers/misc/ti-st/Kconfig TI_ST clean_kconfig drivers/misc/ti-st/Kconfig TI_ST
clean_mk CONFIG_TI_ST drivers/misc/ti-st/Makefile clean_mk CONFIG_TI_ST drivers/misc/ti-st/Makefile
# wimax
announce WIMAX_I2400M - "Intel Wireless WiMAX Connection 2400"
reject_firmware drivers/net/wimax/i2400m/fw.c
clean_blob drivers/net/wimax/i2400m/usb.c
clean_blob Documentation/admin-guide/wimax/i2400m.rst
clean_kconfig drivers/net/wimax/i2400m/Kconfig WIMAX_I2400M
clean_mk CONFIG_WIMAX_I2400M drivers/net/wimax/i2400m/Makefile
# infiniband # infiniband
announce INFINIBAND_HFI1 - "Intel OPA Gen1 support" announce INFINIBAND_HFI1 - "Intel OPA Gen1 support"
@ -2783,6 +2871,9 @@ clean_mk CONFIG_NET_DSA_LANTIQ_GSWIP drivers/net/dsa/Makefile
announce MICROSEMI_PHY - "Microsemi PHYs" announce MICROSEMI_PHY - "Microsemi PHYs"
reject_firmware drivers/net/phy/mscc/mscc_main.c reject_firmware drivers/net/phy/mscc/mscc_main.c
if grep -q MODULE_FIRMWARE drivers/net/phy/mscc/mscc_main.c; then
clean_blob drivers/net/phy/mscc/mscc_main.c
fi
clean_blob drivers/net/phy/mscc/mscc.h clean_blob drivers/net/phy/mscc/mscc.h
clean_kconfig drivers/net/phy/Kconfig MICROSEMI_PHY clean_kconfig drivers/net/phy/Kconfig MICROSEMI_PHY
clean_mk CONFIG_MICROSEMI_PHY drivers/net/phy/mscc/Makefile clean_mk CONFIG_MICROSEMI_PHY drivers/net/phy/mscc/Makefile
@ -2951,34 +3042,34 @@ clean_kconfig drivers/hid/intel-ish-hid/Kconfig INTEL_ISH_FIRMWARE_DOWNLOADER
clean_mk CONFIG_INTEL_ISH_FIRMWARE_DOWNLOADER drivers/hid/intel-ish-hid/Makefile clean_mk CONFIG_INTEL_ISH_FIRMWARE_DOWNLOADER drivers/hid/intel-ish-hid/Makefile
announce COMEDI - "Data acquisition support (comedi)" announce COMEDI - "Data acquisition support (comedi)"
maybe_reject_firmware drivers/staging/comedi/drivers.c maybe_reject_firmware drivers/comedi/drivers.c
clean_kconfig drivers/staging/comedi/Kconfig COMEDI clean_kconfig drivers/comedi/Kconfig COMEDI
clean_mk CONFIG_COMEDI drivers/staging/comedi/Makefile clean_mk CONFIG_COMEDI drivers/comedi/Makefile
announce COMEDI_DAQBOARD2000 - "IOtech DAQboard/2000 support" announce COMEDI_DAQBOARD2000 - "IOtech DAQboard/2000 support"
clean_blob drivers/staging/comedi/drivers/daqboard2000.c clean_blob drivers/comedi/drivers/daqboard2000.c
clean_kconfig drivers/staging/comedi/Kconfig COMEDI_DAQBOARD2000 clean_kconfig drivers/comedi/Kconfig COMEDI_DAQBOARD2000
clean_mk CONFIG_COMEDI_DAQBOARD2000 drivers/staging/comedi/drivers/Makefile clean_mk CONFIG_COMEDI_DAQBOARD2000 drivers/comedi/drivers/Makefile
announce COMEDI_JR3_PCI - "JR3/PCI force sensor board support" announce COMEDI_JR3_PCI - "JR3/PCI force sensor board support"
clean_blob drivers/staging/comedi/drivers/jr3_pci.c clean_blob drivers/comedi/drivers/jr3_pci.c
clean_kconfig drivers/staging/comedi/Kconfig COMEDI_JR3_PCI clean_kconfig drivers/comedi/Kconfig COMEDI_JR3_PCI
clean_mk CONFIG_COMEDI_JR3_PCI drivers/staging/comedi/drivers/Makefile clean_mk CONFIG_COMEDI_JR3_PCI drivers/comedi/drivers/Makefile
announce COMEDI_ME_DAQ - "Meilhaus ME-2000i, ME-2600i, ME-3000vm1 support" announce COMEDI_ME_DAQ - "Meilhaus ME-2000i, ME-2600i, ME-3000vm1 support"
clean_blob drivers/staging/comedi/drivers/me_daq.c clean_blob drivers/comedi/drivers/me_daq.c
clean_kconfig drivers/staging/comedi/Kconfig COMEDI_ME_DAQ clean_kconfig drivers/comedi/Kconfig COMEDI_ME_DAQ
clean_mk CONFIG_COMEDI_ME_DAQ drivers/staging/comedi/drivers/Makefile clean_mk CONFIG_COMEDI_ME_DAQ drivers/comedi/drivers/Makefile
announce COMEDI_ME4000 - "Meilhaus ME-4000 support" announce COMEDI_ME4000 - "Meilhaus ME-4000 support"
clean_blob drivers/staging/comedi/drivers/me4000.c clean_blob drivers/comedi/drivers/me4000.c
clean_kconfig drivers/staging/comedi/Kconfig COMEDI_ME4000 clean_kconfig drivers/comedi/Kconfig COMEDI_ME4000
clean_mk CONFIG_COMEDI_ME4000 drivers/staging/comedi/drivers/Makefile clean_mk CONFIG_COMEDI_ME4000 drivers/comedi/drivers/Makefile
announce COMEDI_NI_PCIDIO - "NI PCI-DIO32HS, PCI-6533, PCI-6534 support" announce COMEDI_NI_PCIDIO - "NI PCI-DIO32HS, PCI-6533, PCI-6534 support"
clean_blob drivers/staging/comedi/drivers/ni_pcidio.c clean_blob drivers/comedi/drivers/ni_pcidio.c
clean_kconfig drivers/staging/comedi/Kconfig COMEDI_NI_PCIDIO clean_kconfig drivers/comedi/Kconfig COMEDI_NI_PCIDIO
clean_mk CONFIG_COMEDI_NI_PCIDIO drivers/staging/comedi/drivers/Makefile clean_mk CONFIG_COMEDI_NI_PCIDIO drivers/comedi/drivers/Makefile
# There are blob names, but no apparent request or filesystem load # There are blob names, but no apparent request or filesystem load
# mechanism. Why are the blob names there, then? # mechanism. Why are the blob names there, then?
@ -3047,6 +3138,17 @@ clean_blob drivers/scsi/csiostor/csio_init.c
clean_kconfig drivers/scsi/csiostor/Kconfig SCSI_CHELSIO_FCOE clean_kconfig drivers/scsi/csiostor/Kconfig SCSI_CHELSIO_FCOE
clean_mk CONFIG_SCSI_CHELSIO_FCOE drivers/scsi/csiostor/Makefile clean_mk CONFIG_SCSI_CHELSIO_FCOE drivers/scsi/csiostor/Makefile
announce SCSI_EFCT - "Emulex Fibre Channel Target"
# The firmware name is built out of Vital Product Data read from the
# adapter. The firmware is definitely code, and I couldn't find
# evidence it is Free, so I'm disabling it. It's not clear whether
# this is the hardware or the software inducing to the installation of
# non-Free firmware.
reject_firmware drivers/scsi/elx/efct/efct_driver.c
clean_blob drivers/scsi/elx/efct/efct_driver.c
clean_kconfig drivers/scsi/elx/Kconfig SCSI_EFCT
clean_mk CONFIG_SCSI_EFCT drivers/scsi/elx/Makefile
announce SCSI_LPFC - "Emulex LightPulse Fibre Channel Support" announce SCSI_LPFC - "Emulex LightPulse Fibre Channel Support"
# The firmware name is built out of Vital Product Data read from the # The firmware name is built out of Vital Product Data read from the
# adapter. The firmware is definitely code, and I couldn't find # adapter. The firmware is definitely code, and I couldn't find
@ -3054,6 +3156,7 @@ announce SCSI_LPFC - "Emulex LightPulse Fibre Channel Support"
# this is the hardware or the software inducing to the installation of # this is the hardware or the software inducing to the installation of
# non-Free firmware. # non-Free firmware.
reject_firmware drivers/scsi/lpfc/lpfc_init.c reject_firmware drivers/scsi/lpfc/lpfc_init.c
clean_blob drivers/scsi/lpfc/lpfc_init.c
clean_kconfig drivers/scsi/Kconfig SCSI_LPFC clean_kconfig drivers/scsi/Kconfig SCSI_LPFC
clean_mk CONFIG_SCSI_LPFC drivers/scsi/lpfc/Makefile clean_mk CONFIG_SCSI_LPFC drivers/scsi/lpfc/Makefile
@ -3103,8 +3206,8 @@ clean_mk CONFIG_USB_UEAGLEATM drivers/usb/atm/Makefile
# host # host
announce USB_XHCI_PCI_RENESAS - "Support for additional Renesas xHCI controller with firwmare" announce USB_XHCI_PCI_RENESAS - "Support for additional Renesas xHCI controller with firmware"
reject_firmware drivers/usb/host/xhci-pci-renesas.c reject_firmware_nowarn drivers/usb/host/xhci-pci-renesas.c
clean_kconfig drivers/usb/host/Kconfig USB_XHCI_PCI_RENESAS clean_kconfig drivers/usb/host/Kconfig USB_XHCI_PCI_RENESAS
clean_mk CONFIG_USB_XHCI_PCI_RENESAS drivers/usb/host/Makefile clean_mk CONFIG_USB_XHCI_PCI_RENESAS drivers/usb/host/Makefile
@ -3209,8 +3312,21 @@ clean_mk CONFIG_UCSI_CCG drivers/usb/typec/ucsi/Makefile
# Programmable # # Programmable #
################ ################
announce BCM_VK - "Support for Broadcom VK Accelerators"
reject_firmware drivers/misc/bcm-vk/bcm_vk_dev.c
clean_blob drivers/misc/bcm-vk/bcm_vk_dev.c
clean_kconfig drivers/misc/bcm-vk/Kconfig BCM_VK
clean_mk CONFIG_BCM_VK drivers/misc/bcm-vk/Makefile
announce GEHC_ACHC - "GEHC ACHC support"
reject_firmware drivers/misc/gehc-achc.c
clean_blob drivers/misc/gehc-achc.c
clean_blob Documentation/ABI/testing/sysfs-driver-ge-achc
clean_kconfig drivers/misc/Kconfig GEHC_ACHC
clean_mk CONFIG_GEHC_ACHC drivers/misc/Makefile
announce HABANA_AI - "HabanaAI accelerators (habanalabs)" announce HABANA_AI - "HabanaAI accelerators (habanalabs)"
reject_firmware drivers/misc/habanalabs/firmware_if.c reject_firmware drivers/misc/habanalabs/common/firmware_if.c
reject_firmware drivers/misc/habanalabs/gaudi/gaudi.c reject_firmware drivers/misc/habanalabs/gaudi/gaudi.c
clean_blob drivers/misc/habanalabs/gaudi/gaudi.c clean_blob drivers/misc/habanalabs/gaudi/gaudi.c
clean_blob drivers/misc/habanalabs/goya/goya.c clean_blob drivers/misc/habanalabs/goya/goya.c
@ -3240,8 +3356,11 @@ clean_mk CONFIG_MTK_SCP drivers/remoteproc/Makefile
announce WKUP_M3_RPROC - "AMx3xx Wakeup M3 remoteproc support" announce WKUP_M3_RPROC - "AMx3xx Wakeup M3 remoteproc support"
clean_blob Documentation/devicetree/bindings/remoteproc/wkup_m3_rproc.txt clean_blob Documentation/devicetree/bindings/remoteproc/wkup_m3_rproc.txt
clean_blob arch/arm/boot/dts/am33xx.dtsi clean_blob arch/arm/boot/dts/am33xx-l4.dtsi
clean_blob arch/arm/boot/dts/am4372.dtsi clean_blob arch/arm/boot/dts/am437x-l4.dtsi
if grep -q 'Block system suspend' arch/arm/mach-omap2/pm33xx-core.c; then
clean_blob arch/arm/mach-omap2/pm33xx-core.c
fi
clean_kconfig drivers/remoteproc/Kconfig WKUP_M3_RPROC clean_kconfig drivers/remoteproc/Kconfig WKUP_M3_RPROC
clean_mk CONFIG_WKUP_M3_RPROC drivers/remoteproc/Makefile clean_mk CONFIG_WKUP_M3_RPROC drivers/remoteproc/Makefile
@ -3268,6 +3387,8 @@ clean_mk CONFIG_QCOM_Q6V5_WCSS drivers/remoteproc/Makefile
announce QCOM_WCNSS_PIL - "Qualcomm WCNSS Peripherial Image Loader" announce QCOM_WCNSS_PIL - "Qualcomm WCNSS Peripherial Image Loader"
clean_blob drivers/remoteproc/qcom_wcnss.c clean_blob drivers/remoteproc/qcom_wcnss.c
clean_blob Documentation/devicetree/bindings/remoteproc/qcom,wcnss-pil.txt
clean_blob Documentation/devicetree/bindings/soc/qcom/qcom,wcnss.txt
clean_kconfig drivers/remoteproc/Kconfig QCOM_WCNSS_PIL clean_kconfig drivers/remoteproc/Kconfig QCOM_WCNSS_PIL
clean_mk CONFIG_QCOM_WCNSS_PIL drivers/remoteproc/Makefile clean_mk CONFIG_QCOM_WCNSS_PIL drivers/remoteproc/Makefile
@ -3302,6 +3423,7 @@ clean_mk CONFIG_PTP_1588_CLOCK_IDTCM drivers/ptp/Makefile
announce PTP_1588_CLOCK_IDT82P33 - "IDT 82P33xxx PTP clock" announce PTP_1588_CLOCK_IDT82P33 - "IDT 82P33xxx PTP clock"
reject_firmware drivers/ptp/ptp_idt82p33.c reject_firmware drivers/ptp/ptp_idt82p33.c
clean_blob drivers/ptp/ptp_idt82p33.c
clean_blob drivers/ptp/ptp_idt82p33.h clean_blob drivers/ptp/ptp_idt82p33.h
clean_kconfig drivers/ptp/Kconfig PTP_1588_CLOCK_IDT82P33 clean_kconfig drivers/ptp/Kconfig PTP_1588_CLOCK_IDT82P33
clean_mk CONFIG_PTP_1588_CLOCK_IDT82P33 drivers/ptp/Makefile clean_mk CONFIG_PTP_1588_CLOCK_IDT82P33 drivers/ptp/Makefile
@ -3530,6 +3652,12 @@ clean_blob Documentation/devicetree/bindings/sound/fsl,easrc.yaml
clean_kconfig sound/soc/fsl/Kconfig SND_SOC_FSL_EASRC clean_kconfig sound/soc/fsl/Kconfig SND_SOC_FSL_EASRC
clean_mk CONFIG_SND_SOC_FSL_EASRC sound/soc/fsl/Makefile clean_mk CONFIG_SND_SOC_FSL_EASRC sound/soc/fsl/Makefile
announce SND_SOC_FSL_XCVR - "NXP Audio Transceiver (XCVR) module support"
reject_firmware sound/soc/fsl/fsl_xcvr.c
clean_blob sound/soc/fsl/fsl_xcvr.c
clean_kconfig sound/soc/fsl/Kconfig SND_SOC_FSL_XCVR
clean_mk CONFIG_SND_SOC_FSL_XCVR sound/soc/fsl/Makefile
announce SND_SOC_MAX98390 - "Maxim Integrated MAX98390 Speaker Amplifier" announce SND_SOC_MAX98390 - "Maxim Integrated MAX98390 Speaker Amplifier"
reject_firmware sound/soc/codecs/max98390.c reject_firmware sound/soc/codecs/max98390.c
clean_blob sound/soc/codecs/max98390.c clean_blob sound/soc/codecs/max98390.c
@ -3546,11 +3674,6 @@ clean_mk CONFIG_SND_SOC_RT5677 sound/soc/codecs/Makefile
announce SND_SOC_SIGMADSP - "SigmaStudio firmware loader" announce SND_SOC_SIGMADSP - "SigmaStudio firmware loader"
maybe_reject_firmware sound/soc/codecs/sigmadsp.c maybe_reject_firmware sound/soc/codecs/sigmadsp.c
announce SND_SOC_INTEL_SST_ACPI - "Intel SST (LPE) Driver"
maybe_reject_firmware sound/soc/intel/common/sst-acpi.c
clean_kconfig sound/soc/intel/Kconfig SND_SOC_INTEL_SST_ACPI
clean_mk CONFIG_SND_SOC_INTEL_SST_ACPI sound/soc/intel/common/Makefile
announce SND_SOC_ACPI_INTEL_MATCH - undocumented announce SND_SOC_ACPI_INTEL_MATCH - undocumented
clean_blob sound/soc/intel/common/soc-acpi-intel-bxt-match.c clean_blob sound/soc/intel/common/soc-acpi-intel-bxt-match.c
clean_blob sound/soc/intel/common/soc-acpi-intel-byt-match.c clean_blob sound/soc/intel/common/soc-acpi-intel-byt-match.c
@ -3565,13 +3688,13 @@ clean_blob sound/soc/intel/common/soc-acpi-intel-skl-match.c
clean_kconfig sound/soc/intel/Kconfig SND_SOC_ACPI_INTEL_MATCH clean_kconfig sound/soc/intel/Kconfig SND_SOC_ACPI_INTEL_MATCH
clean_mk CONFIG_SND_SOC_ACPI_INTEL_MATCH sound/soc/intel/common/Makefile clean_mk CONFIG_SND_SOC_ACPI_INTEL_MATCH sound/soc/intel/common/Makefile
announce SND_SOC_INTEL_HASWELL - undocumented announce SND_SOC_INTEL_CATPT - undocumented
reject_firmware sound/soc/intel/haswell/sst-haswell-ipc.c reject_firmware sound/soc/intel/catpt/loader.c
clean_blob sound/soc/intel/haswell/sst-haswell-ipc.c clean_blob sound/soc/intel/catpt/loader.c
clean_kconfig sound/soc/intel/Kconfig SND_SOC_INTEL_HASWELL clean_kconfig sound/soc/intel/Kconfig SND_SOC_INTEL_CATPT
clean_mk CONFIG_SND_SOC_INTEL_HASWELL sound/soc/intel/haswell/Makefile clean_mk CONFIG_SND_SOC_INTEL_CATPT sound/soc/intel/catpt/Makefile
announce SND_SOC_INTEL_SKYLAKE - undocumented announce SND_SOC_INTEL_SKYLAKE - "All Skylake/SST Platforms"
reject_firmware sound/soc/intel/skylake/skl-sst.c reject_firmware sound/soc/intel/skylake/skl-sst.c
reject_firmware sound/soc/intel/skylake/skl-sst-utils.c reject_firmware sound/soc/intel/skylake/skl-sst-utils.c
reject_firmware sound/soc/intel/skylake/skl-topology.c reject_firmware sound/soc/intel/skylake/skl-topology.c
@ -3583,16 +3706,16 @@ clean_blob sound/soc/intel/skylake/skl-topology.c
clean_kconfig sound/soc/intel/Kconfig SND_SOC_INTEL_SKYLAKE clean_kconfig sound/soc/intel/Kconfig SND_SOC_INTEL_SKYLAKE
clean_mk CONFIG_SND_SOC_INTEL_SKYLAKE sound/soc/intel/skylake/Makefile clean_mk CONFIG_SND_SOC_INTEL_SKYLAKE sound/soc/intel/skylake/Makefile
announce SND_SST_IPC - undocumented announce SND_SST_ATOM_HIFI2_PLATFORM - "HiFi2 Platforms"
reject_firmware sound/soc/intel/atom/sst/sst.c reject_firmware sound/soc/intel/atom/sst/sst.c
reject_firmware sound/soc/intel/atom/sst/sst_loader.c reject_firmware sound/soc/intel/atom/sst/sst_loader.c
clean_kconfig sound/soc/intel/Kconfig SND_SST_IPC clean_kconfig sound/soc/intel/Kconfig SND_SST_ATOM_HIFI2_PLATFORM
clean_mk CONFIG_SND_SST_IPC sound/soc/intel/atom/sst/Makefile clean_mk CONFIG_SND_SST_ATOM_HIFI2_PLATFORM sound/soc/intel/atom/sst/Makefile
announce SND_SST_IPC_PCI - undocumented announce SND_SST_ATOM_HIFI2_PLATFORM_PCI - "PCI HiFi2 (Merrifield) Platforms"
clean_blob sound/soc/intel/atom/sst/sst_pci.c clean_blob sound/soc/intel/atom/sst/sst_pci.c
clean_kconfig sound/soc/intel/Kconfig SND_SST_IPC_PCI clean_kconfig sound/soc/intel/Kconfig SND_SST_ATOM_HIFI2_PLATFORM_PCI
clean_mk CONFIG_SND_SST_IPC_PCI sound/soc/intel/atom/sst/Makefile clean_mk CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_PCI sound/soc/intel/atom/sst/Makefile
announce SND_SOC_RT5514 - undocumented announce SND_SOC_RT5514 - undocumented
reject_firmware sound/soc/codecs/rt5514.c reject_firmware sound/soc/codecs/rt5514.c
@ -3699,14 +3822,16 @@ reject_firmware drivers/i2c/i2c-slave-eeprom.c
clean_kconfig drivers/i2c/Kconfig I2C_SLAVE_EEPROM clean_kconfig drivers/i2c/Kconfig I2C_SLAVE_EEPROM
clean_mk CONFIG_I2C_SLAVE_EEPROM drivers/i2c/Makefile clean_mk CONFIG_I2C_SLAVE_EEPROM drivers/i2c/Makefile
# I couldn't find any uses of mhi_register_controller, that should
# fill in the required fw_image field of mhi_controller. Let me know
# if you find any uses in which the firmware is Free Software.
announce MHI_BUS - "Modem Host Interface (MHI) bus" announce MHI_BUS - "Modem Host Interface (MHI) bus"
reject_firmware drivers/bus/mhi/core/boot.c reject_firmware drivers/bus/mhi/core/boot.c
clean_kconfig drivers/bus/mhi/Kconfig MHI_BUS clean_kconfig drivers/bus/mhi/Kconfig MHI_BUS
clean_mk CONFIG_MHI_BUS drivers/bus/mhi/core/Makefile clean_mk CONFIG_MHI_BUS drivers/bus/mhi/core/Makefile
announce MHI_BUS_PCI_GENERIC - "MHI PCI controller driver"
clean_blob drivers/bus/mhi/pci_generic.c
clean_kconfig drivers/bus/mhi/Kconfig MHI_BUS_PCI_GENERIC
clean_mk CONFIG_MHI_BUS_PCI_GENERIC drivers/bus/mhi/Makefile
# Greybus # Greybus
# I couldn't find any evidence of any Free Software firmware for # I couldn't find any evidence of any Free Software firmware for
@ -3729,8 +3854,23 @@ clean_mk CONFIG_GREYBUS_BOOTROM drivers/staging/greybus/Makefile
####### #######
announce ARCH_QCOM - "Qualcomm Support" announce ARCH_QCOM - "Qualcomm Support"
clean_blob arch/arm64/boot/dts/qcom/msm8998-lenovo-miix-630.dts
clean_blob arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi
clean_blob arch/arm64/boot/dts/qcom/sc7180-trogdor-lte-sku.dtsi
clean_blob arch/arm64/boot/dts/qcom/sdm630-sony-xperia-nile.dtsi
clean_blob arch/arm64/boot/dts/qcom/sdm845-db845c.dts clean_blob arch/arm64/boot/dts/qcom/sdm845-db845c.dts
clean_blob arch/arm64/boot/dts/qcom/sdm845-mtp.dts clean_blob arch/arm64/boot/dts/qcom/sdm845-mtp.dts
clean_blob arch/arm64/boot/dts/qcom/sdm845-xiaomi-beryllium.dts
clean_blob arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
clean_blob arch/arm64/boot/dts/qcom/sm8150-hdk.dts
clean_blob arch/arm64/boot/dts/qcom/sm8150-microsoft-surface-duo.dts
clean_blob arch/arm64/boot/dts/qcom/sm8150-mtp.dts
clean_blob Documentation/devicetree/bindings/display/msm/gpu.txt
clean_blob arch/arm64/boot/dts/qcom/sm8250-mtp.dts
clean_blob arch/arm64/boot/dts/qcom/qrb5165-rb5.dts
clean_blob arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi
clean_blob arch/arm64/boot/dts/qcom/sm8350-hdk.dts
clean_blob arch/arm64/boot/dts/qcom/sm8350-mtp.dts
clean_kconfig arch/arm/mach-qcom/Kconfig ARCH_QCOM clean_kconfig arch/arm/mach-qcom/Kconfig ARCH_QCOM
clean_mk CONFIG_ARCH_QCOM arch/arm64/boot/dts/qcom/Makefile clean_mk CONFIG_ARCH_QCOM arch/arm64/boot/dts/qcom/Makefile
@ -3753,11 +3893,18 @@ clean_blob Documentation/arm/keystone/knav-qmss.rst
clean_kconfig drivers/soc/ti/Kconfig KEYSTONE_NAVIGATOR_QMSS clean_kconfig drivers/soc/ti/Kconfig KEYSTONE_NAVIGATOR_QMSS
clean_mk CONFIG_KEYSTONE_NAVIGATOR_QMSS drivers/soc/ti/Makefile clean_mk CONFIG_KEYSTONE_NAVIGATOR_QMSS drivers/soc/ti/Makefile
announce ARCH_BRCMSTB - "Broadcom BCM7XXX based boards" announce BRCMSTB_DPFE - "Broadcom STM DPFE driver"
reject_firmware_nowarn drivers/memory/brcmstb_dpfe.c reject_firmware_nowarn drivers/memory/brcmstb_dpfe.c
clean_blob drivers/memory/brcmstb_dpfe.c clean_blob drivers/memory/brcmstb_dpfe.c
clean_kconfig arch/arm/mach-bcm/Kconfig ARCH_BRCMSTB clean_kconfig drivers/memory/Kconfig BRCMSTB_DPFE
clean_mk CONFIG_ARCH_BRCMSTB drivers/memory/Makefile clean_mk CONFIG_BRCMSTB_DPFE drivers/memory/Makefile
announce ARCH_MEDIATEK - "MediaTek SoC Support"
clean_blob arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi
clean_blob arch/arm64/boot/dts/mediatek/mt8183-kukui-krane.dtsi
clean_blob arch/arm64/boot/dts/mediatek/mt8183-kukui-kakadu.dtsi
clean_kconfig arch/arm/mach-mediatek/Kconfig ARCH_MEDIATEK
clean_mk CONFIG_ARCH_MEDIATEK arch/arm64/boot/dts/mediatek/Makefile
################# #################
# Documentation # # Documentation #
@ -3771,6 +3918,15 @@ clean_sed s,usb8388,whatever,g drivers/base/firmware_loader/Kconfig 'removed blo
if $errors; then if $errors; then
echo errors above were ignored because of --force >&2 echo errors above were ignored because of --force >&2
else
echo cleaning up has completed successfully, without verification >&2
# Verification is largely manual, comparing the changes with
# those of a previous known (presumed) good version, e.g.
# git merge the previous known good version onto the current base
# version, and then git diff with this cleaned-up version.
# Creating a tarball of this version, named linux-*.*.tar,
# and running deblob-check on it may also help catch cleaning-up
# errors: .../deblob-check --use-awk -B linux-*.*.tar.
fi fi
exit 0 exit 0

File diff suppressed because it is too large Load diff

View file

@ -1,13 +1,22 @@
#! /bin/sh #! /bin/sh
# deblob-check version 2021-08-29 # deblob-check version 2021-10-23 r18408
# modified with 2021-11-17 r18471
# modified with 2021-11-18 r18476
# modified with 2022-01-27 r18550
# modified with 2022-01-29 r18573
# modified with 2022-02-23 r18607
# modified with 2021-12-20 r18515 (partial)
# modified with 2022-03-20 r18637
# modified with 2022-04-20 r18680
# modified with 2022-05-09 r18697
# Inspired in gNewSense's find-firmware script. # Inspired in gNewSense's find-firmware script.
# Written by Alexandre Oliva <lxoliva@fsfla.org> # Written by Alexandre Oliva <lxoliva@fsfla.org>
# Check http://www.fsfla.org/svn/fsfla/software/linux-libre for newer # Check http://www.fsfla.org/svn/fsfla/software/linux-libre for newer
# versions. # versions.
# Copyright 2008-2021 Alexandre Oliva <lxoliva@fsfla.org> # Copyright 2008-2022 Alexandre Oliva <lxoliva@fsfla.org>
# #
# This program is part of GNU Linux-libre, a GNU project that # This program is part of GNU Linux-libre, a GNU project that
# publishes scripts to clean up Linux so as to make it suitable for # publishes scripts to clean up Linux so as to make it suitable for
@ -2281,7 +2290,8 @@ set_except () {
defsnc 'static[ ]\(u16\|struct[ ]i2c_reg_u16\)[ ]\(bridge\|mt9\(v\(11[12]\|011\)\|m001\)\)_init\[\]\(\[2\]\)\?[ ]=' drivers/media/video/gspca/sn9c20x.c defsnc 'static[ ]\(u16\|struct[ ]i2c_reg_u16\)[ ]\(bridge\|mt9\(v\(11[12]\|011\)\|m001\)\)_init\[\]\(\[2\]\)\?[ ]=' drivers/media/video/gspca/sn9c20x.c
defsnc 'static[ ]\(u8\|struct[ ]i2c_reg_u8\)[ ]\(soi968\|ov\(76[67]0\|965[05]\)\|hv7131r\)_init\[\]\(\[2\]\)\?[ ]=' drivers/media/video/gspca/sn9c20x.c defsnc 'static[ ]\(u8\|struct[ ]i2c_reg_u8\)[ ]\(soi968\|ov\(76[67]0\|965[05]\)\|hv7131r\)_init\[\]\(\[2\]\)\?[ ]=' drivers/media/video/gspca/sn9c20x.c
defsnc 'static[ ]struct[ ]nand_ecclayout[ ]onenand_oob_128[ ]=' drivers/mtd/onenand/onenand_base.c defsnc 'static[ ]struct[ ]nand_ecclayout[ ]onenand_oob_128[ ]=' drivers/mtd/onenand/onenand_base.c
blob '#define[ ]BCM_5710_FW_\(\(MAJOR\|MINOR\|REVISION\|ENGINEERING\)_VERSION\|COMPILE_FLAGS\)[ ]*[0-9]\+\([\n]#define[ ]BCM_5710_FW_\(\(MAJOR\|MINOR\|REVISION\|ENGINEERING\)_VERSION\|COMPILE_FLAGS\)[ ]*[0-9]\+\)*' 'drivers/net/\(bnx2x[/]\)\?bnx2x_hsi\.h' # Moved down to avoid shorter earlier match.
# blob '#define[ ]BCM_5710_FW_\(\(MAJOR\|MINOR\|REVISION\|ENGINEERING\)_VERSION\|COMPILE_FLAGS\)[ ]*[0-9]\+\([\n]#define[ ]BCM_5710_FW_\(\(MAJOR\|MINOR\|REVISION\|ENGINEERING\)_VERSION\|COMPILE_FLAGS\)[ ]*[0-9]\+\)*' 'drivers/net/\(bnx2x[/]\)\?bnx2x_hsi\.h'
blob 'static[ ]int[ ]\(__devinit[ ]\)\?bnx2x_check_firmware[(]struct[ ]bnx2x[ ][*]bp[)][\n][{][^\n]*\([\n]\+[^\n}][^\n]*\)*[\n]\+[}]' 'drivers/net/\(bnx2x[/]\)\?bnx2x_main\.c' blob 'static[ ]int[ ]\(__devinit[ ]\)\?bnx2x_check_firmware[(]struct[ ]bnx2x[ ][*]bp[)][\n][{][^\n]*\([\n]\+[^\n}][^\n]*\)*[\n]\+[}]' 'drivers/net/\(bnx2x[/]\)\?bnx2x_main\.c'
blobna 'if[ ][(][(]fw_ver\[[0-3]\][ ]!=[ ]BCM_5710_FW_\(MAJOR\|MINOR\|REVISION\|ENGINEERING\)_VERSION[)]\([ ][|][|][\n][ ]*[(]fw_ver\[[0-3]\][ ]!=[ ]BCM_5710_FW_\(MAJOR\|MINOR\|REVISION\|ENGINEERING\)_VERSION[)]\)*[)][ ][{][^{}]*[}]' 'drivers/net/\(bnx2x[/]\)\?bnx2x_main\.c' blobna 'if[ ][(][(]fw_ver\[[0-3]\][ ]!=[ ]BCM_5710_FW_\(MAJOR\|MINOR\|REVISION\|ENGINEERING\)_VERSION[)]\([ ][|][|][\n][ ]*[(]fw_ver\[[0-3]\][ ]!=[ ]BCM_5710_FW_\(MAJOR\|MINOR\|REVISION\|ENGINEERING\)_VERSION[)]\)*[)][ ][{][^{}]*[}]' 'drivers/net/\(bnx2x[/]\)\?bnx2x_main\.c'
blobna 'sprintf[(]fw_file_name[ ][+][ ]offset,[ ]["]%d[.]%d[.]%d[.]%d[.]fw["]\(,[\n][ ]*BCM_5710_FW_\(MAJOR\|MINOR\|REVISION\|ENGINEERING\)_VERSION\)*[)][;]' 'drivers/net/\(bnx2x[/]\)\?bnx2x_main\.c' blobna 'sprintf[(]fw_file_name[ ][+][ ]offset,[ ]["]%d[.]%d[.]%d[.]%d[.]fw["]\(,[\n][ ]*BCM_5710_FW_\(MAJOR\|MINOR\|REVISION\|ENGINEERING\)_VERSION\)*[)][;]' 'drivers/net/\(bnx2x[/]\)\?bnx2x_main\.c'
@ -2411,7 +2421,8 @@ set_except () {
blob '#define[ ]_FW_NAME[(]api[)][ ]DRV_NAME[ ]["][.]["][ ]#api[ ]["]\.fw["]' drivers/media/video/iwmc3200top.h blob '#define[ ]_FW_NAME[(]api[)][ ]DRV_NAME[ ]["][.]["][ ]#api[ ]["]\.fw["]' drivers/media/video/iwmc3200top.h
blob '#define[ ]FW_FILE_VERSION\([ ]*[\\][\n][ ]__stringify[(]BCM_5710_FW_\(MAJOR\|MINOR\|REVISION\|ENGINEERING\)_VERSION[)]\([ ]["][.]["]\)\?\)\+' 'drivers/net/\(bnx2x/\)\?bnx2x_main\.c' blob '#define[ ]FW_FILE_VERSION\([ ]*[\\][\n][ ]__stringify[(]BCM_5710_FW_\(MAJOR\|MINOR\|REVISION\|ENGINEERING\)_VERSION[)]\([ ]["][.]["]\)\?\)\+' 'drivers/net/\(bnx2x/\)\?bnx2x_main\.c'
blobname '\(bnx2x[/]\)\?bnx2x-e[12]h\?-["][ ]FW_FILE_VERSION[ ]["]\.fw' 'drivers/net/\(bnx2x/\)\?bnx2x_main\.c' blobname '\(bnx2x[/]\)\?bnx2x-e[12]h\?-["][ ]FW_FILE_VERSION[ ]["]\.fw' 'drivers/net/\(bnx2x/\)\?bnx2x_main\.c'
blobname '\(bnx2x[/]\)\?bnx2x-e[12]h\?-\([0-9.%d]*\.fw\)\?' 'drivers/net/\(bnx2x/\)\?bnx2x_main\.c' # Moved down to avoid shorter earlier match.
# blobname '\(bnx2x[/]\)\?bnx2x-e[12]h\?-\([0-9.%d]*\.fw\)\?' 'drivers/net/\(bnx2x/\)\?bnx2x_main\.c'
blob '#define[ ]FW_VERSION\([ ]__stringify[(]FW_VERSION_\(MAJOR\|MINOR\|MICRO\)[)]\([ ]["][.]["]\)\?\([ ]*[\\][\n]\)\?\)\+' drivers/net/cxgb3/cxgb3_main.c blob '#define[ ]FW_VERSION\([ ]__stringify[(]FW_VERSION_\(MAJOR\|MINOR\|MICRO\)[)]\([ ]["][.]["]\)\?\([ ]*[\\][\n]\)\?\)\+' drivers/net/cxgb3/cxgb3_main.c
blobname 'cxgb3[/]t3fw-["][ ]FW_VERSION[ ]["]\.bin' drivers/net/cxgb3/cxgb3_main.c blobname 'cxgb3[/]t3fw-["][ ]FW_VERSION[ ]["]\.bin' drivers/net/cxgb3/cxgb3_main.c
blob '#define[ ]TPSRAM_VERSION\([ ]__stringify[(]TP_VERSION_\(MAJOR\|MINOR\|MICRO\)[)]\([ ]["][.]["]\)\?\([ ]*[\\][\n]\)\?\)\+' drivers/net/cxgb3/cxgb3_main.c blob '#define[ ]TPSRAM_VERSION\([ ]__stringify[(]TP_VERSION_\(MAJOR\|MINOR\|MICRO\)[)]\([ ]["][.]["]\)\?\([ ]*[\\][\n]\)\?\)\+' drivers/net/cxgb3/cxgb3_main.c
@ -5269,7 +5280,7 @@ set_except () {
blobname 'intel[/]ipu3-fw\.bin' drivers/staging/media/ipu3/ipu3-css-fw.h blobname 'intel[/]ipu3-fw\.bin' drivers/staging/media/ipu3/ipu3-css-fw.h
blobname 'intel[/]dsp_fw_icl\.bin' sound/soc/intel/common/soc-acpi-intel-icl-match.c blobname 'intel[/]dsp_fw_icl\.bin' sound/soc/intel/common/soc-acpi-intel-icl-match.c
# SOF stands for Sound Open Firmware, and it is Free Software. # SOF stands for Sound Open Firmware, and it is Free Software.
# blobname 'sof-icl\(\.ri\|-rt274\.tplg\)' sound/soc/intel/common/soc-acpi-intel-icl-match.c # blobname '\(sof\|reef\)-icl\(\.ri\|-rt274\.tplg\)' sound/soc/intel/common/soc-acpi-intel-icl-match.c
blobname 'iwl-dbg-tlv\.ini' drivers/net/wireless/intel/iwlwifi/iwl-dbg-tlv.c blobname 'iwl-dbg-tlv\.ini' drivers/net/wireless/intel/iwlwifi/iwl-dbg-tlv.c
accept '\(static[ ]int[ ]\|[\t]*\)brcmf_fw_request_firmware[(]' drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.c accept '\(static[ ]int[ ]\|[\t]*\)brcmf_fw_request_firmware[(]' drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.c
blobna 'snprintf[(]version[,][ ]ETHTOOL_FWVERS_LEN[,][ ]["][ ]storm[ ]%d\.%d\.%d\.%d["]\([,][ \t\n]*BCM_5710_FW_\(MAJOR\|MINOR\|REVISION\|ENGINEERING\)_VERSION\)\+[)]' drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c blobna 'snprintf[(]version[,][ ]ETHTOOL_FWVERS_LEN[,][ ]["][ ]storm[ ]%d\.%d\.%d\.%d["]\([,][ \t\n]*BCM_5710_FW_\(MAJOR\|MINOR\|REVISION\|ENGINEERING\)_VERSION\)\+[)]' drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c
@ -5278,14 +5289,14 @@ set_except () {
# macros will be caught and dropped by other much earlier patterns. # macros will be caught and dropped by other much earlier patterns.
blobname '[ ]storm[ ]%d\.%d\.%d\.%d' drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c blobname '[ ]storm[ ]%d\.%d\.%d\.%d' drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c
# These are probably older, we did not check for .ri and .tplg before. # These are probably older, we did not check for .ri and .tplg before.
# blobname 'intel[/]sof-apl\(\.ri\|-\(rt298\|da7219\|pcm512x\|wm8804\|tdf8532\)\.tplg\)' sound/soc/intel/common/soc-acpi-intel-bxt-match.c # blobname 'intel[/]\(sof\|reef\)-apl\(\.ri\|-\(rt298\|da7219\|pcm512x\|wm8804\|tdf8532\)\.tplg\)' sound/soc/intel/common/soc-acpi-intel-bxt-match.c
# blobname 'intel[/]sof-byt\(\.ri\|-\(rt5670\|rt5640\|rt5651\|da7213\|rt5645\|max98090\)\.tplg\)' sound/soc/intel/common/soc-acpi-intel-byt-match.c # blobname 'intel[/]\(sof\|reef\)-byt\(\.ri\|-\(rt5670\|rt5640\|rt5651\|da7213\|rt5645\|max98090\)\.tplg\)' sound/soc/intel/common/soc-acpi-intel-byt-match.c
# blobname 'intel[/]sof-cht\(\.ri\|-\(rt5645\|rt5670\|max98090\|nau8824\|da7213\|es8316\|rt5640\|rt5651\)\.tplg\)' sound/soc/intel/common/soc-acpi-intel-cht-match.c # blobname 'intel[/]\(sof\|reef\)-cht\(\.ri\|-\(rt5645\|rt5670\|max98090\|nau8824\|da7213\|es8316\|rt5640\|rt5651\)\.tplg\)' sound/soc/intel/common/soc-acpi-intel-cht-match.c
# blobname 'intel[/]sof-cnl\(\.ri\|-rt274\.tplg\)' sound/soc/intel/common/soc-acpi-intel-cnl-match.c # blobname 'intel[/]\(sof\|reef\)-cnl\(\.ri\|-rt274\.tplg\)' sound/soc/intel/common/soc-acpi-intel-cnl-match.c
# blobname 'intel[/]sof-glk\(\.ri\|-\(alc298\|da7219\)\.tplg\)' sound/soc/intel/common/soc-acpi-intel-glk-match.c # blobname 'intel[/]\(sof\|reef\)-glk\(\.ri\|-\(alc298\|da7219\)\.tplg\)' sound/soc/intel/common/soc-acpi-intel-glk-match.c
# blobname 'intel[/]sof-hda-generic\.tplg' sound/soc/intel/common/soc-acpi-intel-hda-match.c # blobname 'intel[/]\(sof\|reef\)-hda-generic\.tplg' sound/soc/intel/common/soc-acpi-intel-hda-match.c
# blobname 'intel[/]sof-hsw\(\.ri\|\.tplg\)' sound/soc/intel/common/soc-acpi-intel-hsw-bdw-match.c # blobname 'intel[/]\(sof\|reef\)-hsw\(\.ri\|\.tplg\)' sound/soc/intel/common/soc-acpi-intel-hsw-bdw-match.c
# blobname 'intel[/]sof-bdw\(\.ri\|-\(rt286\|rt5677\|rt5640\)\.tplg\)' sound/soc/intel/common/soc-acpi-intel-hsw-bdw-match.c # blobname 'intel[/]\(sof\|reef\)-bdw\(\.ri\|-\(rt286\|rt5677\|rt5640\)\.tplg\)' sound/soc/intel/common/soc-acpi-intel-hsw-bdw-match.c
accept '[\t][\t]pr_err[(]["]%s:[ ]request_firmware[ ]error' drivers/net/wireless/quantenna/qtnfmac/pcie/topaz_pcie.c accept '[\t][\t]pr_err[(]["]%s:[ ]request_firmware[ ]error' drivers/net/wireless/quantenna/qtnfmac/pcie/topaz_pcie.c
# New in 5.0.7. # New in 5.0.7.
@ -5326,15 +5337,15 @@ set_except () {
blobname 'gsl3676-chuwi-hi8-air\.fw' drivers/platform/x86/touchscreen_dmi.c blobname 'gsl3676-chuwi-hi8-air\.fw' drivers/platform/x86/touchscreen_dmi.c
blobname 'gsl1680-chuwi-hi10-air\.fw' drivers/platform/x86/touchscreen_dmi.c blobname 'gsl1680-chuwi-hi10-air\.fw' drivers/platform/x86/touchscreen_dmi.c
blobname 'gsl3692-pov-mobii-wintab-p1006w-v10\.fw' drivers/platform/x86/touchscreen_dmi.c blobname 'gsl3692-pov-mobii-wintab-p1006w-v10\.fw' drivers/platform/x86/touchscreen_dmi.c
# blobname 'sof-apl\(\.ri\|-\(rt298\|da7219\|pcm512x\|wm8804\|tdf8532\)\.tplg\)' sound/soc/intel/common/soc-acpi-intel-bxt-match.c # blobname '\(sof\|reef\)-apl\(\.ri\|-\(rt298\|da7219\|pcm512x\|wm8804\|tdf8532\)\.tplg\)' sound/soc/intel/common/soc-acpi-intel-bxt-match.c
# blobname 'sof-byt\(\.ri\|-\(rt5670\|rt5640\|rt5651\|da7213\|es8316\|rt5645\|max98090\)\.tplg\)' sound/soc/intel/common/soc-acpi-intel-byt-match.c # blobname '\(sof\|reef\)-byt\(\.ri\|-\(rt5670\|rt5640\|rt5651\|da7213\|es8316\|rt5645\|max98090\)\.tplg\)' sound/soc/intel/common/soc-acpi-intel-byt-match.c
# blobname 'sof-cht\(\.ri\|-\(rt5645\|rt5670\|rt5645\|max98090\|nau8824\|da7213\|es8316\|rt5640\|rt5651\)\.tplg\)' sound/soc/intel/common/soc-acpi-intel-cht-match.c # blobname '\(sof\|reef\)-cht\(\.ri\|-\(rt5645\|rt5670\|rt5645\|max98090\|nau8824\|da7213\|es8316\|rt5640\|rt5651\)\.tplg\)' sound/soc/intel/common/soc-acpi-intel-cht-match.c
# blobname 'sof-cnl\(\.ri\|-rt274\.tplg\)' sound/soc/intel/common/soc-acpi-intel-cnl-match.c # blobname '\(sof\|reef\)-cnl\(\.ri\|-rt274\.tplg\)' sound/soc/intel/common/soc-acpi-intel-cnl-match.c
# blobname 'sof-glk\(\.ri\|-\(alc298\|da7219\)\.tplg\)' sound/soc/intel/common/soc-acpi-intel-glk-match.c # blobname '\(sof\|reef\)-glk\(\.ri\|-\(alc298\|da7219\)\.tplg\)' sound/soc/intel/common/soc-acpi-intel-glk-match.c
# blobname 'sof-hda-generic\.tplg' sound/soc/intel/common/soc-acpi-intel-hda-match.c # blobname '\(sof\|reef\)-hda-generic\.tplg' sound/soc/intel/common/soc-acpi-intel-hda-match.c
# blobname 'sof-hsw\(\.ri\|\.tplg\)' sound/soc/intel/common/soc-acpi-intel-hsw-bdw-match.c # blobname '\(sof\|reef\)-hsw\(\.ri\|\.tplg\)' sound/soc/intel/common/soc-acpi-intel-hsw-bdw-match.c
# blobname 'sof-bdw\(\.ri\|-\(rt286\|rt5677\|rt5640\)\.tplg\)' sound/soc/intel/common/soc-acpi-intel-hsw-bdw-match.c # blobname '\(sof\|reef\)-bdw\(\.ri\|-\(rt286\|rt5677\|rt5640\)\.tplg\)' sound/soc/intel/common/soc-acpi-intel-hsw-bdw-match.c
# blobname 'sof-icl\(\.ri\|-rt274\.tplg\)' sound/soc/intel/common/soc-acpi-intel-icl-match.c # blobname '\(sof\|reef\)-icl\(\.ri\|-rt274\.tplg\)' sound/soc/intel/common/soc-acpi-intel-icl-match.c
blobna '[/][*][ ]brcmfmac4366c-pcie\.\(ap\.\)\?bin[ ]from[ ]linux-firmware\.git[ ]commit[ ][0-9a-f]*[ ][*][/]' drivers/net/wireless/broadcom/brcm80211/brcmfmac/feature.c blobna '[/][*][ ]brcmfmac4366c-pcie\.\(ap\.\)\?bin[ ]from[ ]linux-firmware\.git[ ]commit[ ][0-9a-f]*[ ][*][/]' drivers/net/wireless/broadcom/brcm80211/brcmfmac/feature.c
blobname 'iwlwifi-[^ ]*-[ab]0-' drivers/net/wireless/intel/iwlwifi/cfg/22000.c blobname 'iwlwifi-[^ ]*-[ab]0-' drivers/net/wireless/intel/iwlwifi/cfg/22000.c
blobname 'iwlwifi-\(\(QuZ-a0-hr\|QuQnj-b0-jf\|so-a0-\(jf\|hr\)\)-b0\|\(cc\|\(so\|ty\)-a0-gf\)-a0\)-' drivers/net/wireless/intel/iwlwifi/cfg/22000.c blobname 'iwlwifi-\(\(QuZ-a0-hr\|QuQnj-b0-jf\|so-a0-\(jf\|hr\)\)-b0\|\(cc\|\(so\|ty\)-a0-gf\)-a0\)-' drivers/net/wireless/intel/iwlwifi/cfg/22000.c
@ -5390,21 +5401,21 @@ set_except () {
blobname 'ccg_\(boot\|primary\|secondary\)\.cyacd' drivers/usb/typec/ucsi/ucsi_ccg.c blobname 'ccg_\(boot\|primary\|secondary\)\.cyacd' drivers/usb/typec/ucsi/ucsi_ccg.c
defsnc 'static[ ]const[ ]struct[ ]utf8data[ ]utf8nfdi\(cf\|\)data\[\][ ]=' fs/unicode/utf8data.h_shipped defsnc 'static[ ]const[ ]struct[ ]utf8data[ ]utf8nfdi\(cf\|\)data\[\][ ]=' fs/unicode/utf8data.h_shipped
defsc 'static[ ]const[ ]unsigned[ ]char[ ]utf8data\[64256\][ ]=' fs/unicode/utf8data.h_shipped defsc 'static[ ]const[ ]unsigned[ ]char[ ]utf8data\[64256\][ ]=' fs/unicode/utf8data.h_shipped
accept '[\t]*\.sof_fw_filename[ ]=[ ]["]\(intel[/]\)\?sof-[^" ;]*\.ri["]' sound/soc/intel/common/soc-acpi-intel-'\(b[xy]t\|cht\|cnl\|icl\|glk\|hda\|hsw-bdw\|kbl\|skl\)-match\.c' accept '[\t]*\.sof_fw_filename[ ]=[ ]["]\(intel[/]\)\?\(sof\|reef\)-[^" ;]*\.ri["]' sound/soc/intel/common/soc-acpi-intel-'\(b[xy]t\|cht\|cnl\|icl\|glk\|hda\|hsw-bdw\|kbl\|skl\)-match\.c'
accept '[\t]*\.sof_tplg_filename[ ]=[ ]["]\(intel[/]\)\?sof-[^" ;]*\.tplg["]' sound/soc/intel/common/soc-acpi-intel-'\(b[xy]t\|cht\|cnl\|icl\|glk\|hda\|hsw-bdw\|kbl\|skl\)-match\.c' accept '[\t]*\.sof_tplg_filename[ ]=[ ]["]\(intel[/]\)\?\(sof\|reef\)-[^" ;]*\.tplg["]' sound/soc/intel/common/soc-acpi-intel-'\(b[xy]t\|cht\|cnl\|icl\|glk\|hda\|hsw-bdw\|kbl\|skl\)-match\.c'
accept '[\t]*tplg_filename[ ]=[ ]devm_kasprintf[(]sdev->dev[,][ ]GFP_KERNEL[,][\n\t ]*["]%s-idisp\.tplg["][,][ ]split_ext[)]' sound/soc/sof/intel/hda.c accept '[\t]*tplg_filename[ ]=[ ]devm_kasprintf[(]sdev->dev[,][ ]GFP_KERNEL[,][\n\t ]*["]%s-idisp\.tplg["][,][ ]split_ext[)]' sound/soc/sof/intel/hda.c
accept '[\t]ret[ ]=[ ]request_firmware[(][&]plat_data->fw[,][ ]fw_filename[,][ ]sdev->dev[)]' sound/soc/sof/loader.c accept '[\t]ret[ ]=[ ]request_firmware[(][&]plat_data->fw[,][ ]fw_filename[,][ ]sdev->dev[)]' sound/soc/sof/loader.c
accept '[\t]*\.\(nocodec\|sof\)_fw_filename[ ]=[ ]["]sof-[^" ;]*\.ri["]' sound/soc/sof/sof-'\(acpi\|pci\)-dev\.c' accept '[\t]*\.\(nocodec\|sof\)_fw_filename[ ]=[ ]["]\(sof\|reef\)-[^" ;]*\.ri["]' sound/soc/sof/'\(sof\|reef\)-\(acpi\|pci\)-dev\.c'
accept '[\t]*\.\(nocodec\|sof\)_tplg_filename[ ]=[ ]["]sof-[^" ;]*\.tplg["]' sound/soc/sof/sof-'\(acpi\|pci\)-dev\.c' accept '[\t]*\.\(nocodec\|sof\)_tplg_filename[ ]=[ ]["]\(sof\|reef\)-[^" ;]*\.tplg["]' sound/soc/sof/'\(sof\|reef\)-\(acpi\|pci\)-dev\.c'
accept '[\t]ret[ ]=[ ]request_firmware[(][&]fw[,][ ]file[,][ ]sdev->dev[)]' sound/soc/sof/topology.c accept '[\t]ret[ ]=[ ]request_firmware[(][&]fw[,][ ]file[,][ ]sdev->dev[)]' sound/soc/sof/topology.c
# blobname 'sof-byt-rt5682\.tplg' sound/soc/intel/common/soc-acpi-intel-byt-match.c # blobname '\(sof\|reef\)-byt-rt5682\.tplg' sound/soc/intel/common/soc-acpi-intel-byt-match.c
# blobname 'sof-cht-rt5682\.tplg' sound/soc/intel/common/soc-acpi-intel-cht-match.c # blobname '\(sof\|reef\)-cht-rt5682\.tplg' sound/soc/intel/common/soc-acpi-intel-cht-match.c
# blobname 'sof-cml-rt5682\(-max98357a\)\?\.tplg' sound/soc/intel/common/soc-acpi-intel-cnl-match.c # blobname '\(sof\|reef\)-cml-rt5682\(-max98357a\)\?\.tplg' sound/soc/intel/common/soc-acpi-intel-cnl-match.c
# blobname 'sof-glk-rt5682\.tplg' sound/soc/intel/common/soc-acpi-intel-glk-match.c # blobname '\(sof\|reef\)-glk-rt5682\.tplg' sound/soc/intel/common/soc-acpi-intel-glk-match.c
# blobname 'sof-icl-rt5682\.tplg' sound/soc/intel/common/soc-acpi-intel-icl-match.c # blobname '\(sof\|reef\)-icl-rt5682\.tplg' sound/soc/intel/common/soc-acpi-intel-icl-match.c
# blobname '%s-idisp\.tplg' sound/soc/sof/intel/hda.c # blobname '%s-idisp\.tplg' sound/soc/sof/intel/hda.c
# blobname 'sof-\(hsw\|bdw\|byt\|cht\)\(\.ri\|\(-nocodec\)\?\.tplg\)' sound/soc/sof/sof-acpi-dev.c # blobname '\(sof\|reef\)-\(hsw\|bdw\|byt\|cht\)\(\.ri\|\(-nocodec\)\?\.tplg\)' sound/soc/sof/'\(sof\|reef\)-acpi-dev\.c'
# blobname 'sof-\(apl\|glk\|cnl\|icl\|skl\|kbl\)\(\.ri\|\(-nocodec\)\?\.tplg\)' sound/soc/sof/sof-pci-dev.c # blobname '\(sof\|reef\)-\(apl\|glk\|cnl\|icl\|skl\|kbl\)\(\.ri\|\(-nocodec\)\?\.tplg\)' sound/soc/sof/'\(sof\|reef\)-pci-dev\.c'
# New in 5.2.1, 5.1.18, and 4.19.58. # New in 5.2.1, 5.1.18, and 4.19.58.
accept '[ ][ ][ ]the[ ]latest[ ]updated[ ]microcode\.' Documentation/admin-guide/hw-vuln/spectre.rst accept '[ ][ ][ ]the[ ]latest[ ]updated[ ]microcode\.' Documentation/admin-guide/hw-vuln/spectre.rst
@ -5791,7 +5802,7 @@ set_except () {
defsnc 'static[ ]const[ ]short[ ]\(attack\|decay\)_time_tbl\[128\][ ]=' sound/synth/emux/soundfont.c defsnc 'static[ ]const[ ]short[ ]\(attack\|decay\)_time_tbl\[128\][ ]=' sound/synth/emux/soundfont.c
defsnc 'static[ ]const[ ]unsigned[ ]char[ ]bcd2000_init_sequence\[\][ ]=' sound/usb/bcd2000/bcd2000.c defsnc 'static[ ]const[ ]unsigned[ ]char[ ]bcd2000_init_sequence\[\][ ]=' sound/usb/bcd2000/bcd2000.c
defsc 'static[ ]const[ ]struct[ ]s_c2[ ]SetRate48000\[\][ ]=' sound/usb/usx2y/usbusx2yaudio.c defsc 'static[ ]const[ ]struct[ ]s_c2[ ]SetRate48000\[\][ ]=' sound/usb/usx2y/usbusx2yaudio.c
accept '[\t]*\.default_fw_filename[ ]=[ ]["]sof-[^" ;]*\.ri["]' sound/soc/sof/sof-'\(acpi\|pci\)-dev\.c' accept '[\t]*\.default_fw_filename[ ]=[ ]["]\(sof\|reef\)-[^" ;]*\.ri["]' sound/soc/sof/'\(sof\|reef\)-\(acpi\|pci\)-dev\.c'
accept '[\t]*tplg_filename[ ]=[ ]devm_kasprintf[(]sdev->dev[,][ ]GFP_KERNEL[,][\n][\t ]*["]%s-%s\.tplg["][,]' sound/soc/sof/intel/byt.c accept '[\t]*tplg_filename[ ]=[ ]devm_kasprintf[(]sdev->dev[,][ ]GFP_KERNEL[,][\n][\t ]*["]%s-%s\.tplg["][,]' sound/soc/sof/intel/byt.c
accept '[\t]*dev_dbg[(]sdev->dev[,][ ]["]request_firmware[ ]%s[ ]successful' sound/soc/sof/loader.c accept '[\t]*dev_dbg[(]sdev->dev[,][ ]["]request_firmware[ ]%s[ ]successful' sound/soc/sof/loader.c
accept '[\t]ret[ ]=[ ]request_firmware[(][&]fw[,][ ]file[,][ ]scomp->dev[)]' sound/soc/sof/topology.c accept '[\t]ret[ ]=[ ]request_firmware[(][&]fw[,][ ]file[,][ ]scomp->dev[)]' sound/soc/sof/topology.c
@ -6017,7 +6028,7 @@ set_except () {
defsc 'static[ ]struct[ ]font_data[ ]fontdata_ter16x32[ ]=' lib/fonts/font_ter16x32.c defsc 'static[ ]struct[ ]font_data[ ]fontdata_ter16x32[ ]=' lib/fonts/font_ter16x32.c
# New in 5.9.2 and 5.8.17. # New in 5.9.2 and 5.8.17.
accept '[\t][\t]\.driver_data[ ]=[ ]["]sof-[^" ;]*\.tplg["]' sound/soc/sof/sof-pci-dev.c accept '[\t][\t]\.driver_data[ ]=[ ]["]\(sof\|reef\)-[^" ;]*\.tplg["]' sound/soc/sof/'\(sof\|reef\)-pci-dev\.c'
# New in 5.9.7 and 5.4.76. # New in 5.9.7 and 5.4.76.
defsc 'static[ ]const[ ]struct[ ]font_data[ ]fontdata_ter16x32[ ]=' lib/fonts/font_ter16x32.c defsc 'static[ ]const[ ]struct[ ]font_data[ ]fontdata_ter16x32[ ]=' lib/fonts/font_ter16x32.c
@ -6279,7 +6290,74 @@ set_except () {
# Present in 4.9, links to Free Software. # Present in 4.9, links to Free Software.
accept 'ARM[ ]assembly[ ]source[ ]code[ ]available[ ]at[ ]https[:][/][/]linuxtv\.org[/]downloads[/]firmware[/]Boot\.S' firmware/WHENCE accept 'ARM[ ]assembly[ ]source[ ]code[ ]available[ ]at[ ]https[:][/][/]linuxtv\.org[/]downloads[/]firmware[/]Boot\.S' firmware/WHENCE
# New in 5.14.11, 5.10.72.
blobname '\(silead[/]\)\?gsl1680-chuwi-hi\(10plus\|book\)\.fw' drivers/platform/x86/touchscreen_dmi.c
# New in 5.15-rc.
blobname 'achc\.bin' 'Documentation/ABI/testing/sysfs-driver-ge-achc\|drivers/misc/gehc-achc\.c'
blobname 'qcom[/]sdm845[/]oneplus6[/]ipa_fws\.mbn' arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi
defsnc 'static[ ]__amode31_data[ ]u32[ ]__ctl_duald_amode31\[32\][ ]__aligned[(]128[)][ ]=' arch/s390/kernel/setup.c
defsnc '[\t]umc_v6_7_channel_idx_tbl_\(second\|first\)\[UMC_V6_7_UMC_INSTANCE_NUM\]\[UMC_V6_7_CHANNEL_INSTANCE_NUM\][ ]=' drivers/gpu/drm/amd/amdgpu/umc_v6_7.c
defsnc 'static[ ]const[ ]struct[ ]reg_sequence[ ]ej030na_init_sequence\[\][ ]=' drivers/gpu/drm/panel/panel-innolux-ej030na.c
defsnc '[\t]static[ ]const[ ]int[ ]voltages\[\][ ]=' drivers/hid/hid-logitech-hidpp.c
defsnc 'static[ ]const[ ]struct[ ]imx335_reg[ ]mode_2592x1940_regs\[\][ ]=' drivers/media/i2c/imx335.c
defsnc 'static[ ]const[ ]struct[ ]imx412_reg[ ]mode_4056x3040_regs\[\][ ]=' drivers/media/i2c/imx412.c
defsnc 'static[ ]const[ ]struct[ ]ov9282_reg[ ]mode_1280x720_regs\[\][ ]=' drivers/media/i2c/ov9282.c
defsnc 'static[ ]const[ ]u8[ ]channel_all\[59\][ ]=' drivers/net/wireless/realtek/rtlwifi/rtl8192de/phy.c
defsnc 'static[ ]const[ ]struct[ ]ab8500_v_to_cap[ ]cap_tbl\(_[ab]_thermistor\)\?\[\][ ]=' drivers/power/supply/ab8500_bmdata.c
blobname 'rtlwifi\([/]\|[\\][\\]\)rtl8188eufw\.bin' drivers/staging/r8188eu/hal/rtl8188e_hal_init.c
defsnc 'static[ ]char[ ]NEGOTIATE_GSS_HEADER\[AUTH_GSS_LENGTH\][ ]=' fs/ksmbd/auth.c
defsnc 'const[ ]u8[ ]s_default_security\[\][ ]__aligned[(]8[)][ ]=' fs/ntfs3/fsntfs.c
accept '[ ]*[*][ ][ ][ ]1[ ]0[ ]9[ ]8[ ]7[ ]6[ ]5[ ]4[ ]3[ ]2[ ]1[ ]0[ ]9[ ]8[ ]7[ ]6[ ]5[ ]4[ ]3[ ]2[ ]1[ ]0[ ]9[ ]8[ ]7[ ]6[ ]5[ ]4[ ]3[ ]2[ ]1[ ]0' fs/ntfs3/ntfs.h
defsnc 'static[ ]const[ ]u32[ ]__cacheline_aligned[ ]ck\[32\][ ]=' lib/crypto/sm4.c
defsnc 'static[ ]const[ ]u8[ ]__cacheline_aligned[ ]sbox\[256\][ ]=' lib/crypto/sm4.c
defsnc 'static[ ]const[ ]char[ ]large_mask\[\][ ]__initconst[ ]=' lib/test_bitmap.c
defsnc 'static[ ]const[ ]struct[ ]cs8409_i2c_param[ ]dolphin_c[01]_init_reg_seq\[\][ ]=' sound/pci/hda/patch_cs8409-tables.c
defsnc 'const[ ]__u8[ ]nci_rf_activate_ntf\[\][ ]=' tools/testing/selftests/nci/nci_dev.c
blobname 'brcmfmac43\(430b0\|752\)-sdio' drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
# Catch other names likely to appear in BRCMF_FW*_DEF strings in these files.
blobna 'brcmfmac43[^";) \t\n]*\(-sdio\|-pcie\)\?' drivers/net/wireless/broadcom/brcm80211/brcmfmac/'\(sdio\|pcie\|usb\)\.c'
# New in 5.15.3-gnu and 5.14.19-gnu.
blobna '[/][*][ ]linux-firmware\.git[ ]hash[ ][0-9a-f]*[ ][*][/]' drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
# New in 5.15.3-gnu.
defsnc 'static[ ]const[ ]u32[ ]____cacheline_aligned[ ]ck\[32\][ ]=' lib/crypto/sm4.c
defsnc 'static[ ]const[ ]u8[ ]____cacheline_aligned[ ]sbox\[256\][ ]=' lib/crypto/sm4.c
# New in 5.16.3, 5.15.17, 5.10.94, 5.4.174, 4.19.226, 4.14.263.
accept 'static[ ]struct[ ]dvb_usb_device_properties[ ]\(p1100\|s660\|p7500\)_properties[ ]=[ ][{][\n]\([ ]\.\(caps\|usb_ctrl\|size_of_priv\)[ ]*=[ ][^",]*,[\n]*\)*[ ]\.firmware[ ]*=[ ]' drivers/media/usb/dvb-usb/dw2102.c
# New in 5.16.4, 5.15.18, 5.10.95.
blob '#define[ ]BCM_5710_FW_\(\(MAJOR\|MINOR\|REVISION\|ENGINEERING\)_VERSION\|COMPILE_FLAGS\)\(_V15\)\?[ ]*[0-9]\+\([\n]#define[ ]BCM_5710_FW_\(\(MAJOR\|MINOR\|REVISION\|ENGINEERING\)_VERSION\|COMPILE_FLAGS\)\(_V15\)\?[ ]*[0-9]\+\)*' 'drivers/net/\(bnx2x[/]\)\?bnx2x_hsi\.h'
blob '#define[ ]FW_FILE_VERSION\(_V15\)\?\([ ]*[\\][\n][ ]__stringify[(]BCM_5710_FW_\(MAJOR\|MINOR\|REVISION\|ENGINEERING\)_VERSION\(_V15\)\?[)]\([ ]["][.]["]\)\?\)\+\([\n]\+#define[ ]FW_FILE_VERSION\(_V15\)\?\([ ]*[\\][\n][ ]__stringify[(]BCM_5710_FW_\(MAJOR\|MINOR\|REVISION\|ENGINEERING\)_VERSION\(_V15\)\?[)]\([ ]["][.]["]\)\?\)\+\)*' 'drivers/net/\(bnx2x/\)\?bnx2x_main\.c'
blobname '\(bnx2x[/]\)\?bnx2x-e[12]h\?-["][ ]FW_FILE_VERSION\(_V15\)\?[ ]["]\.fw' 'drivers/net/\(bnx2x/\)\?bnx2x_main\.c'
blobname '\(bnx2x[/]\)\?bnx2x-e[12]h\?-\([0-9.%d]*\.fw\)\?' 'drivers/net/\(bnx2x/\)\?bnx2x_main\.c'
blobna '\([,][\n \t]*BCM_5710_FW_\(MAJOR\|MINOR\|REVISION\|ENGINEERING\)_VERSION\)\+' drivers/net/wireless/broadcom/bnx2x/bnx2x_main.c
accept '[\t][\t][\t]goto[ ]request_firmware_exit[;]' drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
blobna 'bp->fw_\(major\|minor\|eng\|rev\)[ ]=[ ]BCM_5710_FW_\(MAJOR\|MINOR\|ENGINEERING\|REVISION\)_VERSION\(_V15\)\?[;]\([\n][\t]*bp->fw_\(major\|minor\|eng\|rev\)[ ]=[ ]BCM_5710_FW_\(MAJOR\|MINOR\|ENGINEERING\|REVISION\)_VERSION\(_V15\)\?[;]\)*' drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
blobna '\([,][\n \t]*bp->fw_\(major\|minor\|rev\)\)\+' drivers/net/wireless/broadcom/bnx2x/bnx2x_main.c
# New in 5.16.11, 5.15.25, 5.10.102.
blobname 'gsl1680-rwc-nanote-p8\.fw' drivers/platform/x86/touchscreen_dmi.c
# New in 5.15.27.
defsc 'static[ ]const[ ]u16[ ]amdgpu_unsupported_pciidlist\[\][ ]=' drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
# New in 5.16.17, 5.15.31, 5.10.108.
blobna 'if[ ][(]loaded_fw_\(major\|minor\|eng\|rev\)[ ]\(!=\|<\)[ ]BCM_5710_FW_\(MAJOR\|MINOR\|ENGINEERING\|REVISION\)_VERSION\(_V15\)\?\([ ][|][|][\n][\t ]*loaded_fw_\(major\|minor\|eng\|rev\)[ ]\(!=\|<\)[ ]BCM_5710_FW_\(MAJOR\|MINOR\|ENGINEERING\|REVISION\)_VERSION\(_V15\)\?\)*[)]' drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c
# New in 5.17.4 and 5.15.35.
accept '[ ][*][ ]enabled[ ]with[ ]updated[ ]microcode[.]' arch/x86/kernel/cpu/tsx.c
# New in 5.17.6, 5.15.38, 5.10.114, 5.4.192.
accept '[ ][*][ ]microcode_bsp_resume[ ]-[ ]Update[ ]boot[ ]CPU[ ]microcode[ ]during[ ]resume' arch/x86/kernel/cpu/microcode/core.c
# Trisquel changes for Aramo
blobname 'mediatek[/]WIFI_RAM_CODE_MT7922_1\.bin' drivers/net/wireless/mediatek/mt76/mt7921/mt7921.h
blobname 'mediatek[/]WIFI_MT7922_patch_mcu_1_1_hdr\.bin' drivers/net/wireless/mediatek/mt76/mt7921/mt7921.h
blobname 'qca[/]nvm_usb_%08x\.bin' drivers/bluetooth/btusb.c
blobname 'qca[/]nvm_usb_%08x%s_%04x\.bin' drivers/bluetooth/btusb.c
;; ;;
*/*freedo*.patch | */*logo*.patch) */*freedo*.patch | */*logo*.patch)

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,40 @@
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 =
@@ -1699,7 +1695,6 @@
op->name, err);
#endif
}
- failure = false;
goto free;
try_again:
@@ -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++)

File diff suppressed because it is too large Load diff

View file

@ -1,7 +1,7 @@
#!/bin/sh #!/bin/sh
# #
# Copyright (C) 2021 Luis Guzman <ark@switnet.org> # Copyright (C) 2022 Luis Guzman <ark@switnet.org>
# Copyright (C) 2008-2020 Ruben Rodriguez <ruben@trisquel.info> # Copyright (C) 2008-2022 Ruben Rodriguez <ruben@trisquel.info>
# Copyright (C) 2019 David Trudgian <dave@trudgian.net> # Copyright (C) 2019 David Trudgian <dave@trudgian.net>
# #
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
@ -19,7 +19,7 @@
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
# #
VERSION=10 VERSION=10.5
. ./config . ./config
@ -30,6 +30,7 @@ done
PRESERVEDIRS=' PRESERVEDIRS='
drivers/gpu/drm/amd/amdgpu drivers/gpu/drm/amd/amdgpu
drivers/gpu/drm/amd/pm/powerplay
drivers/gpu/drm/r128 drivers/gpu/drm/r128
drivers/gpu/drm/radeon drivers/gpu/drm/radeon
drivers/net/wireless/intel/ipw2x00 drivers/net/wireless/intel/ipw2x00
@ -60,35 +61,52 @@ done
# Enable blobless activation - https://libreplanet.org/wiki/Group:Hardware/research/gpu/radeon # Enable blobless activation - https://libreplanet.org/wiki/Group:Hardware/research/gpu/radeon
rm $TMPDIR/drivers/gpu/drm/radeon/ni.c rm $TMPDIR/drivers/gpu/drm/radeon/ni.c
sh $DATA/deblob-5.4 sh $DATA/deblob-5.15
echo "Reverting deblobbing for files patched by silent-accept-firmware" echo "Reverting deblobbing for files patched by silent-accept-firmware"
cp $TMPDIR/* . -av cp $TMPDIR/* . -av
rm -rf $TMPDIR rm -rf $TMPDIR
# Wipe dkms-versions # Wipe dkms-versions
# lists zfs / nvidia versions # lists zfs / v4l2loopback versions
echo > debian/dkms-versions echo > debian/dkms-versions
# Remove ZFS # Remove ZFS
rm zfs spl debian/scripts/misc/update-zfs.sh -rf rm zfs spl debian/scripts/misc/update-zfs.sh -rf
/bin/sed 's/spl-dkms, zfs-dkms//' -i debian/control debian.master/control.d/vars.generic debian.master/control.d/vars.* /bin/sed 's/spl-dkms, zfs-dkms//' -i debian/control \
/bin/sed '/^define build_zfs/,/^endef/d; /^define install_zfs/,/^endef/d; /zfs/d' -i debian/rules.d/2-binary-arch.mk debian.master/control.d/vars.generic \
/bin/sed '/ifeq ($(do_zfs),false)/,/endif/d' -i debian/rules debian.master/control.d/vars.*
/bin/sed '/zfs/d' -i debian.master/rules.d/* debian.master/d-i/modules/fs-core-modules debian.master/control.d/generic.inclusion-list debian.master/abi/*/*/*.modules debian/rules debian.master/control.d/vars.*
/bin/sed -i '/ifeq ($(do_zfs),false)/,/endif$/d' debian/rules
/bin/sed -i '/zfs/d' debian.master/abi/*/*.modules \
debian/rules.d/2-binary-arch.mk \
debian.master/rules.d/* \
debian/rules
# debian.master/d-i/modules/fs-core-modules \
# debian.master/control.d/generic.inclusion-list \
# debian.master/control.d/vars.*
# Remove VBox # Remove VBox
sed -i '/vbox/s|true|false|' debian.master/rules.d/amd64.mk #sed -i '/vbox/s|true|false|' debian.master/rules.d/amd64.mk
# Remove v4l2loopback
/bin/sed -i '/ifeq ($(do_v4l2loopback),false)/,/endif$/d' debian/rules
/bin/sed -i '/v4l2loopback/d' debian/rules.d/2-binary-arch.mk \
debian/rules
/bin/sed -i '/do_v4l2loopback/d' debian.master/rules.d/*
# Remove nvidia # Remove nvidia
rm -rf debian/scripts/debian/scripts/dkms-build--nvidia-N rm -rf debian/scripts/dkms-build--nvidia-N
/bin/sed '/do_dkms_nvidia = true/d' -i debian.master/abi/*/*/*.modules debian/rules debian.master/control.d/vars.* sed -i '/dkms-build--nvidia-N/d' debian.master/reconstruct
sed '/do_dkms_nvidia/,/endif/d' -i debian/rules.d/2-binary-arch.mk
/bin/sed '/do_dkms_nvidia/d' -i debian.master/rules.d/* #/bin/sed '/do_dkms_nvidia = true/d' -i debian.master/abi/*/*/*.modules \
# debian/rules \
# debian.master/control.d/vars.*
# Remove wireguard # Remove wireguard
sed '/do_dkms_wireguard/d' -i debian/rules.d/2-binary-arch.mk /bin/sed '/ifeq ($(do_dkms_wireguard),false)/,/endif$/d' -i debian/rules
/bin/sed '/do_dkms_wireguard/d' -i debian.master/rules.d/* #sed '/do_dkms_wireguard/d' -i debian/rules.d/2-binary-arch.mk
#/bin/sed '/do_dkms_wireguard/d' -i debian.master/rules.d/*
# Compile with less modules and avoid abi check # Compile with less modules and avoid abi check
echo 'skipmodule = true' >> debian.master/rules.d/0-common-vars.mk echo 'skipmodule = true' >> debian.master/rules.d/0-common-vars.mk
@ -100,7 +118,6 @@ echo 'skipabi = true' >> debian/rules.d/0-common-vars.mk
echo 'skipretpoline = true' >> debian.master/rules.d/0-common-vars.mk echo 'skipretpoline = true' >> debian.master/rules.d/0-common-vars.mk
echo 'skipretpoline = true' >> debian/rules.d/0-common-vars.mk echo 'skipretpoline = true' >> debian/rules.d/0-common-vars.mk
# Do not label packages as unsigned # Do not label packages as unsigned
sed '/bin_pkg_name_unsigned/s/linux-image-unsigned/linux-image/' -i debian/rules.d/0-common-vars.mk sed '/bin_pkg_name_unsigned/s/linux-image-unsigned/linux-image/' -i debian/rules.d/0-common-vars.mk
sed 's/.unsigned//' -i debian/scripts/control-create sed 's/.unsigned//' -i debian/scripts/control-create
@ -108,6 +125,10 @@ sed 's/.unsigned//' -i debian/scripts/control-create
line=$(grep -n ')-Ubuntu' debian/rules.d/0-common-vars.mk|cut -d: -f1) line=$(grep -n ')-Ubuntu' debian/rules.d/0-common-vars.mk|cut -d: -f1)
sed $(expr $line - 1 ),$(expr $line + 1 )d debian/rules.d/0-common-vars.mk -i sed $(expr $line - 1 ),$(expr $line + 1 )d debian/rules.d/0-common-vars.mk -i
sed s/family=ubuntu/family=trisquel/ -i debian/rules.d/0-common-vars.mk sed s/family=ubuntu/family=trisquel/ -i debian/rules.d/0-common-vars.mk
cat << EOF > debian.master/etc/kernelconfig
archs="amd64 i386 armhf arm64 ppc64el"
family='trisquel'
EOF
rename s/ubuntu/trisquel/ debian.*/config/config.common.ubuntu rename s/ubuntu/trisquel/ debian.*/config/config.common.ubuntu
@ -116,19 +137,21 @@ find debian* -type f -name *control* -exec sed 's/ with Ubuntu patches//; s/Linu
# Descriptions should not change based on the build arch # Descriptions should not change based on the build arch
sed 's/on DESC//; s/PKGVER on/PKGVER/; /^ DESC.$/d;' debian*/control.d/flavour-control.stub -i sed 's/on DESC//; s/PKGVER on/PKGVER/; /^ DESC.$/d;' debian*/control.d/flavour-control.stub -i
sed '/^firmware/d' ./debian*/abi/*/fwinfo -i sed '/^firmware/d' ./debian*/abi/fwinfo -i
echo > ./debian.master/d-i/firmware/nic-modules #echo > ./debian.master/d-i/firmware/nic-modules
echo > ./debian.master/d-i/firmware/scsi-modules #echo > ./debian.master/d-i/firmware/scsi-modules
# Disable using udev as a fallback for firmware loading # Disable using udev as a fallback for firmware loading
replace "CONFIG_FW_LOADER_USER_HELPER=y" "CONFIG_FW_LOADER_USER_HELPER=n" debian.master/config replace "CONFIG_FW_LOADER_USER_HELPER=y" "CONFIG_FW_LOADER_USER_HELPER=n" debian.master/config
# Fix armhf port build # Fix arm port build
sed -i "/CONFIG_FW_LOADER_USER_HELPER/s|'armhf': 'y',|'armhf': 'n',|g" debian.master/config/annotations sed -i "/CONFIG_FW_LOADER_USER_HELPER/s|'armhf': 'y',|'armhf': 'n',|g" debian.master/config/annotations
sed -i "/CONFIG_FW_LOADER_USER_HELPER/s|'arm64': 'y',|'arm64': 'n',|g" debian.master/config/annotations
sed -i "/CONFIG_FW_LOADER_USER_HELPER_FALLBACK/s|'armhf': 'n',|'armhf': '-',|g" debian.master/config/annotations sed -i "/CONFIG_FW_LOADER_USER_HELPER_FALLBACK/s|'armhf': 'n',|'armhf': '-',|g" debian.master/config/annotations
sed -i "/CONFIG_FW_LOADER_USER_HELPER_FALLBACK/s|'arm64': 'n',|'arm64': '-',|g" debian.master/config/annotations
# Disable ahc1ec0. # Disable aaeon.
sed -i "/AHC1EC0/d" debian.master/config/annotations sed -i "/AAEON/d" debian.master/config/annotations #10.2
cp debian.master/config debian.hwe -a cp debian.master/config debian.hwe -a

View file

@ -1,135 +0,0 @@
#!/bin/sh
#
# Copyright (C) 2008-2020 Ruben Rodriguez <ruben@trisquel.info>
# Copyright (C) 2021 Luis Guzman <ark@switnet.org>
# Copyright (C) 2021 Pablo Correa Gómez <ablocorrea@hotmail.com>
# Copyright (C) 2019 David Trudgian <dave@trudgian.net>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
VERSION=5
. ./config
for PATCH in $DATA/*.patch ; do
echo $PATCH
patch --no-backup-if-mismatch -p1 < $PATCH
done
PRESERVEDIRS='
drivers/gpu/drm/amd/amdgpu
drivers/gpu/drm/r128
drivers/gpu/drm/radeon
drivers/net/wireless/intel/ipw2x00
drivers/net/wireless/intel/iwlegacy
drivers/net/wireless/intel/iwlwifi
drivers/net/wireless/realtek/rtl8xxxu
drivers/net/wireless/realtek/rtlwifi
drivers/net/wireless/realtek/rtlwifi/rtl8188ee
drivers/net/wireless/realtek/rtlwifi/rtl8192ce
drivers/net/wireless/realtek/rtlwifi/rtl8192cu
drivers/net/wireless/realtek/rtlwifi/rtl8192de
drivers/net/wireless/realtek/rtlwifi/rtl8192ee
drivers/net/wireless/realtek/rtlwifi/rtl8192se
drivers/net/wireless/realtek/rtlwifi/rtl8723ae
drivers/net/wireless/realtek/rtlwifi/rtl8723be
drivers/net/wireless/realtek/rtlwifi/rtl8821ae
'
TMPDIR=$(mktemp -d preserve-XXXX)
PRESERVE=$(grep '^+++' $DATA/silent-accept-firmware.patch | /bin/sed 's/+++ //; s/\t.*//;' | cut -d/ -f2- | sort -u )
for FILE in $PRESERVE; do
cp $FILE $TMPDIR --parents -a
done
for DIR in $PRESERVEDIRS; do
cp $DIR $TMPDIR --parents -a
done
# Enable blobless activation - https://libreplanet.org/wiki/Group:Hardware/research/gpu/radeon
rm $TMPDIR/drivers/gpu/drm/radeon/ni.c
sh $DATA/deblob-5.8
echo "Reverting deblobbing for files patched by silent-accept-firmware"
cp $TMPDIR/* . -av
rm -rf $TMPDIR
# Wipe dkms-versions
# lists zfs / nvidia versions
echo > debian/dkms-versions
# Remove ZFS
rm zfs spl debian/scripts/misc/update-zfs.sh -rf
/bin/sed 's/spl-dkms, zfs-dkms//' -i debian/control debian.master/control.d/vars.generic debian.master/control.d/vars.*
/bin/sed '/^define build_zfs/,/^endef/d; /^define install_zfs/,/^endef/d; /zfs/d' -i debian/rules.d/2-binary-arch.mk
/bin/sed '/ifeq ($(do_zfs),false)/,/endif/d' -i debian/rules
/bin/sed '/zfs/d' -i debian.master/rules.d/* debian.master/d-i/modules/fs-core-modules debian.master/control.d/generic.inclusion-list debian.master/abi/*/*/*.modules debian/rules debian.master/control.d/vars.*
# Remove nvidia
rm -rf debian/scripts/debian/scripts/dkms-build--nvidia-N
sed -i '/dkms-build--nvidia-N/d' debian.master/reconstruct
/bin/sed '/do_dkms_nvidia = true/d' -i debian/rules
/bin/sed '/do_dkms_nvidia/,/endif/d' -i debian/rules.d/2-binary-arch.mk
# Remove VBox
/bin/sed '/do_dkms_vbox/d' -i debian.*/rules.d/* debian.hwe-*/scripts/helpers/local-mangle
# Remove wireguard
#sed '/do_dkms_wireguard/d' -i debian/rules.d/2-binary-arch.mk
/bin/sed '/do_dkms_wireguard/d' -i debian.master/rules.d/*
# Compile with less modules and avoid abi check
echo 'skipmodule = true' >> debian.master/rules.d/0-common-vars.mk
echo 'skipabi = true' >> debian.master/rules.d/0-common-vars.mk
echo 'skipmodule = true' >> debian/rules.d/0-common-vars.mk
echo 'skipabi = true' >> debian/rules.d/0-common-vars.mk
# Skip the retpoline check as there is no last release to chaeck against
echo 'skipretpoline = true' >> debian.master/rules.d/0-common-vars.mk
echo 'skipretpoline = true' >> debian/rules.d/0-common-vars.mk
# Do not label packages as unsigned
sed '/bin_pkg_name_unsigned/s/linux-image-unsigned/linux-image/' -i debian/rules.d/0-common-vars.mk
sed 's/.unsigned//' -i debian/scripts/control-create
line=$(grep -n ')-Ubuntu' debian/rules.d/0-common-vars.mk|cut -d: -f1)
sed $(expr $line - 1 ),$(expr $line + 1 )d debian/rules.d/0-common-vars.mk -i
sed 's/family=ubuntu/family=trisquel/' -i debian/rules.d/0-common-vars.mk
sed 's/ubuntu/trisquel/1' -i debian.*/etc/kernelconfig
rename s/ubuntu/trisquel/ debian.*/config/config.common.ubuntu
find debian* -type f -name *control* -exec sed 's/ with Ubuntu patches//; s/Linux/Linux-libre/g' -i {} \;
# Descriptions should not change based on the build arch
sed 's/on DESC//; s/PKGVER on/PKGVER/; /^ DESC.$/d;' debian*/control.d/flavour-control.stub -i
sed '/^firmware/d' ./debian*/abi/*/fwinfo -i
echo > ./debian.master/d-i/firmware/nic-modules
echo > ./debian.master/d-i/firmware/scsi-modules
# Disable using udev as a fallback for firmware loading
replace "CONFIG_FW_LOADER_USER_HELPER=y" "CONFIG_FW_LOADER_USER_HELPER=n" debian.master/config
cp debian.master/config debian.hwe -a
changelog "Removed non-free bits"
cp debian/changelog debian.master/changelog
cp debian/changelog debian.hwe/changelog
cp debian/changelog debian.hwe-5.8/changelog
compile