Lines Matching refs:dtd

752 				  struct intel_sdvo_dtd *dtd)  in intel_sdvo_set_timing()  argument
754 return intel_sdvo_set_value(intel_sdvo, cmd, &dtd->part1, sizeof(dtd->part1)) && in intel_sdvo_set_timing()
755 intel_sdvo_set_value(intel_sdvo, cmd + 1, &dtd->part2, sizeof(dtd->part2)); in intel_sdvo_set_timing()
759 struct intel_sdvo_dtd *dtd) in intel_sdvo_get_timing() argument
761 return intel_sdvo_get_value(intel_sdvo, cmd, &dtd->part1, sizeof(dtd->part1)) && in intel_sdvo_get_timing()
762 intel_sdvo_get_value(intel_sdvo, cmd + 1, &dtd->part2, sizeof(dtd->part2)); in intel_sdvo_get_timing()
766 struct intel_sdvo_dtd *dtd) in intel_sdvo_set_input_timing() argument
769 SDVO_CMD_SET_INPUT_TIMINGS_PART1, dtd); in intel_sdvo_set_input_timing()
773 struct intel_sdvo_dtd *dtd) in intel_sdvo_set_output_timing() argument
776 SDVO_CMD_SET_OUTPUT_TIMINGS_PART1, dtd); in intel_sdvo_set_output_timing()
780 struct intel_sdvo_dtd *dtd) in intel_sdvo_get_input_timing() argument
783 SDVO_CMD_GET_INPUT_TIMINGS_PART1, dtd); in intel_sdvo_get_input_timing()
814 struct intel_sdvo_dtd *dtd) in intel_sdvo_get_preferred_input_timing() argument
816 BUILD_BUG_ON(sizeof(dtd->part1) != 8); in intel_sdvo_get_preferred_input_timing()
817 BUILD_BUG_ON(sizeof(dtd->part2) != 8); in intel_sdvo_get_preferred_input_timing()
819 &dtd->part1, sizeof(dtd->part1)) && in intel_sdvo_get_preferred_input_timing()
821 &dtd->part2, sizeof(dtd->part2)); in intel_sdvo_get_preferred_input_timing()
829 static void intel_sdvo_get_dtd_from_mode(struct intel_sdvo_dtd *dtd, in intel_sdvo_get_dtd_from_mode() argument
837 memset(dtd, 0, sizeof(*dtd)); in intel_sdvo_get_dtd_from_mode()
854 dtd->part1.clock = mode_clock; in intel_sdvo_get_dtd_from_mode()
856 dtd->part1.h_active = width & 0xff; in intel_sdvo_get_dtd_from_mode()
857 dtd->part1.h_blank = h_blank_len & 0xff; in intel_sdvo_get_dtd_from_mode()
858 dtd->part1.h_high = (((width >> 8) & 0xf) << 4) | in intel_sdvo_get_dtd_from_mode()
860 dtd->part1.v_active = height & 0xff; in intel_sdvo_get_dtd_from_mode()
861 dtd->part1.v_blank = v_blank_len & 0xff; in intel_sdvo_get_dtd_from_mode()
862 dtd->part1.v_high = (((height >> 8) & 0xf) << 4) | in intel_sdvo_get_dtd_from_mode()
865 dtd->part2.h_sync_off = h_sync_offset & 0xff; in intel_sdvo_get_dtd_from_mode()
866 dtd->part2.h_sync_width = h_sync_len & 0xff; in intel_sdvo_get_dtd_from_mode()
867 dtd->part2.v_sync_off_width = (v_sync_offset & 0xf) << 4 | in intel_sdvo_get_dtd_from_mode()
869 dtd->part2.sync_off_width_high = ((h_sync_offset & 0x300) >> 2) | in intel_sdvo_get_dtd_from_mode()
873 dtd->part2.dtd_flags = 0x18; in intel_sdvo_get_dtd_from_mode()
875 dtd->part2.dtd_flags |= DTD_FLAG_INTERLACE; in intel_sdvo_get_dtd_from_mode()
877 dtd->part2.dtd_flags |= DTD_FLAG_HSYNC_POSITIVE; in intel_sdvo_get_dtd_from_mode()
879 dtd->part2.dtd_flags |= DTD_FLAG_VSYNC_POSITIVE; in intel_sdvo_get_dtd_from_mode()
881 dtd->part2.v_sync_off_high = v_sync_offset & 0xc0; in intel_sdvo_get_dtd_from_mode()
885 const struct intel_sdvo_dtd *dtd) in intel_sdvo_get_mode_from_dtd() argument
889 mode.hdisplay = dtd->part1.h_active; in intel_sdvo_get_mode_from_dtd()
890 mode.hdisplay += ((dtd->part1.h_high >> 4) & 0x0f) << 8; in intel_sdvo_get_mode_from_dtd()
891 mode.hsync_start = mode.hdisplay + dtd->part2.h_sync_off; in intel_sdvo_get_mode_from_dtd()
892 mode.hsync_start += (dtd->part2.sync_off_width_high & 0xc0) << 2; in intel_sdvo_get_mode_from_dtd()
893 mode.hsync_end = mode.hsync_start + dtd->part2.h_sync_width; in intel_sdvo_get_mode_from_dtd()
894 mode.hsync_end += (dtd->part2.sync_off_width_high & 0x30) << 4; in intel_sdvo_get_mode_from_dtd()
895 mode.htotal = mode.hdisplay + dtd->part1.h_blank; in intel_sdvo_get_mode_from_dtd()
896 mode.htotal += (dtd->part1.h_high & 0xf) << 8; in intel_sdvo_get_mode_from_dtd()
898 mode.vdisplay = dtd->part1.v_active; in intel_sdvo_get_mode_from_dtd()
899 mode.vdisplay += ((dtd->part1.v_high >> 4) & 0x0f) << 8; in intel_sdvo_get_mode_from_dtd()
901 mode.vsync_start += (dtd->part2.v_sync_off_width >> 4) & 0xf; in intel_sdvo_get_mode_from_dtd()
902 mode.vsync_start += (dtd->part2.sync_off_width_high & 0x0c) << 2; in intel_sdvo_get_mode_from_dtd()
903 mode.vsync_start += dtd->part2.v_sync_off_high & 0xc0; in intel_sdvo_get_mode_from_dtd()
905 (dtd->part2.v_sync_off_width & 0xf); in intel_sdvo_get_mode_from_dtd()
906 mode.vsync_end += (dtd->part2.sync_off_width_high & 0x3) << 4; in intel_sdvo_get_mode_from_dtd()
907 mode.vtotal = mode.vdisplay + dtd->part1.v_blank; in intel_sdvo_get_mode_from_dtd()
908 mode.vtotal += (dtd->part1.v_high & 0xf) << 8; in intel_sdvo_get_mode_from_dtd()
910 mode.clock = dtd->part1.clock * 10; in intel_sdvo_get_mode_from_dtd()
912 if (dtd->part2.dtd_flags & DTD_FLAG_INTERLACE) in intel_sdvo_get_mode_from_dtd()
914 if (dtd->part2.dtd_flags & DTD_FLAG_HSYNC_POSITIVE) in intel_sdvo_get_mode_from_dtd()
918 if (dtd->part2.dtd_flags & DTD_FLAG_VSYNC_POSITIVE) in intel_sdvo_get_mode_from_dtd()
1676 struct intel_sdvo_dtd dtd; in intel_sdvo_get_config() local
1687 ret = intel_sdvo_get_input_timing(intel_sdvo, &dtd); in intel_sdvo_get_config()
1696 if (dtd.part2.dtd_flags & DTD_FLAG_HSYNC_POSITIVE) in intel_sdvo_get_config()
1701 if (dtd.part2.dtd_flags & DTD_FLAG_VSYNC_POSITIVE) in intel_sdvo_get_config()