updates for GNU Linux-libre 6.8.2 and others
[releases.git] / deblob-check
index 6dc45af1808c3e2fd996d3a1242591b91b2ed38f..d911ad53286b8119f193ea5f624fb38eea83f0c5 100755 (executable)
@@ -1,13 +1,13 @@
 #! /bin/sh
 
-# deblob-check version 2023-09-13 r19402
+# deblob-check version 2024-03-27 r19512
 # Inspired in gNewSense's find-firmware script.
 # Written by Alexandre Oliva <lxoliva@fsfla.org>
 
 # Check http://www.fsfla.org/svn/fsfla/software/linux-libre for newer
 # versions.
 
-# Copyright 2008-2023 Alexandre Oliva <lxoliva@fsfla.org>
+# Copyright 2008-2024 Alexandre Oliva <lxoliva@fsfla.org>
 #
 # 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
@@ -7043,6 +7043,245 @@ set_except () {
 
     # New in 6.5.3 and 6.4.16.
     blobname '%s_v2\.bin' drivers/bluetooth/btrtl.c
+    blobname 'rtl_bt[/]rtl8723\(a\|b\|bs\|cs_\(cg\|vf\|xx\)\|d\|ds\)_fw' drivers/bluetooth/btrtl.c
+    blobname 'rtl_bt[/]rtl8821\(a\|c\|cs\)_fw' drivers/bluetooth/btrtl.c
+    blobname 'rtl_bt[/]rtl8761\(a\|b\|bu\)_fw' drivers/bluetooth/btrtl.c
+    blobname 'rtl_bt[/]rtl8822\(cs\|cu\|b\)_fw' drivers/bluetooth/btrtl.c
+    blobname 'rtl_bt[/]rtl8852\(au\|bs\|bu\|cu\)_fw' drivers/bluetooth/btrtl.c
+    blobname 'rtl_bt[/]rtl8851\(bu\)_fw' drivers/bluetooth/btrtl.c
+    defsnc 'static[ ]const[ ]u16[ ]expected_results\[\][ ]=' lib/checksum_kunit.c
+    defsnc 'static[ ]const[ ]u32[ ]init_sums_no_overflow\[\][ ]=' lib/checksum_kunit.c
+
+    # New in 6.6-rc.
+    blobname 'ti-pruss[/]am65x-\(sr2-\)\?\(pru\|rtu\|txpru\)[01]-prueth-fw\.elf' 'Documentation/devicetree/bindings/net/ti,icssg-prueth\.yaml\|drivers/net/ethernet/ti/icssg/icssg_prueth\.c'
+    accept '[ ]*R:[ ]52[ ]05[ ]01[ ][0-9a-f ]*' Documentation/hid/hidintro.rst
+    accept 'Consider[ ]the[ ]following[ ]HID[ ]report[ ]descriptor::[\n 0-9A-F]*' Documentation/hid/hidintro.rst
+    accept '[ ]*hid:[ ]\[[\n 0-9a-fx,]*' Documentation/hid/hidintro.rst
+    accept '[ ]*Report[ ]Descriptor:[\n][ ]*5[ ]1[ ][0-9a-f ]*' Documentation/hid/hidintro.rst
+    blobname 'qcom[/]qrb4210[/]a610_zap\.mbn' arch/arm64/boot/dts/qcom/qrb4210-rb2.dts
+    blobname 'qcom[/]sm6115[/]LENOVO[/]J606F[/]a610_zap\.mbn' arch/arm64/boot/dts/qcom/sm6115p-lenovo-j606f.dts
+    blob '[/][*][ ]TODO:[ ]Remove[^*\n]*[ ]generation[ ]based[ ]FW[ ]names[ ][*][/]' drivers/accel/ivpu/ivpu_fw.c
+    blobname '\(intel[/]vpu[/]\)\?vpu_\(37\|40\)xx\(_v0\.0\)\?\.bin' drivers/accel/ivpu/ivpu_fw.c
+    blobname 'mediatek[/]mt7925[/]BT_RAM_CODE_MT7925_1_1_hdr\.bin' drivers/bluetooth/btmtk.h
+    blobname 'nxp[/]uart\(iw624\|aw693\)_bt\.bin\(\.se\)\?' drivers/bluetooth/btnxpuart.c
+    blobname 'qca[/]\(ap\|hmt\)btfw%02x\.tlv' drivers/bluetooth/btqca.c
+    blobname 'qca[/]\(ap\|hmt\)nv%02x\.bin' drivers/bluetooth/btqca.c
+    blobname 'mediatek[/]mt%04x[/]BT_RAM_CODE_MT%04x_1_%x_hdr\.bin' drivers/bluetooth/btusb.c
+    blobname 'qcom[/]prog_firehose_sdx6x\.elf' drivers/bus/mhi/host/pci_generic.c
+    defsnc 'static[ ]const[ ]u8[ ]i2cr_cfam\[\][ ]=' drivers/fsi/fsi-master-i2cr.c
+    accept '[\t]mipi_dsi_dcs_write_seq[(]dsi[,][ ]0xd[8f][^ ,\t\n)]*\([, \t\n]*0x[0-9a-f][0-9a-f]\)*[)][;]' drivers/gpu/drm/panel/panel-visionox-r66451.c
+    defsnc 'static[ ]const[ ]u8[ ]iqs7211_gesture_angle\[\][ ]=' drivers/input/touchscreen/iqs7211.c
+    blobname 'qcom[/]vpu-1\.0[/]venus\.mbn' drivers/media/platform/qcom/venus/core.c
+    blobname 'cs42l43\.bin' drivers/mfd/cs42l43.c
+    defsnc 'static[ ]const[ ]u8[ ]ice_dflt_vsi_rcp\[ICE_RECIPE_LEN\][ ]=' drivers/net/ethernet/intel/ice/ice_lag.c
+    blobname 'mediatek[/]mt7981_\(w[am]\|rom_patch\|eeprom_mt7976_dbdc\)\.bin' drivers/net/wireless/mediatek/mt76/mt7915/mt7915.h
+    blobname 'mediatek[/]mt7996[/]mt7996_dsp\.bin' drivers/net/wireless/mediatek/mt76/mt7996/mt7996.h
+    blobname 'gsl1680-\(bush-bush-windows-tablet\|positivo-c4128b\)\.fw' drivers/platform/x86/otuchscreen_dmi.c
+    defsnc 'static[ ]const[ ]unsigned[ ]char[ ]vt3253b0_rfmd\[CB_VT3253B0_INIT_FOR_RFMD\]\[2\][ ]=' drivers/staging/vt6655/baseband.c
+    defsnc 'static[ ]struct[ ]tsens_legacy_calibration_format[ ]tsens_\(8974\(_backup\)\?\|qcs404\)_nvmem[ ]=' drivers/thermal/qcom/tsens-v0_1.c
+    accept 'static[ ]int[ ]cs35l56_hda_request_firmware_file[(]struct' sound/pci/hda/cs35l56_hda.c
+    blobname '%scs35l56%s-%02x-dsp1-misc\(-%s\)*\.%s' sound/pci/hda/cs35l56_hda.c
+    accept 'static[ ]void[ ]cs35l56_hda_request_firmware_files[(]struct' sound/pci/hda/cs35l56_hda.c
+    accept '[\t]*\(if[ ][(][!]\|ret[ ]=[ ]\)cs35l56_hda_request_firmware_file[(]cs35l56[,][ ]wmfw_firmware[,]' sound/pci/hda/cs35l56_hda.c
+    accept '[\t]*cs35l56_hda_request_firmware_file[(]cs35l56[,]' sound/pci/hda/cs35l56_hda.c
+    accept '[\t]*cs35l56_hda_request_firmware_files[(]cs35l56[,][ ][&]wmfw_firmware[,]' sound/pci/hda/cs35l56_hda.c
+     # This appears to be data.
+    accept '[\t]scnprintf[(]tas_priv->coef_binaryname[,][ ]64[,][ ]["]TAS2XXX%04X\.bin["]' sound/pci/hda/tas2781_hda_i2c.c
+    accept '[\t][\t]\.fw_filename[ ]=[ ]["]sof-vangogh\.ri["]' sound/soc/amd/acp-config.c
+    blobname 'aw88261_acf\.bin' sound/soc/codecs/aw88261.h
+    accept 'static[ ]int[ ]aw88261_request_firmware_file[(]struct' sound/soc/codecs/aw88261.c
+    accept '[\t]ret[ ]=[ ]aw88261_request_firmware_file[(]aw88261[)]' sound/soc/codecs/aw88261.c
+    accept '[\t]*["]aw88261_request_firmware_file[ ]failed' sound/soc/codecs/aw88261.c
+    defsnc 'static[ ]const[ ]struct[ ]reg_sequence[ ]rt1017_blind_write\[\][ ]=' sound/soc/codecs/rt1017-sdca-sdw.c
+    defsnc 'static[ ]const[ ]struct[ ]reg_default[ ]rt1017_sdca_reg_defaults\[\][ ]=' sound/soc/codecs/rt1017-sdca-sdw.h
+    blobname 'rt5663-tplg\.bin' sound/soc/intel/avs/board_selection.c
+    blobname 'es8336-tplg\.bin' sound/soc/intel/avs/board_selection.c
+    blobname 'hda-%08x-tplg\.bin' sound/soc/intel/avs/pcm.c
+    blobname 'hda-8086-generic-tplg\.bin' sound/soc/intel/avs/pcm.c
+    blobname 'hda-generic-tplg\.bin' sound/soc/intel/avs/pcm.c
+    accept '[\t]ret[ ]=[ ]request_firmware[(][&]\(sdev->basefw\.fw\|adata->fw_dbin\)[,][ ]adata->fw_\(code\|data\)_bin' sound/soc/sof/amd/acp-loader.c
+    accept '[\t][\t]adata->fw_\(code\|data\)_bin[ ]=[ ]kasprintf[(]GFP_KERNEL[,][ ]["]%s[/]sof-%s-\(code\|data\)\.bin["]' sound/soc/sof/amd/acp.c
+    accept '[\t][\t]\[SOF_IPC\][ ]=[ ]["]sof-vangogh\.ri["]' sound/soc/sof/amd/pci-vangogh.c
+    accept '[\t][\t]\[SOF_INTEL_IPC4\][ ]=[ ]["]sof-lnl\.ri["]' sound/soc/sof/intel/pci-lnl.c
+    defsnc 'static[ ]uint8_t[ ]frag\(_[01]\|6_[012]\)\[\][ ]=' tools/testing/selftests/bpf/ip_check_defrag_frags.h
+    accept '[\t][$][(]Q[)]\.[/]\(no\)\?libc-test[ ][>][ ]["][$][(]CURDIR[)][/]run\.out["]' tools/testing/selftests/nolibc/Makefile
+    accept '[\t][\t]echo[ ]["][ ]---[ ]Summary:[ ]Exit[ ]code[ ][$]retcode[ ]from[ ][$]flavor[,][ ]see[ ]Make\.out' tools/testing/selftests/rcutorture/bin/torture.sh
+
+    # New in 6.7-rc.
+    accept '[\t ]*expose[ ]the[ ]CPUID[ ]to[ ]the[ ]guest\.[ ]If[ ]the[ ]host[ ]has[ ]updated[ ]microcode[ ]the' 'Documentation/admin-guide/hw-vuln/\(mds\|processor_mmio_stale_data\|tsx_async_abort\).rst'
+    blobname 'tps25750\.bin' Documentation/devicetree/bindings/usb/ti,tps6598x.yaml
+    blobname 'qcom[/]qcm6490[/]fairphone5[/]ipa_fws\.mdt' arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts
+    blobname 'qcom[/]qcm2290[/]\(adsp\|modem\)\.mbn' arch/arm64/boot/dts/qcom/qrb2210-rb1.dts
+    blobname 'ti-pruss[/]am65x-sr2-\(pru\|\(\|tx\)rtu\)[01]-prueth-fw\.elf' 'arch/arm64/boot/dts/ti/k3-am654-\(icssg2\|idk\).dtso'
+    defsnc '[\t]const[ ]unsigned[ ]int[ ]\(presorted_event\|event_index\)_table\[\][ ]=' arch/powerpc/perf/power6-pmu.c
+    blobname 'amd-ucode[/]microcode_amd_fam%02hhxh\.bin' arch/x86/kernel/cpu/microcode/amd.c
+    accept '[ ]\*[ ]thread[ ]completed[ ]the[ ]update\.[ ]See[ ]microcode_nmi_handler[(][)][ ]for[ ]details\.' arch/x86/kernel/cpu/microcode/core.c
+    accept '[ ]\*[ ]while[ ]the[ ]primary[ ]thread[ ]updates[ ]the[ ]microcode\.[ ]Instrumentation[ ]can[ ]end' arch/x86/kernel/cpu/microcode/core.c
+    accept '[ ]\*[ ]*NMI[ ]hits[ ]while[ ]the[ ]primary[ ]thread[ ]updates[ ]the[ ]microcode[ ]the[ ]resulting' arch/x86/kernel/cpu/microcode/core.c
+    blobname 'amdgpu[/]umsch_mm_4_0_0\.bin' drivers/gpu/drm/amd/amdgpu/amdgpu_umsch_mm.c
+    accept '[\t]r[ ]=[ ]amdgpu_ucode_request[(]adev[,][ ][&]adev->umsch_mm\.fw[,][ ]fw_name[)]' drivers/gpu/drm/amd/amdgpu/amdgpu_umsch_mm.c
+    blobname 'amdgpu[/]vcn_4_0_5\.bin' drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
+    accept '[\t]ret[ ]=[ ]amdgpu_ucode_request[(]adev[,][ ][&]adev->vpe\.fw[,][ ]fw_name[)]' drivers/gpu/drm/amd/amdgpu/amdgpu_vpe.c
+    defsnc '[\t]*\[UMC_V12_0_CHANNEL_INSTANCE_NUM\][ ]=' drivers/gpu/drm/amd/amdgpu/umc_v12_0.c
+    blobname 'amdgpu[/]vpe_6_1_0\.bin' drivers/gpu/drm/amd/amdgpu/vpe_v6_1.c
+    blobname 'amdgpu[/]dcn_3_5_dmcub\.bin' drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+    defsnc 'static[ ]const[ ]unsigned[ ]long[ ]long[ ]pq_numerator\[MAX_HW_POINTS[ ][+][ ]1\][ ]=' drivers/gpu/drm/amd/display/modules/color/color_gamma.c
+    blobname 'amdgpu[/]smu_13_0_6\.bin' drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_6_ppt.c
+    accept '[\t]ret[ ]=[ ]amdgpu_ucode_request[(]adev[,][ ][&]adev->pm\.fw[,][ ]fw_name[)]' drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_6_ppt.c
+    blobname 'amdgpu[/]smu_14_0_2\.bin' drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0.c
+    defsnc 'static[ ]const[ ]struct[ ]dphy_pll_vco_prop[ ]vco_prop_map\[\][ ]=' drivers/gpu/drm/bridge/imx/imx93-mipi-dsi.c
+    defsnc 'static[ ]const[ ]struct[ ]dphy_pll_hsfreqrange[ ]hsfreqrange_map\[\][ ]=' drivers/gpu/drm/bridge/imx/imx93-mipi-dsi.c
+    blobname '#define[ ]NVKM_GSP_FIRMWARE[(]chip[)][ \t]*\\[\n]MODULE_FIRMWARE[        ]*[(][^\n;]*#chip[^\n;]*[)][    ]*\?\([;][ \t]*\\[\n]MODULE_FIRMWARE[   ]*[(][^\n;]*#chip[^\n;]*[)][    ]*\)*' drivers/gpu/drm/nouveau/nvkm/subdev/gsp/r535.c
+    blobna 'NVKM_GSP_FIRMWARE[         ]*[(][^\n;]*[)][        ]*[;]\([        \n]*NVKM_GSP_FIRMWARE[  ]*[(][^\n;]*[)][        ]*[;]\)*'
+    blobname 'a660_zap\.mbn' drivers/gpu/drm/msm/adreno/adreno_device.c
+    blobname 'a730_sqe\.fw' drivers/gpu/drm/msm/adreno/adreno_device.c
+    blobname 'gmu_gen70000\.bin' drivers/gpu/drm/msm/adreno/adreno_device.c
+    blobname 'a730_zap\.mdt' drivers/gpu/drm/msm/adreno/adreno_device.c
+    blobname 'a740_sqe\.fw' drivers/gpu/drm/msm/adreno/adreno_device.c
+    blobname 'gmu_gen70200\.bin' drivers/gpu/drm/msm/adreno/adreno_device.c
+    blobname 'a740_zap\.mdt' drivers/gpu/drm/msm/adreno/adreno_device.c
+    blobname 'nvidia[/]["]#chip["][/]gsp[/]\(boot\(er_\(\|un\)load\|loader\)\|gsp\)-535\.113\.01\.bin' drivers/gpu/drm/nouveau/nvkm/subdev/gsp/r535.c
+    accept '[\t]mipi_dsi_dcs_write_seq[(]dsi[,][ ]\(0xd3[,][ ]0x00[,][ ]0x00[,][ ]0x07\|0xd5[,][ ]0x19[,][ ]0x19[,][ ]0x18\|0xd6[,][ ]0x18[,][ ]0x18[,][ ]0x19\|0xe0[,][ ]0x00[,][ ]0x03[,][ ]0x09\)[^ ,\t\n)]*\([, \t\n]*0x[0-9a-f][0-9a-f]\)*[)][;]' drivers/gpu/drm/panel/panel-leadtek-ltk050h3146w.c
+    defsnc 'static[ ]const[ ]enum[ ]led_brightness[ ]joycon_player_led_patterns\[JC_NUM_LED_PATTERNS\]\[JC_NUM_LEDS\][ ]=' drivers/hid/hid-nintendo.c
+    defsnc 'static[ ]const[ ]struct[ ]hi556_reg[ ]mode_1296x722_regs\[\][ ]=' drivers/media/i2c/hi556.c
+    defsnc 'static[ ]const[ ]struct[ ]ov13b10_reg[ ]mode_1364x768_120fps_regs\[\][ ]=' drivers/media/i2c/ov13b10.c
+    defsnc 'static[ ]const[ ]u16[ ]cmt_vals_out\[\]\[15\][ ]=' drivers/media/pci/mgb4/mgb4_cmt.c
+    defsnc 'static[ ]const[ ]u32[ ]cmt_freq\[\][ ]=' drivers/media/pci/mgb4/mgb4_cmt.c
+    defsnc 'static[ ]const[ ]struct[ ]mgb4_i2c_kv[ ]gmsl_i2c\[\][ ]=' drivers/media/pci/mgb4/mgb4_vin.c
+    blobname 'qcom[/]venus-\(1\.8\|[45]\.2\|5\.4\)[/]venus\.mbn' drivers/media/platform/qcom/venus/core.c
+    defsnc 'static[ ]const[ ]u8[ ]ice_lport_rcp\[ICE_RECIPE_LEN\][ ]=' drivers/net/ethernet/intel/ice/ice_lag.c
+    blobname 'mediatek[/]mt7988_wo_[01]\.bin' drivers/net/ethernet/mediatek/mtk_wed_wo.h
+    accept 'static[ ]int[ ]ath11k_fw_request_firmware_api_n[(]' drivers/net/wireless/ath/ath11k/fw.c
+    accept '[\t]ab->fw\.fw[ ]=[ ]ath11k_core_firmware_request[(]ab[,][ ]name[)]' drivers/net/wireless/ath/ath11k/fw.c
+    accept '[\t]ret[ ]=[ ]ath11k_fw_request_firmware_api_n[(]ab[,][ ]ATH11K_FW_API2_FILE[)]' drivers/net/wireless/ath/ath11k/fw.c
+    blobname 'firmware-2\.bin' drivers/net/wireless/ath/ath11k/fw.h
+    accept '[  ]*ret[ ]=[ ]request_firmware[(][&]fw[,][ ]hif_dev->fw_name[,][\n][      ]*[&]hif_dev->udev->dev[)][;]' drivers/net/wireless/ath/ath9k/hif_usb.c
+    blobname 'mediatek[/]mt7925[/]WIFI_RAM_CODE_MT7925_1_1\.bin' drivers/net/wireless/mediatek/mt76/mt792x.h
+    blobname 'mediatek[/]mt7925[/]WIFI_MT7925_PATCH_MCU_1_1_hdr\.bin' drivers/net/wireless/mediatek/mt76/mt792x.h
+    defsnc 'static[ ]const[ ]struct[ ]rtw89_txpwr_byrate_cfg[ ]rtw89_8851b_txpwr_byrate_type2\[\][ ]' drivers/net/wireless/realtek/rtw89/rtw8851b_table.c
+    defsnc 'static[ ]const[ ]struct[ ]msm_gpio_wakeirq_map[ ]msm8226_mpm_map\[\][ ]=' drivers/pinctrl/qcom/pinctrl-msm8226.c
+    defsnc 'static[ ]const[ ]struct[ ]msm_gpio_wakeirq_map[ ]msm8996_mpm_map\[\][ ]=' drivers/pinctrl/qcom/pinctrl-msm8996.c
+    defsnc 'static[ ]const[ ]struct[ ]msm_gpio_wakeirq_map[ ]msm8x74_mpm_map\[\][ ]=' drivers/pinctrl/qcom/pinctrl-msm8x74.c
+    defsnc 'static[ ]const[ ]struct[ ]msm_gpio_wakeirq_map[ ]sdm660_mpm_map\[\][ ]=' drivers/pinctrl/qcom/pinctrl-sdm660.c
+    defsnc 'static[ ]const[ ]struct[ ]msm_gpio_wakeirq_map[ ]sm6115_mpm_map\[\][ ]=' drivers/pinctrl/qcom/pinctrl-sm6115.c
+    defsnc 'static[ ]const[ ]struct[ ]msm_gpio_wakeirq_map[ ]sm6125_mpm_map\[\][ ]=' drivers/pinctrl/qcom/pinctrl-sm6125.c
+    defsnc 'unsigned[ ]char[ ]vt3253b0_agc4_rfmd2959\[CB_VT3253B0_AGC_FOR_RFMD2959\]\[2\][ ]=' drivers/staging/vt6655/baseband.c
+    defsc 'unsigned[ ]char[ ]vt3253b0_airoha2230\[CB_VT3253B0_INIT_FOR_AIROHA2230\]\[2\][ ]=' drivers/staging/vt6655/baseband.c
+    defsc 'static[ ]unsigned[ ]char[ ]vt3253b0_uw2451\[CB_VT3253B0_INIT_FOR_UW2451\]\[2\][ ]=' drivers/staging/vt6655/baseband.c
+    defsnc 'static[ ]unsigned[ ]char[ ]vt3253b0_agc\[CB_VT3253B0_AGC\]\[2\][ ]=' drivers/staging/vt6655/baseband.c
+    accept '[/][*][ ]Chen-Yu[ ]Tsai[\'"'"']s[ ]regdb[ ]certificate[ ][*][/][\n0-9a-fx, ]*' net/wireless/certs/wens.hex
+    accept '[\t]*\.fw_filename[ ]=[ ]["]sof-acp_6_3\.ri["]' sound/soc/amd/acp-config.c
+    accept 'static[ ]int[ ]aw87390_request_firmware_file[(]struct' sound/soc/codecs/aw87390.c
+    accept '[\t]ret[ ]=[ ]aw87390_request_firmware_file[(]aw87390[)]' sound/soc/codecs/aw87390.c
+    accept '[\t]*["]aw87390_request_firmware_file[ ]failed' sound/soc/codecs/aw87390.c
+    blobname 'aw87390_acf\.bin' sound/soc/codecs/aw87390.h
+    accept 'static[ ]int[ ]aw88399_request_firmware_file[(]struct' sound/soc/codecs/aw88399.c
+    accept '[\t]ret[ ]=[ ]aw88399_request_firmware_file[(]aw88399[)]' sound/soc/codecs/aw88399.c
+    accept '[\t]*["]aw88399_request_firmware_file[ ]failed' sound/soc/codecs/aw88399.c
+    blobname 'aw88399_acf\.bin' sound/soc/codecs/aw88399.h
+    blobname 'rt5514-tplg\.bin' sound/soc/intel/avs/board_selection.c
+    accept '[\t][\t]\[SOF_IPC_TYPE_3\][ ]=[ ]["]sof-acp_6_3\.ri["]' sound/soc/sof/amd/pci-acp63.c
+    accept '[\t][\t]\[SOF_IPC_TYPE_3\][ ]=[ ]["]sof-rmb\.ri["]' sound/soc/sof/amd/pci-rmb.c
+    accept '[\t][\t]\[SOF_IPC_TYPE_3\][ ]=[ ]["]sof-rn\.ri["]' sound/soc/sof/amd/pci-rn.c
+    accept '[\t][\t]\[SOF_IPC_TYPE_3\][ ]=[ ]["]sof-vangogh\.ri["]' sound/soc/sof/amd/pci-vangogh.c
+    accept '[\t][\t]\[SOF_IPC_TYPE_3\][ ]=[ ]["]sof-imx8\(x\|\)\.ri["]' sound/soc/sof/imx/pci-imx8.c
+    accept '[\t][\t]\[SOF_IPC_TYPE_3\][ ]=[ ]["]sof-imx8m\.ri["]' sound/soc/sof/imx/pci-imx8m.c
+    accept '[\t][\t]\[SOF_IPC_TYPE_3\][ ]=[ ]["]sof-imx8ulp\.ri["]' sound/soc/sof/imx/pci-imx8ulp.c
+    accept '[\t][\t]\[SOF_IPC_TYPE_3\][ ]=[ ]["]sof-bdw\.ri["]' sound/soc/sof/intel/bdw.c
+    accept '[\t][\t]\[SOF_IPC_TYPE_3\][ ]=[ ]["]sof-\(byt\|cht\)\.ri["]' sound/soc/sof/intel/byt.c
+    accept '[\t][\t]\[SOF_IPC_TYPE_3\][ ]=[ ]["]sof-\(apl\|glk\)\.ri["]' sound/soc/sof/intel/pci-apl.c
+    accept '[\t][\t]\[SOF_IPC_TYPE_4\][ ]=[ ]["]dsp_basefw\.bin["]' 'sound/soc/sof/intel/pci-\(apl\|cnl\|icl\|skl\|tgl\)\.c'
+    accept '[\t][\t]\[SOF_IPC_TYPE_3\][ ]=[ ]["]sof-c[nfm]l\.ri["]' sound/soc/sof/intel/pci-cnl.c
+    accept '[\t][\t]\[SOF_IPC_TYPE_3\][ ]=[ ]["]sof-\(ic\|js\)l\.ri["]' sound/soc/sof/intel/pci-icl.c
+    accept '[\t][\t]\[SOF_IPC_TYPE_4\][ ]=[ ]["]sof-lnl\.ri["]' sound/soc/sof/intel/pci-lnl.c
+    accept '[\t][\t]\[SOF_IPC_TYPE_4\][ ]=[ ]["]sof-\(mt\|ar\)l\.ri["]' sound/soc/sof/intel/pci-mtl.c
+    accept '[\t][\t]\[SOF_IPC_TYPE_3\][ ]=[ ]["]sof-\(tgl\(\|-h\)\|ehl\|adl\(-s\|\|-n\)\|rpl\(-s\|\)\)\.ri["]' sound/soc/sof/intel/pci-tgl.c
+    accept '[\t][\t]\[SOF_IPC_TYPE_3\][ ]=[ ]["]sof-byt\.ri["]' sound/soc/sof/intel/pci-tng.c
+    accept '[\t][\t]\[SOF_IPC_TYPE_3\][ ]=[ ]["]sof-mt818[68]\.ri["]' sound/soc/sof/mediatek/mt8186/mt8186.c
+    accept '[\t][\t]\[SOF_IPC_TYPE_3\][ ]=[ ]["]sof-mt8195\.ri["]' sound/soc/sof/mediatek/mt8186/mt8195.c
+    # Same as in sound/pci/hda/hda_intel.c since v3.7, previously in hda_hwdep.c only.  The patch is a text file supplied by users through a kernel parameter.
+    accept '#ifdef[ ]CONFIG_SND_HDA_PATCH_LOADER[\n][\t]if[ ][(]loadable_patch\[hda_pvt->dev_index\][^\n{]*[{]\([\n]\([\t][^}][^\n]*\)\?\)*[\n][\t]*ret[ ]=[ ]request_firmware[(][&]fw[,][ ]loadable_patch\[hda_pvt->dev_index\][,][\n\t ]*[&]hdev->dev[)][;]\([\n]\([\t][^}][^\n]*\)\?\)*[\n][\t]*ret[ ]=[ ]snd_hda_load_patch[(]' sound/soc/codecs/hdac_hda.c
+    accept 'static[ ]void[ ]update_ucode_pointer[(]struct[ ]microcode_intel' arch/x86/kernel/cpu/microcode/intel.c
+    accept '[\t]*pr_info[(]["]Unsafe[ ]microcode[ ]update:[ ]Microcode[ ]header' arch/x86/kernel/cpu/microcode/intel.c
+    blobname 'qca[/]hpnv%02x%s\.\(bin\|%x\)' drivers/bluetooth/btqca.c
+    blobna '[/][*][ ]No[ ]m3[ ]file[ ]in[ ]firmware-N\.bin[ ]so[ ]try[ ]to[ ]request[ ]old[\n\t *]*separate[ ]m3\.bin\.[\n\t *]*[*][/]' drivers/net/wireless/ath/ath11k/qmi.c
+    accept '[\t]\.quirks[ \t]*=[ ]XHCI_RENESAS_FW_QUIRK[,][\n][\t]\.firmware[ ]=' drivers/usb/host/xhci-pci.c
+    defsnc 'static[ ]const[ ]struct[ ]rtl8xxxu_rfregval[ ]rtl8188ru_radioa_1t_highpa_table\[\][ ]=' drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c
+    defsnc 'static[ ]const[ ]u32[ ]rtw8822b_txscale_tbl\[RTW_TXSCALE_SIZE\][ ]=' drivers/net/wireless/realtek/rtw88/rtw8822b.c
+
+    # New in 6.7.2.
+    accept '[\t][\t]\[SOF_IPC_TYPE_4\][ ]=[ ]["]sof-arl-s\.ri["]' sound/soc/sof/intel/pci-mtl.c
+
+    # New in 6.7.7, 6.6.19, 6.1.80, and 5.15.150.
+    blobname '\(silead[/]\)\?gsl3692-teclast-x16-plus\.fw' drivers/platform/x86/touchscreen_dmi.c
+
+    # New in 6.8-rc.
+    blobname 'AQR-G4_v5\.4\.C-AQR_CIG_WF-1945_0x8_ID44776_VER1630\.cld' Documentation/devicetree/bindings/net/marvell,aquantia.yaml
+    blobname 'qcom[/]msm8926[/]memul[/]adsp\.mbn' arch/arm/boot/dts/qcom/qcom-msm8926-htc-memul.dts
+    blobname 'qcom[/]qcm6490[/]fairphone5[/][ac]dsp\.mbn' arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts
+    blobname 'qcom[/]qcm6490[/]fairphone5[/]\(modem\|wpss\)\.mbn' arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts
+    blobname 'qcom[/]qrb4210[/]modem\.mbn' arch/arm64/boot/dts/qcom/qrb4210-rb2.dts
+    blobname 'qcom[/]sc7180[/]acer[/]aspire1[/]qcadsp7180\.mbn' arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts
+    blobname 'qcom[/]sm6375[/]Sony[/]murray[/]modem\.mbn' arch/arm64/boot/dts/qcom/sm6375-sony-xperia-murray-pdx225.dts
+    blobname 'qcom[/]sm8250[/]xiaomi[/]pipa[/]\([ac]dsp\|a650_zap\|slpi\|venus\)\.mbn' arch/arm64/boot/dts/qcom/sm8250-xiaomi-pipa.dts
+    blobname 'qcom[/]sm8450[/]a730_zap\.mbn' arch/arm64/boot/dts/qcom/sm8450-hdk.dts
+    blobname 'qcom[/]sm8550[/]a740_zap\.mbn' arch/arm64/boot/dts/qcom/sm8550-mtp.dts
+    blobname 'qcom[/]sm8550[/]\(ipa_fws\|a740_zap\)\.mbn' arch/arm64/boot/dts/qcom/sm8550-qrd.dts
+    blobname 'qcom[/]sm8650[/]\([ac]dsp\|modem\)\(_dtb\|\)\.mbn' arch/arm64/boot/dts/qcom/'sm8650-\(mtp\|qrd\)\.dts'
+    blobname 'qcom[/]sm8650[/]ipa_fws\.mbn' arch/arm64/boot/dts/qcom/sm8650-qrd.dts
+    blobname 'ti-pruss[/]am65x-sr2-\(pru\|rtu\|txpru\)[01]-prueth-fw\.elf' arch/arm64/boot/dts/ti/k3-am65-iot2050-common.dtsi
+    defsnc 'static[ ]u64[ ]icx_cha_msr_offsets\[\][ ]' arch/x86/events/intel/uncore_snbep.c
+    blobname 'qcom[/]sdx75m[/]xbl\.elf' drivers/bus/mhi/pci_generic.c
+    blobname 'qcom[/]sdx75m[/]edl\.mbn' drivers/bus/mhi/pci_generic.c
+    defsnc 'static[ ]const[ ]u32[ ]fixed_ll_sym\[286\][ ]=' drivers/crypto/intel/iaa/iaa_crypto_comp_fixed.c
+    defsnc 'static[ ]const[ ]u32[ ]fixed_d_sym\[30\][ ]=' drivers/crypto/intel/iaa/iaa_crypto_comp_fixed.c
+    blobname 'qat_420xx\(\|_mmp\|_sym\|_dc\|_asym\|_admin\)\.bin' drivers/crypto/intel/qat/qat_420xx/adf_420xx_hw_data.h
+    blobname 'amdgpu[/]gc_11_0_0_rlc_1\.bin' drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c
+    blobname '%s_%d\.%d\.%d\.%d_v%d\.fw' drivers/gpu/drm/imagination/pvr_device.c
+    accept '[ ][*][ ]pvr_request_firmware[(][)][ ]-[ ]Load[ ]firmware' drivers/gpu/drm/imagination/pvr_device.c
+    accept '[ ][*][ ][ ][*][ ]Any[ ]error[ ]returned[ ]by[ ]request_firmware[(][)]\.' drivers/gpu/drm/imagination/pvr_device.c
+    accept 'pvr_request_firmware[(]struct[ ]pvr_device[ ][*]pvr_dev[)]' drivers/gpu/drm/imagination/pvr_device.c
+    accept '[\t]pvr_dev->fw_dev\.firmware[ ]=[ ]fw[;]' drivers/gpu/drm/imagination/pvr_device.c
+    accept '[ ][*][ ][ ][*][ ]Any[ ]error[ ]returned[ ]by[ ]pvr_request_firmware[(][)]\.' drivers/gpu/drm/imagination/pvr_device.c
+    accept '[\t]err[ ]=[ ]pvr_request_firmware[(]pvr_dev[)][;]' drivers/gpu/drm/imagination/pvr_device.c
+    defsc 'static[ ]const[ ]struct[ ]nv3052c_reg[ ]\(ltk035c5444t\|fs035vg158\)_panel_regs\[\][ ]=' drivers/gpu/drm/panel/panel-newvision-nv3052c.c
+    blobname 'https:[/][/]git\.kernel\.org[/][^"\n]*firmware\.git' drivers/gpu/drm/xe/compat-i915-headers/intel_uc_fw.h
+    blobna 'Consider[ ]updating[ ]your[ ]linux-firware[ ]pkg[ ]or[ ]downloading[ ]from[ ]%s' drivers/gpu/drm/xe/xe_uc_fw.c
+    blobname '__stringify[(]dir__[)]' drivers/gpu/drm/xe/xe_uc_fw.c
+    blobname '[/]["][ ]__stringify[(]shortname__[)][ ]["]_["][ ]__stringify[(]uc__[)][ ]version__[ ]["]\.bin' drivers/gpu/drm/xe/xe_uc_fw.c
+    defsnc 'static[ ]const[ ]struct[ ]ov2740_reg[ ]mode_1932x1092_regs_360mhz\[\][ ]=' drivers/media/i2c/ov2740.c
+    defsc 'static[ ]const[ ]struct[ ]ov2740_reg[ ]mode_1932x1092_regs_180mhz\[\][ ]=' drivers/media/i2c/ov2740.c
+    blobname 'cnm[/]wave521c_k3_codec_fw\.bin' drivers/media/platform/chips-media/wave5/wave5-vpu.c
+    accept '[\t][\t]dev_err[(]dev[,][ ]["]request_firmware[,][ ]fail' drivers/media/platform/chips-media/wave5/wave5-vpu.c
+    blobname 's5p-mfc-v12\.fw' drivers/media/platform/samsung/s5p-mfc/s5p_mfc.c
+    blobname '["]intel[/]vsc[/]["]' drivers/misc/mei/vsc-fw-loader.c
+    blobname 'ivsc_\(fw\|pkg_%s_0\|skucfg_%s_0_1\)\.bin' drivers/misc/mei/vsc-fw-loader.c
+    blobname 'mediatek[/]mt7996[/]mt7992_\(w[am]\|dsp\|rom_patch\|eeprom\)\.bin' drivers/net/wireless/mediatek/mt76/mt7996/mt7996.h
+    blobname 'rtw89[/]rtw8922a_fw' drivers/net/wireless/realtek/rtw89/rtw8922a.c
+    # This defines RTW8851B_MODULE_FIRMWARE, only used in MODULE_FIRMWARE.
+    # It will cause an error if MODULE_FIRMWARE remains, or if it gets used elsewhere,
+    # so flag any such uses so that corrective action can be taken.
+    blobna 'RTW8922A_FW_BASENAME[ ]["]\.bin["]' drivers/net/wireless/realtek/rtw89/rtw8922a.c
+    defsnc 'static[ ]const[ ]struct[ ]msm_gpio_wakeirq_map[ ]sm4450_pdc_map\[\][ ]=' drivers/pinctrl/qcom/pinctrl-sm4450.c
+    defsnc 'static[ ]const[ ]struct[ ]msm_gpio_wakeirq_map[ ]sm8650_pdc_map\[\][ ]=' drivers/pinctrl/qcom/pinctrl-sm8650.c
+    defsnc 'static[ ]const[ ]struct[ ]msm_gpio_wakeirq_map[ ]x1e80100_pdc_map\[\][ ]=' drivers/pinctrl/qcom/pinctrl-x1e80100.c
+    accept 'static[ ]int[ ]tps_request_firmware[(]' drivers/usb/typec/tipd/core.c
+    accept '[\t]ret[ ]=[ ]tps_request_firmware[(]tps[,][ ][&]fw[)]' drivers/usb/typec/tipd/core.c
+    defsnc 'static[ ]const[ ]u16[ ]expected_\(csum_ipv6_magic\|fast_csum\)\[\][ ]=' lib/checksum_kunit.c
+    defsnc 'static[ ]const[ ]__sum16[ ]expected_\(csum_ipv6_magic\|fast_csum\)\[\][ ]=' lib/checksum_kunit.c
+    accept '[\t]if[ ][!][ ]do_compile[ ]["][$][(]get_header_tree[ ]["][$]base_ref["][)][/]include["][ ]["][$]base_header["][ ]["][$][{]base_header[}]\.bin["]' scripts/check-uapi.sh
+    accept '[\t]if[ ][!][ ]do_compile[ ]["][$][(]get_header_tree[ ]["][$]past_ref["][)][/]include["][ ]["][$]past_header["][ ]["][$][{]past_header[}]\.bin["]' scripts/check-uapi.sh
+    accept '[\t][\t]["][$][{]past_header[}]\.bin["][ ]["][$][{]base_header[}]\.bin["][ ]' scripts/check-uapi.sh
+    accept '[\t]cs35l56_hda_request_firmware_files[(]cs35l56[,][ ]preloaded_fw_ver[,]' sound/pci/hda/cs35l56_hda.c
+    defsnc 'static[ ]const[ ]struct[ ]_coeff_div[ ]coeff_div_v[03]\[\][ ]=' sound/soc/codecs/es8326.c
+    accept 'static[ ]int[ ]sof_test_\(firmware\|topology\)_file[(][ \t\na-z_,*]*[)][\n][{][\n]\([^}][^\n]*[\n]\+\)*[\t]ret[ ]=[ ]firmware_request_nowarn[(][&]fw[,][ ]\(fw\|tplg\)_filename[,][ ]dev[)]' sound/soc/sof/fw-file-profile.c
+    accept '[\t][\t]\[SOF_IPC_TYPE_4\][ ]=[ ]["]sof-\(tgl\(-h\)\?\|ehl\|adl\(-s\|-n\)\?\|rpl\(-s\)\?\)\.ri["]' sound/soc/sof/intel/pci-tgl.c
+    defsc 'static[ ]struct[ ]subtest_case[ ]crafted_cases\[\][ ]=' tools/testing/selftests/bpf/prog_tests/reg_bounds.c
+    accept '[\t][$][(]Q[)]qemu-[$][(]QEMU_ARCH_USER[)][ ][.][/]nolibc-test[ ][>][ ]["][$][(]CURDIR[)][/]run\.out["]' tools/testing/selftests/nolibc/Makefile
+    
+    # New in 6.8.2, 6.7.11, 6.6.23, 6.1.83.
+    accept '[\t]ret[ ]=[ ]request_firmware[(][&]\(sdev->basefw\.fw\|adata->fw_dbin\)[,][ ]fw_filename[,][ ]sdev->dev[)]' sound/soc/sof/amd/acp-loader.c
+    accept '[\t][\t][\t]adata->fw_\(code\|data\)_bin[ ]=[ ]devm_kasprintf[(]sdev->dev[,][ \n\t]*GFP_KERNEL[,][ \n\t]*["]sof-%s-\(code\|data\)\.bin["]' sound/soc/sof/amd/acp.c
 
     ;;