Lines Matching refs:ib
246 struct amdgpu_ib *ib, in sdma_v6_0_ring_emit_ib() argument
265 amdgpu_ring_write(ring, lower_32_bits(ib->gpu_addr) & 0xffffffe0); in sdma_v6_0_ring_emit_ib()
266 amdgpu_ring_write(ring, upper_32_bits(ib->gpu_addr)); in sdma_v6_0_ring_emit_ib()
267 amdgpu_ring_write(ring, ib->length_dw); in sdma_v6_0_ring_emit_ib()
947 struct amdgpu_ib ib; in sdma_v6_0_ring_test_ib() local
956 memset(&ib, 0, sizeof(ib)); in sdma_v6_0_ring_test_ib()
961 ib.gpu_addr = amdgpu_mes_ctx_get_offs_gpu_addr(ring, offset); in sdma_v6_0_ring_test_ib()
962 ib.ptr = (void *)amdgpu_mes_ctx_get_offs_cpu_addr(ring, offset); in sdma_v6_0_ring_test_ib()
979 r = amdgpu_ib_get(adev, NULL, 256, AMDGPU_IB_POOL_DIRECT, &ib); in sdma_v6_0_ring_test_ib()
986 ib.ptr[0] = SDMA_PKT_COPY_LINEAR_HEADER_OP(SDMA_OP_WRITE) | in sdma_v6_0_ring_test_ib()
988 ib.ptr[1] = lower_32_bits(gpu_addr); in sdma_v6_0_ring_test_ib()
989 ib.ptr[2] = upper_32_bits(gpu_addr); in sdma_v6_0_ring_test_ib()
990 ib.ptr[3] = SDMA_PKT_WRITE_UNTILED_DW_3_COUNT(0); in sdma_v6_0_ring_test_ib()
991 ib.ptr[4] = 0xDEADBEEF; in sdma_v6_0_ring_test_ib()
992 ib.ptr[5] = SDMA_PKT_NOP_HEADER_OP(SDMA_OP_NOP); in sdma_v6_0_ring_test_ib()
993 ib.ptr[6] = SDMA_PKT_NOP_HEADER_OP(SDMA_OP_NOP); in sdma_v6_0_ring_test_ib()
994 ib.ptr[7] = SDMA_PKT_NOP_HEADER_OP(SDMA_OP_NOP); in sdma_v6_0_ring_test_ib()
995 ib.length_dw = 8; in sdma_v6_0_ring_test_ib()
997 r = amdgpu_ib_schedule(ring, 1, &ib, NULL, &f); in sdma_v6_0_ring_test_ib()
1022 amdgpu_ib_free(adev, &ib, NULL); in sdma_v6_0_ring_test_ib()
1041 static void sdma_v6_0_vm_copy_pte(struct amdgpu_ib *ib, in sdma_v6_0_vm_copy_pte() argument
1047 ib->ptr[ib->length_dw++] = SDMA_PKT_COPY_LINEAR_HEADER_OP(SDMA_OP_COPY) | in sdma_v6_0_vm_copy_pte()
1049 ib->ptr[ib->length_dw++] = bytes - 1; in sdma_v6_0_vm_copy_pte()
1050 ib->ptr[ib->length_dw++] = 0; /* src/dst endian swap */ in sdma_v6_0_vm_copy_pte()
1051 ib->ptr[ib->length_dw++] = lower_32_bits(src); in sdma_v6_0_vm_copy_pte()
1052 ib->ptr[ib->length_dw++] = upper_32_bits(src); in sdma_v6_0_vm_copy_pte()
1053 ib->ptr[ib->length_dw++] = lower_32_bits(pe); in sdma_v6_0_vm_copy_pte()
1054 ib->ptr[ib->length_dw++] = upper_32_bits(pe); in sdma_v6_0_vm_copy_pte()
1069 static void sdma_v6_0_vm_write_pte(struct amdgpu_ib *ib, uint64_t pe, in sdma_v6_0_vm_write_pte() argument
1075 ib->ptr[ib->length_dw++] = SDMA_PKT_COPY_LINEAR_HEADER_OP(SDMA_OP_WRITE) | in sdma_v6_0_vm_write_pte()
1077 ib->ptr[ib->length_dw++] = lower_32_bits(pe); in sdma_v6_0_vm_write_pte()
1078 ib->ptr[ib->length_dw++] = upper_32_bits(pe); in sdma_v6_0_vm_write_pte()
1079 ib->ptr[ib->length_dw++] = ndw - 1; in sdma_v6_0_vm_write_pte()
1081 ib->ptr[ib->length_dw++] = lower_32_bits(value); in sdma_v6_0_vm_write_pte()
1082 ib->ptr[ib->length_dw++] = upper_32_bits(value); in sdma_v6_0_vm_write_pte()
1099 static void sdma_v6_0_vm_set_pte_pde(struct amdgpu_ib *ib, in sdma_v6_0_vm_set_pte_pde() argument
1105 ib->ptr[ib->length_dw++] = SDMA_PKT_COPY_LINEAR_HEADER_OP(SDMA_OP_PTEPDE); in sdma_v6_0_vm_set_pte_pde()
1106 ib->ptr[ib->length_dw++] = lower_32_bits(pe); /* dst addr */ in sdma_v6_0_vm_set_pte_pde()
1107 ib->ptr[ib->length_dw++] = upper_32_bits(pe); in sdma_v6_0_vm_set_pte_pde()
1108 ib->ptr[ib->length_dw++] = lower_32_bits(flags); /* mask */ in sdma_v6_0_vm_set_pte_pde()
1109 ib->ptr[ib->length_dw++] = upper_32_bits(flags); in sdma_v6_0_vm_set_pte_pde()
1110 ib->ptr[ib->length_dw++] = lower_32_bits(addr); /* value */ in sdma_v6_0_vm_set_pte_pde()
1111 ib->ptr[ib->length_dw++] = upper_32_bits(addr); in sdma_v6_0_vm_set_pte_pde()
1112 ib->ptr[ib->length_dw++] = incr; /* increment size */ in sdma_v6_0_vm_set_pte_pde()
1113 ib->ptr[ib->length_dw++] = 0; in sdma_v6_0_vm_set_pte_pde()
1114 ib->ptr[ib->length_dw++] = count - 1; /* number of entries */ in sdma_v6_0_vm_set_pte_pde()
1123 static void sdma_v6_0_ring_pad_ib(struct amdgpu_ring *ring, struct amdgpu_ib *ib) in sdma_v6_0_ring_pad_ib() argument
1129 pad_count = (-ib->length_dw) & 0x7; in sdma_v6_0_ring_pad_ib()
1132 ib->ptr[ib->length_dw++] = in sdma_v6_0_ring_pad_ib()
1136 ib->ptr[ib->length_dw++] = in sdma_v6_0_ring_pad_ib()
1602 static void sdma_v6_0_emit_copy_buffer(struct amdgpu_ib *ib, in sdma_v6_0_emit_copy_buffer() argument
1608 ib->ptr[ib->length_dw++] = SDMA_PKT_COPY_LINEAR_HEADER_OP(SDMA_OP_COPY) | in sdma_v6_0_emit_copy_buffer()
1611 ib->ptr[ib->length_dw++] = byte_count - 1; in sdma_v6_0_emit_copy_buffer()
1612 ib->ptr[ib->length_dw++] = 0; /* src/dst endian swap */ in sdma_v6_0_emit_copy_buffer()
1613 ib->ptr[ib->length_dw++] = lower_32_bits(src_offset); in sdma_v6_0_emit_copy_buffer()
1614 ib->ptr[ib->length_dw++] = upper_32_bits(src_offset); in sdma_v6_0_emit_copy_buffer()
1615 ib->ptr[ib->length_dw++] = lower_32_bits(dst_offset); in sdma_v6_0_emit_copy_buffer()
1616 ib->ptr[ib->length_dw++] = upper_32_bits(dst_offset); in sdma_v6_0_emit_copy_buffer()
1629 static void sdma_v6_0_emit_fill_buffer(struct amdgpu_ib *ib, in sdma_v6_0_emit_fill_buffer() argument
1634 ib->ptr[ib->length_dw++] = SDMA_PKT_COPY_LINEAR_HEADER_OP(SDMA_OP_CONST_FILL); in sdma_v6_0_emit_fill_buffer()
1635 ib->ptr[ib->length_dw++] = lower_32_bits(dst_offset); in sdma_v6_0_emit_fill_buffer()
1636 ib->ptr[ib->length_dw++] = upper_32_bits(dst_offset); in sdma_v6_0_emit_fill_buffer()
1637 ib->ptr[ib->length_dw++] = src_data; in sdma_v6_0_emit_fill_buffer()
1638 ib->ptr[ib->length_dw++] = byte_count - 1; in sdma_v6_0_emit_fill_buffer()