Go to the documentation of this file.
31 #define SDVO_OUTPUT_FIRST (0)
32 #define SDVO_OUTPUT_TMDS0 (1 << 0)
33 #define SDVO_OUTPUT_RGB0 (1 << 1)
34 #define SDVO_OUTPUT_CVBS0 (1 << 2)
35 #define SDVO_OUTPUT_SVID0 (1 << 3)
36 #define SDVO_OUTPUT_YPRPB0 (1 << 4)
37 #define SDVO_OUTPUT_SCART0 (1 << 5)
38 #define SDVO_OUTPUT_LVDS0 (1 << 6)
39 #define SDVO_OUTPUT_TMDS1 (1 << 8)
40 #define SDVO_OUTPUT_RGB1 (1 << 9)
41 #define SDVO_OUTPUT_CVBS1 (1 << 10)
42 #define SDVO_OUTPUT_SVID1 (1 << 11)
43 #define SDVO_OUTPUT_YPRPB1 (1 << 12)
44 #define SDVO_OUTPUT_SCART1 (1 << 13)
45 #define SDVO_OUTPUT_LVDS1 (1 << 14)
46 #define SDVO_OUTPUT_LAST (14)
65 #define DTD_FLAG_HSYNC_POSITIVE (1 << 1)
66 #define DTD_FLAG_VSYNC_POSITIVE (1 << 2)
67 #define DTD_FLAG_INTERLACE (1 << 7)
114 #define SDVO_I2C_ARG_0 0x07
115 #define SDVO_I2C_ARG_1 0x06
116 #define SDVO_I2C_ARG_2 0x05
117 #define SDVO_I2C_ARG_3 0x04
118 #define SDVO_I2C_ARG_4 0x03
119 #define SDVO_I2C_ARG_5 0x02
120 #define SDVO_I2C_ARG_6 0x01
121 #define SDVO_I2C_ARG_7 0x00
122 #define SDVO_I2C_OPCODE 0x08
123 #define SDVO_I2C_CMD_STATUS 0x09
124 #define SDVO_I2C_RETURN_0 0x0a
125 #define SDVO_I2C_RETURN_1 0x0b
126 #define SDVO_I2C_RETURN_2 0x0c
127 #define SDVO_I2C_RETURN_3 0x0d
128 #define SDVO_I2C_RETURN_4 0x0e
129 #define SDVO_I2C_RETURN_5 0x0f
130 #define SDVO_I2C_RETURN_6 0x10
131 #define SDVO_I2C_RETURN_7 0x11
132 #define SDVO_I2C_VENDOR_BEGIN 0x20
135 #define SDVO_CMD_STATUS_POWER_ON 0x0
136 #define SDVO_CMD_STATUS_SUCCESS 0x1
137 #define SDVO_CMD_STATUS_NOTSUPP 0x2
138 #define SDVO_CMD_STATUS_INVALID_ARG 0x3
139 #define SDVO_CMD_STATUS_PENDING 0x4
140 #define SDVO_CMD_STATUS_TARGET_NOT_SPECIFIED 0x5
141 #define SDVO_CMD_STATUS_SCALING_NOT_SUPP 0x6
145 #define SDVO_CMD_RESET 0x01
148 #define SDVO_CMD_GET_DEVICE_CAPS 0x02
150 #define SDVO_CMD_GET_FIRMWARE_REV 0x86
151 # define SDVO_DEVICE_FIRMWARE_MINOR SDVO_I2C_RETURN_0
152 # define SDVO_DEVICE_FIRMWARE_MAJOR SDVO_I2C_RETURN_1
153 # define SDVO_DEVICE_FIRMWARE_PATCH SDVO_I2C_RETURN_2
160 #define SDVO_CMD_GET_TRAINED_INPUTS 0x03
168 #define SDVO_CMD_GET_ACTIVE_OUTPUTS 0x04
176 #define SDVO_CMD_SET_ACTIVE_OUTPUTS 0x05
183 #define SDVO_CMD_GET_IN_OUT_MAP 0x06
193 #define SDVO_CMD_SET_IN_OUT_MAP 0x07
198 #define SDVO_CMD_GET_ATTACHED_DISPLAYS 0x0b
203 #define SDVO_CMD_GET_HOT_PLUG_SUPPORT 0x0c
208 #define SDVO_CMD_SET_ACTIVE_HOT_PLUG 0x0d
214 #define SDVO_CMD_GET_ACTIVE_HOT_PLUG 0x0e
216 #define SDVO_CMD_GET_INTERRUPT_EVENT_SOURCE 0x0f
231 #define SDVO_CMD_SET_TARGET_INPUT 0x10
244 #define SDVO_CMD_SET_TARGET_OUTPUT 0x11
246 #define SDVO_CMD_GET_INPUT_TIMINGS_PART1 0x12
247 #define SDVO_CMD_GET_INPUT_TIMINGS_PART2 0x13
248 #define SDVO_CMD_SET_INPUT_TIMINGS_PART1 0x14
249 #define SDVO_CMD_SET_INPUT_TIMINGS_PART2 0x15
250 #define SDVO_CMD_SET_OUTPUT_TIMINGS_PART1 0x16
251 #define SDVO_CMD_SET_OUTPUT_TIMINGS_PART2 0x17
252 #define SDVO_CMD_GET_OUTPUT_TIMINGS_PART1 0x18
253 #define SDVO_CMD_GET_OUTPUT_TIMINGS_PART2 0x19
255 # define SDVO_DTD_CLOCK_LOW SDVO_I2C_ARG_0
256 # define SDVO_DTD_CLOCK_HIGH SDVO_I2C_ARG_1
257 # define SDVO_DTD_H_ACTIVE SDVO_I2C_ARG_2
258 # define SDVO_DTD_H_BLANK SDVO_I2C_ARG_3
259 # define SDVO_DTD_H_HIGH SDVO_I2C_ARG_4
260 # define SDVO_DTD_V_ACTIVE SDVO_I2C_ARG_5
261 # define SDVO_DTD_V_BLANK SDVO_I2C_ARG_6
262 # define SDVO_DTD_V_HIGH SDVO_I2C_ARG_7
264 # define SDVO_DTD_HSYNC_OFF SDVO_I2C_ARG_0
265 # define SDVO_DTD_HSYNC_WIDTH SDVO_I2C_ARG_1
266 # define SDVO_DTD_VSYNC_OFF_WIDTH SDVO_I2C_ARG_2
267 # define SDVO_DTD_SYNC_OFF_WIDTH_HIGH SDVO_I2C_ARG_3
268 # define SDVO_DTD_DTD_FLAGS SDVO_I2C_ARG_4
269 # define SDVO_DTD_DTD_FLAG_INTERLACED (1 << 7)
270 # define SDVO_DTD_DTD_FLAG_STEREO_MASK (3 << 5)
271 # define SDVO_DTD_DTD_FLAG_INPUT_MASK (3 << 3)
272 # define SDVO_DTD_DTD_FLAG_SYNC_MASK (3 << 1)
273 # define SDVO_DTD_SDVO_FLAS SDVO_I2C_ARG_5
274 # define SDVO_DTD_SDVO_FLAG_STALL (1 << 7)
275 # define SDVO_DTD_SDVO_FLAG_CENTERED (0 << 6)
276 # define SDVO_DTD_SDVO_FLAG_UPPER_LEFT (1 << 6)
277 # define SDVO_DTD_SDVO_FLAG_SCALING_MASK (3 << 4)
278 # define SDVO_DTD_SDVO_FLAG_SCALING_NONE (0 << 4)
279 # define SDVO_DTD_SDVO_FLAG_SCALING_SHARP (1 << 4)
280 # define SDVO_DTD_SDVO_FLAG_SCALING_SMOOTH (2 << 4)
281 # define SDVO_DTD_VSYNC_OFF_HIGH SDVO_I2C_ARG_6
289 #define SDVO_CMD_CREATE_PREFERRED_INPUT_TIMING 0x1a
290 # define SDVO_PREFERRED_INPUT_TIMING_CLOCK_LOW SDVO_I2C_ARG_0
291 # define SDVO_PREFERRED_INPUT_TIMING_CLOCK_HIGH SDVO_I2C_ARG_1
292 # define SDVO_PREFERRED_INPUT_TIMING_WIDTH_LOW SDVO_I2C_ARG_2
293 # define SDVO_PREFERRED_INPUT_TIMING_WIDTH_HIGH SDVO_I2C_ARG_3
294 # define SDVO_PREFERRED_INPUT_TIMING_HEIGHT_LOW SDVO_I2C_ARG_4
295 # define SDVO_PREFERRED_INPUT_TIMING_HEIGHT_HIGH SDVO_I2C_ARG_5
296 # define SDVO_PREFERRED_INPUT_TIMING_FLAGS SDVO_I2C_ARG_6
297 # define SDVO_PREFERRED_INPUT_TIMING_FLAGS_INTERLACED (1 << 0)
298 # define SDVO_PREFERRED_INPUT_TIMING_FLAGS_SCALED (1 << 1)
300 #define SDVO_CMD_GET_PREFERRED_INPUT_TIMING_PART1 0x1b
301 #define SDVO_CMD_GET_PREFERRED_INPUT_TIMING_PART2 0x1c
304 #define SDVO_CMD_GET_INPUT_PIXEL_CLOCK_RANGE 0x1d
306 #define SDVO_CMD_GET_OUTPUT_PIXEL_CLOCK_RANGE 0x1e
309 #define SDVO_CMD_GET_SUPPORTED_CLOCK_RATE_MULTS 0x1f
312 #define SDVO_CMD_GET_CLOCK_RATE_MULT 0x20
314 #define SDVO_CMD_SET_CLOCK_RATE_MULT 0x21
315 # define SDVO_CLOCK_RATE_MULT_1X (1 << 0)
316 # define SDVO_CLOCK_RATE_MULT_2X (1 << 1)
317 # define SDVO_CLOCK_RATE_MULT_4X (1 << 3)
319 #define SDVO_CMD_GET_SUPPORTED_TV_FORMATS 0x27
375 #define SDVO_CMD_GET_TV_FORMAT 0x28
377 #define SDVO_CMD_SET_TV_FORMAT 0x29
380 #define SDVO_CMD_GET_SDTV_RESOLUTION_SUPPORT 0x83
433 #define SDVO_CMD_GET_SCALED_HDTV_RESOLUTION_SUPPORT 0x85
524 #define SDVO_CMD_GET_SUPPORTED_POWER_STATES 0x2a
527 #define SDVO_CMD_GET_POWER_STATE 0x2b
528 #define SDVO_CMD_GET_ENCODER_POWER_STATE 0x2b
529 #define SDVO_CMD_SET_ENCODER_POWER_STATE 0x2c
530 # define SDVO_ENCODER_STATE_ON (1 << 0)
531 # define SDVO_ENCODER_STATE_STANDBY (1 << 1)
532 # define SDVO_ENCODER_STATE_SUSPEND (1 << 2)
533 # define SDVO_ENCODER_STATE_OFF (1 << 3)
534 # define SDVO_MONITOR_STATE_ON (1 << 4)
535 # define SDVO_MONITOR_STATE_STANDBY (1 << 5)
536 # define SDVO_MONITOR_STATE_SUSPEND (1 << 6)
537 # define SDVO_MONITOR_STATE_OFF (1 << 7)
539 #define SDVO_CMD_GET_MAX_PANEL_POWER_SEQUENCING 0x2d
540 #define SDVO_CMD_GET_PANEL_POWER_SEQUENCING 0x2e
541 #define SDVO_CMD_SET_PANEL_POWER_SEQUENCING 0x2f
562 #define SDVO_CMD_GET_MAX_BACKLIGHT_LEVEL 0x30
568 #define SDVO_CMD_GET_BACKLIGHT_LEVEL 0x31
569 #define SDVO_CMD_SET_BACKLIGHT_LEVEL 0x32
571 #define SDVO_CMD_GET_AMBIENT_LIGHT 0x33
577 #define SDVO_CMD_SET_AMBIENT_LIGHT 0x34
586 #define SDVO_CMD_SET_DISPLAY_POWER_STATE 0x7d
587 # define SDVO_DISPLAY_STATE_ON (1 << 0)
588 # define SDVO_DISPLAY_STATE_STANDBY (1 << 1)
589 # define SDVO_DISPLAY_STATE_SUSPEND (1 << 2)
590 # define SDVO_DISPLAY_STATE_OFF (1 << 3)
592 #define SDVO_CMD_GET_SUPPORTED_ENHANCEMENTS 0x84
616 #define SDVO_CMD_GET_MAX_FLICKER_FILTER 0x4d
617 #define SDVO_CMD_GET_MAX_FLICKER_FILTER_ADAPTIVE 0x7b
618 #define SDVO_CMD_GET_MAX_FLICKER_FILTER_2D 0x52
619 #define SDVO_CMD_GET_MAX_SATURATION 0x55
620 #define SDVO_CMD_GET_MAX_HUE 0x58
621 #define SDVO_CMD_GET_MAX_BRIGHTNESS 0x5b
622 #define SDVO_CMD_GET_MAX_CONTRAST 0x5e
623 #define SDVO_CMD_GET_MAX_OVERSCAN_H 0x61
624 #define SDVO_CMD_GET_MAX_OVERSCAN_V 0x64
625 #define SDVO_CMD_GET_MAX_HPOS 0x67
626 #define SDVO_CMD_GET_MAX_VPOS 0x6a
627 #define SDVO_CMD_GET_MAX_SHARPNESS 0x6d
628 #define SDVO_CMD_GET_MAX_TV_CHROMA_FILTER 0x74
629 #define SDVO_CMD_GET_MAX_TV_LUMA_FILTER 0x77
635 #define SDVO_CMD_GET_LVDS_PANEL_INFORMATION 0x7f
636 #define SDVO_CMD_SET_LVDS_PANEL_INFORMATION 0x80
637 # define SDVO_LVDS_COLOR_DEPTH_18 (0 << 0)
638 # define SDVO_LVDS_COLOR_DEPTH_24 (1 << 0)
639 # define SDVO_LVDS_CONNECTOR_SPWG (0 << 2)
640 # define SDVO_LVDS_CONNECTOR_OPENLDI (1 << 2)
641 # define SDVO_LVDS_SINGLE_CHANNEL (0 << 4)
642 # define SDVO_LVDS_DUAL_CHANNEL (1 << 4)
644 #define SDVO_CMD_GET_FLICKER_FILTER 0x4e
645 #define SDVO_CMD_SET_FLICKER_FILTER 0x4f
646 #define SDVO_CMD_GET_FLICKER_FILTER_ADAPTIVE 0x50
647 #define SDVO_CMD_SET_FLICKER_FILTER_ADAPTIVE 0x51
648 #define SDVO_CMD_GET_FLICKER_FILTER_2D 0x53
649 #define SDVO_CMD_SET_FLICKER_FILTER_2D 0x54
650 #define SDVO_CMD_GET_SATURATION 0x56
651 #define SDVO_CMD_SET_SATURATION 0x57
652 #define SDVO_CMD_GET_HUE 0x59
653 #define SDVO_CMD_SET_HUE 0x5a
654 #define SDVO_CMD_GET_BRIGHTNESS 0x5c
655 #define SDVO_CMD_SET_BRIGHTNESS 0x5d
656 #define SDVO_CMD_GET_CONTRAST 0x5f
657 #define SDVO_CMD_SET_CONTRAST 0x60
658 #define SDVO_CMD_GET_OVERSCAN_H 0x62
659 #define SDVO_CMD_SET_OVERSCAN_H 0x63
660 #define SDVO_CMD_GET_OVERSCAN_V 0x65
661 #define SDVO_CMD_SET_OVERSCAN_V 0x66
662 #define SDVO_CMD_GET_HPOS 0x68
663 #define SDVO_CMD_SET_HPOS 0x69
664 #define SDVO_CMD_GET_VPOS 0x6b
665 #define SDVO_CMD_SET_VPOS 0x6c
666 #define SDVO_CMD_GET_SHARPNESS 0x6e
667 #define SDVO_CMD_SET_SHARPNESS 0x6f
668 #define SDVO_CMD_GET_TV_CHROMA_FILTER 0x75
669 #define SDVO_CMD_SET_TV_CHROMA_FILTER 0x76
670 #define SDVO_CMD_GET_TV_LUMA_FILTER 0x78
671 #define SDVO_CMD_SET_TV_LUMA_FILTER 0x79
676 #define SDVO_CMD_GET_DOT_CRAWL 0x70
677 #define SDVO_CMD_SET_DOT_CRAWL 0x71
678 # define SDVO_DOT_CRAWL_ON (1 << 0)
679 # define SDVO_DOT_CRAWL_DEFAULT_ON (1 << 1)
681 #define SDVO_CMD_GET_DITHER 0x72
682 #define SDVO_CMD_SET_DITHER 0x73
683 # define SDVO_DITHER_ON (1 << 0)
684 # define SDVO_DITHER_DEFAULT_ON (1 << 1)
686 #define SDVO_CMD_SET_CONTROL_BUS_SWITCH 0x7a
687 # define SDVO_CONTROL_BUS_PROM (1 << 0)
688 # define SDVO_CONTROL_BUS_DDC1 (1 << 1)
689 # define SDVO_CONTROL_BUS_DDC2 (1 << 2)
690 # define SDVO_CONTROL_BUS_DDC3 (1 << 3)
693 #define SDVO_CMD_GET_SUPP_ENCODE 0x9d
694 #define SDVO_CMD_GET_ENCODE 0x9e
695 #define SDVO_CMD_SET_ENCODE 0x9f
696 #define SDVO_ENCODE_DVI 0x0
697 #define SDVO_ENCODE_HDMI 0x1
698 #define SDVO_CMD_SET_PIXEL_REPLI 0x8b
699 #define SDVO_CMD_GET_PIXEL_REPLI 0x8c
700 #define SDVO_CMD_GET_COLORIMETRY_CAP 0x8d
701 #define SDVO_CMD_SET_COLORIMETRY 0x8e
702 #define SDVO_COLORIMETRY_RGB256 0x0
703 #define SDVO_COLORIMETRY_RGB220 0x1
704 #define SDVO_COLORIMETRY_YCrCb422 0x3
705 #define SDVO_COLORIMETRY_YCrCb444 0x4
706 #define SDVO_CMD_GET_COLORIMETRY 0x8f
707 #define SDVO_CMD_GET_AUDIO_ENCRYPT_PREFER 0x90
708 #define SDVO_CMD_SET_AUDIO_STAT 0x91
709 #define SDVO_CMD_GET_AUDIO_STAT 0x92
710 #define SDVO_CMD_SET_HBUF_INDEX 0x93
711 #define SDVO_HBUF_INDEX_ELD 0
712 #define SDVO_HBUF_INDEX_AVI_IF 1
713 #define SDVO_CMD_GET_HBUF_INDEX 0x94
714 #define SDVO_CMD_GET_HBUF_INFO 0x95
715 #define SDVO_CMD_SET_HBUF_AV_SPLIT 0x96
716 #define SDVO_CMD_GET_HBUF_AV_SPLIT 0x97
717 #define SDVO_CMD_SET_HBUF_DATA 0x98
718 #define SDVO_CMD_GET_HBUF_DATA 0x99
719 #define SDVO_CMD_SET_HBUF_TXRATE 0x9a
720 #define SDVO_CMD_GET_HBUF_TXRATE 0x9b
721 #define SDVO_HBUF_TX_DISABLED (0 << 6)
722 #define SDVO_HBUF_TX_ONCE (2 << 6)
723 #define SDVO_HBUF_TX_VSYNC (3 << 6)
724 #define SDVO_CMD_GET_AUDIO_TX_INFO 0x9c
725 #define SDVO_NEED_TO_STALL (1 << 7)