/linux/drivers/accel/habanalabs/common/mmu/ |
H A D | mmu_v2_hr.c | 50 return hl_mmu_hr_init(hdev, &hdev->mmu_priv.hr, prop->pmmu.hop_table_size, in hl_mmu_v2_hr_init() 68 hl_mmu_hr_fini(hdev, &hdev->mmu_priv.hr, prop->pmmu.hop_table_size); in hl_mmu_v2_hr_fini() 111 ctx->hdev->asic_prop.pmmu.hop_table_size); in hl_mmu_v2_hr_ctx_fini() 129 mmu_prop = is_dram_addr ? &prop->dmmu : &prop->pmmu; in _hl_mmu_v2_hr_unmap() 153 ctx->hdev->asic_prop.pmmu.hop_table_size); in _hl_mmu_v2_hr_unmap() 172 ctx->hdev->asic_prop.pmmu.hop_table_size); in _hl_mmu_v2_hr_unmap() 175 ctx->hdev->asic_prop.pmmu.hop_table_size)) in _hl_mmu_v2_hr_unmap() 179 ctx->hdev->asic_prop.pmmu.hop_table_size); in _hl_mmu_v2_hr_unmap() 230 mmu_prop = &prop->pmmu; in _hl_mmu_v2_hr_map() 258 ctx->hdev->asic_prop.pmmu.hop_table_size); in _hl_mmu_v2_hr_map() [all …]
|
H A D | mmu_v1.c | 230 mmu_prop = is_dram_addr ? &prop->dmmu : &prop->pmmu; in hl_mmu_v1_unmap() 347 mmu_prop = &prop->pmmu; in hl_mmu_v1_map() 465 is_pmmu_addr = hl_mem_area_inside_range(virt_addr, prop->pmmu.page_size, in hl_mmu_v1_get_tlb_info() 466 prop->pmmu.start_addr, in hl_mmu_v1_get_tlb_info() 467 prop->pmmu.end_addr); in hl_mmu_v1_get_tlb_info() 476 mmu_prop = &prop->pmmu; in hl_mmu_v1_get_tlb_info()
|
H A D | mmu.c | 203 return &prop->pmmu; in hl_mmu_get_prop() 396 prop->pmmu.start_addr, prop->pmmu.end_addr)) in hl_mmu_map_contiguous() 397 page_size = prop->pmmu.page_size; in hl_mmu_map_contiguous() 456 prop->pmmu.start_addr, prop->pmmu.end_addr)) in hl_mmu_unmap_contiguous() 457 page_size = prop->pmmu.page_size; in hl_mmu_unmap_contiguous() 493 mmu_prop = &prop->pmmu; in hl_mmu_pa_page_with_offset() 569 mmu_prop = is_dram_addr ? &prop->dmmu : &prop->pmmu; in hl_mmu_get_tlb_info() 605 if (prop->pmmu.host_resident) in hl_mmu_if_set_funcs()
|
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/mmu/ |
H A D | gp10b.c | 41 struct nvkm_mmu **pmmu) in gp10b_mmu_new() argument 44 return gm20b_mmu_new(device, type, inst, pmmu); in gp10b_mmu_new() 45 return nvkm_mmu_new_(&gp10b_mmu, device, type, inst, pmmu); in gp10b_mmu_new()
|
H A D | gp100.c | 41 struct nvkm_mmu **pmmu) in gp100_mmu_new() argument 44 return gm200_mmu_new(device, type, inst, pmmu); in gp100_mmu_new() 45 return nvkm_mmu_new_(&gp100_mmu, device, type, inst, pmmu); in gp100_mmu_new()
|
H A D | tu102.c | 56 struct nvkm_mmu **pmmu) in tu102_mmu_new() argument 59 return r535_mmu_new(&tu102_mmu, device, type, inst, pmmu); in tu102_mmu_new() 61 return nvkm_mmu_new_(&tu102_mmu, device, type, inst, pmmu); in tu102_mmu_new()
|
H A D | gm20b.c | 51 struct nvkm_mmu **pmmu) in gm20b_mmu_new() argument 54 return nvkm_mmu_new_(&gm20b_mmu_fixed, device, type, inst, pmmu); in gm20b_mmu_new() 55 return nvkm_mmu_new_(&gm20b_mmu, device, type, inst, pmmu); in gm20b_mmu_new()
|
H A D | nv41.c | 51 struct nvkm_mmu **pmmu) in nv41_mmu_new() argument 55 return nv04_mmu_new(device, type, inst, pmmu); in nv41_mmu_new() 57 return nvkm_mmu_new_(&nv41_mmu, device, type, inst, pmmu); in nv41_mmu_new()
|
H A D | gm200.c | 94 struct nvkm_mmu **pmmu) in gm200_mmu_new() argument 97 return nvkm_mmu_new_(&gm200_mmu_fixed, device, type, inst, pmmu); in gm200_mmu_new() 98 return nvkm_mmu_new_(&gm200_mmu, device, type, inst, pmmu); in gm200_mmu_new()
|
H A D | nv44.c | 66 struct nvkm_mmu **pmmu) in nv44_mmu_new() argument 70 return nv04_mmu_new(device, type, inst, pmmu); in nv44_mmu_new() 72 return nvkm_mmu_new_(&nv44_mmu, device, type, inst, pmmu); in nv44_mmu_new()
|
H A D | nv04.c | 39 struct nvkm_mmu **pmmu) in nv04_mmu_new() argument 41 return nvkm_mmu_new_(&nv04_mmu, device, type, inst, pmmu); in nv04_mmu_new()
|
H A D | gk20a.c | 39 struct nvkm_mmu **pmmu) in gk20a_mmu_new() argument 41 return nvkm_mmu_new_(&gk20a_mmu, device, type, inst, pmmu); in gk20a_mmu_new()
|
H A D | gk104.c | 39 struct nvkm_mmu **pmmu) in gk104_mmu_new() argument 41 return nvkm_mmu_new_(&gk104_mmu, device, type, inst, pmmu); in gk104_mmu_new()
|
H A D | mcp77.c | 39 struct nvkm_mmu **pmmu) in mcp77_mmu_new() argument 41 return nvkm_mmu_new_(&mcp77_mmu, device, type, inst, pmmu); in mcp77_mmu_new()
|
H A D | gv100.c | 41 struct nvkm_mmu **pmmu) in gv100_mmu_new() argument 43 return nvkm_mmu_new_(&gv100_mmu, device, type, inst, pmmu); in gv100_mmu_new()
|
H A D | g84.c | 39 struct nvkm_mmu **pmmu) in g84_mmu_new() argument 41 return nvkm_mmu_new_(&g84_mmu, device, type, inst, pmmu); in g84_mmu_new()
|
H A D | gf100.c | 88 struct nvkm_mmu **pmmu) in gf100_mmu_new() argument 90 return nvkm_mmu_new_(&gf100_mmu, device, type, inst, pmmu); in gf100_mmu_new()
|
H A D | nv50.c | 75 struct nvkm_mmu **pmmu) in nv50_mmu_new() argument 77 return nvkm_mmu_new_(&nv50_mmu, device, type, inst, pmmu); in nv50_mmu_new()
|
H A D | r535.c | 101 struct nvkm_mmu **pmmu) in r535_mmu_new() argument 118 ret = nvkm_mmu_new_(rm, device, type, inst, pmmu); in r535_mmu_new()
|
H A D | base.c | 435 enum nvkm_subdev_type type, int inst, struct nvkm_mmu **pmmu) in nvkm_mmu_new_() argument 437 if (!(*pmmu = kzalloc(sizeof(**pmmu), GFP_KERNEL))) in nvkm_mmu_new_() 439 nvkm_mmu_ctor(func, device, type, inst, *pmmu); in nvkm_mmu_new_()
|
/linux/drivers/accel/habanalabs/gaudi2/ |
H A D | gaudi2.c | 2498 prop->pmmu.pgt_size = prop->mmu_pgt_size; in gaudi2_set_fixed_properties() 2500 prop->pmmu.host_resident = 1; in gaudi2_set_fixed_properties() 2501 prop->pmmu.num_hops = MMU_ARCH_6_HOPS; in gaudi2_set_fixed_properties() 2502 prop->pmmu.last_mask = LAST_MASK; in gaudi2_set_fixed_properties() 2503 prop->pmmu.hop_table_size = HOP_TABLE_SIZE_512_PTE; in gaudi2_set_fixed_properties() 2504 prop->pmmu.hop0_tables_total_size = HOP_TABLE_SIZE_512_PTE * prop->max_asid; in gaudi2_set_fixed_properties() 2514 prop->pmmu.hop_shifts[MMU_HOP0] = HOP0_SHIFT_64K; in gaudi2_set_fixed_properties() 2515 prop->pmmu.hop_shifts[MMU_HOP1] = HOP1_SHIFT_64K; in gaudi2_set_fixed_properties() 2516 prop->pmmu.hop_shifts[MMU_HOP2] = HOP2_SHIFT_64K; in gaudi2_set_fixed_properties() 2517 prop->pmmu.hop_shifts[MMU_HOP3] = HOP3_SHIFT_64K; in gaudi2_set_fixed_properties() [all …]
|
/linux/drivers/accel/habanalabs/common/ |
H A D | command_buffer.c | 21 u32 page_size = prop->pmmu.page_size; in cb_map_mem() 519 ctx->cb_va_pool = gen_pool_create(__ffs(prop->pmmu.page_size), -1); in hl_cb_va_pool_init()
|
/linux/drivers/accel/habanalabs/gaudi/ |
H A D | gaudi.c | 621 prop->pmmu.hop_shifts[MMU_HOP0] = MMU_V1_1_HOP0_SHIFT; in gaudi_set_fixed_properties() 622 prop->pmmu.hop_shifts[MMU_HOP1] = MMU_V1_1_HOP1_SHIFT; in gaudi_set_fixed_properties() 623 prop->pmmu.hop_shifts[MMU_HOP2] = MMU_V1_1_HOP2_SHIFT; in gaudi_set_fixed_properties() 624 prop->pmmu.hop_shifts[MMU_HOP3] = MMU_V1_1_HOP3_SHIFT; in gaudi_set_fixed_properties() 625 prop->pmmu.hop_shifts[MMU_HOP4] = MMU_V1_1_HOP4_SHIFT; in gaudi_set_fixed_properties() 626 prop->pmmu.hop_masks[MMU_HOP0] = MMU_V1_1_HOP0_MASK; in gaudi_set_fixed_properties() 627 prop->pmmu.hop_masks[MMU_HOP1] = MMU_V1_1_HOP1_MASK; in gaudi_set_fixed_properties() 628 prop->pmmu.hop_masks[MMU_HOP2] = MMU_V1_1_HOP2_MASK; in gaudi_set_fixed_properties() 629 prop->pmmu.hop_masks[MMU_HOP3] = MMU_V1_1_HOP3_MASK; in gaudi_set_fixed_properties() 630 prop->pmmu.hop_masks[MMU_HOP4] = MMU_V1_1_HOP4_MASK; in gaudi_set_fixed_properties() [all …]
|
H A D | gaudi_coresight.c | 556 prop->pmmu.start_addr, in gaudi_etr_validate_address() 557 prop->pmmu.end_addr)) { in gaudi_etr_validate_address()
|
/linux/drivers/accel/habanalabs/goya/ |
H A D | goya.c | 440 memcpy(&prop->pmmu, &prop->dmmu, sizeof(prop->dmmu)); in goya_set_fixed_properties() 441 prop->pmmu.start_addr = VA_HOST_SPACE_START; in goya_set_fixed_properties() 442 prop->pmmu.end_addr = VA_HOST_SPACE_END; in goya_set_fixed_properties() 443 prop->pmmu.page_size = PAGE_SIZE_4KB; in goya_set_fixed_properties() 444 prop->pmmu.num_hops = MMU_ARCH_5_HOPS; in goya_set_fixed_properties() 445 prop->pmmu.last_mask = LAST_MASK; in goya_set_fixed_properties() 447 prop->pmmu.hop_table_size = HOP_TABLE_SIZE_512_PTE; in goya_set_fixed_properties() 448 prop->pmmu.hop0_tables_total_size = HOP0_512_PTE_TABLES_TOTAL_SIZE; in goya_set_fixed_properties() 451 memcpy(&prop->pmmu_huge, &prop->pmmu, sizeof(prop->pmmu)); in goya_set_fixed_properties() 3577 hdev->asic_prop.pmmu.start_addr, in goya_validate_dma_pkt_mmu() [all …]
|