Lines Matching full:virtual

56  * device virtual memory.
60 * virtual range which is a half of the total device virtual range.
62 * On each mapping of physical pages, a suitable virtual range chunk (with a
67 * On each Unmapping of a virtual address, the relevant virtual chunk is
73 * virtual range (which is a half of the device total virtual range).
214 * dma_map_host_va() - DMA mapping of the given host virtual address.
216 * @addr: the host virtual address of the memory area.
265 * dma_unmap_host_va() - DMA unmapping of the given host virtual address.
389 * clear_va_list_locked() - free virtual addresses list.
391 * @va_list: list of virtual addresses to free.
394 * - Iterate over the list and free each virtual addresses block.
410 * print_va_list_locked() - print virtual addresses list.
412 * @va_list: list of virtual addresses to print.
415 * - Iterate over the list and print each virtual addresses block.
435 * merge_va_blocks_locked() - merge a virtual block if possible.
437 * @va_list: pointer to the virtual addresses block list.
438 * @va_block: virtual block to merge with adjacent blocks.
441 * - Merge the given blocks with the adjacent blocks if their virtual ranges
442 * create a contiguous virtual range.
470 * add_va_block_locked() - add a virtual block to the virtual addresses list.
472 * @va_list: pointer to the virtual addresses block list.
473 * @start: start virtual address.
474 * @end: end virtual address.
477 * - Add the given block to the virtual blocks list and merge with other blocks
478 * if a contiguous virtual block can be created.
527 * @va_range: pointer to the virtual addresses range object.
528 * @start: start virtual address.
529 * @end: end virtual address.
548 * @range_type: virtual space range type.
549 * @start_addr: start virtual address.
577 * get_va_block() - get a virtual block for the given size and alignment.
580 * @va_range: pointer to the virtual addresses range.
583 * @va_block_align: required alignment of the virtual block start address.
588 * - Iterate on the virtual block list to find a suitable virtual block for the
591 * - Return the start address of the virtual block.
706 * va block, then return it to the main virtual addresses list. in get_va_block()
742 * hl_reserve_va_block() - reserve a virtual block of a given size.
745 * @type: virtual addresses range type.
747 * @alignment: required alignment in bytes of the virtual block start address,
751 * - Iterate on the virtual block list to find a suitable virtual block for the
754 * - Return the start address of the virtual block.
794 * @start_addr: start virtual address.
836 * virtual block.
934 * @vaddr: start address of the virtual area to map from.
938 * - Maps each chunk of virtual memory to matching physical chunk.
1002 * @vaddr: start address of the virtual area to unmap.
1039 * @args: host parameters with handle/host virtual address.
1040 * @device_addr: pointer to result device virtual address.
1043 * - If given a physical device memory handle, map to a device virtual block
1045 * - If given a host virtual address and size, find the related physical pages,
1046 * map a device virtual block to this pages and return the start address of
1263 * unmap_device_va() - unmap the given device virtual address.
1265 * @args: host parameters with device virtual address to unmap.
1269 * - unmap the physical pages related to the given virtual address.
1270 * - return the device virtual block to the virtual block list.
2047 /* offset must be 0 in devices without virtual memory support */ in export_dmabuf_from_addr()
2049 dev_dbg(hdev->dev, "offset is not allowed in device without virtual memory\n"); in export_dmabuf_from_addr()
2225 /* If DRAM does not support virtual memory the driver won't in hl_mem_ioctl()
2254 /* If DRAM does not support virtual memory the driver won't in hl_mem_ioctl()
2369 * @addr: the host virtual address of the memory area.
2506 * va_range_init() - initialize virtual addresses range.
2509 * @range_type: virtual address range type.
2515 * - Initializes the virtual addresses list of the given range with the given
2565 * va_range_fini() - clear a virtual addresses range.
2567 * @va_range: pointer to virtual addresses range.
2570 * - Frees the virtual addresses block list and its lock.
2583 * vm_ctx_init_with_ranges() - initialize virtual memory for context.
2585 * @host_range_start: host virtual addresses range start.
2586 * @host_range_end: host virtual addresses range end.
2588 * @host_huge_range_start: host virtual addresses range start for memory
2590 * @host_huge_range_end: host virtual addresses range end for memory allocated
2593 * @dram_range_start: dram virtual addresses range start.
2594 * @dram_range_end: dram virtual addresses range end.
2599 * - Virtual address to area descriptor hashtable.
2600 * - Virtual block list of available virtual memory.
2734 * hl_vm_ctx_fini() - virtual memory teardown of context.
2738 * - Virtual block list of available virtual memory.
2739 * - Virtual address to area descriptor hashtable.
2748 * - This function checks the virtual block list for correctness. At this point
2749 * the list should contain one element which describes the whole virtual
2829 * hl_vm_init() - initialize virtual memory module.
2883 * hl_vm_fini() - virtual memory module teardown.
2913 * This function initializes the HW block virtual mapped addresses list and
2926 * This function clears the HW block virtual mapped addresses list and destroys