From 11865adcb5d2af4a70a79367585cb24c881d2581 Mon Sep 17 00:00:00 2001
From: Ruben Rodriguez <ruben@trisquel.info>
Date: Wed, 22 Feb 2023 14:57:58 -0500
Subject: [PATCH] linux: added blobless activation to amdgpu; improved silent
 firmware cases

---
 ...-accept-firmware_blobless_activation.patch | 559 ++++++++++++++++++
 .../DATA/linux/silent-accept-firmware.patch   | 371 ++----------
 helpers/make-linux                            |   8 +-
 3 files changed, 627 insertions(+), 311 deletions(-)
 create mode 100644 helpers/DATA/linux/amdgpu_silent-accept-firmware_blobless_activation.patch

diff --git a/helpers/DATA/linux/amdgpu_silent-accept-firmware_blobless_activation.patch b/helpers/DATA/linux/amdgpu_silent-accept-firmware_blobless_activation.patch
new file mode 100644
index 000000000..7a3d9c0bf
--- /dev/null
+++ b/helpers/DATA/linux/amdgpu_silent-accept-firmware_blobless_activation.patch
@@ -0,0 +1,559 @@
+diff -ru a/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c	2021-10-31 16:53:10.000000000 -0400
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c	2023-02-22 12:35:08.026809013 -0500
+@@ -414,15 +414,13 @@
+ 			err = request_firmware(&adev->pm.fw, fw_name, adev->dev);
+ 			if (err) {
+ 				DRM_ERROR("Failed to request firmware\n");
+-				return err;
+ 			}
+ 
+ 			err = amdgpu_ucode_validate(adev->pm.fw);
+ 			if (err) {
+-				DRM_ERROR("Failed to load firmware \"%s\"", fw_name);
++				DRM_ERROR("Failed to load firmware\n");
+ 				release_firmware(adev->pm.fw);
+ 				adev->pm.fw = NULL;
+-				return err;
+ 			}
+ 
+ 			if (adev->firmware.load_type == AMDGPU_FW_LOAD_PSP) {
+diff -ru a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c	2023-02-22 13:32:47.000000000 -0500
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c	2023-02-22 12:56:27.624951716 -0500
+@@ -2004,16 +2004,12 @@
+ 	err = request_firmware(&adev->firmware.gpu_info_fw, fw_name, adev->dev);
+ 	if (err) {
+ 		dev_err(adev->dev,
+-			"Failed to load gpu_info firmware \"%s\"\n",
+-			fw_name);
+-		goto out;
++			"Failed to load gpu_info firmware\n");
+ 	}
+ 	err = amdgpu_ucode_validate(adev->firmware.gpu_info_fw);
+ 	if (err) {
+ 		dev_err(adev->dev,
+-			"Failed to validate gpu_info firmware \"%s\"\n",
+-			fw_name);
+-		goto out;
++			"Failed to validate gpu_info firmware\n");
+ 	}
+ 
+ 	hdr = (const struct gpu_info_firmware_header_v1_0 *)adev->firmware.gpu_info_fw->data;
+diff -ru a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c	2023-02-22 13:32:47.000000000 -0500
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c	2023-02-22 13:01:25.996682091 -0500
+@@ -1547,8 +1547,8 @@
+ 		if (ret)
+ 			continue;
+ 
+-		seq_printf(m, "TA %s feature version: 0x%08x, firmware version: 0x%08x\n",
+-			   ta_fw_name[i], fw_info.feature, fw_info.ver);
++		seq_printf(m, "TA feature version: 0x%08x, firmware version: 0x%08x\n",
++			   fw_info.feature, fw_info.ver);
+ 	}
+ 
+ 	/* SMC */
+diff -ru a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c	2023-02-22 13:32:47.000000000 -0500
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c	2023-02-22 12:59:44.530131501 -0500
+@@ -262,13 +262,11 @@
+ 		ret = psp_init_microcode(psp);
+ 		if (ret) {
+ 			DRM_ERROR("Failed to load psp firmware!\n");
+-			return ret;
+ 		}
+ 	} else if (amdgpu_sriov_vf(adev) && adev->asic_type == CHIP_ALDEBARAN) {
+ 		ret = psp_init_ta_microcode(psp, "aldebaran");
+ 		if (ret) {
+ 			DRM_ERROR("Failed to initialize ta microcode!\n");
+-			return ret;
+ 		}
+ 	}
+ 
+@@ -508,8 +506,7 @@
+ 	 */
+ 	if (!skip_unsupport && (psp->cmd_buf_mem->resp.status || !timeout) && !ras_intr) {
+ 		if (ucode)
+-			DRM_WARN("failed to load ucode %s(0x%X) ",
+-				  amdgpu_ucode_name(ucode->ucode_id), ucode->ucode_id);
++			DRM_WARN("failed to load ucode");
+ 		DRM_WARN("psp gfx command %s(0x%X) failed and response status is (0x%X)\n",
+ 			 psp_gfx_cmd_name(psp->cmd_buf_mem->cmd_id), psp->cmd_buf_mem->cmd_id,
+ 			 psp->cmd_buf_mem->resp.status);
+diff -ru a/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c	2021-10-31 16:53:10.000000000 -0400
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c	2023-02-22 12:33:03.860411906 -0500
+@@ -216,18 +216,14 @@
+ 
+ 	r = request_firmware(&adev->uvd.fw, fw_name, adev->dev);
+ 	if (r) {
+-		dev_err(adev->dev, "amdgpu_uvd: Can't load firmware \"%s\"\n",
+-			fw_name);
+-		return r;
++		dev_err(adev->dev, "amdgpu_uvd: Can't load firmware\n");
+ 	}
+ 
+ 	r = amdgpu_ucode_validate(adev->uvd.fw);
+ 	if (r) {
+-		dev_err(adev->dev, "amdgpu_uvd: Can't validate firmware \"%s\"\n",
+-			fw_name);
++		dev_err(adev->dev, "amdgpu_uvd: Can't validate firmware\n");
+ 		release_firmware(adev->uvd.fw);
+ 		adev->uvd.fw = NULL;
+-		return r;
+ 	}
+ 
+ 	/* Set the default UVD handles that the firmware can handle */
+diff -ru a/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c	2021-10-31 16:53:10.000000000 -0400
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c	2023-02-22 12:49:26.219042048 -0500
+@@ -160,18 +160,15 @@
+ 
+ 	r = request_firmware(&adev->vce.fw, fw_name, adev->dev);
+ 	if (r) {
+-		dev_err(adev->dev, "amdgpu_vce: Can't load firmware \"%s\"\n",
+-			fw_name);
+-		return r;
++		dev_err(adev->dev, "amdgpu_vce: Can't load firmware\n");
+ 	}
+ 
+ 	r = amdgpu_ucode_validate(adev->vce.fw);
+ 	if (r) {
+-		dev_err(adev->dev, "amdgpu_vce: Can't validate firmware \"%s\"\n",
++		dev_err(adev->dev, "amdgpu_vce: Can't validate firmware\n",
+ 			fw_name);
+ 		release_firmware(adev->vce.fw);
+ 		adev->vce.fw = NULL;
+-		return r;
+ 	}
+ 
+ 	hdr = (const struct common_firmware_header *)adev->vce.fw->data;
+diff -ru a/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c	2021-10-31 16:53:10.000000000 -0400
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c	2023-02-22 12:49:58.086577722 -0500
+@@ -174,18 +174,14 @@
+ 
+ 	r = request_firmware(&adev->vcn.fw, fw_name, adev->dev);
+ 	if (r) {
+-		dev_err(adev->dev, "amdgpu_vcn: Can't load firmware \"%s\"\n",
+-			fw_name);
+-		return r;
++		dev_err(adev->dev, "amdgpu_vcn: Can't load firmware\n");
+ 	}
+ 
+ 	r = amdgpu_ucode_validate(adev->vcn.fw);
+ 	if (r) {
+-		dev_err(adev->dev, "amdgpu_vcn: Can't validate firmware \"%s\"\n",
+-			fw_name);
++		dev_err(adev->dev, "amdgpu_vcn: Can't validate firmware\n");
+ 		release_firmware(adev->vcn.fw);
+ 		adev->vcn.fw = NULL;
+-		return r;
+ 	}
+ 
+ 	hdr = (const struct common_firmware_header *)adev->vcn.fw->data;
+diff -ru a/drivers/gpu/drm/amd/amdgpu/cik_sdma.c b/drivers/gpu/drm/amd/amdgpu/cik_sdma.c
+--- a/drivers/gpu/drm/amd/amdgpu/cik_sdma.c	2021-10-31 16:53:10.000000000 -0400
++++ b/drivers/gpu/drm/amd/amdgpu/cik_sdma.c	2023-02-22 12:37:40.248800922 -0500
+@@ -144,7 +144,7 @@
+ 	}
+ out:
+ 	if (err) {
+-		pr_err("cik_sdma: Failed to load firmware \"%s\"\n", fw_name);
++		pr_err("cik_sdma: Failed to load firmware\n");
+ 		for (i = 0; i < adev->sdma.num_instances; i++) {
+ 			release_firmware(adev->sdma.instance[i].fw);
+ 			adev->sdma.instance[i].fw = NULL;
+@@ -957,7 +957,6 @@
+ 	r = cik_sdma_init_microcode(adev);
+ 	if (r) {
+ 		DRM_ERROR("Failed to load sdma firmware!\n");
+-		return r;
+ 	}
+ 
+ 	/* SDMA trap event */
+diff -ru a/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c
+--- a/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c	2023-02-22 13:32:47.000000000 -0500
++++ b/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c	2023-02-22 12:38:19.952270835 -0500
+@@ -4358,8 +4358,7 @@
+ out:
+ 	if (err) {
+ 		dev_err(adev->dev,
+-			"gfx10: Failed to load firmware \"%s\"\n",
+-			fw_name);
++			"gfx10: Failed to load firmware\n");
+ 		release_firmware(adev->gfx.pfp_fw);
+ 		adev->gfx.pfp_fw = NULL;
+ 		release_firmware(adev->gfx.me_fw);
+@@ -4510,8 +4509,6 @@
+ 	r = gfx_v10_0_init_microcode(adev);
+ 	if (r)
+ 		DRM_ERROR("Failed to load gfx firmware!\n");
+-
+-	return r;
+ }
+ 
+ static int gfx_v10_0_mec_init(struct amdgpu_device *adev)
+diff -ru a/drivers/gpu/drm/amd/amdgpu/gfx_v6_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v6_0.c
+--- a/drivers/gpu/drm/amd/amdgpu/gfx_v6_0.c	2021-10-31 16:53:10.000000000 -0400
++++ b/drivers/gpu/drm/amd/amdgpu/gfx_v6_0.c	2023-02-22 12:39:10.087598287 -0500
+@@ -381,7 +381,7 @@
+ 
+ out:
+ 	if (err) {
+-		pr_err("gfx6: Failed to load firmware \"%s\"\n", fw_name);
++		pr_err("gfx6: Failed to load firmware\n");
+ 		release_firmware(adev->gfx.pfp_fw);
+ 		adev->gfx.pfp_fw = NULL;
+ 		release_firmware(adev->gfx.me_fw);
+@@ -3099,7 +3099,6 @@
+ 	r = gfx_v6_0_init_microcode(adev);
+ 	if (r) {
+ 		DRM_ERROR("Failed to load gfx firmware!\n");
+-		return r;
+ 	}
+ 
+ 	r = adev->gfx.rlc.funcs->init(adev);
+diff -ru a/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c
+--- a/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c	2021-10-31 16:53:10.000000000 -0400
++++ b/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c	2023-02-22 12:39:32.159301151 -0500
+@@ -976,7 +976,7 @@
+ 
+ out:
+ 	if (err) {
+-		pr_err("gfx7: Failed to load firmware \"%s\"\n", fw_name);
++		pr_err("gfx7: Failed to load firmware\n");
+ 		release_firmware(adev->gfx.pfp_fw);
+ 		adev->gfx.pfp_fw = NULL;
+ 		release_firmware(adev->gfx.me_fw);
+@@ -4490,7 +4490,6 @@
+ 	r = gfx_v7_0_init_microcode(adev);
+ 	if (r) {
+ 		DRM_ERROR("Failed to load gfx firmware!\n");
+-		return r;
+ 	}
+ 
+ 	r = adev->gfx.rlc.funcs->init(adev);
+diff -ru a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
+--- a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c	2021-10-31 16:53:10.000000000 -0400
++++ b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c	2023-02-22 12:39:54.970993426 -0500
+@@ -1231,8 +1231,7 @@
+ out:
+ 	if (err) {
+ 		dev_err(adev->dev,
+-			"gfx8: Failed to load firmware \"%s\"\n",
+-			fw_name);
++			"gfx8: Failed to load firmware\n");
+ 		release_firmware(adev->gfx.pfp_fw);
+ 		adev->gfx.pfp_fw = NULL;
+ 		release_firmware(adev->gfx.me_fw);
+@@ -2005,7 +2004,6 @@
+ 	r = gfx_v8_0_init_microcode(adev);
+ 	if (r) {
+ 		DRM_ERROR("Failed to load gfx firmware!\n");
+-		return r;
+ 	}
+ 
+ 	r = adev->gfx.rlc.funcs->init(adev);
+diff -ru a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
+--- a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c	2023-02-22 13:32:47.000000000 -0500
++++ b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c	2023-02-22 12:40:57.654144764 -0500
+@@ -1415,8 +1415,7 @@
+ out:
+ 	if (err) {
+ 		dev_err(adev->dev,
+-			"gfx9: Failed to load firmware \"%s\"\n",
+-			fw_name);
++			"gfx9: Failed to load firmware\n");
+ 		release_firmware(adev->gfx.pfp_fw);
+ 		adev->gfx.pfp_fw = NULL;
+ 		release_firmware(adev->gfx.me_fw);
+@@ -1550,8 +1549,7 @@
+ out:
+ 	if (err) {
+ 		dev_err(adev->dev,
+-			"gfx9: Failed to load firmware \"%s\"\n",
+-			fw_name);
++			"gfx9: Failed to load firmware\n");
+ 		release_firmware(adev->gfx.rlc_fw);
+ 		adev->gfx.rlc_fw = NULL;
+ 	}
+@@ -1653,8 +1651,7 @@
+ 	gfx_v9_0_check_fw_write_wait(adev);
+ 	if (err) {
+ 		dev_err(adev->dev,
+-			"gfx9: Failed to load firmware \"%s\"\n",
+-			fw_name);
++			"gfx9: Failed to load firmware\n");
+ 		release_firmware(adev->gfx.mec_fw);
+ 		adev->gfx.mec_fw = NULL;
+ 		release_firmware(adev->gfx.mec2_fw);
+@@ -2366,7 +2363,6 @@
+ 	r = gfx_v9_0_init_microcode(adev);
+ 	if (r) {
+ 		DRM_ERROR("Failed to load gfx firmware!\n");
+-		return r;
+ 	}
+ 
+ 	r = adev->gfx.rlc.funcs->init(adev);
+diff -ru a/drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c b/drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c
+--- a/drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c	2023-02-22 13:32:47.000000000 -0500
++++ b/drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c	2023-02-22 12:41:35.765626728 -0500
+@@ -140,8 +140,7 @@
+ out:
+ 	if (err) {
+ 		dev_err(adev->dev,
+-		       "si_mc: Failed to load firmware \"%s\"\n",
+-		       fw_name);
++		       "si_mc: Failed to load firmware\n");
+ 		release_firmware(adev->gmc.fw);
+ 		adev->gmc.fw = NULL;
+ 	}
+@@ -851,7 +850,6 @@
+ 	r = gmc_v6_0_init_microcode(adev);
+ 	if (r) {
+ 		dev_err(adev->dev, "Failed to load mc firmware!\n");
+-		return r;
+ 	}
+ 
+ 	r = gmc_v6_0_mc_init(adev);
+@@ -915,7 +913,6 @@
+ 		r = gmc_v6_0_mc_load_microcode(adev);
+ 		if (r) {
+ 			dev_err(adev->dev, "Failed to load MC firmware!\n");
+-			return r;
+ 		}
+ 	}
+ 
+diff -ru a/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c b/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c
+--- a/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c	2023-02-22 13:32:47.000000000 -0500
++++ b/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c	2023-02-22 12:42:07.369196084 -0500
+@@ -163,7 +163,7 @@
+ 
+ out:
+ 	if (err) {
+-		pr_err("cik_mc: Failed to load firmware \"%s\"\n", fw_name);
++		pr_err("cik_mc: Failed to load firmware\n");
+ 		release_firmware(adev->gmc.fw);
+ 		adev->gmc.fw = NULL;
+ 	}
+@@ -1031,7 +1031,6 @@
+ 	r = gmc_v7_0_init_microcode(adev);
+ 	if (r) {
+ 		DRM_ERROR("Failed to load mc firmware!\n");
+-		return r;
+ 	}
+ 
+ 	r = gmc_v7_0_mc_init(adev);
+@@ -1105,7 +1104,6 @@
+ 		r = gmc_v7_0_mc_load_microcode(adev);
+ 		if (r) {
+ 			DRM_ERROR("Failed to load MC firmware!\n");
+-			return r;
+ 		}
+ 	}
+ 
+diff -ru a/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c b/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c
+--- a/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c	2023-02-22 13:32:47.000000000 -0500
++++ b/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c	2023-02-22 12:43:15.444265429 -0500
+@@ -271,7 +271,7 @@
+ 
+ out:
+ 	if (err) {
+-		pr_err("mc: Failed to load firmware \"%s\"\n", fw_name);
++		pr_err("mc: Failed to load firmware\n");
+ 		release_firmware(adev->gmc.fw);
+ 		adev->gmc.fw = NULL;
+ 	}
+@@ -1153,7 +1153,6 @@
+ 	r = gmc_v8_0_init_microcode(adev);
+ 	if (r) {
+ 		DRM_ERROR("Failed to load mc firmware!\n");
+-		return r;
+ 	}
+ 
+ 	r = gmc_v8_0_mc_init(adev);
+@@ -1227,7 +1226,6 @@
+ 		r = gmc_v8_0_tonga_mc_load_microcode(adev);
+ 		if (r) {
+ 			DRM_ERROR("Failed to load MC firmware!\n");
+-			return r;
+ 		}
+ 	} else if (adev->asic_type == CHIP_POLARIS11 ||
+ 			adev->asic_type == CHIP_POLARIS10 ||
+@@ -1235,7 +1233,6 @@
+ 		r = gmc_v8_0_polaris_mc_load_microcode(adev);
+ 		if (r) {
+ 			DRM_ERROR("Failed to load MC firmware!\n");
+-			return r;
+ 		}
+ 	}
+ 
+diff -ru a/drivers/gpu/drm/amd/amdgpu/psp_v10_0.c b/drivers/gpu/drm/amd/amdgpu/psp_v10_0.c
+--- a/drivers/gpu/drm/amd/amdgpu/psp_v10_0.c	2021-10-31 16:53:10.000000000 -0400
++++ b/drivers/gpu/drm/amd/amdgpu/psp_v10_0.c	2023-02-22 12:48:39.499724239 -0500
+@@ -75,8 +75,7 @@
+ 		release_firmware(adev->psp.ta_fw);
+ 		adev->psp.ta_fw = NULL;
+ 		dev_info(adev->dev,
+-			 "psp v10.0: Failed to load firmware \"%s\"\n",
+-			 fw_name);
++			 "psp v10.0: Failed to load firmware\n");
+ 	} else {
+ 		err = amdgpu_ucode_validate(adev->psp.ta_fw);
+ 		if (err)
+@@ -119,8 +118,7 @@
+ out:
+ 	if (err) {
+ 		dev_err(adev->dev,
+-			"psp v10.0: Failed to load firmware \"%s\"\n",
+-			fw_name);
++			"psp v10.0: Failed to load firmware\n");
+ 	}
+ 
+ 	return err;
+diff -ru a/drivers/gpu/drm/amd/amdgpu/psp_v11_0.c b/drivers/gpu/drm/amd/amdgpu/psp_v11_0.c
+--- a/drivers/gpu/drm/amd/amdgpu/psp_v11_0.c	2021-10-31 16:53:10.000000000 -0400
++++ b/drivers/gpu/drm/amd/amdgpu/psp_v11_0.c	2023-02-22 12:52:05.460729006 -0500
+@@ -144,7 +144,7 @@
+ 			release_firmware(adev->psp.ta_fw);
+ 			adev->psp.ta_fw = NULL;
+ 			dev_info(adev->dev,
+-				 "psp v11.0: Failed to load firmware \"%s\"\n", fw_name);
++				 "psp v11.0: Failed to load firmware\n");
+ 		} else {
+ 			err = amdgpu_ucode_validate(adev->psp.ta_fw);
+ 			if (err)
+@@ -179,7 +179,7 @@
+ 			release_firmware(adev->psp.ta_fw);
+ 			adev->psp.ta_fw = NULL;
+ 			dev_info(adev->dev,
+-				 "psp v11.0: Failed to load firmware \"%s\"\n", fw_name);
++				 "psp v11.0: Failed to load firmware\n");
+ 		} else {
+ 			err = amdgpu_ucode_validate(adev->psp.ta_fw);
+ 			if (err)
+diff -ru a/drivers/gpu/drm/amd/amdgpu/psp_v12_0.c b/drivers/gpu/drm/amd/amdgpu/psp_v12_0.c
+--- a/drivers/gpu/drm/amd/amdgpu/psp_v12_0.c	2021-10-31 16:53:10.000000000 -0400
++++ b/drivers/gpu/drm/amd/amdgpu/psp_v12_0.c	2023-02-22 12:52:59.147952804 -0500
+@@ -75,8 +75,7 @@
+ 		release_firmware(adev->psp.ta_fw);
+ 		adev->psp.ta_fw = NULL;
+ 		dev_info(adev->dev,
+-			 "psp v12.0: Failed to load firmware \"%s\"\n",
+-			 fw_name);
++			 "psp v12.0: Failed to load firmware\n");
+ 	} else {
+ 		err = amdgpu_ucode_validate(adev->psp.ta_fw);
+ 		if (err)
+@@ -110,8 +109,7 @@
+ 	adev->psp.ta_fw = NULL;
+ 	if (err) {
+ 		dev_err(adev->dev,
+-			"psp v12.0: Failed to load firmware \"%s\"\n",
+-			fw_name);
++			"psp v12.0: Failed to load firmware\n");
+ 	}
+ 
+ 	return err;
+diff -ru a/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c b/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c
+--- a/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c	2021-10-31 16:53:10.000000000 -0400
++++ b/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c	2023-02-22 12:56:12.817164297 -0500
+@@ -175,7 +175,7 @@
+ 
+ out:
+ 	if (err) {
+-		pr_err("sdma_v2_4: Failed to load firmware \"%s\"\n", fw_name);
++		pr_err("sdma_v2_4: Failed to load firmware\n");
+ 		for (i = 0; i < adev->sdma.num_instances; i++) {
+ 			release_firmware(adev->sdma.instance[i].fw);
+ 			adev->sdma.instance[i].fw = NULL;
+@@ -868,7 +868,6 @@
+ 	r = sdma_v2_4_init_microcode(adev);
+ 	if (r) {
+ 		DRM_ERROR("Failed to load sdma firmware!\n");
+-		return r;
+ 	}
+ 
+ 	for (i = 0; i < adev->sdma.num_instances; i++) {
+diff -ru a/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c b/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c
+--- a/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c	2021-10-31 16:53:10.000000000 -0400
++++ b/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c	2023-02-22 12:55:38.437658152 -0500
+@@ -331,7 +331,7 @@
+ 	}
+ out:
+ 	if (err) {
+-		pr_err("sdma_v3_0: Failed to load firmware \"%s\"\n", fw_name);
++		pr_err("sdma_v3_0: Failed to load firmware\n");
+ 		for (i = 0; i < adev->sdma.num_instances; i++) {
+ 			release_firmware(adev->sdma.instance[i].fw);
+ 			adev->sdma.instance[i].fw = NULL;
+@@ -1146,7 +1146,6 @@
+ 	r = sdma_v3_0_init_microcode(adev);
+ 	if (r) {
+ 		DRM_ERROR("Failed to load sdma firmware!\n");
+-		return r;
+ 	}
+ 
+ 	for (i = 0; i < adev->sdma.num_instances; i++) {
+diff -ru a/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c b/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c
+--- a/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c	2023-02-22 13:32:47.000000000 -0500
++++ b/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c	2023-02-22 12:55:50.889479231 -0500
+@@ -702,7 +702,7 @@
+ 
+ out:
+ 	if (err) {
+-		DRM_ERROR("sdma_v4_0: Failed to load firmware \"%s\"\n", fw_name);
++		DRM_ERROR("sdma_v4_0: Failed to load firmware\n");
+ 		sdma_v4_0_destroy_inst_ctx(adev);
+ 	}
+ 	return err;
+@@ -1865,7 +1865,6 @@
+ 	r = sdma_v4_0_init_microcode(adev);
+ 	if (r) {
+ 		DRM_ERROR("Failed to load sdma firmware!\n");
+-		return r;
+ 	}
+ 
+ 	/* TODO: Page queue breaks driver reload under SRIOV */
+diff -ru a/drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c b/drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c
+--- a/drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c	2023-02-22 13:32:47.000000000 -0500
++++ b/drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c	2023-02-22 12:54:46.550404379 -0500
+@@ -303,7 +303,7 @@
+ 	}
+ out:
+ 	if (err) {
+-		DRM_ERROR("sdma_v5_0: Failed to load firmware \"%s\"\n", fw_name);
++		DRM_ERROR("sdma_v5_0: Failed to load firmware\n");
+ 		for (i = 0; i < adev->sdma.num_instances; i++) {
+ 			release_firmware(adev->sdma.instance[i].fw);
+ 			adev->sdma.instance[i].fw = NULL;
+@@ -1329,7 +1329,6 @@
+ 	r = sdma_v5_0_init_microcode(adev);
+ 	if (r) {
+ 		DRM_ERROR("Failed to load sdma firmware!\n");
+-		return r;
+ 	}
+ 
+ 	for (i = 0; i < adev->sdma.num_instances; i++) {
+diff -ru a/drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c b/drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c
+--- a/drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c	2023-02-22 13:32:47.000000000 -0500
++++ b/drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c	2023-02-22 12:55:11.106051087 -0500
+@@ -193,7 +193,7 @@
+ 
+ out:
+ 	if (err) {
+-		DRM_ERROR("sdma_v5_2: Failed to load firmware \"%s\"\n", fw_name);
++		DRM_ERROR("sdma_v5_2: Failed to load firmware\n");
+ 		sdma_v5_2_destroy_inst_ctx(adev);
+ 	}
+ 	return err;
+@@ -1294,7 +1294,6 @@
+ 	r = sdma_v5_2_init_microcode(adev);
+ 	if (r) {
+ 		DRM_ERROR("Failed to load sdma firmware!\n");
+-		return r;
+ 	}
+ 
+ 	for (i = 0; i < adev->sdma.num_instances; i++) {
diff --git a/helpers/DATA/linux/silent-accept-firmware.patch b/helpers/DATA/linux/silent-accept-firmware.patch
index ecc95503d..7c26d7796 100644
--- a/helpers/DATA/linux/silent-accept-firmware.patch
+++ b/helpers/DATA/linux/silent-accept-firmware.patch
@@ -119,316 +119,6 @@ diff -Nru linux-5.15.0a/drivers/base/firmware_loader/main.c linux-5.15.0b/driver
  		if (nondirect)
  			ret = firmware_fallback_sysfs(fw, name, device,
  						      opt_flags, ret);
-diff -Nru linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
---- linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c	2021-10-31 14:53:10.000000000 -0600
-+++ linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c	2022-05-12 17:55:12.377549557 -0500
-@@ -419,7 +419,7 @@
- 
- 			err = amdgpu_ucode_validate(adev->pm.fw);
- 			if (err) {
--				DRM_ERROR("Failed to load firmware \"%s\"", fw_name);
-+				DRM_ERROR("Failed to load firmware");
- 				release_firmware(adev->pm.fw);
- 				adev->pm.fw = NULL;
- 				return err;
-diff -Nru linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
---- linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c	2022-05-12 15:51:56.000000000 -0500
-+++ linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c	2022-05-12 18:00:49.027791216 -0500
-@@ -1978,15 +1978,13 @@
- 	err = request_firmware(&adev->firmware.gpu_info_fw, fw_name, adev->dev);
- 	if (err) {
- 		dev_err(adev->dev,
--			"Failed to load gpu_info firmware \"%s\"\n",
--			fw_name);
-+			"Failed to load gpu_info firmware\n");
- 		goto out;
- 	}
- 	err = amdgpu_ucode_validate(adev->firmware.gpu_info_fw);
- 	if (err) {
- 		dev_err(adev->dev,
--			"Failed to validate gpu_info firmware \"%s\"\n",
--			fw_name);
-+			"Failed to validate gpu_info firmware\n");
- 		goto out;
- 	}
- 
-diff -Nru linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
---- linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c	2021-10-31 14:53:10.000000000 -0600
-+++ linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c	2022-05-12 18:02:08.384418664 -0500
-@@ -216,15 +216,13 @@
- 
- 	r = request_firmware(&adev->uvd.fw, fw_name, adev->dev);
- 	if (r) {
--		dev_err(adev->dev, "amdgpu_uvd: Can't load firmware \"%s\"\n",
--			fw_name);
-+		dev_err(adev->dev, "amdgpu_uvd: Can't load firmware\n");
- 		return r;
- 	}
- 
- 	r = amdgpu_ucode_validate(adev->uvd.fw);
- 	if (r) {
--		dev_err(adev->dev, "amdgpu_uvd: Can't validate firmware \"%s\"\n",
--			fw_name);
-+		dev_err(adev->dev, "amdgpu_uvd: Can't validate firmware\n");
- 		release_firmware(adev->uvd.fw);
- 		adev->uvd.fw = NULL;
- 		return r;
-diff -Nru linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c
---- linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c	2021-10-31 14:53:10.000000000 -0600
-+++ linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c	2022-05-12 18:04:20.985348719 -0500
-@@ -160,15 +160,13 @@
- 
- 	r = request_firmware(&adev->vce.fw, fw_name, adev->dev);
- 	if (r) {
--		dev_err(adev->dev, "amdgpu_vce: Can't load firmware \"%s\"\n",
--			fw_name);
-+		dev_err(adev->dev, "amdgpu_vce: Can't load firmware\n");
- 		return r;
- 	}
- 
- 	r = amdgpu_ucode_validate(adev->vce.fw);
- 	if (r) {
--		dev_err(adev->dev, "amdgpu_vce: Can't validate firmware \"%s\"\n",
--			fw_name);
-+		dev_err(adev->dev, "amdgpu_vce: Can't validate firmware\n");
- 		release_firmware(adev->vce.fw);
- 		adev->vce.fw = NULL;
- 		return r;
-diff -Nru linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
---- linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c	2021-10-31 14:53:10.000000000 -0600
-+++ linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c	2022-05-12 18:09:17.867041073 -0500
-@@ -174,15 +174,13 @@
- 
- 	r = request_firmware(&adev->vcn.fw, fw_name, adev->dev);
- 	if (r) {
--		dev_err(adev->dev, "amdgpu_vcn: Can't load firmware \"%s\"\n",
--			fw_name);
-+		dev_err(adev->dev, "amdgpu_vcn: Can't load firmware\n");
- 		return r;
- 	}
- 
- 	r = amdgpu_ucode_validate(adev->vcn.fw);
- 	if (r) {
--		dev_err(adev->dev, "amdgpu_vcn: Can't validate firmware \"%s\"\n",
--			fw_name);
-+		dev_err(adev->dev, "amdgpu_vcn: Can't validate firmware\n");
- 		release_firmware(adev->vcn.fw);
- 		adev->vcn.fw = NULL;
- 		return r;
-diff -Nru linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/cik_sdma.c linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/cik_sdma.c
---- linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/cik_sdma.c	2021-10-31 14:53:10.000000000 -0600
-+++ linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/cik_sdma.c	2022-05-12 18:10:37.651430068 -0500
-@@ -144,7 +144,7 @@
- 	}
- out:
- 	if (err) {
--		pr_err("cik_sdma: Failed to load firmware \"%s\"\n", fw_name);
-+		pr_err("cik_sdma: Failed to load firmware\n");
- 		for (i = 0; i < adev->sdma.num_instances; i++) {
- 			release_firmware(adev->sdma.instance[i].fw);
- 			adev->sdma.instance[i].fw = NULL;
-diff -Nru linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c
---- linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c	2022-05-12 15:51:56.000000000 -0500
-+++ linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c	2022-05-12 18:12:56.296059092 -0500
-@@ -4358,8 +4358,7 @@
- out:
- 	if (err) {
- 		dev_err(adev->dev,
--			"gfx10: Failed to load firmware \"%s\"\n",
--			fw_name);
-+			"gfx10: Failed to load firmware\n");
- 		release_firmware(adev->gfx.pfp_fw);
- 		adev->gfx.pfp_fw = NULL;
- 		release_firmware(adev->gfx.me_fw);
-diff -Nru linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/gfx_v6_0.c linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/gfx_v6_0.c
---- linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/gfx_v6_0.c	2021-10-31 14:53:10.000000000 -0600
-+++ linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/gfx_v6_0.c	2022-05-12 18:14:37.604488081 -0500
-@@ -381,7 +381,7 @@
- 
- out:
- 	if (err) {
--		pr_err("gfx6: Failed to load firmware \"%s\"\n", fw_name);
-+		pr_err("gfx6: Failed to load firmware\n");
- 		release_firmware(adev->gfx.pfp_fw);
- 		adev->gfx.pfp_fw = NULL;
- 		release_firmware(adev->gfx.me_fw);
-diff -Nru linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c
---- linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c	2021-10-31 14:53:10.000000000 -0600
-+++ linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c	2022-05-12 18:23:32.482486029 -0500
-@@ -976,7 +976,7 @@
- 
- out:
- 	if (err) {
--		pr_err("gfx7: Failed to load firmware \"%s\"\n", fw_name);
-+		pr_err("gfx7: Failed to load firmware\n");
- 		release_firmware(adev->gfx.pfp_fw);
- 		adev->gfx.pfp_fw = NULL;
- 		release_firmware(adev->gfx.me_fw);
-diff -Nru linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
---- linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c	2021-10-31 14:53:10.000000000 -0600
-+++ linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c	2022-05-12 18:25:03.922799575 -0500
-@@ -1231,8 +1231,7 @@
- out:
- 	if (err) {
- 		dev_err(adev->dev,
--			"gfx8: Failed to load firmware \"%s\"\n",
--			fw_name);
-+			"gfx8: Failed to load firmware\n");
- 		release_firmware(adev->gfx.pfp_fw);
- 		adev->gfx.pfp_fw = NULL;
- 		release_firmware(adev->gfx.me_fw);
-diff -Nru linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
---- linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c	2022-05-12 15:51:56.000000000 -0500
-+++ linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c	2022-05-12 18:27:56.567378676 -0500
-@@ -1413,8 +1413,7 @@
- out:
- 	if (err) {
- 		dev_err(adev->dev,
--			"gfx9: Failed to load firmware \"%s\"\n",
--			fw_name);
-+			"gfx9: Failed to load firmware\n");
- 		release_firmware(adev->gfx.pfp_fw);
- 		adev->gfx.pfp_fw = NULL;
- 		release_firmware(adev->gfx.me_fw);
-@@ -1548,8 +1547,7 @@
- out:
- 	if (err) {
- 		dev_err(adev->dev,
--			"gfx9: Failed to load firmware \"%s\"\n",
--			fw_name);
-+			"gfx9: Failed to load firmware\n");
- 		release_firmware(adev->gfx.rlc_fw);
- 		adev->gfx.rlc_fw = NULL;
- 	}
-@@ -1651,8 +1649,7 @@
- 	gfx_v9_0_check_fw_write_wait(adev);
- 	if (err) {
- 		dev_err(adev->dev,
--			"gfx9: Failed to load firmware \"%s\"\n",
--			fw_name);
-+			"gfx9: Failed to load firmware\n");
- 		release_firmware(adev->gfx.mec_fw);
- 		adev->gfx.mec_fw = NULL;
- 		release_firmware(adev->gfx.mec2_fw);
-diff -Nru linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c
---- linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c	2022-05-12 15:51:56.000000000 -0500
-+++ linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c	2022-05-12 18:28:50.171555720 -0500
-@@ -140,8 +140,7 @@
- out:
- 	if (err) {
- 		dev_err(adev->dev,
--		       "si_mc: Failed to load firmware \"%s\"\n",
--		       fw_name);
-+		       "si_mc: Failed to load firmware\n");
- 		release_firmware(adev->gmc.fw);
- 		adev->gmc.fw = NULL;
- 	}
-diff -Nru linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c
---- linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c	2021-10-31 14:53:10.000000000 -0600
-+++ linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c	2022-05-12 18:29:48.251746244 -0500
-@@ -163,7 +163,7 @@
- 
- out:
- 	if (err) {
--		pr_err("cik_mc: Failed to load firmware \"%s\"\n", fw_name);
-+		pr_err("cik_mc: Failed to load firmware\n");
- 		release_firmware(adev->gmc.fw);
- 		adev->gmc.fw = NULL;
- 	}
-diff -Nru linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c
---- linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c	2022-05-12 15:51:56.000000000 -0500
-+++ linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c	2022-05-12 18:30:35.683901025 -0500
-@@ -271,7 +271,7 @@
- 
- out:
- 	if (err) {
--		pr_err("mc: Failed to load firmware \"%s\"\n", fw_name);
-+		pr_err("mc: Failed to load firmware\n");
- 		release_firmware(adev->gmc.fw);
- 		adev->gmc.fw = NULL;
- 	}
-diff -Nru linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/psp_v10_0.c linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/psp_v10_0.c
---- linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/psp_v10_0.c	2021-10-31 14:53:10.000000000 -0600
-+++ linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/psp_v10_0.c	2022-05-12 18:33:10.524815263 -0500
-@@ -75,8 +75,7 @@
- 		release_firmware(adev->psp.ta_fw);
- 		adev->psp.ta_fw = NULL;
- 		dev_info(adev->dev,
--			 "psp v10.0: Failed to load firmware \"%s\"\n",
--			 fw_name);
-+			 "psp v10.0: Failed to load firmware\n");
- 	} else {
- 		err = amdgpu_ucode_validate(adev->psp.ta_fw);
- 		if (err)
-diff -Nru linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/psp_v11_0.c linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/psp_v11_0.c
---- linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/psp_v11_0.c	2021-10-31 14:53:10.000000000 -0600
-+++ linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/psp_v11_0.c	2022-05-12 18:34:24.925322575 -0500
-@@ -144,7 +144,7 @@
- 			release_firmware(adev->psp.ta_fw);
- 			adev->psp.ta_fw = NULL;
- 			dev_info(adev->dev,
--				 "psp v11.0: Failed to load firmware \"%s\"\n", fw_name);
-+				 "psp v11.0: Failed to load firmware\n");
- 		} else {
- 			err = amdgpu_ucode_validate(adev->psp.ta_fw);
- 			if (err)
-@@ -179,7 +179,7 @@
- 			release_firmware(adev->psp.ta_fw);
- 			adev->psp.ta_fw = NULL;
- 			dev_info(adev->dev,
--				 "psp v11.0: Failed to load firmware \"%s\"\n", fw_name);
-+				 "psp v11.0: Failed to load firmware\n");
- 		} else {
- 			err = amdgpu_ucode_validate(adev->psp.ta_fw);
- 			if (err)
-diff -Nru linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c
---- linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c	2021-10-31 14:53:10.000000000 -0600
-+++ linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c	2022-05-12 18:40:02.495301516 -0500
-@@ -175,7 +175,7 @@
- 
- out:
- 	if (err) {
--		pr_err("sdma_v2_4: Failed to load firmware \"%s\"\n", fw_name);
-+		pr_err("sdma_v2_4: Failed to load firmware\n");
- 		for (i = 0; i < adev->sdma.num_instances; i++) {
- 			release_firmware(adev->sdma.instance[i].fw);
- 			adev->sdma.instance[i].fw = NULL;
-diff -Nru linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c
---- linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c	2021-10-31 14:53:10.000000000 -0600
-+++ linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c	2022-05-12 18:45:57.373027739 -0500
-@@ -331,7 +331,7 @@
- 	}
- out:
- 	if (err) {
--		pr_err("sdma_v3_0: Failed to load firmware \"%s\"\n", fw_name);
-+		pr_err("sdma_v3_0: Failed to load firmware\n");
- 		for (i = 0; i < adev->sdma.num_instances; i++) {
- 			release_firmware(adev->sdma.instance[i].fw);
- 			adev->sdma.instance[i].fw = NULL;
-diff -Nru linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c
---- linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c	2022-05-12 15:51:56.000000000 -0500
-+++ linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c	2022-05-12 18:47:06.221337571 -0500
-@@ -702,7 +702,7 @@
- 
- out:
- 	if (err) {
--		DRM_ERROR("sdma_v4_0: Failed to load firmware \"%s\"\n", fw_name);
-+		DRM_ERROR("sdma_v4_0: Failed to load firmware\n");
- 		sdma_v4_0_destroy_inst_ctx(adev);
- 	}
- 	return err;
-diff -Nru linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c
---- linux-5.15.0a/drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c	2021-10-31 14:53:10.000000000 -0600
-+++ linux-5.15.0b/drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c	2022-05-12 18:48:15.981645559 -0500
-@@ -303,7 +303,7 @@
- 	}
- out:
- 	if (err) {
--		DRM_ERROR("sdma_v5_0: Failed to load firmware \"%s\"\n", fw_name);
-+		DRM_ERROR("sdma_v5_0: Failed to load firmware\n");
- 		for (i = 0; i < adev->sdma.num_instances; i++) {
- 			release_firmware(adev->sdma.instance[i].fw);
- 			adev->sdma.instance[i].fw = NULL;
 diff -Nru linux-5.15.0a/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c linux-5.15.0b/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c
 --- linux-5.15.0a/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c	2021-10-31 14:53:10.000000000 -0600
 +++ linux-5.15.0b/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c	2022-05-12 18:54:56.035329211 -0500
@@ -1345,3 +1035,64 @@ diff -ur source.bak/drivers/net/wireless/broadcom/brcm80211/brcmsmac/mac80211_if
  			return status;
  		}
  		wl->fw.hdr_num_entries[i] =
+diff -ru source.orig/drivers/gpu/drm/radeon/ni.c source/drivers/gpu/drm/radeon/ni.c
+--- source.orig/drivers/gpu/drm/radeon/ni.c	2023-02-22 14:24:28.539769273 -0500
++++ source/drivers/gpu/drm/radeon/ni.c	2023-02-22 14:31:24.013853164 -0500
+@@ -807,7 +807,7 @@
+ 		snprintf(fw_name, sizeof(fw_name), "radeon/%s_smc.bin", chip_name);
+ 		err = request_firmware(&rdev->smc_fw, fw_name, rdev->dev);
+ 		if (err) {
+-			pr_err("smc: error loading firmware \"%s\"\n", fw_name);
++			pr_err("smc: error loading firmware\n");
+ 			release_firmware(rdev->smc_fw);
+ 			rdev->smc_fw = NULL;
+ 			err = 0;
+@@ -821,8 +821,7 @@
+ out:
+ 	if (err) {
+ 		if (err != -EINVAL)
+-			pr_err("ni_cp: Failed to load firmware \"%s\"\n",
+-			       fw_name);
++			pr_err("ni_cp: Failed to load firmware\n");
+ 		release_firmware(rdev->pfp_fw);
+ 		rdev->pfp_fw = NULL;
+ 		release_firmware(rdev->me_fw);
+diff -ru source.orig/drivers/net/wireless/intel/ipw2x00/ipw2200.c source/drivers/net/wireless/intel/ipw2x00/ipw2200.c
+--- source.orig/drivers/net/wireless/intel/ipw2x00/ipw2200.c	2023-02-22 14:24:28.635767924 -0500
++++ source/drivers/net/wireless/intel/ipw2x00/ipw2200.c	2023-02-22 14:32:52.060558270 -0500
+@@ -3549,7 +3549,7 @@
+ 	/* DMA the initial boot firmware into the device */
+ 	rc = ipw_load_firmware(priv, boot_img, le32_to_cpu(fw->boot_size));
+ 	if (rc < 0) {
+-		IPW_ERROR("Unable to load boot firmware: %d\n", rc);
++		IPW_ERROR("Unable to load boot firmware\n");
+ 		goto error;
+ 	}
+ 
+@@ -3571,7 +3571,7 @@
+ 	/* DMA the ucode into the device */
+ 	rc = ipw_load_ucode(priv, ucode_img, le32_to_cpu(fw->ucode_size));
+ 	if (rc < 0) {
+-		IPW_ERROR("Unable to load ucode: %d\n", rc);
++		IPW_ERROR("Unable to load ucode\n");
+ 		goto error;
+ 	}
+ 
+@@ -3581,7 +3581,7 @@
+ 	/* DMA bss firmware into the device */
+ 	rc = ipw_load_firmware(priv, fw_img, le32_to_cpu(fw->fw_size));
+ 	if (rc < 0) {
+-		IPW_ERROR("Unable to load firmware: %d\n", rc);
++		IPW_ERROR("Unable to load firmware\n");
+ 		goto error;
+ 	}
+ #ifdef CONFIG_PM
+@@ -11177,7 +11177,7 @@
+ 		 * Also start the clocks. */
+ 		rc = ipw_load(priv);
+ 		if (rc) {
+-			IPW_ERROR("Unable to load firmware: %d\n", rc);
++			IPW_ERROR("Unable to load firmware\n");
+ 			return rc;
+ 		}
+ 
diff --git a/helpers/make-linux b/helpers/make-linux
index 780a379ec..12ad42290 100644
--- a/helpers/make-linux
+++ b/helpers/make-linux
@@ -19,7 +19,7 @@
 #    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
 #
 
-VERSION=15
+VERSION=16
 
 . ./config
 
@@ -65,6 +65,12 @@ for PATCH in $DATA/*.patch ; do
   patch --no-backup-if-mismatch -p1 < $PATCH
 done
 
+# Simple test for finding missing cases of silent_accept_firmware method
+#for dir in $PRESERVEDIRS; do
+#  grep -i "load.*firmware.*%" $PRESERVEDIRS -r
+#  grep -i "load.*ucode.*%" $PRESERVEDIRS -r
+#done
+
 # Re-enable udebs
 cp $DATA/5-udebs.mk debian/rules.d
 cp -a $DATA/d-i debian.master
-- 
GitLab