[Nouveau] [PATCH v5 9/18] secboot: remove unneeded ls_ucode_img member

Alexandre Courbot acourbot at nvidia.com
Wed Dec 14 08:02:43 UTC 2016


ucode_header is not used anywhere, so just get rid of it.

Signed-off-by: Alexandre Courbot <acourbot at nvidia.com>
---
 drm/nouveau/nvkm/subdev/secboot/acr_r352.c    | 25 +++++---------------
 drm/nouveau/nvkm/subdev/secboot/ls_ucode.h    |  2 +--
 drm/nouveau/nvkm/subdev/secboot/ls_ucode_gr.c |  2 +--
 3 files changed, 7 insertions(+), 22 deletions(-)

diff --git a/drm/nouveau/nvkm/subdev/secboot/acr_r352.c b/drm/nouveau/nvkm/subdev/secboot/acr_r352.c
index ea2ecd620500..4986483be75b 100644
--- a/drm/nouveau/nvkm/subdev/secboot/acr_r352.c
+++ b/drm/nouveau/nvkm/subdev/secboot/acr_r352.c
@@ -215,12 +215,6 @@ ls_ucode_img_fill_headers(struct acr_r352 *acr, struct ls_ucode_img *img,
 	const struct acr_r352_ls_func *func =
 					    acr->func->ls_func[img->falcon_id];
 
-	if (img->ucode_header) {
-		nvkm_fatal(acr->base.subdev,
-			   "images withough loader are not supported yet!\n");
-		return offset;
-	}
-
 	/* Fill WPR header */
 	whdr->falcon_id = img->falcon_id;
 	whdr->bootstrap_owner = acr->base.boot_falcon;
@@ -309,7 +303,6 @@ ls_ucode_mgr_cleanup(struct ls_ucode_mgr *mgr)
 
 	list_for_each_entry_safe(img, t, &mgr->img_list, node) {
 		kfree(img->ucode_data);
-		kfree(img->ucode_header);
 		kfree(img);
 	}
 }
@@ -362,6 +355,10 @@ ls_ucode_mgr_write_wpr(struct acr_r352 *acr, struct ls_ucode_mgr *mgr,
 	nvkm_kmap(wpr_blob);
 
 	list_for_each_entry(img, &mgr->img_list, node) {
+		const struct acr_r352_ls_func *ls_func =
+					     acr->func->ls_func[img->falcon_id];
+		u8 gdesc[ls_func->bl_desc_size];
+
 		nvkm_gpuobj_memcpy_to(wpr_blob, pos, &img->wpr_header,
 				      sizeof(img->wpr_header));
 
@@ -369,18 +366,10 @@ ls_ucode_mgr_write_wpr(struct acr_r352 *acr, struct ls_ucode_mgr *mgr,
 				     &img->lsb_header, sizeof(img->lsb_header));
 
 		/* Generate and write BL descriptor */
-		if (!img->ucode_header) {
-			const struct acr_r352_ls_func *ls_func =
-					     acr->func->ls_func[img->falcon_id];
-			u8 gdesc[ls_func->bl_desc_size];
-
-			ls_func->generate_bl_desc(&acr->base, img, wpr_addr,
-						  gdesc);
+		ls_func->generate_bl_desc(&acr->base, img, wpr_addr, gdesc);
 
-			nvkm_gpuobj_memcpy_to(wpr_blob,
-					      img->lsb_header.bl_data_off,
-					      gdesc, ls_func->bl_desc_size);
-		}
+		nvkm_gpuobj_memcpy_to(wpr_blob, img->lsb_header.bl_data_off,
+				      gdesc, ls_func->bl_desc_size);
 
 		/* Copy ucode */
 		nvkm_gpuobj_memcpy_to(wpr_blob, img->lsb_header.ucode_off,
diff --git a/drm/nouveau/nvkm/subdev/secboot/ls_ucode.h b/drm/nouveau/nvkm/subdev/secboot/ls_ucode.h
index 3598ed597c13..be9eac5d44ab 100644
--- a/drm/nouveau/nvkm/subdev/secboot/ls_ucode.h
+++ b/drm/nouveau/nvkm/subdev/secboot/ls_ucode.h
@@ -173,7 +173,6 @@ struct ls_ucode_img_desc {
  * @node:		to link within lsf_ucode_mgr
  * @falcon_id:		ID of the falcon this LS firmware is for
  * @ucode_desc:		loaded or generated map of ucode_data
- * @ucode_header:	header of the firmware
  * @ucode_data:		firmware payload (code and data)
  * @ucode_size:		size in bytes of data in ucode_data
  * @wpr_header:		WPR header to be written to the LS blob
@@ -188,7 +187,6 @@ struct ls_ucode_img {
 	enum nvkm_secboot_falcon falcon_id;
 
 	struct ls_ucode_img_desc ucode_desc;
-	u32 *ucode_header;
 	u8 *ucode_data;
 	u32 ucode_size;
 
diff --git a/drm/nouveau/nvkm/subdev/secboot/ls_ucode_gr.c b/drm/nouveau/nvkm/subdev/secboot/ls_ucode_gr.c
index f9c0c6438027..197ec1be47bf 100644
--- a/drm/nouveau/nvkm/subdev/secboot/ls_ucode_gr.c
+++ b/drm/nouveau/nvkm/subdev/secboot/ls_ucode_gr.c
@@ -98,8 +98,6 @@ ls_ucode_img_load_gr(const struct nvkm_subdev *subdev, struct ls_ucode_img *img,
 	char f[64];
 	int ret;
 
-	img->ucode_header = NULL;
-
 	snprintf(f, sizeof(f), "gr/%s_bl", falcon_name);
 	ret = nvkm_firmware_get(subdev->device, f, &bl);
 	if (ret)
-- 
git-series 0.8.10


More information about the Nouveau mailing list