diff options
| -rw-r--r-- | drivers/gpu/drm/nouveau/nvkm/subdev/secboot/ls_ucode_msgqueue.c | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/ls_ucode_msgqueue.c b/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/ls_ucode_msgqueue.c index 5a7a55e831a4..77c13b096a67 100644 --- a/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/ls_ucode_msgqueue.c +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/ls_ucode_msgqueue.c | |||
| @@ -43,28 +43,28 @@ acr_ls_ucode_load_msgqueue(const struct nvkm_subdev *subdev, const char *name, | |||
| 43 | { | 43 | { |
| 44 | const struct firmware *image, *desc, *sig; | 44 | const struct firmware *image, *desc, *sig; |
| 45 | char f[64]; | 45 | char f[64]; |
| 46 | int ret; | 46 | int ver, ret; |
| 47 | 47 | ||
| 48 | snprintf(f, sizeof(f), "%s/image", name); | 48 | snprintf(f, sizeof(f), "%s/image", name); |
| 49 | ret = nvkm_firmware_get(subdev, f, &image); | 49 | ver = nvkm_firmware_get_version(subdev, f, 0, maxver, &image); |
| 50 | if (ret) | 50 | if (ver < 0) |
| 51 | return ret; | 51 | return ver; |
| 52 | img->ucode_data = kmemdup(image->data, image->size, GFP_KERNEL); | 52 | img->ucode_data = kmemdup(image->data, image->size, GFP_KERNEL); |
| 53 | nvkm_firmware_put(image); | 53 | nvkm_firmware_put(image); |
| 54 | if (!img->ucode_data) | 54 | if (!img->ucode_data) |
| 55 | return -ENOMEM; | 55 | return -ENOMEM; |
| 56 | 56 | ||
| 57 | snprintf(f, sizeof(f), "%s/desc", name); | 57 | snprintf(f, sizeof(f), "%s/desc", name); |
| 58 | ret = nvkm_firmware_get(subdev, f, &desc); | 58 | ret = nvkm_firmware_get_version(subdev, f, ver, ver, &desc); |
| 59 | if (ret) | 59 | if (ret < 0) |
| 60 | return ret; | 60 | return ret; |
| 61 | memcpy(&img->ucode_desc, desc->data, sizeof(img->ucode_desc)); | 61 | memcpy(&img->ucode_desc, desc->data, sizeof(img->ucode_desc)); |
| 62 | img->ucode_size = ALIGN(img->ucode_desc.app_start_offset + img->ucode_desc.app_size, 256); | 62 | img->ucode_size = ALIGN(img->ucode_desc.app_start_offset + img->ucode_desc.app_size, 256); |
| 63 | nvkm_firmware_put(desc); | 63 | nvkm_firmware_put(desc); |
| 64 | 64 | ||
| 65 | snprintf(f, sizeof(f), "%s/sig", name); | 65 | snprintf(f, sizeof(f), "%s/sig", name); |
| 66 | ret = nvkm_firmware_get(subdev, f, &sig); | 66 | ret = nvkm_firmware_get_version(subdev, f, ver, ver, &sig); |
| 67 | if (ret) | 67 | if (ret < 0) |
| 68 | return ret; | 68 | return ret; |
| 69 | img->sig_size = sig->size; | 69 | img->sig_size = sig->size; |
| 70 | img->sig = kmemdup(sig->data, sig->size, GFP_KERNEL); | 70 | img->sig = kmemdup(sig->data, sig->size, GFP_KERNEL); |
| @@ -72,7 +72,7 @@ acr_ls_ucode_load_msgqueue(const struct nvkm_subdev *subdev, const char *name, | |||
| 72 | if (!img->sig) | 72 | if (!img->sig) |
| 73 | return -ENOMEM; | 73 | return -ENOMEM; |
| 74 | 74 | ||
| 75 | return 0; | 75 | return ver; |
| 76 | } | 76 | } |
| 77 | 77 | ||
| 78 | static int | 78 | static int |
| @@ -141,11 +141,11 @@ acr_ls_ucode_load_sec2(const struct nvkm_secboot *sb, int maxver, | |||
| 141 | struct ls_ucode_img *img) | 141 | struct ls_ucode_img *img) |
| 142 | { | 142 | { |
| 143 | struct nvkm_sec2 *sec = sb->subdev.device->sec2; | 143 | struct nvkm_sec2 *sec = sb->subdev.device->sec2; |
| 144 | int ret; | 144 | int ver, ret; |
| 145 | 145 | ||
| 146 | ret = acr_ls_ucode_load_msgqueue(&sb->subdev, "sec2", maxver, img); | 146 | ver = acr_ls_ucode_load_msgqueue(&sb->subdev, "sec2", maxver, img); |
| 147 | if (ret) | 147 | if (ver < 0) |
| 148 | return ret; | 148 | return ver; |
| 149 | 149 | ||
| 150 | /* Allocate the PMU queue corresponding to the FW version */ | 150 | /* Allocate the PMU queue corresponding to the FW version */ |
| 151 | ret = nvkm_msgqueue_new(img->ucode_desc.app_version, sec->falcon, | 151 | ret = nvkm_msgqueue_new(img->ucode_desc.app_version, sec->falcon, |
| @@ -153,7 +153,7 @@ acr_ls_ucode_load_sec2(const struct nvkm_secboot *sb, int maxver, | |||
| 153 | if (ret) | 153 | if (ret) |
| 154 | return ret; | 154 | return ret; |
| 155 | 155 | ||
| 156 | return 0; | 156 | return ver; |
| 157 | } | 157 | } |
| 158 | 158 | ||
| 159 | int | 159 | int |
