aboutsummaryrefslogtreecommitdiffstats
path: root/include/drm/drm_dp_helper.h
diff options
context:
space:
mode:
authorBen Widawsky <ben@bwidawsk.net>2011-10-04 18:16:48 -0400
committerKeith Packard <keithp@keithp.com>2011-10-20 18:26:39 -0400
commitb73fe58cafc6954db0170a5d4ef2b4b6316f6709 (patch)
tree01e683ea648767045c463db2596a24b5bdd47615 /include/drm/drm_dp_helper.h
parent5c0422878fcdc279ae9a8e8b66972a15b5efb67f (diff)
drm: Add Panel Self Refresh DP addresses
Add the addresses and definitions I care about for Panel Self Refresh, as documented in the eDP spec. I'm sending these out before some other patches because this should be a fairly simple one to get upstream and not require too much fuss (where the others may have some fuss). This file is a mess with white spacing. I tried to stay consistent with the surrounding code. v2: had some silly mistakes in v1 which Keith caught Cc: Dave Airlie <airlied@redhat.com> Cc: Keith Packard <keithp@keithp.com> Signed-off-by: Ben Widawsky <ben@bwidawsk.net> Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'include/drm/drm_dp_helper.h')
-rw-r--r--include/drm/drm_dp_helper.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/include/drm/drm_dp_helper.h b/include/drm/drm_dp_helper.h
index 91567bbdb02..2b1a3585f8d 100644
--- a/include/drm/drm_dp_helper.h
+++ b/include/drm/drm_dp_helper.h
@@ -74,6 +74,20 @@
74 74
75#define DP_TRAINING_AUX_RD_INTERVAL 0x00e 75#define DP_TRAINING_AUX_RD_INTERVAL 0x00e
76 76
77#define DP_PSR_SUPPORT 0x070
78# define DP_PSR_IS_SUPPORTED 1
79#define DP_PSR_CAPS 0x071
80# define DP_PSR_NO_TRAIN_ON_EXIT 1
81# define DP_PSR_SETUP_TIME_330 (0 << 1)
82# define DP_PSR_SETUP_TIME_275 (1 << 1)
83# define DP_PSR_SETUP_TIME_220 (2 << 1)
84# define DP_PSR_SETUP_TIME_165 (3 << 1)
85# define DP_PSR_SETUP_TIME_110 (4 << 1)
86# define DP_PSR_SETUP_TIME_55 (5 << 1)
87# define DP_PSR_SETUP_TIME_0 (6 << 1)
88# define DP_PSR_SETUP_TIME_MASK (7 << 1)
89# define DP_PSR_SETUP_TIME_SHIFT 1
90
77/* link configuration */ 91/* link configuration */
78#define DP_LINK_BW_SET 0x100 92#define DP_LINK_BW_SET 0x100
79# define DP_LINK_BW_1_62 0x06 93# define DP_LINK_BW_1_62 0x06
@@ -133,6 +147,12 @@
133#define DP_MAIN_LINK_CHANNEL_CODING_SET 0x108 147#define DP_MAIN_LINK_CHANNEL_CODING_SET 0x108
134# define DP_SET_ANSI_8B10B (1 << 0) 148# define DP_SET_ANSI_8B10B (1 << 0)
135 149
150#define DP_PSR_EN_CFG 0x170
151# define DP_PSR_ENABLE (1 << 0)
152# define DP_PSR_MAIN_LINK_ACTIVE (1 << 1)
153# define DP_PSR_CRC_VERIFICATION (1 << 2)
154# define DP_PSR_FRAME_CAPTURE (1 << 3)
155
136#define DP_LANE0_1_STATUS 0x202 156#define DP_LANE0_1_STATUS 0x202
137#define DP_LANE2_3_STATUS 0x203 157#define DP_LANE2_3_STATUS 0x203
138# define DP_LANE_CR_DONE (1 << 0) 158# define DP_LANE_CR_DONE (1 << 0)
@@ -169,6 +189,22 @@
169# define DP_SET_POWER_D0 0x1 189# define DP_SET_POWER_D0 0x1
170# define DP_SET_POWER_D3 0x2 190# define DP_SET_POWER_D3 0x2
171 191
192#define DP_PSR_ERROR_STATUS 0x2006
193# define DP_PSR_LINK_CRC_ERROR (1 << 0)
194# define DP_PSR_RFB_STORAGE_ERROR (1 << 1)
195
196#define DP_PSR_ESI 0x2007
197# define DP_PSR_CAPS_CHANGE (1 << 0)
198
199#define DP_PSR_STATUS 0x2008
200# define DP_PSR_SINK_INACTIVE 0
201# define DP_PSR_SINK_ACTIVE_SRC_SYNCED 1
202# define DP_PSR_SINK_ACTIVE_RFB 2
203# define DP_PSR_SINK_ACTIVE_SINK_SYNCED 3
204# define DP_PSR_SINK_ACTIVE_RESYNC 4
205# define DP_PSR_SINK_INTERNAL_ERROR 7
206# define DP_PSR_SINK_STATE_MASK 0x07
207
172#define MODE_I2C_START 1 208#define MODE_I2C_START 1
173#define MODE_I2C_WRITE 2 209#define MODE_I2C_WRITE 2
174#define MODE_I2C_READ 4 210#define MODE_I2C_READ 4