# For each kver release, start extra with an empty string, then count
# from 1 if changes are needed that require rebuilding the tarball.
-kver=4.14 extra=
+kver=4.14 extra=1
case $1 in
--force)
clean_kconfig arch/x86/Kconfig MICROCODE
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
announce IXP4XX_NPE - "IXP4xx Network Processor Engine support"
clean_kconfig arch/arm/mach-sunxi/Kconfig MACH_SUN8I
clean_mk CONFIG_MACH_SUN8I arch/arm/boot/dts/Makefile
+# ppc
+
+announce UCODE_PATCH - "ppc microcode"
+clean_blob arch/powerpc/sysdev/micropatch.c
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig UCODE_PATCH
+clean_mk CONFIG_UCODE_PATCH arch/powerpc/sysdev/Makefile
+
+announce USB_SOF_UCODE_PATCH - "USB SOF patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig USB_SOF_UCODE_PATCH
+
+announce I2C_SPI_UCODE_PATCH - "I2C/SPI relocation patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig I2C_SPI_UCODE_PATCH
+
+announce I2C_SPI_SMC1_UCODE_PATCH - "I2C/SPI/SMC1 relocation patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig I2C_SPI_SMC1_UCODE_PATCH
+
#######
# ATM #
#######
clean_kconfig drivers/staging/media/atomisp/i2c/Kconfig VIDEO_AP1302
clean_mk CONFIG_VIDEO_AP1302 drivers/staging/media/atomisp/i2c/Makefile
-announce VIDEO_MSRLIST_HELPER - "Helper library to load, parse and apply large register lists."
-reject_firmware drivers/staging/media/atomisp/i2c/libmsrlisthelper.c
-clean_kconfig drivers/staging/media/atomisp/i2c/Kconfig VIDEO_MSRLIST_HELPER
-clean_mk CONFIG_VIDEO_MSRLIST_HELPER drivers/staging/media/atomisp/i2c/Makefile
-
announce VIDEO_ATOMISP - "Intel Atom Image Signal Processor Driver"
reject_firmware drivers/staging/media/atomisp/pci/atomisp2/atomisp_v4l2.c
clean_blob drivers/staging/media/atomisp/pci/atomisp2/atomisp_v4l2.c
clean_kconfig drivers/media/i2c/Kconfig VIDEO_S5K5BAF
clean_mk CONFIG_VIDEO_S5K5BAF drivers/media/i2c/Makefile
+announce VIDEO_VS6624 - "ST VS6624 sensor support"
+clean_blob drivers/media/i2c/vs6624.c
+clean_kconfig drivers/media/i2c/Kconfig VIDEO_VS6624
+clean_mk CONFIG_VIDEO_VS6624 drivers/media/i2c/Makefile
+
announce VIDEO_SAMSUNG_S5P_MFC - "Samsung S5P MFC 5.1 Video Codec"
reject_firmware drivers/media/platform/s5p-mfc/s5p_mfc_ctrl.c
clean_blob drivers/media/platform/s5p-mfc/s5p_mfc.c
# this is the hardware or the software inducing to the installation of
# non-Free firmware.
reject_firmware drivers/scsi/lpfc/lpfc_init.c
+clean_blob drivers/scsi/lpfc/lpfc_init.c
clean_kconfig drivers/scsi/Kconfig SCSI_LPFC
clean_mk CONFIG_SCSI_LPFC drivers/scsi/lpfc/Makefile
clean_kconfig drivers/remoteproc/Kconfig REMOTEPROC
clean_mk CONFIG_REMOTEPROC drivers/remoteproc/Makefile
+announce KEYSTONE_REMOTEPROC - "Keystone Remoteproc support"
+clean_blob drivers/remoteproc/keystone_remoteproc.c
+clean_kconfig drivers/remoteproc/Kconfig KEYSTONE_REMOTEPROC
+clean_mk CONFIG_KEYSTONE_REMOTEPROC drivers/remoteproc/Makefile
+
announce WKUP_M3_RPROC - "AMx3xx Wakeup M3 remoteproc support"
clean_blob Documentation/devicetree/bindings/remoteproc/wkup_m3_rproc.txt
clean_blob arch/arm/boot/dts/am33xx.dtsi
clean_kconfig sound/pci/Kconfig SND_HDSP
clean_mk CONFIG_SND_HDSP sound/pci/rme9652/Makefile
-announce SND_AICA - "Dreamcast Yamaha AICA sound"
-reject_firmware sound/sh/aica.c
-clean_blob sound/sh/aica.c
-clean_kconfig sound/sh/Kconfig SND_AICA
-clean_mk CONFIG_SND_AICA sound/sh/Makefile
+# SND_AICA is no longer disabled, its firmware is Free Software.
announce SND_MSND_PINNACLE - "Support for Turtle Beach MultiSound Pinnacle"
clean_blob sound/isa/msnd/msnd_pinnacle.h
# For each kver release, start extra with an empty string, then count
# from 1 if changes are needed that require rebuilding the tarball.
-kver=4.19 extra=
+kver=4.19 extra=1
case $1 in
--force)
announce MICROCODE_INTEL - "Intel microcode patch loading support"
reject_firmware 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_mk CONFIG_MICROCODE_INTEL arch/x86/kernel/cpu/microcode/Makefile
announce MICROCODE - "CPU microcode loading support"
clean_blob Documentation/x86/microcode.txt
-clean_blob arch/x86/kernel/apic/apic.c
-clean_blob drivers/hwmon/coretemp.c
clean_kconfig arch/x86/Kconfig MICROCODE
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
announce IXP4XX_NPE - "IXP4xx Network Processor Engine support"
clean_kconfig arch/arm/mach-sunxi/Kconfig MACH_SUN8I
clean_mk CONFIG_MACH_SUN8I arch/arm/boot/dts/Makefile
+# ppc
+
+announce UCODE_PATCH - "ppc microcode"
+clean_blob arch/powerpc/sysdev/micropatch.c
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig UCODE_PATCH
+clean_mk CONFIG_UCODE_PATCH arch/powerpc/sysdev/Makefile
+
+announce USB_SOF_UCODE_PATCH - "USB SOF patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig USB_SOF_UCODE_PATCH
+
+announce I2C_SPI_UCODE_PATCH - "I2C/SPI relocation patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig I2C_SPI_UCODE_PATCH
+
+announce I2C_SPI_SMC1_UCODE_PATCH - "I2C/SPI/SMC1 relocation patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig I2C_SPI_SMC1_UCODE_PATCH
+
#######
# ATM #
#######
clean_kconfig drivers/media/i2c/Kconfig VIDEO_S5K5BAF
clean_mk CONFIG_VIDEO_S5K5BAF drivers/media/i2c/Makefile
+announce VIDEO_VS6624 - "ST VS6624 sensor support"
+clean_blob drivers/media/i2c/vs6624.c
+clean_kconfig drivers/media/i2c/Kconfig VIDEO_VS6624
+clean_mk CONFIG_VIDEO_VS6624 drivers/media/i2c/Makefile
+
announce VIDEO_SAMSUNG_S5P_MFC - "Samsung S5P MFC 5.1 Video Codec"
reject_firmware drivers/media/platform/s5p-mfc/s5p_mfc_ctrl.c
clean_blob drivers/media/platform/s5p-mfc/s5p_mfc.c
# this is the hardware or the software inducing to the installation of
# non-Free firmware.
reject_firmware drivers/scsi/lpfc/lpfc_init.c
+clean_blob drivers/scsi/lpfc/lpfc_init.c
clean_kconfig drivers/scsi/Kconfig SCSI_LPFC
clean_mk CONFIG_SCSI_LPFC drivers/scsi/lpfc/Makefile
# For each kver release, start extra with an empty string, then count
# from 1 if changes are needed that require rebuilding the tarball.
-kver=4.4 extra=
+kver=4.4 extra=1
set -e
announce MICROCODE_EARLY - "Early load microcode"
clean_blob Documentation/x86/early-microcode.txt
+# Do no recommend non-Free microcode update.
+announce CPU_SUP_INTEL - "Support Intel processors"
+clean_blob arch/x86/kernel/cpu/perf_event_intel.c
+clean_kconfig arch/x86/Kconfig.cpu CPU_SUP_INTEL
+clean_mk CONFIG_CPU_SUP_INTEL arch/x86/kernel/cpu/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
announce IXP4XX_NPE - "IXP4xx Network Processor Engine support"
clean_kconfig drivers/gpu/drm/sti/Kconfig DRM_STI
clean_mk CONFIG_DRM_STI drivers/gpu/drm/sti/Makefile
+# ppc
+
+announce UCODE_PATCH - "ppc microcode"
+clean_blob arch/powerpc/sysdev/micropatch.c
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig UCODE_PATCH
+clean_mk CONFIG_UCODE_PATCH arch/powerpc/sysdev/Makefile
+
+announce USB_SOF_UCODE_PATCH - "USB SOF patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig USB_SOF_UCODE_PATCH
+
+announce I2C_SPI_UCODE_PATCH - "I2C/SPI relocation patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig I2C_SPI_UCODE_PATCH
+
+announce I2C_SPI_SMC1_UCODE_PATCH - "I2C/SPI/SMC1 relocation patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig I2C_SPI_SMC1_UCODE_PATCH
+
#######
# dma #
#######
clean_kconfig drivers/media/i2c/Kconfig VIDEO_S5K5BAF
clean_mk CONFIG_VIDEO_S5K5BAF drivers/media/i2c/Makefile
+announce VIDEO_VS6624 - "ST VS6624 sensor support"
+clean_blob drivers/media/i2c/vs6624.c
+clean_kconfig drivers/media/i2c/Kconfig VIDEO_VS6624
+clean_mk CONFIG_VIDEO_VS6624 drivers/media/i2c/Makefile
+
announce VIDEO_SAMSUNG_S5P_MFC - "Samsung S5P MFC 5.1 Video Codec"
reject_firmware drivers/media/platform/s5p-mfc/s5p_mfc_ctrl.c
clean_blob drivers/media/platform/s5p-mfc/s5p_mfc.c
# this is the hardware or the software inducing to the installation of
# non-Free firmware.
reject_firmware drivers/scsi/lpfc/lpfc_init.c
+clean_blob drivers/scsi/lpfc/lpfc_init.c
clean_kconfig drivers/scsi/Kconfig SCSI_LPFC
clean_mk CONFIG_SCSI_LPFC drivers/scsi/lpfc/Makefile
clean_kconfig sound/pci/Kconfig SND_HDSP
clean_mk CONFIG_SND_HDSP sound/pci/rme9652/Makefile
-announce SND_AICA - "Dreamcast Yamaha AICA sound"
-reject_firmware sound/sh/aica.c
-clean_blob sound/sh/aica.c
-clean_kconfig sound/sh/Kconfig SND_AICA
-clean_mk CONFIG_SND_AICA sound/sh/Makefile
+# SND_AICA is no longer disabled, its firmware is Free Software.
announce SND_MSND_PINNACLE - "Support for Turtle Beach MultiSound Pinnacle"
clean_blob sound/isa/msnd/msnd_pinnacle.h
# For each kver release, start extra with an empty string, then count
# from 1 if changes are needed that require rebuilding the tarball.
-kver=4.9 extra=
+kver=4.9 extra=1
case $1 in
--force)
announce MICROCODE_EARLY - "Early load microcode"
clean_blob Documentation/x86/early-microcode.txt
+# 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
announce IXP4XX_NPE - "IXP4xx Network Processor Engine support"
clean_kconfig arch/mips/lantiq/Kconfig XRX200_PHY_FW
clean_mk CONFIG_XRX200_PHY_FW arch/mips/lantiq/xway/Makefile
+# ppc
+
+announce UCODE_PATCH - "ppc microcode"
+clean_blob arch/powerpc/sysdev/micropatch.c
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig UCODE_PATCH
+clean_mk CONFIG_UCODE_PATCH arch/powerpc/sysdev/Makefile
+
+announce USB_SOF_UCODE_PATCH - "USB SOF patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig USB_SOF_UCODE_PATCH
+
+announce I2C_SPI_UCODE_PATCH - "I2C/SPI relocation patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig I2C_SPI_UCODE_PATCH
+
+announce I2C_SPI_SMC1_UCODE_PATCH - "I2C/SPI/SMC1 relocation patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig I2C_SPI_SMC1_UCODE_PATCH
+
#######
# ATM #
#######
clean_kconfig drivers/media/i2c/Kconfig VIDEO_S5K5BAF
clean_mk CONFIG_VIDEO_S5K5BAF drivers/media/i2c/Makefile
+announce VIDEO_VS6624 - "ST VS6624 sensor support"
+clean_blob drivers/media/i2c/vs6624.c
+clean_kconfig drivers/media/i2c/Kconfig VIDEO_VS6624
+clean_mk CONFIG_VIDEO_VS6624 drivers/media/i2c/Makefile
+
announce VIDEO_SAMSUNG_S5P_MFC - "Samsung S5P MFC 5.1 Video Codec"
reject_firmware drivers/media/platform/s5p-mfc/s5p_mfc_ctrl.c
clean_blob drivers/media/platform/s5p-mfc/s5p_mfc.c
# this is the hardware or the software inducing to the installation of
# non-Free firmware.
reject_firmware drivers/scsi/lpfc/lpfc_init.c
+clean_blob drivers/scsi/lpfc/lpfc_init.c
clean_kconfig drivers/scsi/Kconfig SCSI_LPFC
clean_mk CONFIG_SCSI_LPFC drivers/scsi/lpfc/Makefile
clean_kconfig drivers/misc/Kconfig LATTICE_ECP3_CONFIG
clean_mk CONFIG_LATTICE_ECP3_CONFIG drivers/misc/Makefile
-announce STE_MODEM_RPROC - "STE-Modem remoteproc support"
+announce REMOTEPROC - "Support for Remote Processor subsystem"
maybe_reject_firmware drivers/remoteproc/remoteproc_core.c
+clean_kconfig drivers/remoteproc/Kconfig REMOTEPROC
+clean_mk CONFIG_REMOTEPROC drivers/remoteproc/Makefile
+
+announce STE_MODEM_RPROC - "STE-Modem remoteproc support"
undefine_macro SPROC_MODEM_FIRMWARE "\"/*(DEBLOBBED)*/\"" \
"disabled non-Free firmware" drivers/remoteproc/ste_modem_rproc.c
+clean_kconfig drivers/remoteproc/Kconfig STE_MODEM_RPROC
+clean_mk CONFIG_STE_MODEM_RPROC drivers/remoteproc/Makefile
+
+announce WKUP_M3_RPROC - "AMx3xx Wakeup M3 remoteproc support"
clean_blob Documentation/devicetree/bindings/remoteproc/wkup_m3_rproc.txt
clean_blob arch/arm/boot/dts/am33xx.dtsi
clean_blob arch/arm/boot/dts/am4372.dtsi
-clean_kconfig drivers/remoteproc/Kconfig STE_MODEM_RPROC
-clean_mk CONFIG_STE_MODEM_RPROC drivers/remoteproc/Makefile
+clean_kconfig drivers/remoteproc/Kconfig WKUP_M3_RPROC
+clean_mk CONFIG_WKUP_M3_RPROC drivers/remoteproc/Makefile
announce QCOM_Q6V5_PIL - "Qualcomm Hexagon V5 Peripherial Image Loader"
reject_firmware drivers/remoteproc/qcom_q6v5_pil.c
clean_kconfig drivers/remoteproc/Kconfig QCOM_MDT_LOADER
clean_mk CONFIG_QCOM_MDT_LOADER drivers/remoteproc/Makefile
+announce QCOM_WCNSS_PIL - "Qualcomm WCNSS Peripherial Image Loader"
+clean_blob drivers/remoteproc/qcom_wcnss.c
+clean_kconfig drivers/remoteproc/Kconfig QCOM_WCNSS_PIL
+clean_mk CONFIG_QCOM_WCNSS_PIL drivers/remoteproc/Makefile
+
#########
# Sound #
clean_kconfig sound/pci/Kconfig SND_HDSP
clean_mk CONFIG_SND_HDSP sound/pci/rme9652/Makefile
-announce SND_AICA - "Dreamcast Yamaha AICA sound"
-reject_firmware sound/sh/aica.c
-clean_blob sound/sh/aica.c
-clean_kconfig sound/sh/Kconfig SND_AICA
-clean_mk CONFIG_SND_AICA sound/sh/Makefile
+# SND_AICA is no longer disabled, its firmware is Free Software.
announce SND_MSND_PINNACLE - "Support for Turtle Beach MultiSound Pinnacle"
clean_blob sound/isa/msnd/msnd_pinnacle.h
announce Documentation - "non-Free firmware scripts and documentation"
clean_blob Documentation/media/dvb-drivers/avermedia.rst
clean_blob Documentation/media/dvb-drivers/opera-firmware.rst
+clean_blob Documentation/media/v4l-drivers/ivtv.rst
clean_blob Documentation/sound/alsa/ALSA-Configuration.txt
clean_blob Documentation/sound/oss/MultiSound
clean_blob Documentation/sound/oss/PSS
# For each kver release, start extra with an empty string, then count
# from 1 if changes are needed that require rebuilding the tarball.
-kver=5.10 extra=
+kver=5.10 extra=1
case $1 in
--force)
announce MICROCODE_INTEL - "Intel microcode patch loading support"
reject_firmware 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_mk CONFIG_MICROCODE_INTEL arch/x86/kernel/cpu/microcode/Makefile
announce MICROCODE - "CPU microcode loading support"
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_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
announce IXP4XX_NPE - "IXP4xx Network Processor Engine support"
clean_kconfig arch/arm/mach-sunxi/Kconfig MACH_SUN8I
clean_mk CONFIG_MACH_SUN8I arch/arm/boot/dts/Makefile
+# ppc
+
+announce UCODE_PATCH - "ppc microcode"
+clean_blob arch/powerpc/platforms/8xx/micropatch.c
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig UCODE_PATCH
+clean_mk CONFIG_UCODE_PATCH arch/powerpc/platforms/8xx/Makefile
+
+announce USB_SOF_UCODE_PATCH - "USB SOF patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig USB_SOF_UCODE_PATCH
+
+announce I2C_SPI_UCODE_PATCH - "I2C/SPI relocation patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig I2C_SPI_UCODE_PATCH
+
+announce I2C_SPI_SMC1_UCODE_PATCH - "I2C/SPI/SMC1 relocation patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig I2C_SPI_SMC1_UCODE_PATCH
+
+announce SMC_UCODE_PATCH - "SMC relocation patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig SMC_UCODE_PATCH
+
#######
# ATM #
#######
clean_kconfig drivers/media/i2c/Kconfig VIDEO_S5K5BAF
clean_mk CONFIG_VIDEO_S5K5BAF drivers/media/i2c/Makefile
+announce VIDEO_VS6624 - "ST VS6624 sensor support"
+clean_blob drivers/media/i2c/vs6624.c
+clean_kconfig drivers/media/i2c/Kconfig VIDEO_VS6624
+clean_mk CONFIG_VIDEO_VS6624 drivers/media/i2c/Makefile
+
announce VIDEO_SAMSUNG_S5P_MFC - "Samsung S5P MFC 5.1 Video Codec"
reject_firmware drivers/media/platform/s5p-mfc/s5p_mfc_ctrl.c
clean_blob drivers/media/platform/s5p-mfc/s5p_mfc.c
# this is the hardware or the software inducing to the installation of
# non-Free firmware.
reject_firmware drivers/scsi/lpfc/lpfc_init.c
+clean_blob drivers/scsi/lpfc/lpfc_init.c
clean_kconfig drivers/scsi/Kconfig SCSI_LPFC
clean_mk CONFIG_SCSI_LPFC drivers/scsi/lpfc/Makefile
# For each kver release, start extra with an empty string, then count
# from 1 if changes are needed that require rebuilding the tarball.
-kver=5.13 extra=
+kver=5.13 extra=1
case $1 in
--force)
announce MICROCODE_INTEL - "Intel microcode patch loading support"
reject_firmware 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_mk CONFIG_MICROCODE_INTEL arch/x86/kernel/cpu/microcode/Makefile
announce MICROCODE - "CPU microcode loading support"
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_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
announce IXP4XX_NPE - "IXP4xx Network Processor Engine support"
clean_kconfig arch/arm/mach-sunxi/Kconfig MACH_SUN8I
clean_mk CONFIG_MACH_SUN8I arch/arm/boot/dts/Makefile
+# ppc
+
+announce UCODE_PATCH - "ppc microcode"
+clean_blob arch/powerpc/platforms/8xx/micropatch.c
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig UCODE_PATCH
+clean_mk CONFIG_UCODE_PATCH arch/powerpc/platforms/8xx/Makefile
+
+announce USB_SOF_UCODE_PATCH - "USB SOF patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig USB_SOF_UCODE_PATCH
+
+announce I2C_SPI_UCODE_PATCH - "I2C/SPI relocation patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig I2C_SPI_UCODE_PATCH
+
+announce I2C_SPI_SMC1_UCODE_PATCH - "I2C/SPI/SMC1 relocation patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig I2C_SPI_SMC1_UCODE_PATCH
+
+announce SMC_UCODE_PATCH - "SMC relocation patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig SMC_UCODE_PATCH
+
#######
# ATM #
#######
clean_kconfig drivers/media/i2c/Kconfig VIDEO_S5K5BAF
clean_mk CONFIG_VIDEO_S5K5BAF drivers/media/i2c/Makefile
+announce VIDEO_VS6624 - "ST VS6624 sensor support"
+clean_blob drivers/media/i2c/vs6624.c
+clean_kconfig drivers/media/i2c/Kconfig VIDEO_VS6624
+clean_mk CONFIG_VIDEO_VS6624 drivers/media/i2c/Makefile
+
announce VIDEO_SAMSUNG_S5P_MFC - "Samsung S5P MFC 5.1 Video Codec"
reject_firmware drivers/media/platform/s5p-mfc/s5p_mfc_ctrl.c
clean_blob drivers/media/platform/s5p-mfc/s5p_mfc.c
# this is the hardware or the software inducing to the installation of
# non-Free firmware.
reject_firmware drivers/scsi/lpfc/lpfc_init.c
+clean_blob drivers/scsi/lpfc/lpfc_init.c
clean_kconfig drivers/scsi/Kconfig SCSI_LPFC
clean_mk CONFIG_SCSI_LPFC drivers/scsi/lpfc/Makefile
announce MICROCODE_INTEL - "Intel microcode patch loading support"
reject_firmware 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_mk CONFIG_MICROCODE_INTEL arch/x86/kernel/cpu/microcode/Makefile
announce MICROCODE - "CPU microcode loading support"
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_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
announce IXP4XX_NPE - "IXP4xx Network Processor Engine support"
clean_kconfig arch/arm/mach-sunxi/Kconfig MACH_SUN8I
clean_mk CONFIG_MACH_SUN8I arch/arm/boot/dts/Makefile
+# ppc
+
+announce UCODE_PATCH - "ppc microcode"
+clean_blob arch/powerpc/platforms/8xx/micropatch.c
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig UCODE_PATCH
+clean_mk CONFIG_UCODE_PATCH arch/powerpc/platforms/8xx/Makefile
+
+announce USB_SOF_UCODE_PATCH - "USB SOF patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig USB_SOF_UCODE_PATCH
+
+announce I2C_SPI_UCODE_PATCH - "I2C/SPI relocation patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig I2C_SPI_UCODE_PATCH
+
+announce I2C_SPI_SMC1_UCODE_PATCH - "I2C/SPI/SMC1 relocation patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig I2C_SPI_SMC1_UCODE_PATCH
+
+announce SMC_UCODE_PATCH - "SMC relocation patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig SMC_UCODE_PATCH
+
#######
# ATM #
#######
clean_kconfig drivers/media/i2c/Kconfig VIDEO_S5K5BAF
clean_mk CONFIG_VIDEO_S5K5BAF drivers/media/i2c/Makefile
+announce VIDEO_VS6624 - "ST VS6624 sensor support"
+clean_blob drivers/media/i2c/vs6624.c
+clean_kconfig drivers/media/i2c/Kconfig VIDEO_VS6624
+clean_mk CONFIG_VIDEO_VS6624 drivers/media/i2c/Makefile
+
announce VIDEO_SAMSUNG_S5P_MFC - "Samsung S5P MFC 5.1 Video Codec"
reject_firmware drivers/media/platform/s5p-mfc/s5p_mfc_ctrl.c
clean_blob drivers/media/platform/s5p-mfc/s5p_mfc.c
# host
announce USB_XHCI_PCI_RENESAS - "Support for additional Renesas xHCI controller with firwmare"
-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_mk CONFIG_USB_XHCI_PCI_RENESAS drivers/usb/host/Makefile
# For each kver release, start extra with an empty string, then count
# from 1 if changes are needed that require rebuilding the tarball.
-kver=5.4 extra=
+kver=5.4 extra=1
case $1 in
--force)
announce MICROCODE_INTEL - "Intel microcode patch loading support"
reject_firmware 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_mk CONFIG_MICROCODE_INTEL arch/x86/kernel/cpu/microcode/Makefile
announce MICROCODE - "CPU microcode loading support"
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_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
announce IXP4XX_NPE - "IXP4xx Network Processor Engine support"
clean_kconfig arch/arm/mach-sunxi/Kconfig MACH_SUN8I
clean_mk CONFIG_MACH_SUN8I arch/arm/boot/dts/Makefile
+# ppc
+
+announce UCODE_PATCH - "ppc microcode"
+clean_blob arch/powerpc/platforms/8xx/micropatch.c
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig UCODE_PATCH
+clean_mk CONFIG_UCODE_PATCH arch/powerpc/platforms/8xx/Makefile
+
+announce USB_SOF_UCODE_PATCH - "USB SOF patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig USB_SOF_UCODE_PATCH
+
+announce I2C_SPI_UCODE_PATCH - "I2C/SPI relocation patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig I2C_SPI_UCODE_PATCH
+
+announce I2C_SPI_SMC1_UCODE_PATCH - "I2C/SPI/SMC1 relocation patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig I2C_SPI_SMC1_UCODE_PATCH
+
+announce SMC_UCODE_PATCH - "SMC relocation patch"
+clean_kconfig arch/powerpc/platforms/8xx/Kconfig SMC_UCODE_PATCH
+
#######
# ATM #
#######
clean_kconfig drivers/media/i2c/Kconfig VIDEO_S5K5BAF
clean_mk CONFIG_VIDEO_S5K5BAF drivers/media/i2c/Makefile
+announce VIDEO_VS6624 - "ST VS6624 sensor support"
+clean_blob drivers/media/i2c/vs6624.c
+clean_kconfig drivers/media/i2c/Kconfig VIDEO_VS6624
+clean_mk CONFIG_VIDEO_VS6624 drivers/media/i2c/Makefile
+
announce VIDEO_SAMSUNG_S5P_MFC - "Samsung S5P MFC 5.1 Video Codec"
reject_firmware drivers/media/platform/s5p-mfc/s5p_mfc_ctrl.c
clean_blob drivers/media/platform/s5p-mfc/s5p_mfc.c
# this is the hardware or the software inducing to the installation of
# non-Free firmware.
reject_firmware drivers/scsi/lpfc/lpfc_init.c
+clean_blob drivers/scsi/lpfc/lpfc_init.c
clean_kconfig drivers/scsi/Kconfig SCSI_LPFC
clean_mk CONFIG_SCSI_LPFC drivers/scsi/lpfc/Makefile
#! /bin/sh
-# deblob-check version 2021-08-15
+# deblob-check version 2021-08-29
# Inspired in gNewSense's find-firmware script.
# Written by Alexandre Oliva <lxoliva@fsfla.org>
defsnc 'static[ ]const[ ]struct[ ]chs_entry[ ]chs_table\[\][ ]=' drivers/mtd/sm_ftl.c
blobname 'asihpi[/]dsp\(%04x\|[0-9a-f][0-9a-f][0-9a-f][0-9a-f]\)\.bin' sound/pci/asihpi/hpidspcd.c
defsnc 'static[ ]unsigned[ ]long[ ]ident_map\[32\][ ]=' kernel/exec_domain.c
- defsnc 'static[ ]uint[ ]patch_2000\[\][ ]__initdata[ ]=' arch/powerpc/sysdev/micropatch
- # Are these ucode patches really data?!? They were taken as such
- # since gNewSense started cleaning up Linux, but they look awfully
- # suspicious to me.
- defsnc '\(static[ ]\)\?uint[ ]patch_2[0ef]00\[\][ ]\(__initdata[ ]\)\?=' arch/powerpc/sysdev/micropatch.c
defsnc 'static[ ]u32[ ]epll_div\[\]\[4\][ ]=' arch/arm/mach-s5pc100/clock.c
blobname 'iwlwifi-6000g2[ab]-' drivers/net/iwlwifi/iwl-6000.c
blobna '[/][*][^*]*\([*]\+[^/*][^*]*\)*[*]*[(]f2255usb\.bin[)][^*]*\([*]\+[^/*][^*]*\)*[*]\+[/]' drivers/media/video/s2255drv.c
defsnc '[ ]static[ ]u8[ ]bw_params1\[3\]\[34\][ ]=' drivers/media/dvb/frontends/rtl2830.c
blobname 'dvb-demod-drxk-pctv\.fw' drivers/media/video/em28xx/em28xx-dvb.c
defsnc 'static[ ]const[ ]u8[ ]\(start\|page3\)_7302\[\][ ]=' drivers/media/video/gspca/pac7302.c
- defsnc 'static[ ]const[ ]u16[ ]vs6624_p1\[\][ ]=' drivers/media/video/vs6624.c
defsnc 'static[ ]struct[ ]nand_ecclayout[ ]oob_\(2048\|4096\)_ecc[48][ ]=' drivers/mtd/nand/fsl_ifc_nand.c
defsnc 'static[ ]struct[ ]nand_ecclayout[ ]fsmc_ecc4_\(256\|224\|128\|64\)_layout[ ]=' drivers/mtd/nand/fsmc_nand.c
defsnc '[ ]static[ ]const[ ]u8[ ]dhcp_\(pattern\|mask\)\[\][ ]=' drivers/net/wireless/ath/ath6kl/cfg80211.c
blobname 'rtlwifi[/]rtl8192eu_nic\.bin' drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu.c
blobname 'intel[/]dsp_fw_bxtn\.bin' sound/soc/intel/skylake/skl.c
accept 'CONFIG_EXTRA_FIRMWARE=["][/][*][(]DEBLOBBED' Documentation/x86/early-microcode.txt
- blob '[/]lib[/]firmware[/]\([\n][^\n][^\n]*\)*\.\.\.' Documentation/x86/early-microcode.txt
+ blob '[/]lib[/]firmware[/]\([\n][^\n][^\n]*\)*[\n][ ]*\.\.\.' Documentation/x86/'\(early-microcode\.txt\|microcode\.\(txt\|rst\)\)'
blobname 'https[:][/][/]01\.org[/]linuxgraphics[/]intel-[^"\n]*' drivers/gpu/drm/i915/intel_csr.c
accept '[\t ]*["]genroms[/]kvmvapic\.bin' Documentation/ABI/testing/sysfs-firmware-qemu_fw_cfg
accept '#define[ ]XCHAL_BYTE0_FORMAT_LENGTHS[ \t238,\\\n]*' arch/xtensa/variants/test_kc705_hifi/include/variant/tie.h
accept '[\t]err[ ]=[ ]request_firmware[(][&]clm[,][ ]clm_name[,][ ]dev[)][;]' drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c
accept '[\t]*DRM_DEBUG_DRIVER[(]["]%s[ ]fw[ ]request_firmware[ ]err=%d[\\]n["][,]' drivers/gpu/drm/i915/intel_uc_fw.c
- accept 'The[ ]kernel[ ]can[ ]update[ ]microcode' Documentation/x86/microcode.txt
+ accept '\(The[ ]k\|K\)ernel[ ]can[ ]update[ ]microcode' Documentation/x86/microcode.txt
accept 'requires[ ]rebuilding[ ]the[ ]kernel[ ]each[ ]time[ ]updated[ ]microcode' Documentation/x86/microcode.txt
accept '[\t][ ][ ]If[ ]you[ ]say[ ]Y[ ]here[,][ ]you[ ]will[ ]be[ ]able[ ]to[ ]update[ ]the[ ]microcode' arch/x86/Kconfig
blobna '[,][ ]please[ ]upgrade[ ]microcode' arch/x86/events/intel/core.c
blobna 'please[ ]update[ ]microcode[ ]to[ ]version:[ ]0x%x[ ][(]or[ ]later[)]' arch/x86/kernel/apic/apic.c
- accept '[ ][*][ ]*This[ ]driver[ ]allows[ ]to[ ]upgrade[ ]microcode' arch/x86/kernel/cpu/microcode/'\(amd\|core\)\.c'
+ accept '[ ][*][ \t]*This[ ]driver[ ]allows[ ]to[ ]upgrade[ ]microcode' arch/x86/kernel/cpu/microcode/'\(amd\|core\)\.c'
accept '[\t][ ][*][ ]operation[ ]-[ ]when[ ]the[ ]other[ ]hyperthread[ ]has[ ]updated[ ]the[ ]microcode' arch/x86/kernel/cpu/microcode/core.c
accept '[ ][*][ ]mc_bp_resume[ ]-[ ]Update[ ]boot[ ]CPU[ ]microcode[ ]during[ ]resume' arch/x86/kernel/cpu/microcode/core.c
blobna '[,][ ]update[ ]BIOS[ ]or[ ]microcode[ ]of[ ]the[ ]CPU[!]' drivers/hwmon/coretemp.c
blobname 's5p-mfc-v10\.fw' drivers/media/platform/s5p-mfc/s5p_mfc.c
blobname 'example[ ]file[ ]wl1251-nvs\.bin[,][^*]*[*][/]' drivers/net/wireless/ti/wl1251/main.c
blobname '["]brcm[/]["]' drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.h
- blobname 'brcmfmac43\(143\|241b[045]\|29\|3[0459]\|340\|362\|430\(a0\)\?\|455\|5[46]\|73\)-sdio' drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
- blobname 'brcmfmac43\(602\|50\(c2\)\?\|56\|570\|5[89]\|65[bc]\|66[bc]\|71\)-pcie' drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c
- blobname 'brcmfmac43\(143\|236b\|242a\|569\|73\)' drivers/net/wireless/broadcom/brcm80211/brcmfmac/usb.c
+ blobname '\(brcm[/]\)\?brcmfmac43\(143\|241b[045]\|29\|3[0459]\|340\|362\|430\(a0\)\?\|455\|5[46]\|73\)-sdio\(\.bin\|\.txt\)\?' drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
+ blobname '\(brcm[/]\)\?brcmfmac43\(602\|50\(c2\)\?\|56\|570\|5[89]\|65[bc]\|66[bc]\|71\)-pcie\(\.bin\|\.txt\)\?' drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c
+ blobname '\(brcm[/]\)\?brcmfmac43\(143\|236b\|242a\|569\|73\)\(\.bin\|\.txt\)\?' drivers/net/wireless/broadcom/brcm80211/brcmfmac/usb.c
accept '[\t]struct[ ]brcmf_fw_name[ ]fwnames\[\][ ]=[ ][{][\n][\t][\t][{][ ]["]\.bin["]' 'drivers/net/wireless/broadcom/brcm80211/brcmfmac/\(pcie\|sdio\|usb\)\.c'
# We require a semicolon after MODULE_FIRMWARE, which this
# in-macro occurrence does not have, so take the semicolon from
# than code. That ought to be acceptable, but let's make sure no
# unwanted use slips through.
blobna 'load_msr_list' drivers/staging/media/atomisp/i2c/atomisp-libmsrlisthelper.c
- accept 'int[ ]load_msr_list[(][^)]*[)][\n][{][\n][\t]int[ ]ret[ ]=[ ]request_firmware[(]' drivers/staging/media/atomisp/i2c/atomisp-libmsrlisthelper.c
- accept 'int[ ]load_msr_list[(][^)]*[)][;]' drivers/staging/media/atomisp/include/linux/libmsrlisthelper.h
+ accept 'int[ ]load_msr_list[(][^)]*[)][\n][{][\n][\t]*int[ ]ret[ ]=[ ]request_firmware[(]' drivers/staging/media/atomisp/i2c/atomisp-libmsrlisthelper.c
+ accept '\(extern[ ]\)\?int[ ]load_msr_list[(][^)]*[)][;]' drivers/staging/media/atomisp/include/linux/libmsrlisthelper.h
blobname 'qca[/]crbtfw%02x\.tlv' drivers/bluetooth/btqca.c
blobname 'qca[/]htbtfw%02x\.tlv' drivers/bluetooth/btqca.c
blobname 'qca[/]%s' drivers/bluetooth/btqca.c
# kpu_profile is derived from a user-supplied parameter
accept '[\t]if[ ][(]!request_firmware[(][&]fw[,][ ]kpu_profile[,][ ]rvu->dev[)][)]' drivers/net/ethernet/marvell/octeontx2/af/rvu_npc.c
accept '\(static[ ]int[ ]\|[\t]*\)\?efct_request_firmware_update[(]\(struct[ ]efct[ ][*]\)\?efct[)][;]\?' drivers/scsi/elx/efct/efct_driver.c
- blobname '%s\.grp' drivers/scsi/elx/efct/efct_driver.c
+ blobname '%s\.grp' 'drivers/scsi/\(lpfc/lpfc_init\.c\|elx/efct/efct_driver\.c\)'
+
+ # Blobs that we mistakenly retained up to 5.14-rc7-gnu.
+ # Thanks to Legimet for bringing them to our attention!
+ blob '\(static[ ]\)\?uint[ ]patch_2[0ef]00\[\][ ]\(__initdata[ ]\)\?=[ ][{][0-9xa-fA-F, \t\n]*[}][;]' 'arch/powerpc/\(sysdev\|platforms/8xx\)/micropatch\.c'
+ blobna 'cpm_write_patch[(]cp[,][ ]0[xef0]*[,][ ]patch_2[0ef]00[,][ ]sizeof[(]patch_2[0ef]00[)][)][;]' 'arch/powerpc/\(sysdev\|platforms/8xx\)/micropatch\.c'
+ blob 'static[ ]const[ ]u16[ ]vs6624_p1\[\][ ]=[ ][{][0-9xa-fA-F, \t\n]*[}][;]' 'drivers/media/\(video\|i2c\)/vs6624\.c'
+ blobna 'vs6624_writeregs[(]sd[,][ ]vs6624_p1[)][;]' 'drivers/media/\(video\|i2c\)/vs6624\.c'
+
+ # Here's some inducement of non-Free stuff that we clean up better now.
+ blobname 'GenuineIntel\.bin' 'Documentation/x86/microcode\.\(rst\|txt\)'
+ blobna 'cat[ ][/]lib[/]firmware[/]\(amd\|intel\)-ucode[/][^ ]*[ ][>][^\n]*' 'Documentation/x86/microcode\.\(rst\|txt\)'
+ blobna 'cp[ ]\.\.[/]microcode\.bin[ ][^\n]*' Documentation/x86/early_microcodetxt
+ blobname '[/]lib[/]firmware[/][{]intel-ucode[,]amd-ucode[}]' 'Documentation/x86/microcode\.\(rst\|txt\)'
+ blobname 'microcode_amd_fam15h\.bin' 'Documentation/x86/microcode\.\(rst\|txt\)'
+
+ # Present in 4.19, matches a later-added firmware extension pattern.
+ accept '[\t]if[ ][(]!strcmp[(]last4[,][ ]["]\.tlv["][)][)]' drivers/fmc/fmc-write-eeprom.c
+ # Present in 4.14, matches a later-added firmware loader interface.
+ accept '[\t][\t]ret[ ]=[ ]load_msr_list[(]client[,]' drivers/staging/media/atomisp/i2c/imx/imx.c
+ # Present in 4.9 and 4.4, matches a later-added firmware loader interface.
+ accept '[\t]*\(return[ ]\)\?coda_firmware_request[(]' drivers/media/platform/code/coda-common.c
+ # Present in 4.9 and 4.4, harmless occurrence of update.*microcode.
+ accept '[ ][*][ ]Returns[:][ ]The[ ]updated[ ]number[ ]@num_saved[ ]of[ ]saved[ ]microcode[ ]patches\.' arch/x86/kernel/cpu/microcode/intel.c
+ # Present in 4.9, links to Free Software.
+ accept 'ARM[ ]assembly[ ]source[ ]code[ ]available[ ]at[ ]https[:][/][/]linuxtv\.org[/]downloads[/]firmware[/]Boot\.S' firmware/WHENCE
+
;;