Lines Matching refs:ib
551 struct amdgpu_ib *ib; in amdgpu_vcn_dec_send_msg() local
560 ib = &job->ibs[0]; in amdgpu_vcn_dec_send_msg()
561 ib->ptr[0] = PACKET0(adev->vcn.internal.data0, 0); in amdgpu_vcn_dec_send_msg()
562 ib->ptr[1] = addr; in amdgpu_vcn_dec_send_msg()
563 ib->ptr[2] = PACKET0(adev->vcn.internal.data1, 0); in amdgpu_vcn_dec_send_msg()
564 ib->ptr[3] = addr >> 32; in amdgpu_vcn_dec_send_msg()
565 ib->ptr[4] = PACKET0(adev->vcn.internal.cmd, 0); in amdgpu_vcn_dec_send_msg()
566 ib->ptr[5] = 0; in amdgpu_vcn_dec_send_msg()
568 ib->ptr[i] = PACKET0(adev->vcn.internal.nop, 0); in amdgpu_vcn_dec_send_msg()
569 ib->ptr[i+1] = 0; in amdgpu_vcn_dec_send_msg()
571 ib->length_dw = 16; in amdgpu_vcn_dec_send_msg()
593 struct amdgpu_ib *ib) in amdgpu_vcn_dec_get_create_msg() argument
599 memset(ib, 0, sizeof(*ib)); in amdgpu_vcn_dec_get_create_msg()
602 ib); in amdgpu_vcn_dec_get_create_msg()
606 msg = (uint32_t *)AMDGPU_GPU_PAGE_ALIGN((unsigned long)ib->ptr); in amdgpu_vcn_dec_get_create_msg()
628 struct amdgpu_ib *ib) in amdgpu_vcn_dec_get_destroy_msg() argument
634 memset(ib, 0, sizeof(*ib)); in amdgpu_vcn_dec_get_destroy_msg()
637 ib); in amdgpu_vcn_dec_get_destroy_msg()
641 msg = (uint32_t *)AMDGPU_GPU_PAGE_ALIGN((unsigned long)ib->ptr); in amdgpu_vcn_dec_get_destroy_msg()
657 struct amdgpu_ib ib; in amdgpu_vcn_dec_ring_test_ib() local
660 r = amdgpu_vcn_dec_get_create_msg(ring, 1, &ib); in amdgpu_vcn_dec_ring_test_ib()
664 r = amdgpu_vcn_dec_send_msg(ring, &ib, NULL); in amdgpu_vcn_dec_ring_test_ib()
667 r = amdgpu_vcn_dec_get_destroy_msg(ring, 1, &ib); in amdgpu_vcn_dec_ring_test_ib()
671 r = amdgpu_vcn_dec_send_msg(ring, &ib, &fence); in amdgpu_vcn_dec_ring_test_ib()
686 static uint32_t *amdgpu_vcn_unified_ring_ib_header(struct amdgpu_ib *ib, in amdgpu_vcn_unified_ring_ib_header() argument
691 ib->ptr[ib->length_dw++] = 0x00000010; /* single queue checksum */ in amdgpu_vcn_unified_ring_ib_header()
692 ib->ptr[ib->length_dw++] = 0x30000002; in amdgpu_vcn_unified_ring_ib_header()
693 ib_checksum = &ib->ptr[ib->length_dw++]; in amdgpu_vcn_unified_ring_ib_header()
694 ib->ptr[ib->length_dw++] = ib_pack_in_dw; in amdgpu_vcn_unified_ring_ib_header()
696 ib->ptr[ib->length_dw++] = 0x00000010; /* engine info */ in amdgpu_vcn_unified_ring_ib_header()
697 ib->ptr[ib->length_dw++] = 0x30000001; in amdgpu_vcn_unified_ring_ib_header()
698 ib->ptr[ib->length_dw++] = enc ? 0x2 : 0x3; in amdgpu_vcn_unified_ring_ib_header()
699 ib->ptr[ib->length_dw++] = ib_pack_in_dw * sizeof(uint32_t); in amdgpu_vcn_unified_ring_ib_header()
725 struct amdgpu_ib *ib; in amdgpu_vcn_dec_sw_send_msg() local
740 ib = &job->ibs[0]; in amdgpu_vcn_dec_sw_send_msg()
741 ib->length_dw = 0; in amdgpu_vcn_dec_sw_send_msg()
747 ib_checksum = amdgpu_vcn_unified_ring_ib_header(ib, ib_pack_in_dw, false); in amdgpu_vcn_dec_sw_send_msg()
750 ib->ptr[ib->length_dw++] = sizeof(struct amdgpu_vcn_decode_buffer) + 8; in amdgpu_vcn_dec_sw_send_msg()
751 ib->ptr[ib->length_dw++] = cpu_to_le32(AMDGPU_VCN_IB_FLAG_DECODE_BUFFER); in amdgpu_vcn_dec_sw_send_msg()
752 decode_buffer = (struct amdgpu_vcn_decode_buffer *)&(ib->ptr[ib->length_dw]); in amdgpu_vcn_dec_sw_send_msg()
753 ib->length_dw += sizeof(struct amdgpu_vcn_decode_buffer) / 4; in amdgpu_vcn_dec_sw_send_msg()
760 for (i = ib->length_dw; i < ib_size_dw; ++i) in amdgpu_vcn_dec_sw_send_msg()
761 ib->ptr[i] = 0x0; in amdgpu_vcn_dec_sw_send_msg()
788 struct amdgpu_ib ib; in amdgpu_vcn_dec_sw_ring_test_ib() local
791 r = amdgpu_vcn_dec_get_create_msg(ring, 1, &ib); in amdgpu_vcn_dec_sw_ring_test_ib()
795 r = amdgpu_vcn_dec_sw_send_msg(ring, &ib, NULL); in amdgpu_vcn_dec_sw_ring_test_ib()
798 r = amdgpu_vcn_dec_get_destroy_msg(ring, 1, &ib); in amdgpu_vcn_dec_sw_ring_test_ib()
802 r = amdgpu_vcn_dec_sw_send_msg(ring, &ib, &fence); in amdgpu_vcn_dec_sw_ring_test_ib()
855 struct amdgpu_ib *ib; in amdgpu_vcn_enc_get_create_msg() local
870 ib = &job->ibs[0]; in amdgpu_vcn_enc_get_create_msg()
873 ib->length_dw = 0; in amdgpu_vcn_enc_get_create_msg()
876 ib_checksum = amdgpu_vcn_unified_ring_ib_header(ib, 0x11, true); in amdgpu_vcn_enc_get_create_msg()
878 ib->ptr[ib->length_dw++] = 0x00000018; in amdgpu_vcn_enc_get_create_msg()
879 ib->ptr[ib->length_dw++] = 0x00000001; /* session info */ in amdgpu_vcn_enc_get_create_msg()
880 ib->ptr[ib->length_dw++] = handle; in amdgpu_vcn_enc_get_create_msg()
881 ib->ptr[ib->length_dw++] = upper_32_bits(addr); in amdgpu_vcn_enc_get_create_msg()
882 ib->ptr[ib->length_dw++] = addr; in amdgpu_vcn_enc_get_create_msg()
883 ib->ptr[ib->length_dw++] = 0x00000000; in amdgpu_vcn_enc_get_create_msg()
885 ib->ptr[ib->length_dw++] = 0x00000014; in amdgpu_vcn_enc_get_create_msg()
886 ib->ptr[ib->length_dw++] = 0x00000002; /* task info */ in amdgpu_vcn_enc_get_create_msg()
887 ib->ptr[ib->length_dw++] = 0x0000001c; in amdgpu_vcn_enc_get_create_msg()
888 ib->ptr[ib->length_dw++] = 0x00000000; in amdgpu_vcn_enc_get_create_msg()
889 ib->ptr[ib->length_dw++] = 0x00000000; in amdgpu_vcn_enc_get_create_msg()
891 ib->ptr[ib->length_dw++] = 0x00000008; in amdgpu_vcn_enc_get_create_msg()
892 ib->ptr[ib->length_dw++] = 0x08000001; /* op initialize */ in amdgpu_vcn_enc_get_create_msg()
894 for (i = ib->length_dw; i < ib_size_dw; ++i) in amdgpu_vcn_enc_get_create_msg()
895 ib->ptr[i] = 0x0; in amdgpu_vcn_enc_get_create_msg()
922 struct amdgpu_ib *ib; in amdgpu_vcn_enc_get_destroy_msg() local
937 ib = &job->ibs[0]; in amdgpu_vcn_enc_get_destroy_msg()
940 ib->length_dw = 0; in amdgpu_vcn_enc_get_destroy_msg()
943 ib_checksum = amdgpu_vcn_unified_ring_ib_header(ib, 0x11, true); in amdgpu_vcn_enc_get_destroy_msg()
945 ib->ptr[ib->length_dw++] = 0x00000018; in amdgpu_vcn_enc_get_destroy_msg()
946 ib->ptr[ib->length_dw++] = 0x00000001; in amdgpu_vcn_enc_get_destroy_msg()
947 ib->ptr[ib->length_dw++] = handle; in amdgpu_vcn_enc_get_destroy_msg()
948 ib->ptr[ib->length_dw++] = upper_32_bits(addr); in amdgpu_vcn_enc_get_destroy_msg()
949 ib->ptr[ib->length_dw++] = addr; in amdgpu_vcn_enc_get_destroy_msg()
950 ib->ptr[ib->length_dw++] = 0x00000000; in amdgpu_vcn_enc_get_destroy_msg()
952 ib->ptr[ib->length_dw++] = 0x00000014; in amdgpu_vcn_enc_get_destroy_msg()
953 ib->ptr[ib->length_dw++] = 0x00000002; in amdgpu_vcn_enc_get_destroy_msg()
954 ib->ptr[ib->length_dw++] = 0x0000001c; in amdgpu_vcn_enc_get_destroy_msg()
955 ib->ptr[ib->length_dw++] = 0x00000000; in amdgpu_vcn_enc_get_destroy_msg()
956 ib->ptr[ib->length_dw++] = 0x00000000; in amdgpu_vcn_enc_get_destroy_msg()
958 ib->ptr[ib->length_dw++] = 0x00000008; in amdgpu_vcn_enc_get_destroy_msg()
959 ib->ptr[ib->length_dw++] = 0x08000002; /* op close session */ in amdgpu_vcn_enc_get_destroy_msg()
961 for (i = ib->length_dw; i < ib_size_dw; ++i) in amdgpu_vcn_enc_get_destroy_msg()
962 ib->ptr[i] = 0x0; in amdgpu_vcn_enc_get_destroy_msg()
986 struct amdgpu_ib ib; in amdgpu_vcn_enc_ring_test_ib() local
989 memset(&ib, 0, sizeof(ib)); in amdgpu_vcn_enc_ring_test_ib()
992 &ib); in amdgpu_vcn_enc_ring_test_ib()
996 r = amdgpu_vcn_enc_get_create_msg(ring, 1, &ib, NULL); in amdgpu_vcn_enc_ring_test_ib()
1000 r = amdgpu_vcn_enc_get_destroy_msg(ring, 1, &ib, &fence); in amdgpu_vcn_enc_ring_test_ib()
1011 amdgpu_ib_free(adev, &ib, fence); in amdgpu_vcn_enc_ring_test_ib()