X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;ds=sidebyside;f=deblob-4.9;h=247752fad5808cdf64f7db27bcc134ca49331ca1;hb=d1062d2edf594b92e30d70e522344460dfbfd7e4;hp=46b5774f1d6efcf9f456776497c58dfeb34471b1;hpb=7827857f4183a37c8b97f1b85a72bc300ab632cf;p=releases.git diff --git a/deblob-4.9 b/deblob-4.9 index 46b5774f1d6e..247752fad580 100755 --- a/deblob-4.9 +++ b/deblob-4.9 @@ -1,6 +1,6 @@ #! /bin/sh -# Copyright (C) 2008-2016 Alexandre Oliva +# Copyright (C) 2008-2021 Alexandre Oliva # Copyright (C) 2008 Jeff Moe # Copyright (C) 2009 Rubén Rodríguez # @@ -48,7 +48,7 @@ # 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) @@ -125,7 +125,7 @@ clean_blob () { else die failed removing blobs from $name fi - check_changed $name && echo $name: removed blobs + check_changed $name && echo $name: removed blobs or mentions thereof else clean_file $1 fi @@ -373,6 +373,12 @@ WHAT IS GNU Linux-libre?\ contribution to the entire system, so its mascot deserves more\ promotion. See our web page for their images.\ 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! :)\ ' README 'added blurb about GNU Linux-libre' @@ -389,7 +395,7 @@ clean_sed '$i\ static inline int\ is_nonfree_firmware(const char *name)\ {\ - return strstr(name, NONFREE_FIRMWARE) != 0;\ + return strstr(name, NONFREE_FIRMWARE) != 0;\ }\ \ static inline int\ @@ -397,18 +403,20 @@ report_missing_free_firmware(const char *name, const char *what)\ {\ printk(KERN_ERR "%s: Missing Free %s (non-Free firmware loading is disabled)\\n", name,\ what ? what : "firmware");\ - return -EINVAL;\ + return -ENOENT;\ }\ static inline int\ reject_firmware(const struct firmware **fw,\ const char *name, struct device *device)\ {\ const struct firmware *xfw = NULL;\ - int retval;\ - report_missing_free_firmware(dev_name(device), NULL);\ + int retval, retval0;\ + retval0 = report_missing_free_firmware(dev_name(device), NULL);\ retval = request_firmware(&xfw, NONFREE_FIRMWARE, device);\ - if (!retval)\ + if (!retval) {\ release_firmware(xfw);\ + retval = retval0;\ + }\ return -EINVAL;\ }\ static inline int\ @@ -425,17 +433,15 @@ reject_firmware_direct(const struct firmware **fw,\ const char *name, struct device *device)\ {\ const struct firmware *xfw = NULL;\ - int retval;\ - report_missing_free_firmware(dev_name(device), NULL);\ + int retval, retval0;\ + if (fw) *fw = xfw;\ + retval0 = report_missing_free_firmware(dev_name(device), NULL);\ retval = request_firmware_direct(&xfw, NONFREE_FIRMWARE, device);\ - if (!retval)\ + if (!retval) {\ release_firmware(xfw);\ - return -EINVAL;\ -}\ -static inline void\ -discard_rejected_firmware(const struct firmware *fw, void *context)\ -{\ - release_firmware(fw);\ + retval = retval0;\ + }\ + return retval;\ }\ static inline int\ reject_firmware_nowait(struct module *module, int uevent,\ @@ -444,14 +450,10 @@ reject_firmware_nowait(struct module *module, int uevent,\ void (*cont)(const struct firmware *fw,\ void *context))\ {\ - int retval;\ report_missing_free_firmware(dev_name(device), NULL);\ - retval = request_firmware_nowait(module, uevent, NONFREE_FIRMWARE,\ - device, gfp, NULL,\ - discard_rejected_firmware);\ - if (retval)\ - return retval;\ - return -EINVAL;\ + /* We assume NONFREE_FIRMWARE will not be found; how could it? */\ + return request_firmware_nowait(module, uevent, NONFREE_FIRMWARE,\ + device, gfp, context, cont);\ }\ static inline int\ maybe_reject_firmware_nowait(struct module *module, int uevent,\ @@ -480,7 +482,7 @@ static inline int\ maybe_reject_ihex_firmware(const struct firmware **fw,\ const char *name, struct device *device)\ {\ - if (strstr (name, NONFREE_FIRMWARE))\ + if (is_nonfree_firmware(name))\ return reject_firmware(fw, name, device);\ else\ return request_ihex_firmware(fw, name, device);\ @@ -515,6 +517,18 @@ clean_mk CONFIG_MICROCODE_INTEL arch/x86/kernel/cpu/microcode/Makefile 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" @@ -551,6 +565,22 @@ reject_firmware arch/mips/lantiq/xway/xrx200_phy_fw.c 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 # ####### @@ -659,7 +689,7 @@ clean_blob drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c clean_kconfig drivers/gpu/drm/amd/amdgpu/Kconfig DRM_AMDGPU_CIK 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 clean_blob drivers/gpu/drm/amd/amdgpu/si_dpm.c reject_firmware drivers/gpu/drm/amd/amdgpu/gfx_v6_0.c @@ -1366,6 +1396,11 @@ clean_blob drivers/media/i2c/s5k5baf.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 @@ -2662,6 +2697,7 @@ announce SCSI_LPFC - "Emulex LightPulse Fibre Channel Support" # 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 @@ -2869,15 +2905,23 @@ clean_blob drivers/misc/lattice-ecp3-config.c 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 @@ -2890,6 +2934,11 @@ reject_firmware drivers/remoteproc/qcom_mdt_loader.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 # @@ -3028,7 +3077,7 @@ clean_blob sound/pci/echoaudio/mona.c clean_kconfig sound/pci/Kconfig SND_MONA clean_mk CONFIG_SND_MONA sound/pci/echoaudio/Makefile -announce SND_'<(Echoaudio)>' - "(Echoaudio) all of the above " +announce SND_'<(Echoaudio)>' - "(Echoaudio) all of the above" reject_firmware sound/pci/echoaudio/echoaudio.c clean_blob sound/pci/echoaudio/echoaudio.c @@ -3079,11 +3128,7 @@ clean_blob sound/pci/rme9652/hdsp.c 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 @@ -3320,6 +3365,7 @@ clean_mk CONFIG_KEYSTONE_NAVIGATOR_QMSS drivers/soc/ti/Makefile 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 @@ -3333,6 +3379,15 @@ clean_blob firmware/WHENCE if $errors; then 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 exit 0