Lines Matching refs:ib

598 	struct amdgpu_ib *ib;  in amdgpu_vcn_dec_send_msg()  local
607 ib = &job->ibs[0]; in amdgpu_vcn_dec_send_msg()
608 ib->ptr[0] = PACKET0(adev->vcn.inst[ring->me].internal.data0, 0); in amdgpu_vcn_dec_send_msg()
609 ib->ptr[1] = addr; in amdgpu_vcn_dec_send_msg()
610 ib->ptr[2] = PACKET0(adev->vcn.inst[ring->me].internal.data1, 0); in amdgpu_vcn_dec_send_msg()
611 ib->ptr[3] = addr >> 32; in amdgpu_vcn_dec_send_msg()
612 ib->ptr[4] = PACKET0(adev->vcn.inst[ring->me].internal.cmd, 0); in amdgpu_vcn_dec_send_msg()
613 ib->ptr[5] = 0; in amdgpu_vcn_dec_send_msg()
615 ib->ptr[i] = PACKET0(adev->vcn.inst[ring->me].internal.nop, 0); in amdgpu_vcn_dec_send_msg()
616 ib->ptr[i+1] = 0; in amdgpu_vcn_dec_send_msg()
618 ib->length_dw = 16; in amdgpu_vcn_dec_send_msg()
640 struct amdgpu_ib *ib) in amdgpu_vcn_dec_get_create_msg() argument
646 memset(ib, 0, sizeof(*ib)); in amdgpu_vcn_dec_get_create_msg()
649 ib); in amdgpu_vcn_dec_get_create_msg()
653 msg = (uint32_t *)AMDGPU_GPU_PAGE_ALIGN((unsigned long)ib->ptr); in amdgpu_vcn_dec_get_create_msg()
675 struct amdgpu_ib *ib) in amdgpu_vcn_dec_get_destroy_msg() argument
681 memset(ib, 0, sizeof(*ib)); in amdgpu_vcn_dec_get_destroy_msg()
684 ib); in amdgpu_vcn_dec_get_destroy_msg()
688 msg = (uint32_t *)AMDGPU_GPU_PAGE_ALIGN((unsigned long)ib->ptr); in amdgpu_vcn_dec_get_destroy_msg()
704 struct amdgpu_ib ib; in amdgpu_vcn_dec_ring_test_ib() local
707 r = amdgpu_vcn_dec_get_create_msg(ring, 1, &ib); in amdgpu_vcn_dec_ring_test_ib()
711 r = amdgpu_vcn_dec_send_msg(ring, &ib, NULL); in amdgpu_vcn_dec_ring_test_ib()
714 r = amdgpu_vcn_dec_get_destroy_msg(ring, 1, &ib); in amdgpu_vcn_dec_ring_test_ib()
718 r = amdgpu_vcn_dec_send_msg(ring, &ib, &fence); in amdgpu_vcn_dec_ring_test_ib()
733 static uint32_t *amdgpu_vcn_unified_ring_ib_header(struct amdgpu_ib *ib, in amdgpu_vcn_unified_ring_ib_header() argument
738 ib->ptr[ib->length_dw++] = 0x00000010; /* single queue checksum */ in amdgpu_vcn_unified_ring_ib_header()
739 ib->ptr[ib->length_dw++] = 0x30000002; in amdgpu_vcn_unified_ring_ib_header()
740 ib_checksum = &ib->ptr[ib->length_dw++]; in amdgpu_vcn_unified_ring_ib_header()
741 ib->ptr[ib->length_dw++] = ib_pack_in_dw; in amdgpu_vcn_unified_ring_ib_header()
743 ib->ptr[ib->length_dw++] = 0x00000010; /* engine info */ in amdgpu_vcn_unified_ring_ib_header()
744 ib->ptr[ib->length_dw++] = 0x30000001; in amdgpu_vcn_unified_ring_ib_header()
745 ib->ptr[ib->length_dw++] = enc ? 0x2 : 0x3; in amdgpu_vcn_unified_ring_ib_header()
746 ib->ptr[ib->length_dw++] = ib_pack_in_dw * sizeof(uint32_t); in amdgpu_vcn_unified_ring_ib_header()
772 struct amdgpu_ib *ib; in amdgpu_vcn_dec_sw_send_msg() local
787 ib = &job->ibs[0]; in amdgpu_vcn_dec_sw_send_msg()
788 ib->length_dw = 0; in amdgpu_vcn_dec_sw_send_msg()
794 ib_checksum = amdgpu_vcn_unified_ring_ib_header(ib, ib_pack_in_dw, false); in amdgpu_vcn_dec_sw_send_msg()
797 ib->ptr[ib->length_dw++] = sizeof(struct amdgpu_vcn_decode_buffer) + 8; in amdgpu_vcn_dec_sw_send_msg()
798 ib->ptr[ib->length_dw++] = cpu_to_le32(AMDGPU_VCN_IB_FLAG_DECODE_BUFFER); in amdgpu_vcn_dec_sw_send_msg()
799 decode_buffer = (struct amdgpu_vcn_decode_buffer *)&(ib->ptr[ib->length_dw]); in amdgpu_vcn_dec_sw_send_msg()
800 ib->length_dw += sizeof(struct amdgpu_vcn_decode_buffer) / 4; in amdgpu_vcn_dec_sw_send_msg()
807 for (i = ib->length_dw; i < ib_size_dw; ++i) in amdgpu_vcn_dec_sw_send_msg()
808 ib->ptr[i] = 0x0; in amdgpu_vcn_dec_sw_send_msg()
835 struct amdgpu_ib ib; in amdgpu_vcn_dec_sw_ring_test_ib() local
838 r = amdgpu_vcn_dec_get_create_msg(ring, 1, &ib); in amdgpu_vcn_dec_sw_ring_test_ib()
842 r = amdgpu_vcn_dec_sw_send_msg(ring, &ib, NULL); in amdgpu_vcn_dec_sw_ring_test_ib()
845 r = amdgpu_vcn_dec_get_destroy_msg(ring, 1, &ib); in amdgpu_vcn_dec_sw_ring_test_ib()
849 r = amdgpu_vcn_dec_sw_send_msg(ring, &ib, &fence); in amdgpu_vcn_dec_sw_ring_test_ib()
902 struct amdgpu_ib *ib; in amdgpu_vcn_enc_get_create_msg() local
917 ib = &job->ibs[0]; in amdgpu_vcn_enc_get_create_msg()
920 ib->length_dw = 0; in amdgpu_vcn_enc_get_create_msg()
923 ib_checksum = amdgpu_vcn_unified_ring_ib_header(ib, 0x11, true); in amdgpu_vcn_enc_get_create_msg()
925 ib->ptr[ib->length_dw++] = 0x00000018; in amdgpu_vcn_enc_get_create_msg()
926 ib->ptr[ib->length_dw++] = 0x00000001; /* session info */ in amdgpu_vcn_enc_get_create_msg()
927 ib->ptr[ib->length_dw++] = handle; in amdgpu_vcn_enc_get_create_msg()
928 ib->ptr[ib->length_dw++] = upper_32_bits(addr); in amdgpu_vcn_enc_get_create_msg()
929 ib->ptr[ib->length_dw++] = addr; in amdgpu_vcn_enc_get_create_msg()
930 ib->ptr[ib->length_dw++] = 0x00000000; in amdgpu_vcn_enc_get_create_msg()
932 ib->ptr[ib->length_dw++] = 0x00000014; in amdgpu_vcn_enc_get_create_msg()
933 ib->ptr[ib->length_dw++] = 0x00000002; /* task info */ in amdgpu_vcn_enc_get_create_msg()
934 ib->ptr[ib->length_dw++] = 0x0000001c; in amdgpu_vcn_enc_get_create_msg()
935 ib->ptr[ib->length_dw++] = 0x00000000; in amdgpu_vcn_enc_get_create_msg()
936 ib->ptr[ib->length_dw++] = 0x00000000; in amdgpu_vcn_enc_get_create_msg()
938 ib->ptr[ib->length_dw++] = 0x00000008; in amdgpu_vcn_enc_get_create_msg()
939 ib->ptr[ib->length_dw++] = 0x08000001; /* op initialize */ in amdgpu_vcn_enc_get_create_msg()
941 for (i = ib->length_dw; i < ib_size_dw; ++i) in amdgpu_vcn_enc_get_create_msg()
942 ib->ptr[i] = 0x0; in amdgpu_vcn_enc_get_create_msg()
969 struct amdgpu_ib *ib; in amdgpu_vcn_enc_get_destroy_msg() local
984 ib = &job->ibs[0]; in amdgpu_vcn_enc_get_destroy_msg()
987 ib->length_dw = 0; in amdgpu_vcn_enc_get_destroy_msg()
990 ib_checksum = amdgpu_vcn_unified_ring_ib_header(ib, 0x11, true); in amdgpu_vcn_enc_get_destroy_msg()
992 ib->ptr[ib->length_dw++] = 0x00000018; in amdgpu_vcn_enc_get_destroy_msg()
993 ib->ptr[ib->length_dw++] = 0x00000001; in amdgpu_vcn_enc_get_destroy_msg()
994 ib->ptr[ib->length_dw++] = handle; in amdgpu_vcn_enc_get_destroy_msg()
995 ib->ptr[ib->length_dw++] = upper_32_bits(addr); in amdgpu_vcn_enc_get_destroy_msg()
996 ib->ptr[ib->length_dw++] = addr; in amdgpu_vcn_enc_get_destroy_msg()
997 ib->ptr[ib->length_dw++] = 0x00000000; in amdgpu_vcn_enc_get_destroy_msg()
999 ib->ptr[ib->length_dw++] = 0x00000014; in amdgpu_vcn_enc_get_destroy_msg()
1000 ib->ptr[ib->length_dw++] = 0x00000002; in amdgpu_vcn_enc_get_destroy_msg()
1001 ib->ptr[ib->length_dw++] = 0x0000001c; in amdgpu_vcn_enc_get_destroy_msg()
1002 ib->ptr[ib->length_dw++] = 0x00000000; in amdgpu_vcn_enc_get_destroy_msg()
1003 ib->ptr[ib->length_dw++] = 0x00000000; in amdgpu_vcn_enc_get_destroy_msg()
1005 ib->ptr[ib->length_dw++] = 0x00000008; in amdgpu_vcn_enc_get_destroy_msg()
1006 ib->ptr[ib->length_dw++] = 0x08000002; /* op close session */ in amdgpu_vcn_enc_get_destroy_msg()
1008 for (i = ib->length_dw; i < ib_size_dw; ++i) in amdgpu_vcn_enc_get_destroy_msg()
1009 ib->ptr[i] = 0x0; in amdgpu_vcn_enc_get_destroy_msg()
1033 struct amdgpu_ib ib; in amdgpu_vcn_enc_ring_test_ib() local
1036 memset(&ib, 0, sizeof(ib)); in amdgpu_vcn_enc_ring_test_ib()
1039 &ib); in amdgpu_vcn_enc_ring_test_ib()
1043 r = amdgpu_vcn_enc_get_create_msg(ring, 1, &ib, NULL); in amdgpu_vcn_enc_ring_test_ib()
1047 r = amdgpu_vcn_enc_get_destroy_msg(ring, 1, &ib, &fence); in amdgpu_vcn_enc_ring_test_ib()
1058 amdgpu_ib_free(&ib, fence); in amdgpu_vcn_enc_ring_test_ib()