Lines Matching refs:infopacket
556 struct dc_info_packet *infopacket, in build_vrr_infopacket_data_v1() argument
560 infopacket->sb[1] = 0x1A; in build_vrr_infopacket_data_v1()
563 infopacket->sb[2] = 0x00; in build_vrr_infopacket_data_v1()
566 infopacket->sb[3] = 0x00; in build_vrr_infopacket_data_v1()
576 infopacket->sb[6] |= 0x01; in build_vrr_infopacket_data_v1()
581 infopacket->sb[6] |= 0x02; in build_vrr_infopacket_data_v1()
587 infopacket->sb[6] |= 0x04; in build_vrr_infopacket_data_v1()
591 infopacket->sb[6] |= 0x04; in build_vrr_infopacket_data_v1()
598 infopacket->sb[7] = (unsigned char)((vrr->min_refresh_in_uhz + 500000) / 1000000); in build_vrr_infopacket_data_v1()
600 infopacket->sb[7] = (unsigned char)((vrr->max_refresh_in_uhz + 500000) / 1000000); in build_vrr_infopacket_data_v1()
606 infopacket->sb[8] = (unsigned char)((vrr->max_refresh_in_uhz + 500000) / 1000000); in build_vrr_infopacket_data_v1()
610 struct dc_info_packet *infopacket, in build_vrr_infopacket_data_v3() argument
619 infopacket->sb[1] = 0x1A; in build_vrr_infopacket_data_v3()
622 infopacket->sb[2] = 0x00; in build_vrr_infopacket_data_v3()
625 infopacket->sb[3] = 0x00; in build_vrr_infopacket_data_v3()
635 infopacket->sb[6] |= 0x01; in build_vrr_infopacket_data_v3()
640 infopacket->sb[6] |= 0x02; in build_vrr_infopacket_data_v3()
646 infopacket->sb[6] |= 0x04; in build_vrr_infopacket_data_v3()
650 infopacket->sb[6] |= 0x04; in build_vrr_infopacket_data_v3()
663 infopacket->sb[7] = min_programmed & 0xFF; in build_vrr_infopacket_data_v3()
666 infopacket->sb[8] = max_refresh & 0xFF; in build_vrr_infopacket_data_v3()
669 infopacket->sb[11] = (min_programmed >> 8) & 0x03; in build_vrr_infopacket_data_v3()
672 infopacket->sb[12] = (max_refresh >> 8) & 0x03; in build_vrr_infopacket_data_v3()
675 infopacket->sb[16] = (vrr->state == VRR_STATE_ACTIVE_FIXED) ? 1 : 0; in build_vrr_infopacket_data_v3()
679 struct dc_info_packet *infopacket) in build_vrr_infopacket_fs2_data() argument
682 infopacket->valid = true; in build_vrr_infopacket_fs2_data()
685 infopacket->sb[9] |= 0x20; // PB9 = [Bit 5 = PQ EOTF Active] in build_vrr_infopacket_fs2_data()
687 infopacket->sb[6] |= 0x08; // PB6 = [Bit 3 = Native Color Active] in build_vrr_infopacket_fs2_data()
689 infopacket->sb[9] |= 0x04; // PB9 = [Bit 2 = Gamma 2.2 EOTF Active] in build_vrr_infopacket_fs2_data()
695 struct dc_info_packet *infopacket, in build_vrr_infopacket_header_v1() argument
705 infopacket->hb0 = DC_HDMI_INFOFRAME_TYPE_SPD; in build_vrr_infopacket_header_v1()
708 infopacket->hb1 = 0x01; in build_vrr_infopacket_header_v1()
711 infopacket->hb2 = 0x08; in build_vrr_infopacket_header_v1()
722 infopacket->hb0 = 0x00; in build_vrr_infopacket_header_v1()
727 infopacket->hb1 = DC_HDMI_INFOFRAME_TYPE_SPD; in build_vrr_infopacket_header_v1()
732 infopacket->hb2 = 0x1B; in build_vrr_infopacket_header_v1()
737 infopacket->hb3 = 0x04; in build_vrr_infopacket_header_v1()
744 struct dc_info_packet *infopacket, in build_vrr_infopacket_header_v2() argument
754 infopacket->hb0 = DC_HDMI_INFOFRAME_TYPE_SPD; in build_vrr_infopacket_header_v2()
757 infopacket->hb1 = 0x02; in build_vrr_infopacket_header_v2()
760 infopacket->hb2 = 0x09; in build_vrr_infopacket_header_v2()
770 infopacket->hb0 = 0x00; in build_vrr_infopacket_header_v2()
775 infopacket->hb1 = DC_HDMI_INFOFRAME_TYPE_SPD; in build_vrr_infopacket_header_v2()
780 infopacket->hb2 = 0x1B; in build_vrr_infopacket_header_v2()
785 infopacket->hb3 = 0x08; in build_vrr_infopacket_header_v2()
792 struct dc_info_packet *infopacket, in build_vrr_infopacket_header_v3() argument
805 infopacket->hb0 = DC_HDMI_INFOFRAME_TYPE_SPD; in build_vrr_infopacket_header_v3()
808 infopacket->hb1 = version; in build_vrr_infopacket_header_v3()
811 infopacket->hb2 = 0x10; in build_vrr_infopacket_header_v3()
821 infopacket->hb0 = 0x00; in build_vrr_infopacket_header_v3()
826 infopacket->hb1 = DC_HDMI_INFOFRAME_TYPE_SPD; in build_vrr_infopacket_header_v3()
831 infopacket->hb2 = 0x1B; in build_vrr_infopacket_header_v3()
837 infopacket->hb3 = (version & 0x3F) << 2; in build_vrr_infopacket_header_v3()
844 struct dc_info_packet *infopacket) in build_vrr_infopacket_checksum() argument
850 checksum += infopacket->hb0; in build_vrr_infopacket_checksum()
851 checksum += infopacket->hb1; in build_vrr_infopacket_checksum()
852 checksum += infopacket->hb2; in build_vrr_infopacket_checksum()
853 checksum += infopacket->hb3; in build_vrr_infopacket_checksum()
856 checksum += infopacket->sb[idx]; in build_vrr_infopacket_checksum()
859 infopacket->sb[0] = (unsigned char)(0x100 - checksum); in build_vrr_infopacket_checksum()
861 infopacket->valid = true; in build_vrr_infopacket_checksum()
866 struct dc_info_packet *infopacket, in build_vrr_infopacket_v1() argument
872 build_vrr_infopacket_header_v1(signal, infopacket, &payload_size); in build_vrr_infopacket_v1()
873 build_vrr_infopacket_data_v1(vrr, infopacket, freesync_on_desktop); in build_vrr_infopacket_v1()
874 build_vrr_infopacket_checksum(&payload_size, infopacket); in build_vrr_infopacket_v1()
876 infopacket->valid = true; in build_vrr_infopacket_v1()
882 struct dc_info_packet *infopacket, in build_vrr_infopacket_v2() argument
887 build_vrr_infopacket_header_v2(signal, infopacket, &payload_size); in build_vrr_infopacket_v2()
888 build_vrr_infopacket_data_v1(vrr, infopacket, freesync_on_desktop); in build_vrr_infopacket_v2()
890 build_vrr_infopacket_fs2_data(app_tf, infopacket); in build_vrr_infopacket_v2()
892 build_vrr_infopacket_checksum(&payload_size, infopacket); in build_vrr_infopacket_v2()
894 infopacket->valid = true; in build_vrr_infopacket_v2()
900 struct dc_info_packet *infopacket, in build_vrr_infopacket_v3() argument
905 build_vrr_infopacket_header_v3(signal, infopacket, &payload_size); in build_vrr_infopacket_v3()
906 build_vrr_infopacket_data_v3(vrr, infopacket, freesync_on_desktop); in build_vrr_infopacket_v3()
908 build_vrr_infopacket_fs2_data(app_tf, infopacket); in build_vrr_infopacket_v3()
910 build_vrr_infopacket_checksum(&payload_size, infopacket); in build_vrr_infopacket_v3()
912 infopacket->valid = true; in build_vrr_infopacket_v3()
916 struct dc_info_packet *infopacket) in build_vrr_infopacket_sdp_v1_3() argument
924 for (idx = infopacket->hb2; idx > 1; idx--) // Data Byte Count: 0x1B in build_vrr_infopacket_sdp_v1_3()
925 infopacket->sb[idx] = infopacket->sb[idx-1]; in build_vrr_infopacket_sdp_v1_3()
927 infopacket->sb[1] = size; // Length in build_vrr_infopacket_sdp_v1_3()
928 infopacket->sb[0] = (infopacket->hb3 >> 2) & 0x3F;//Version in build_vrr_infopacket_sdp_v1_3()
929 infopacket->hb3 = (0x13 << 2); // Header,SDP 1.3 in build_vrr_infopacket_sdp_v1_3()
930 infopacket->hb2 = 0x1D; in build_vrr_infopacket_sdp_v1_3()
938 struct dc_info_packet *infopacket, in mod_freesync_build_vrr_infopacket() argument
951 build_vrr_infopacket_v3(stream->signal, vrr, app_tf, infopacket, stream->freesync_on_desktop); in mod_freesync_build_vrr_infopacket()
954 build_vrr_infopacket_v2(stream->signal, vrr, app_tf, infopacket, stream->freesync_on_desktop); in mod_freesync_build_vrr_infopacket()
959 build_vrr_infopacket_v1(stream->signal, vrr, infopacket, stream->freesync_on_desktop); in mod_freesync_build_vrr_infopacket()
966 build_vrr_infopacket_sdp_v1_3(packet_type, infopacket); in mod_freesync_build_vrr_infopacket()