Lines Matching refs:ib

508 	struct amdgpu_ib *ib;  in amdgpu_vcn_dec_send_msg()  local
517 ib = &job->ibs[0]; in amdgpu_vcn_dec_send_msg()
518 ib->ptr[0] = PACKET0(adev->vcn.internal.data0, 0); in amdgpu_vcn_dec_send_msg()
519 ib->ptr[1] = addr; in amdgpu_vcn_dec_send_msg()
520 ib->ptr[2] = PACKET0(adev->vcn.internal.data1, 0); in amdgpu_vcn_dec_send_msg()
521 ib->ptr[3] = addr >> 32; in amdgpu_vcn_dec_send_msg()
522 ib->ptr[4] = PACKET0(adev->vcn.internal.cmd, 0); in amdgpu_vcn_dec_send_msg()
523 ib->ptr[5] = 0; in amdgpu_vcn_dec_send_msg()
525 ib->ptr[i] = PACKET0(adev->vcn.internal.nop, 0); in amdgpu_vcn_dec_send_msg()
526 ib->ptr[i+1] = 0; in amdgpu_vcn_dec_send_msg()
528 ib->length_dw = 16; in amdgpu_vcn_dec_send_msg()
550 struct amdgpu_ib *ib) in amdgpu_vcn_dec_get_create_msg() argument
556 memset(ib, 0, sizeof(*ib)); in amdgpu_vcn_dec_get_create_msg()
559 ib); in amdgpu_vcn_dec_get_create_msg()
563 msg = (uint32_t *)AMDGPU_GPU_PAGE_ALIGN((unsigned long)ib->ptr); in amdgpu_vcn_dec_get_create_msg()
585 struct amdgpu_ib *ib) in amdgpu_vcn_dec_get_destroy_msg() argument
591 memset(ib, 0, sizeof(*ib)); in amdgpu_vcn_dec_get_destroy_msg()
594 ib); in amdgpu_vcn_dec_get_destroy_msg()
598 msg = (uint32_t *)AMDGPU_GPU_PAGE_ALIGN((unsigned long)ib->ptr); in amdgpu_vcn_dec_get_destroy_msg()
614 struct amdgpu_ib ib; in amdgpu_vcn_dec_ring_test_ib() local
617 r = amdgpu_vcn_dec_get_create_msg(ring, 1, &ib); in amdgpu_vcn_dec_ring_test_ib()
621 r = amdgpu_vcn_dec_send_msg(ring, &ib, NULL); in amdgpu_vcn_dec_ring_test_ib()
624 r = amdgpu_vcn_dec_get_destroy_msg(ring, 1, &ib); in amdgpu_vcn_dec_ring_test_ib()
628 r = amdgpu_vcn_dec_send_msg(ring, &ib, &fence); in amdgpu_vcn_dec_ring_test_ib()
643 static uint32_t *amdgpu_vcn_unified_ring_ib_header(struct amdgpu_ib *ib, in amdgpu_vcn_unified_ring_ib_header() argument
648 ib->ptr[ib->length_dw++] = 0x00000010; /* single queue checksum */ in amdgpu_vcn_unified_ring_ib_header()
649 ib->ptr[ib->length_dw++] = 0x30000002; in amdgpu_vcn_unified_ring_ib_header()
650 ib_checksum = &ib->ptr[ib->length_dw++]; in amdgpu_vcn_unified_ring_ib_header()
651 ib->ptr[ib->length_dw++] = ib_pack_in_dw; in amdgpu_vcn_unified_ring_ib_header()
653 ib->ptr[ib->length_dw++] = 0x00000010; /* engine info */ in amdgpu_vcn_unified_ring_ib_header()
654 ib->ptr[ib->length_dw++] = 0x30000001; in amdgpu_vcn_unified_ring_ib_header()
655 ib->ptr[ib->length_dw++] = enc ? 0x2 : 0x3; in amdgpu_vcn_unified_ring_ib_header()
656 ib->ptr[ib->length_dw++] = ib_pack_in_dw * sizeof(uint32_t); in amdgpu_vcn_unified_ring_ib_header()
682 struct amdgpu_ib *ib; in amdgpu_vcn_dec_sw_send_msg() local
698 ib = &job->ibs[0]; in amdgpu_vcn_dec_sw_send_msg()
699 ib->length_dw = 0; in amdgpu_vcn_dec_sw_send_msg()
705 ib_checksum = amdgpu_vcn_unified_ring_ib_header(ib, ib_pack_in_dw, false); in amdgpu_vcn_dec_sw_send_msg()
708 ib->ptr[ib->length_dw++] = sizeof(struct amdgpu_vcn_decode_buffer) + 8; in amdgpu_vcn_dec_sw_send_msg()
709 ib->ptr[ib->length_dw++] = cpu_to_le32(AMDGPU_VCN_IB_FLAG_DECODE_BUFFER); in amdgpu_vcn_dec_sw_send_msg()
710 decode_buffer = (struct amdgpu_vcn_decode_buffer *)&(ib->ptr[ib->length_dw]); in amdgpu_vcn_dec_sw_send_msg()
711 ib->length_dw += sizeof(struct amdgpu_vcn_decode_buffer) / 4; in amdgpu_vcn_dec_sw_send_msg()
718 for (i = ib->length_dw; i < ib_size_dw; ++i) in amdgpu_vcn_dec_sw_send_msg()
719 ib->ptr[i] = 0x0; in amdgpu_vcn_dec_sw_send_msg()
746 struct amdgpu_ib ib; in amdgpu_vcn_dec_sw_ring_test_ib() local
749 r = amdgpu_vcn_dec_get_create_msg(ring, 1, &ib); in amdgpu_vcn_dec_sw_ring_test_ib()
753 r = amdgpu_vcn_dec_sw_send_msg(ring, &ib, NULL); in amdgpu_vcn_dec_sw_ring_test_ib()
756 r = amdgpu_vcn_dec_get_destroy_msg(ring, 1, &ib); in amdgpu_vcn_dec_sw_ring_test_ib()
760 r = amdgpu_vcn_dec_sw_send_msg(ring, &ib, &fence); in amdgpu_vcn_dec_sw_ring_test_ib()
812 struct amdgpu_ib *ib; in amdgpu_vcn_enc_get_create_msg() local
828 ib = &job->ibs[0]; in amdgpu_vcn_enc_get_create_msg()
831 ib->length_dw = 0; in amdgpu_vcn_enc_get_create_msg()
834 ib_checksum = amdgpu_vcn_unified_ring_ib_header(ib, 0x11, true); in amdgpu_vcn_enc_get_create_msg()
836 ib->ptr[ib->length_dw++] = 0x00000018; in amdgpu_vcn_enc_get_create_msg()
837 ib->ptr[ib->length_dw++] = 0x00000001; /* session info */ in amdgpu_vcn_enc_get_create_msg()
838 ib->ptr[ib->length_dw++] = handle; in amdgpu_vcn_enc_get_create_msg()
839 ib->ptr[ib->length_dw++] = upper_32_bits(addr); in amdgpu_vcn_enc_get_create_msg()
840 ib->ptr[ib->length_dw++] = addr; in amdgpu_vcn_enc_get_create_msg()
841 ib->ptr[ib->length_dw++] = 0x0000000b; in amdgpu_vcn_enc_get_create_msg()
843 ib->ptr[ib->length_dw++] = 0x00000014; in amdgpu_vcn_enc_get_create_msg()
844 ib->ptr[ib->length_dw++] = 0x00000002; /* task info */ in amdgpu_vcn_enc_get_create_msg()
845 ib->ptr[ib->length_dw++] = 0x0000001c; in amdgpu_vcn_enc_get_create_msg()
846 ib->ptr[ib->length_dw++] = 0x00000000; in amdgpu_vcn_enc_get_create_msg()
847 ib->ptr[ib->length_dw++] = 0x00000000; in amdgpu_vcn_enc_get_create_msg()
849 ib->ptr[ib->length_dw++] = 0x00000008; in amdgpu_vcn_enc_get_create_msg()
850 ib->ptr[ib->length_dw++] = 0x08000001; /* op initialize */ in amdgpu_vcn_enc_get_create_msg()
852 for (i = ib->length_dw; i < ib_size_dw; ++i) in amdgpu_vcn_enc_get_create_msg()
853 ib->ptr[i] = 0x0; in amdgpu_vcn_enc_get_create_msg()
879 struct amdgpu_ib *ib; in amdgpu_vcn_enc_get_destroy_msg() local
895 ib = &job->ibs[0]; in amdgpu_vcn_enc_get_destroy_msg()
898 ib->length_dw = 0; in amdgpu_vcn_enc_get_destroy_msg()
901 ib_checksum = amdgpu_vcn_unified_ring_ib_header(ib, 0x11, true); in amdgpu_vcn_enc_get_destroy_msg()
903 ib->ptr[ib->length_dw++] = 0x00000018; in amdgpu_vcn_enc_get_destroy_msg()
904 ib->ptr[ib->length_dw++] = 0x00000001; in amdgpu_vcn_enc_get_destroy_msg()
905 ib->ptr[ib->length_dw++] = handle; in amdgpu_vcn_enc_get_destroy_msg()
906 ib->ptr[ib->length_dw++] = upper_32_bits(addr); in amdgpu_vcn_enc_get_destroy_msg()
907 ib->ptr[ib->length_dw++] = addr; in amdgpu_vcn_enc_get_destroy_msg()
908 ib->ptr[ib->length_dw++] = 0x0000000b; in amdgpu_vcn_enc_get_destroy_msg()
910 ib->ptr[ib->length_dw++] = 0x00000014; in amdgpu_vcn_enc_get_destroy_msg()
911 ib->ptr[ib->length_dw++] = 0x00000002; in amdgpu_vcn_enc_get_destroy_msg()
912 ib->ptr[ib->length_dw++] = 0x0000001c; in amdgpu_vcn_enc_get_destroy_msg()
913 ib->ptr[ib->length_dw++] = 0x00000000; in amdgpu_vcn_enc_get_destroy_msg()
914 ib->ptr[ib->length_dw++] = 0x00000000; in amdgpu_vcn_enc_get_destroy_msg()
916 ib->ptr[ib->length_dw++] = 0x00000008; in amdgpu_vcn_enc_get_destroy_msg()
917 ib->ptr[ib->length_dw++] = 0x08000002; /* op close session */ in amdgpu_vcn_enc_get_destroy_msg()
919 for (i = ib->length_dw; i < ib_size_dw; ++i) in amdgpu_vcn_enc_get_destroy_msg()
920 ib->ptr[i] = 0x0; in amdgpu_vcn_enc_get_destroy_msg()
944 struct amdgpu_ib ib; in amdgpu_vcn_enc_ring_test_ib() local
947 memset(&ib, 0, sizeof(ib)); in amdgpu_vcn_enc_ring_test_ib()
950 &ib); in amdgpu_vcn_enc_ring_test_ib()
954 r = amdgpu_vcn_enc_get_create_msg(ring, 1, &ib, NULL); in amdgpu_vcn_enc_ring_test_ib()
958 r = amdgpu_vcn_enc_get_destroy_msg(ring, 1, &ib, &fence); in amdgpu_vcn_enc_ring_test_ib()
969 amdgpu_ib_free(adev, &ib, fence); in amdgpu_vcn_enc_ring_test_ib()