diff options
author | Alex Deucher <alexdeucher@gmail.com> | 2011-05-20 04:34:26 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2011-05-20 06:02:30 -0400 |
commit | 39b3bdb62a3955db6467a075e77a8d0732caded9 (patch) | |
tree | dfc2434ffd4d811571c774ffd60b012f53275ce1 | |
parent | 428c4b51b7e133202db49021011f6af64b3276f8 (diff) |
drm/radeon/kms: atombios.h updates for DP panel mode
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
-rw-r--r-- | drivers/gpu/drm/radeon/atombios.h | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/drivers/gpu/drm/radeon/atombios.h b/drivers/gpu/drm/radeon/atombios.h index 7fd88497b930..49611e2365d9 100644 --- a/drivers/gpu/drm/radeon/atombios.h +++ b/drivers/gpu/drm/radeon/atombios.h | |||
@@ -726,6 +726,7 @@ typedef struct _DIG_ENCODER_CONTROL_PARAMETERS_V2 | |||
726 | #define ATOM_ENCODER_CMD_DP_VIDEO_ON 0x0d | 726 | #define ATOM_ENCODER_CMD_DP_VIDEO_ON 0x0d |
727 | #define ATOM_ENCODER_CMD_QUERY_DP_LINK_TRAINING_STATUS 0x0e | 727 | #define ATOM_ENCODER_CMD_QUERY_DP_LINK_TRAINING_STATUS 0x0e |
728 | #define ATOM_ENCODER_CMD_SETUP 0x0f | 728 | #define ATOM_ENCODER_CMD_SETUP 0x0f |
729 | #define ATOM_ENCODER_CMD_SETUP_PANEL_MODE 0x10 | ||
729 | 730 | ||
730 | // ucStatus | 731 | // ucStatus |
731 | #define ATOM_ENCODER_STATUS_LINK_TRAINING_COMPLETE 0x10 | 732 | #define ATOM_ENCODER_STATUS_LINK_TRAINING_COMPLETE 0x10 |
@@ -765,13 +766,19 @@ typedef struct _DIG_ENCODER_CONTROL_PARAMETERS_V3 | |||
765 | USHORT usPixelClock; // in 10KHz; for bios convenient | 766 | USHORT usPixelClock; // in 10KHz; for bios convenient |
766 | ATOM_DIG_ENCODER_CONFIG_V3 acConfig; | 767 | ATOM_DIG_ENCODER_CONFIG_V3 acConfig; |
767 | UCHAR ucAction; | 768 | UCHAR ucAction; |
768 | UCHAR ucEncoderMode; | 769 | union { |
770 | UCHAR ucEncoderMode; | ||
769 | // =0: DP encoder | 771 | // =0: DP encoder |
770 | // =1: LVDS encoder | 772 | // =1: LVDS encoder |
771 | // =2: DVI encoder | 773 | // =2: DVI encoder |
772 | // =3: HDMI encoder | 774 | // =3: HDMI encoder |
773 | // =4: SDVO encoder | 775 | // =4: SDVO encoder |
774 | // =5: DP audio | 776 | // =5: DP audio |
777 | UCHAR ucPanelMode; // only valid when ucAction == ATOM_ENCODER_CMD_SETUP_PANEL_MODE | ||
778 | // =0: external DP | ||
779 | // =1: internal DP2 | ||
780 | // =0x11: internal DP1 for NutMeg/Travis DP translator | ||
781 | }; | ||
775 | UCHAR ucLaneNum; // how many lanes to enable | 782 | UCHAR ucLaneNum; // how many lanes to enable |
776 | UCHAR ucBitPerColor; // only valid for DP mode when ucAction = ATOM_ENCODER_CMD_SETUP | 783 | UCHAR ucBitPerColor; // only valid for DP mode when ucAction = ATOM_ENCODER_CMD_SETUP |
777 | UCHAR ucReserved; | 784 | UCHAR ucReserved; |
@@ -816,13 +823,19 @@ typedef struct _DIG_ENCODER_CONTROL_PARAMETERS_V4 | |||
816 | UCHAR ucConfig; | 823 | UCHAR ucConfig; |
817 | }; | 824 | }; |
818 | UCHAR ucAction; | 825 | UCHAR ucAction; |
819 | UCHAR ucEncoderMode; | 826 | union { |
827 | UCHAR ucEncoderMode; | ||
820 | // =0: DP encoder | 828 | // =0: DP encoder |
821 | // =1: LVDS encoder | 829 | // =1: LVDS encoder |
822 | // =2: DVI encoder | 830 | // =2: DVI encoder |
823 | // =3: HDMI encoder | 831 | // =3: HDMI encoder |
824 | // =4: SDVO encoder | 832 | // =4: SDVO encoder |
825 | // =5: DP audio | 833 | // =5: DP audio |
834 | UCHAR ucPanelMode; // only valid when ucAction == ATOM_ENCODER_CMD_SETUP_PANEL_MODE | ||
835 | // =0: external DP | ||
836 | // =1: internal DP2 | ||
837 | // =0x11: internal DP1 for NutMeg/Travis DP translator | ||
838 | }; | ||
826 | UCHAR ucLaneNum; // how many lanes to enable | 839 | UCHAR ucLaneNum; // how many lanes to enable |
827 | UCHAR ucBitPerColor; // only valid for DP mode when ucAction = ATOM_ENCODER_CMD_SETUP | 840 | UCHAR ucBitPerColor; // only valid for DP mode when ucAction = ATOM_ENCODER_CMD_SETUP |
828 | UCHAR ucHPD_ID; // HPD ID (1-6). =0 means to skip HDP programming. New comparing to previous version | 841 | UCHAR ucHPD_ID; // HPD ID (1-6). =0 means to skip HDP programming. New comparing to previous version |
@@ -836,6 +849,11 @@ typedef struct _DIG_ENCODER_CONTROL_PARAMETERS_V4 | |||
836 | #define PANEL_12BIT_PER_COLOR 0x04 | 849 | #define PANEL_12BIT_PER_COLOR 0x04 |
837 | #define PANEL_16BIT_PER_COLOR 0x05 | 850 | #define PANEL_16BIT_PER_COLOR 0x05 |
838 | 851 | ||
852 | //define ucPanelMode | ||
853 | #define DP_PANEL_MODE_EXTERNAL_DP_MODE 0x00 | ||
854 | #define DP_PANEL_MODE_INTERNAL_DP2_MODE 0x01 | ||
855 | #define DP_PANEL_MODE_INTERNAL_DP1_MODE 0x11 | ||
856 | |||
839 | /****************************************************************************/ | 857 | /****************************************************************************/ |
840 | // Structures used by UNIPHYTransmitterControlTable | 858 | // Structures used by UNIPHYTransmitterControlTable |
841 | // LVTMATransmitterControlTable | 859 | // LVTMATransmitterControlTable |