|
@@ -1153,18 +1153,27 @@ intel_dp_signal_levels(uint8_t train_set, int lane_count)
|
|
|
static uint32_t
|
|
|
intel_gen6_edp_signal_levels(uint8_t train_set)
|
|
|
{
|
|
|
- switch (train_set & (DP_TRAIN_VOLTAGE_SWING_MASK|DP_TRAIN_PRE_EMPHASIS_MASK)) {
|
|
|
+ int signal_levels = train_set & (DP_TRAIN_VOLTAGE_SWING_MASK |
|
|
|
+ DP_TRAIN_PRE_EMPHASIS_MASK);
|
|
|
+ switch (signal_levels) {
|
|
|
case DP_TRAIN_VOLTAGE_SWING_400 | DP_TRAIN_PRE_EMPHASIS_0:
|
|
|
- return EDP_LINK_TRAIN_400MV_0DB_SNB_B;
|
|
|
+ case DP_TRAIN_VOLTAGE_SWING_600 | DP_TRAIN_PRE_EMPHASIS_0:
|
|
|
+ return EDP_LINK_TRAIN_400_600MV_0DB_SNB_B;
|
|
|
+ case DP_TRAIN_VOLTAGE_SWING_400 | DP_TRAIN_PRE_EMPHASIS_3_5:
|
|
|
+ return EDP_LINK_TRAIN_400MV_3_5DB_SNB_B;
|
|
|
case DP_TRAIN_VOLTAGE_SWING_400 | DP_TRAIN_PRE_EMPHASIS_6:
|
|
|
- return EDP_LINK_TRAIN_400MV_6DB_SNB_B;
|
|
|
+ case DP_TRAIN_VOLTAGE_SWING_600 | DP_TRAIN_PRE_EMPHASIS_6:
|
|
|
+ return EDP_LINK_TRAIN_400_600MV_6DB_SNB_B;
|
|
|
case DP_TRAIN_VOLTAGE_SWING_600 | DP_TRAIN_PRE_EMPHASIS_3_5:
|
|
|
- return EDP_LINK_TRAIN_600MV_3_5DB_SNB_B;
|
|
|
+ case DP_TRAIN_VOLTAGE_SWING_800 | DP_TRAIN_PRE_EMPHASIS_3_5:
|
|
|
+ return EDP_LINK_TRAIN_600_800MV_3_5DB_SNB_B;
|
|
|
case DP_TRAIN_VOLTAGE_SWING_800 | DP_TRAIN_PRE_EMPHASIS_0:
|
|
|
- return EDP_LINK_TRAIN_800MV_0DB_SNB_B;
|
|
|
+ case DP_TRAIN_VOLTAGE_SWING_1200 | DP_TRAIN_PRE_EMPHASIS_0:
|
|
|
+ return EDP_LINK_TRAIN_800_1200MV_0DB_SNB_B;
|
|
|
default:
|
|
|
- DRM_DEBUG_KMS("Unsupported voltage swing/pre-emphasis level\n");
|
|
|
- return EDP_LINK_TRAIN_400MV_0DB_SNB_B;
|
|
|
+ DRM_DEBUG_KMS("Unsupported voltage swing/pre-emphasis level:"
|
|
|
+ "0x%x\n", signal_levels);
|
|
|
+ return EDP_LINK_TRAIN_400_600MV_0DB_SNB_B;
|
|
|
}
|
|
|
}
|
|
|
|