Lines Matching refs:ib
599 struct amdgpu_ib *ib; in amdgpu_vcn_dec_send_msg() local
608 ib = &job->ibs[0]; in amdgpu_vcn_dec_send_msg()
609 ib->ptr[0] = PACKET0(adev->vcn.inst[ring->me].internal.data0, 0); in amdgpu_vcn_dec_send_msg()
610 ib->ptr[1] = addr; in amdgpu_vcn_dec_send_msg()
611 ib->ptr[2] = PACKET0(adev->vcn.inst[ring->me].internal.data1, 0); in amdgpu_vcn_dec_send_msg()
612 ib->ptr[3] = addr >> 32; in amdgpu_vcn_dec_send_msg()
613 ib->ptr[4] = PACKET0(adev->vcn.inst[ring->me].internal.cmd, 0); in amdgpu_vcn_dec_send_msg()
614 ib->ptr[5] = 0; in amdgpu_vcn_dec_send_msg()
616 ib->ptr[i] = PACKET0(adev->vcn.inst[ring->me].internal.nop, 0); in amdgpu_vcn_dec_send_msg()
617 ib->ptr[i+1] = 0; in amdgpu_vcn_dec_send_msg()
619 ib->length_dw = 16; in amdgpu_vcn_dec_send_msg()
641 struct amdgpu_ib *ib) in amdgpu_vcn_dec_get_create_msg() argument
647 memset(ib, 0, sizeof(*ib)); in amdgpu_vcn_dec_get_create_msg()
650 ib); in amdgpu_vcn_dec_get_create_msg()
654 msg = (uint32_t *)AMDGPU_GPU_PAGE_ALIGN((unsigned long)ib->ptr); in amdgpu_vcn_dec_get_create_msg()
676 struct amdgpu_ib *ib) in amdgpu_vcn_dec_get_destroy_msg() argument
682 memset(ib, 0, sizeof(*ib)); in amdgpu_vcn_dec_get_destroy_msg()
685 ib); in amdgpu_vcn_dec_get_destroy_msg()
689 msg = (uint32_t *)AMDGPU_GPU_PAGE_ALIGN((unsigned long)ib->ptr); in amdgpu_vcn_dec_get_destroy_msg()
705 struct amdgpu_ib ib; in amdgpu_vcn_dec_ring_test_ib() local
708 r = amdgpu_vcn_dec_get_create_msg(ring, 1, &ib); in amdgpu_vcn_dec_ring_test_ib()
712 r = amdgpu_vcn_dec_send_msg(ring, &ib, NULL); in amdgpu_vcn_dec_ring_test_ib()
715 r = amdgpu_vcn_dec_get_destroy_msg(ring, 1, &ib); in amdgpu_vcn_dec_ring_test_ib()
719 r = amdgpu_vcn_dec_send_msg(ring, &ib, &fence); in amdgpu_vcn_dec_ring_test_ib()
734 static uint32_t *amdgpu_vcn_unified_ring_ib_header(struct amdgpu_ib *ib, in amdgpu_vcn_unified_ring_ib_header() argument
739 ib->ptr[ib->length_dw++] = 0x00000010; /* single queue checksum */ in amdgpu_vcn_unified_ring_ib_header()
740 ib->ptr[ib->length_dw++] = 0x30000002; in amdgpu_vcn_unified_ring_ib_header()
741 ib_checksum = &ib->ptr[ib->length_dw++]; in amdgpu_vcn_unified_ring_ib_header()
742 ib->ptr[ib->length_dw++] = ib_pack_in_dw; in amdgpu_vcn_unified_ring_ib_header()
744 ib->ptr[ib->length_dw++] = 0x00000010; /* engine info */ in amdgpu_vcn_unified_ring_ib_header()
745 ib->ptr[ib->length_dw++] = 0x30000001; in amdgpu_vcn_unified_ring_ib_header()
746 ib->ptr[ib->length_dw++] = enc ? 0x2 : 0x3; in amdgpu_vcn_unified_ring_ib_header()
747 ib->ptr[ib->length_dw++] = ib_pack_in_dw * sizeof(uint32_t); in amdgpu_vcn_unified_ring_ib_header()
773 struct amdgpu_ib *ib; in amdgpu_vcn_dec_sw_send_msg() local
788 ib = &job->ibs[0]; in amdgpu_vcn_dec_sw_send_msg()
789 ib->length_dw = 0; in amdgpu_vcn_dec_sw_send_msg()
795 ib_checksum = amdgpu_vcn_unified_ring_ib_header(ib, ib_pack_in_dw, false); in amdgpu_vcn_dec_sw_send_msg()
798 ib->ptr[ib->length_dw++] = sizeof(struct amdgpu_vcn_decode_buffer) + 8; in amdgpu_vcn_dec_sw_send_msg()
799 ib->ptr[ib->length_dw++] = cpu_to_le32(AMDGPU_VCN_IB_FLAG_DECODE_BUFFER); in amdgpu_vcn_dec_sw_send_msg()
800 decode_buffer = (struct amdgpu_vcn_decode_buffer *)&(ib->ptr[ib->length_dw]); in amdgpu_vcn_dec_sw_send_msg()
801 ib->length_dw += sizeof(struct amdgpu_vcn_decode_buffer) / 4; in amdgpu_vcn_dec_sw_send_msg()
808 for (i = ib->length_dw; i < ib_size_dw; ++i) in amdgpu_vcn_dec_sw_send_msg()
809 ib->ptr[i] = 0x0; in amdgpu_vcn_dec_sw_send_msg()
836 struct amdgpu_ib ib; in amdgpu_vcn_dec_sw_ring_test_ib() local
839 r = amdgpu_vcn_dec_get_create_msg(ring, 1, &ib); in amdgpu_vcn_dec_sw_ring_test_ib()
843 r = amdgpu_vcn_dec_sw_send_msg(ring, &ib, NULL); in amdgpu_vcn_dec_sw_ring_test_ib()
846 r = amdgpu_vcn_dec_get_destroy_msg(ring, 1, &ib); in amdgpu_vcn_dec_sw_ring_test_ib()
850 r = amdgpu_vcn_dec_sw_send_msg(ring, &ib, &fence); in amdgpu_vcn_dec_sw_ring_test_ib()
903 struct amdgpu_ib *ib; in amdgpu_vcn_enc_get_create_msg() local
918 ib = &job->ibs[0]; in amdgpu_vcn_enc_get_create_msg()
921 ib->length_dw = 0; in amdgpu_vcn_enc_get_create_msg()
924 ib_checksum = amdgpu_vcn_unified_ring_ib_header(ib, 0x11, true); in amdgpu_vcn_enc_get_create_msg()
926 ib->ptr[ib->length_dw++] = 0x00000018; in amdgpu_vcn_enc_get_create_msg()
927 ib->ptr[ib->length_dw++] = 0x00000001; /* session info */ in amdgpu_vcn_enc_get_create_msg()
928 ib->ptr[ib->length_dw++] = handle; in amdgpu_vcn_enc_get_create_msg()
929 ib->ptr[ib->length_dw++] = upper_32_bits(addr); in amdgpu_vcn_enc_get_create_msg()
930 ib->ptr[ib->length_dw++] = addr; in amdgpu_vcn_enc_get_create_msg()
931 ib->ptr[ib->length_dw++] = 0x00000000; in amdgpu_vcn_enc_get_create_msg()
933 ib->ptr[ib->length_dw++] = 0x00000014; in amdgpu_vcn_enc_get_create_msg()
934 ib->ptr[ib->length_dw++] = 0x00000002; /* task info */ in amdgpu_vcn_enc_get_create_msg()
935 ib->ptr[ib->length_dw++] = 0x0000001c; in amdgpu_vcn_enc_get_create_msg()
936 ib->ptr[ib->length_dw++] = 0x00000000; in amdgpu_vcn_enc_get_create_msg()
937 ib->ptr[ib->length_dw++] = 0x00000000; in amdgpu_vcn_enc_get_create_msg()
939 ib->ptr[ib->length_dw++] = 0x00000008; in amdgpu_vcn_enc_get_create_msg()
940 ib->ptr[ib->length_dw++] = 0x08000001; /* op initialize */ in amdgpu_vcn_enc_get_create_msg()
942 for (i = ib->length_dw; i < ib_size_dw; ++i) in amdgpu_vcn_enc_get_create_msg()
943 ib->ptr[i] = 0x0; in amdgpu_vcn_enc_get_create_msg()
970 struct amdgpu_ib *ib; in amdgpu_vcn_enc_get_destroy_msg() local
985 ib = &job->ibs[0]; in amdgpu_vcn_enc_get_destroy_msg()
988 ib->length_dw = 0; in amdgpu_vcn_enc_get_destroy_msg()
991 ib_checksum = amdgpu_vcn_unified_ring_ib_header(ib, 0x11, true); in amdgpu_vcn_enc_get_destroy_msg()
993 ib->ptr[ib->length_dw++] = 0x00000018; in amdgpu_vcn_enc_get_destroy_msg()
994 ib->ptr[ib->length_dw++] = 0x00000001; in amdgpu_vcn_enc_get_destroy_msg()
995 ib->ptr[ib->length_dw++] = handle; in amdgpu_vcn_enc_get_destroy_msg()
996 ib->ptr[ib->length_dw++] = upper_32_bits(addr); in amdgpu_vcn_enc_get_destroy_msg()
997 ib->ptr[ib->length_dw++] = addr; in amdgpu_vcn_enc_get_destroy_msg()
998 ib->ptr[ib->length_dw++] = 0x00000000; in amdgpu_vcn_enc_get_destroy_msg()
1000 ib->ptr[ib->length_dw++] = 0x00000014; in amdgpu_vcn_enc_get_destroy_msg()
1001 ib->ptr[ib->length_dw++] = 0x00000002; in amdgpu_vcn_enc_get_destroy_msg()
1002 ib->ptr[ib->length_dw++] = 0x0000001c; in amdgpu_vcn_enc_get_destroy_msg()
1003 ib->ptr[ib->length_dw++] = 0x00000000; in amdgpu_vcn_enc_get_destroy_msg()
1004 ib->ptr[ib->length_dw++] = 0x00000000; in amdgpu_vcn_enc_get_destroy_msg()
1006 ib->ptr[ib->length_dw++] = 0x00000008; in amdgpu_vcn_enc_get_destroy_msg()
1007 ib->ptr[ib->length_dw++] = 0x08000002; /* op close session */ in amdgpu_vcn_enc_get_destroy_msg()
1009 for (i = ib->length_dw; i < ib_size_dw; ++i) in amdgpu_vcn_enc_get_destroy_msg()
1010 ib->ptr[i] = 0x0; in amdgpu_vcn_enc_get_destroy_msg()
1034 struct amdgpu_ib ib; in amdgpu_vcn_enc_ring_test_ib() local
1037 memset(&ib, 0, sizeof(ib)); in amdgpu_vcn_enc_ring_test_ib()
1040 &ib); in amdgpu_vcn_enc_ring_test_ib()
1044 r = amdgpu_vcn_enc_get_create_msg(ring, 1, &ib, NULL); in amdgpu_vcn_enc_ring_test_ib()
1048 r = amdgpu_vcn_enc_get_destroy_msg(ring, 1, &ib, &fence); in amdgpu_vcn_enc_ring_test_ib()
1059 amdgpu_ib_free(&ib, fence); in amdgpu_vcn_enc_ring_test_ib()