/linux-6.3-rc2/drivers/gpu/drm/nouveau/nvkm/subdev/acr/ |
A D | lsfw.c | 51 list_for_each_entry(lsfw, &acr->lsfw, head) { in nvkm_acr_lsfw_get() 68 if (lsfw && lsfw->func) { in nvkm_acr_lsfw_add() 74 if (!(lsfw = kzalloc(sizeof(*lsfw), GFP_KERNEL))) in nvkm_acr_lsfw_add() 78 list_add_tail(&lsfw->head, &acr->lsfw); in nvkm_acr_lsfw_add() 136 lsfw->data_size = lsfw->app_size + lsfw->bootloader_size - in nvkm_acr_lsfw_from_desc() 213 lsfw->data_size = lsfw->app_size + lsfw->bootloader_size - lsfw->ucode_size; in nvkm_acr_lsfw_load_sig_image_desc_v2() 299 lsfw->img.size = lsfw->bootloader_size + lsfw->app_size; in nvkm_acr_lsfw_load_bl_inst_data_sig() 313 lsfw->data_size = lsfw->app_size + lsfw->bootloader_size - in nvkm_acr_lsfw_load_bl_inst_data_sig() 374 lsfw->app_size = lsfw->app_resident_code_size + lsfw->app_resident_data_size; in nvkm_acr_lsfw_load_bl_sig_net() 376 lsfw->img.size = lsfw->bootloader_size + lsfw->app_size; in nvkm_acr_lsfw_load_bl_sig_net() [all …]
|
A D | ga102.c | 42 list_for_each_entry(lsfw, &acr->lsfw, head) { in ga102_acr_wpr_patch() 77 memcpy(&hdr->signature, lsfw->sig->data, lsfw->sig->size); in ga102_acr_wpr_build_lsb() 85 hdr->app_code_off = lsfw->app_start_offset + lsfw->app_resident_code_offset; in ga102_acr_wpr_build_lsb() 87 hdr->app_data_off = lsfw->app_start_offset + lsfw->app_resident_data_offset; in ga102_acr_wpr_build_lsb() 105 .sigs = lsfw->sigs, in ga102_acr_wpr_build_lsb() 147 list_for_each_entry(lsfw, &acr->lsfw, head) { in ga102_acr_wpr_build() 171 lsfw->img.data, in ga102_acr_wpr_build() 172 lsfw->img.size); in ga102_acr_wpr_build() 175 lsfw->func->bld_write(acr, lsfw->offset.bld, lsfw); in ga102_acr_wpr_build() 198 list_for_each_entry(lsfw, &acr->lsfw, head) { in ga102_acr_wpr_layout() [all …]
|
A D | gm200.c | 77 list_for_each_entry(lsfw, &acr->lsfw, head) { in gm200_acr_wpr_patch() 121 memcpy(&hdr.signature, lsfw->sig->data, lsfw->sig->size); in gm200_acr_wpr_build_lsb() 136 list_for_each_entry(lsfw, &acr->lsfw, head) { in gm200_acr_wpr_build() 156 lsfw->img.data, in gm200_acr_wpr_build() 157 lsfw->img.size); in gm200_acr_wpr_build() 160 lsfw->func->bld_write(acr, lsfw->offset.bld, lsfw); in gm200_acr_wpr_build() 190 list_for_each_entry(lsfw, &acr->lsfw, head) { in gm200_acr_wpr_layout() 197 wpr += lsfw->img.size; in gm200_acr_wpr_layout() 201 lsfw->bl_data_size = ALIGN(lsfw->func->bld_size, 256); in gm200_acr_wpr_layout() 217 if (IS_ERR(lsfw)) in gm200_acr_wpr_parse() [all …]
|
A D | gp102.c | 44 list_for_each_entry(lsfw, &acr->lsfw, head) { in gp102_acr_wpr_patch() 69 memcpy(&hdr.signature, lsfw->sig->data, lsfw->sig->size); in gp102_acr_wpr_build_lsb() 84 list_for_each_entry(lsfw, &acr->lsfw, head) { in gp102_acr_wpr_build() 87 .falcon_id = lsfw->id, in gp102_acr_wpr_build() 106 lsfw->img.data, in gp102_acr_wpr_build() 107 lsfw->img.size); in gp102_acr_wpr_build() 110 lsfw->func->bld_write(acr, lsfw->offset.bld, lsfw); in gp102_acr_wpr_build() 144 list_for_each_entry(lsfw, &acr->lsfw, head) { in gp102_acr_wpr_layout() 151 wpr += lsfw->img.size; in gp102_acr_wpr_layout() 155 lsfw->bl_data_size = ALIGN(lsfw->func->bld_size, 256); in gp102_acr_wpr_layout() [all …]
|
A D | tu102.c | 45 struct nvkm_acr_lsfw *lsfw; in tu102_acr_wpr_build() local 53 list_for_each_entry(lsfw, &acr->lsfw, head) { in tu102_acr_wpr_build() 54 struct lsf_signature_v1 *sig = (void *)lsfw->sig->data; in tu102_acr_wpr_build() 56 .falcon_id = lsfw->id, in tu102_acr_wpr_build() 57 .lsb_offset = lsfw->offset.lsb, in tu102_acr_wpr_build() 69 ret = gp102_acr_wpr_build_lsb(acr, lsfw); in tu102_acr_wpr_build() 74 nvkm_wobj(acr->wpr, lsfw->offset.img, in tu102_acr_wpr_build() 75 lsfw->img.data, in tu102_acr_wpr_build() 76 lsfw->img.size); in tu102_acr_wpr_build() 79 lsfw->func->bld_write(acr, lsfw->offset.bld, lsfw); in tu102_acr_wpr_build()
|
A D | base.c | 220 struct nvkm_acr_lsfw *lsfw, *lsft; in nvkm_acr_oneinit() local 236 list_for_each_entry_safe(lsfw, lsft, &acr->lsfw, head) { in nvkm_acr_oneinit() 239 if (!lsfw->func) { in nvkm_acr_oneinit() 240 nvkm_acr_lsfw_del(lsfw); in nvkm_acr_oneinit() 256 lsf->func = lsfw->func; in nvkm_acr_oneinit() 257 lsf->falcon = lsfw->falcon; in nvkm_acr_oneinit() 258 lsf->id = lsfw->id; in nvkm_acr_oneinit() 275 list_for_each_entry_safe(lsfw, lsft, &acr->lsfw, head) { in nvkm_acr_oneinit() 278 nvkm_acr_lsf_id(lsfw->id)); in nvkm_acr_oneinit() 279 nvkm_acr_lsfw_del(lsfw); in nvkm_acr_oneinit() [all …]
|
A D | Kbuild | 3 nvkm-y += nvkm/subdev/acr/lsfw.o
|
/linux-6.3-rc2/drivers/gpu/drm/nouveau/nvkm/engine/sec2/ |
A D | gp102.c | 91 struct nvkm_acr_lsfw *lsfw) in gp102_sec2_acr_bld_write() argument 95 .code_dma_base = lsfw->offset.img + lsfw->app_start_offset, in gp102_sec2_acr_bld_write() 96 .code_size_total = lsfw->app_size, in gp102_sec2_acr_bld_write() 99 .data_dma_base = lsfw->offset.img + lsfw->app_start_offset + in gp102_sec2_acr_bld_write() 100 lsfw->app_resident_data_offset, in gp102_sec2_acr_bld_write() 102 .overlay_dma_base = lsfw->offset.img + lsfw->app_start_offset, in gp102_sec2_acr_bld_write() 104 .argv = lsfw->falcon->func->emem_addr, in gp102_sec2_acr_bld_write() 253 struct nvkm_acr_lsfw *lsfw) in gp102_sec2_acr_bld_write_1() argument 257 .code_dma_base = lsfw->offset.img + lsfw->app_start_offset, in gp102_sec2_acr_bld_write_1() 261 .data_dma_base = lsfw->offset.img + lsfw->app_start_offset + in gp102_sec2_acr_bld_write_1() [all …]
|
/linux-6.3-rc2/drivers/gpu/drm/nouveau/nvkm/engine/gr/ |
A D | gp108.c | 41 struct nvkm_acr_lsfw *lsfw) in gp108_gr_acr_bld_write() argument 43 const u64 base = lsfw->offset.img + lsfw->app_start_offset; in gp108_gr_acr_bld_write() 44 const u64 code = base + lsfw->app_resident_code_offset; in gp108_gr_acr_bld_write() 45 const u64 data = base + lsfw->app_resident_data_offset; in gp108_gr_acr_bld_write() 49 .non_sec_code_off = lsfw->app_resident_code_offset, in gp108_gr_acr_bld_write() 50 .non_sec_code_size = lsfw->app_resident_code_size, in gp108_gr_acr_bld_write() 51 .code_entry_point = lsfw->app_imem_entry, in gp108_gr_acr_bld_write() 53 .data_size = lsfw->app_resident_data_size, in gp108_gr_acr_bld_write()
|
A D | gm20b.c | 53 struct nvkm_acr_lsfw *lsfw) in gm20b_gr_acr_bld_write() argument 55 const u64 base = lsfw->offset.img + lsfw->app_start_offset; in gm20b_gr_acr_bld_write() 56 const u64 code = (base + lsfw->app_resident_code_offset) >> 8; in gm20b_gr_acr_bld_write() 57 const u64 data = (base + lsfw->app_resident_data_offset) >> 8; in gm20b_gr_acr_bld_write() 61 .non_sec_code_off = lsfw->app_resident_code_offset, in gm20b_gr_acr_bld_write() 62 .non_sec_code_size = lsfw->app_resident_code_size, in gm20b_gr_acr_bld_write() 63 .code_entry_point = lsfw->app_imem_entry, in gm20b_gr_acr_bld_write() 65 .data_size = lsfw->app_resident_data_size, in gm20b_gr_acr_bld_write()
|
A D | gm200.c | 58 struct nvkm_acr_lsfw *lsfw) in gm200_gr_acr_bld_write() argument 60 const u64 base = lsfw->offset.img + lsfw->app_start_offset; in gm200_gr_acr_bld_write() 61 const u64 code = base + lsfw->app_resident_code_offset; in gm200_gr_acr_bld_write() 62 const u64 data = base + lsfw->app_resident_data_offset; in gm200_gr_acr_bld_write() 66 .non_sec_code_off = lsfw->app_resident_code_offset, in gm200_gr_acr_bld_write() 67 .non_sec_code_size = lsfw->app_resident_code_size, in gm200_gr_acr_bld_write() 68 .code_entry_point = lsfw->app_imem_entry, in gm200_gr_acr_bld_write() 70 .data_size = lsfw->app_resident_data_size, in gm200_gr_acr_bld_write()
|
/linux-6.3-rc2/drivers/gpu/drm/nouveau/nvkm/subdev/pmu/ |
A D | gm20b.c | 88 struct nvkm_acr_lsfw *lsfw) in gm20b_pmu_acr_bld_write() argument 90 const u64 base = lsfw->offset.img + lsfw->app_start_offset; in gm20b_pmu_acr_bld_write() 91 const u64 code = (base + lsfw->app_resident_code_offset) >> 8; in gm20b_pmu_acr_bld_write() 92 const u64 data = (base + lsfw->app_resident_data_offset) >> 8; in gm20b_pmu_acr_bld_write() 96 .code_size_total = lsfw->app_size, in gm20b_pmu_acr_bld_write() 97 .code_size_to_load = lsfw->app_resident_code_size, in gm20b_pmu_acr_bld_write() 98 .code_entry_point = lsfw->app_imem_entry, in gm20b_pmu_acr_bld_write() 100 .data_size = lsfw->app_resident_data_size, in gm20b_pmu_acr_bld_write() 103 .argv = lsfw->falcon->data.limit - sizeof(struct nv_pmu_args), in gm20b_pmu_acr_bld_write()
|
/linux-6.3-rc2/drivers/gpu/drm/nouveau/include/nvkm/subdev/ |
A D | acr.h | 40 struct list_head lsfw, lsf; member
|