* [igt-dev] [PATCH i-g-t 00/14] tools/intel_vbt_decode: Improve VBT decoder
@ 2022-07-15 20:25 Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 01/14] tools/intel_vbt_decode: Simplify fast link training lane count Ville Syrjala
` (15 more replies)
0 siblings, 16 replies; 19+ messages in thread
From: Ville Syrjala @ 2022-07-15 20:25 UTC (permalink / raw)
To: igt-dev
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
Improve the VBT decoder:
- bunch of cleanups
- some minor refactoring
- improved decoding of certain things
- decode even more stuff
Ville Syrjälä (14):
tools/intel_vbt_decode: Simplify fast link training lane count
tools/intel_vbt_decode: Extract dp_vswing()/dp_preemph()
tools/intel_vbt_decode: update vbt defs from kernel
tools/intel_vbt_decode: Introduce panel_bits()/panel_bool()
tools/intel_vbt_decode: Remove pointless variables
tools/intel_vbt_decode: Extract lvds_config[]
tools/intel_vbt_decode: Extract panel_fitting[]
tools/intel_vbt_decode: Parse HDMI FRL rate
tools/intel_vbt_decode: Decode the "use VBT vswing tables" flag
tools/intel_vbt_decode: Decode eDP/DP max lane count
tools/intel_vbt_decode: Clean up driver features block decoding
tools/intel_vbt_decode: Decode AUX CH
tools/intel_vbt_decode: Adjust DVO port printing
tools/intel_vbt_decode: Dump the compression structure index as
decimal
tools/intel_bios.h | 8 -
tools/intel_vbt_decode.c | 461 +++++++++++++++++++++------------------
tools/intel_vbt_defs.h | 342 ++++++++++++++++-------------
3 files changed, 448 insertions(+), 363 deletions(-)
--
2.35.1
^ permalink raw reply [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 01/14] tools/intel_vbt_decode: Simplify fast link training lane count
2022-07-15 20:25 [igt-dev] [PATCH i-g-t 00/14] tools/intel_vbt_decode: Improve VBT decoder Ville Syrjala
@ 2022-07-15 20:25 ` Ville Syrjala
2022-08-04 10:03 ` Jani Nikula
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 02/14] tools/intel_vbt_decode: Extract dp_vswing()/dp_preemph() Ville Syrjala
` (14 subsequent siblings)
15 siblings, 1 reply; 19+ messages in thread
From: Ville Syrjala @ 2022-07-15 20:25 UTC (permalink / raw)
To: igt-dev
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
Get rid of the pointless switch statement and decode the
fast link training lane count as just <val>+1. We already
do the same for the DSI lane count.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
tools/intel_vbt_decode.c | 18 ++----------------
1 file changed, 2 insertions(+), 16 deletions(-)
diff --git a/tools/intel_vbt_decode.c b/tools/intel_vbt_decode.c
index 5494a34bdca3..1ed03745bd05 100644
--- a/tools/intel_vbt_decode.c
+++ b/tools/intel_vbt_decode.c
@@ -1420,22 +1420,8 @@ static void dump_edp(struct context *context,
edp->fast_link_params[i].rate);
break;
}
- printf("\t\t\tlanes: ");
- switch (edp->fast_link_params[i].lanes) {
- case EDP_LANE_1:
- printf("x1 mode\n");
- break;
- case EDP_LANE_2:
- printf("x2 mode\n");
- break;
- case EDP_LANE_4:
- printf("x4 mode\n");
- break;
- default:
- printf("(unknown value %d)\n",
- edp->fast_link_params[i].lanes);
- break;
- }
+ printf("\t\t\tlanes: X%d",
+ edp->fast_link_params[i].lanes + 1);
printf("\t\t\tpre-emphasis: ");
switch (edp->fast_link_params[i].preemphasis) {
case EDP_PREEMPHASIS_NONE:
--
2.35.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 02/14] tools/intel_vbt_decode: Extract dp_vswing()/dp_preemph()
2022-07-15 20:25 [igt-dev] [PATCH i-g-t 00/14] tools/intel_vbt_decode: Improve VBT decoder Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 01/14] tools/intel_vbt_decode: Simplify fast link training lane count Ville Syrjala
@ 2022-07-15 20:25 ` Ville Syrjala
2022-08-04 10:05 ` Jani Nikula
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 03/14] tools/intel_vbt_decode: update vbt defs from kernel Ville Syrjala
` (13 subsequent siblings)
15 siblings, 1 reply; 19+ messages in thread
From: Ville Syrjala @ 2022-07-15 20:25 UTC (permalink / raw)
To: igt-dev
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
A bunch of places need to decode the DP vswing/preemph values.
Fortunately all of them use the the same format so we can
extract this stuff into a few helpers.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
tools/intel_vbt_decode.c | 110 ++++++++++++---------------------------
1 file changed, 34 insertions(+), 76 deletions(-)
diff --git a/tools/intel_vbt_decode.c b/tools/intel_vbt_decode.c
index 1ed03745bd05..13e927edd17f 100644
--- a/tools/intel_vbt_decode.c
+++ b/tools/intel_vbt_decode.c
@@ -855,6 +855,28 @@ static void dump_dp_max_link_rate(uint16_t version, uint8_t dp_max_link_rate)
link_rate / 100.0f, dp_max_link_rate);
}
+static const char *dp_vswing(u8 vswing)
+{
+ switch (vswing) {
+ case 0: return "0.4V";
+ case 1: return "0.6V";
+ case 2: return "0.8V";
+ case 3: return "1.2V";
+ default: return "<unknown>";
+ }
+}
+
+static const char *dp_preemph(u8 preemph)
+{
+ switch (preemph) {
+ case 0: return "0dB";
+ case 1: return "3.5dB";
+ case 2: return "6dB";
+ case 3: return "9.5dB";
+ default: return "<unknown>";
+ }
+}
+
static void dump_child_device(struct context *context,
const struct child_device_config *child)
{
@@ -1422,44 +1444,12 @@ static void dump_edp(struct context *context,
}
printf("\t\t\tlanes: X%d",
edp->fast_link_params[i].lanes + 1);
- printf("\t\t\tpre-emphasis: ");
- switch (edp->fast_link_params[i].preemphasis) {
- case EDP_PREEMPHASIS_NONE:
- printf("none\n");
- break;
- case EDP_PREEMPHASIS_3_5dB:
- printf("3.5dB\n");
- break;
- case EDP_PREEMPHASIS_6dB:
- printf("6dB\n");
- break;
- case EDP_PREEMPHASIS_9_5dB:
- printf("9.5dB\n");
- break;
- default:
- printf("(unknown value %d)\n",
- edp->fast_link_params[i].preemphasis);
- break;
- }
- printf("\t\t\tvswing: ");
- switch (edp->fast_link_params[i].vswing) {
- case EDP_VSWING_0_4V:
- printf("0.4V\n");
- break;
- case EDP_VSWING_0_6V:
- printf("0.6V\n");
- break;
- case EDP_VSWING_0_8V:
- printf("0.8V\n");
- break;
- case EDP_VSWING_1_2V:
- printf("1.2V\n");
- break;
- default:
- printf("(unknown value %d)\n",
- edp->fast_link_params[i].vswing);
- break;
- }
+ printf("\t\t\tpre-emphasis: %s (0x%x)\n",
+ dp_preemph(edp->fast_link_params[i].preemphasis),
+ edp->fast_link_params[i].preemphasis);
+ printf("\t\t\tvswing: %s (0x%x)\n",
+ dp_preemph(edp->fast_link_params[i].vswing),
+ edp->fast_link_params[i].vswing);
if (context->bdb->version >= 162) {
bool val = (edp->edp_s3d_feature >> i) & 1;
@@ -1511,44 +1501,12 @@ static void dump_edp(struct context *context,
printf("\t\tFull link params provided: %s\n", YESNO(val));
printf("\t\tFull link params:\n");
- printf("\t\t\tpre-emphasis: ");
- switch (edp->full_link_params[i].preemphasis) {
- case EDP_PREEMPHASIS_NONE:
- printf("none\n");
- break;
- case EDP_PREEMPHASIS_3_5dB:
- printf("3.5dB\n");
- break;
- case EDP_PREEMPHASIS_6dB:
- printf("6dB\n");
- break;
- case EDP_PREEMPHASIS_9_5dB:
- printf("9.5dB\n");
- break;
- default:
- printf("(unknown value %d)\n",
- edp->full_link_params[i].preemphasis);
- break;
- }
- printf("\t\t\tvswing: ");
- switch (edp->full_link_params[i].vswing) {
- case EDP_VSWING_0_4V:
- printf("0.4V\n");
- break;
- case EDP_VSWING_0_6V:
- printf("0.6V\n");
- break;
- case EDP_VSWING_0_8V:
- printf("0.8V\n");
- break;
- case EDP_VSWING_1_2V:
- printf("1.2V\n");
- break;
- default:
- printf("(unknown value %d)\n",
- edp->full_link_params[i].vswing);
- break;
- }
+ printf("\t\t\tpre-emphasis: %s (0x%x)\n",
+ dp_preemph(edp->full_link_params[i].preemphasis),
+ edp->full_link_params[i].preemphasis);
+ printf("\t\t\tvswing: %s (0x%x)\n",
+ dp_vswing(edp->full_link_params[i].vswing),
+ edp->full_link_params[i].vswing);
}
if (context->bdb->version >= 224) {
--
2.35.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 03/14] tools/intel_vbt_decode: update vbt defs from kernel
2022-07-15 20:25 [igt-dev] [PATCH i-g-t 00/14] tools/intel_vbt_decode: Improve VBT decoder Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 01/14] tools/intel_vbt_decode: Simplify fast link training lane count Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 02/14] tools/intel_vbt_decode: Extract dp_vswing()/dp_preemph() Ville Syrjala
@ 2022-07-15 20:25 ` Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 04/14] tools/intel_vbt_decode: Introduce panel_bits()/panel_bool() Ville Syrjala
` (12 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Ville Syrjala @ 2022-07-15 20:25 UTC (permalink / raw)
To: igt-dev
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
Sync up the the VBT definitions from kernel commit
<fixme>
and adjust the actual code to match.
Note that 'slave_port' is gone now, so we'll just throw it out,
and the DP redriver stuff is now defined as bitfields which need
to be properly decoded.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
tools/intel_bios.h | 8 -
tools/intel_vbt_decode.c | 27 +++-
tools/intel_vbt_defs.h | 342 ++++++++++++++++++++++-----------------
3 files changed, 215 insertions(+), 162 deletions(-)
diff --git a/tools/intel_bios.h b/tools/intel_bios.h
index 78a96d977536..fdc3308f3d38 100644
--- a/tools/intel_bios.h
+++ b/tools/intel_bios.h
@@ -30,14 +30,6 @@
#include <stdint.h>
-#define DEVICE_HANDLE_CRT 0x01
-#define DEVICE_HANDLE_EFP1 0x04
-#define DEVICE_HANDLE_EFP2 0x40
-#define DEVICE_HANDLE_EFP3 0x20
-#define DEVICE_HANDLE_EFP4 0x10
-#define DEVICE_HANDLE_LPF1 0x08
-#define DEVICE_HANDLE_LFP2 0x80
-
#define DEVICE_TYPE_DP_DVI 0x68d6
#define DEVICE_TYPE_DVI 0x68d2
#define DEVICE_TYPE_MIPI 0x7cc2
diff --git a/tools/intel_vbt_decode.c b/tools/intel_vbt_decode.c
index 13e927edd17f..4bb8437bffb0 100644
--- a/tools/intel_vbt_decode.c
+++ b/tools/intel_vbt_decode.c
@@ -720,7 +720,7 @@ static const struct {
{ DEVICE_HANDLE_EFP2, "EFP 2 (HDMI/DVI/DP)" },
{ DEVICE_HANDLE_EFP3, "EFP 3 (HDMI/DVI/DP)" },
{ DEVICE_HANDLE_EFP4, "EFP 4 (HDMI/DVI/DP)" },
- { DEVICE_HANDLE_LPF1, "LFP 1 (eDP)" },
+ { DEVICE_HANDLE_LFP1, "LFP 1 (eDP)" },
{ DEVICE_HANDLE_LFP2, "LFP 2 (eDP)" },
};
static const int num_child_device_handles =
@@ -894,8 +894,24 @@ static void dump_child_device(struct context *context,
printf("\t\tSignature: %.*s\n", (int)sizeof(child->device_id), child->device_id);
} else {
printf("\t\tI2C speed: 0x%02x\n", child->i2c_speed);
- printf("\t\tDP onboard redriver: 0x%02x\n", child->dp_onboard_redriver);
- printf("\t\tDP ondock redriver: 0x%02x\n", child->dp_ondock_redriver);
+ printf("\t\tDP onboard redriver:\n");
+ printf("\t\t\tpresent: %s\n",
+ YESNO((child->dp_onboard_redriver_present)));
+ printf("\t\t\tvswing: %s (0x%x)\n",
+ dp_vswing(child->dp_onboard_redriver_vswing),
+ child->dp_onboard_redriver_vswing);
+ printf("\t\t\tpre-emphasis: %s (0x%x)\n",
+ dp_preemph(child->dp_onboard_redriver_preemph),
+ child->dp_onboard_redriver_preemph);
+ printf("\t\tDP ondock redriver:\n");
+ printf("\t\t\tpresent: %s\n",
+ YESNO((child->dp_ondock_redriver_present)));
+ printf("\t\t\tvswing: %s (0x%x)\n",
+ dp_vswing(child->dp_ondock_redriver_vswing),
+ child->dp_ondock_redriver_vswing);
+ printf("\t\t\tpre-emphasis: %s (0x%x)\n",
+ dp_preemph(child->dp_ondock_redriver_preemph),
+ child->dp_ondock_redriver_preemph);
printf("\t\tHDMI level shifter value: 0x%02x\n", child->hdmi_level_shifter_value);
dump_hmdi_max_data_rate(child->hdmi_max_data_rate);
printf("\t\tOffset to DTD buffer for edidless CHILD: 0x%02x\n", child->dtd_buf_ptr);
@@ -904,7 +920,6 @@ static void dump_child_device(struct context *context,
printf("\t\tCompression method CPS: %s\n", YESNO(child->compression_method_cps));
printf("\t\tDual pipe ganged eDP: %s\n", YESNO(child->ganged_edp));
printf("\t\tCompression structure index: 0x%02x)\n", child->compression_structure_index);
- printf("\t\tSlave DDI port: 0x%02x (%s)\n", child->slave_port, dvo_port(child->slave_port));
}
printf("\t\tAIM offset: %d\n", child->addin_offset);
@@ -1323,9 +1338,9 @@ static void dump_driver_feature(struct context *context,
printf("\tBoot Device Algorithm: %s\n", feature->boot_dev_algorithm ?
"driver default" : "os default");
printf("\tBlock display switching when DVD active: %s\n",
- YESNO(feature->block_display_switch));
+ YESNO(feature->allow_display_switch_dvd));
printf("\tAllow display switching when in Full Screen DOS: %s\n",
- YESNO(feature->allow_display_switch));
+ YESNO(feature->allow_display_switch_dos));
printf("\tHot Plug DVO: %s\n", YESNO(feature->hotplug_dvo));
printf("\tDual View Zoom: %s\n", YESNO(feature->dual_view_zoom));
printf("\tDriver INT 15h hook: %s\n", YESNO(feature->int15h_hook));
diff --git a/tools/intel_vbt_defs.h b/tools/intel_vbt_defs.h
index f8e5097222f2..62183c6bdc10 100644
--- a/tools/intel_vbt_defs.h
+++ b/tools/intel_vbt_defs.h
@@ -75,6 +75,20 @@ struct bdb_header {
u16 bdb_size;
} __packed;
+/*
+ * BDB version number dependencies are documented as:
+ *
+ * <start>+
+ * indicates the field was introduced in version <start>
+ * and is still valid
+ *
+ * <start>-<end>
+ * indicates the field was introduced in version <start>
+ * and obsoleted in version <end>+1.
+ *
+ * ??? indicates the specific version number is unknown
+ */
+
/*
* There are several types of BIOS data blocks (BDBs), each block has
* an ID and size in the first 3 bytes (ID in first, size in next 2).
@@ -144,12 +158,12 @@ struct bdb_general_features {
/* bits 3 */
u8 disable_smooth_vision:1;
u8 single_dvi:1;
- u8 rotate_180:1; /* 181 */
+ u8 rotate_180:1; /* 181+ */
u8 fdi_rx_polarity_inverted:1;
- u8 vbios_extended_mode:1; /* 160 */
- u8 copy_ilfp_dtd_to_sdvo_lvds_dtd:1; /* 160 */
- u8 panel_best_fit_timing:1; /* 160 */
- u8 ignore_strap_state:1; /* 160 */
+ u8 vbios_extended_mode:1; /* 160+ */
+ u8 copy_ilfp_dtd_to_sdvo_lvds_dtd:1; /* 160+ */
+ u8 panel_best_fit_timing:1; /* 160+ */
+ u8 ignore_strap_state:1; /* 160+ */
/* bits 4 */
u8 legacy_monitor_detect;
@@ -164,11 +178,11 @@ struct bdb_general_features {
u8 rsvd11:2; /* finish byte */
/* bits 6 */
- u8 tc_hpd_retry_timeout:7; /* 242 */
+ u8 tc_hpd_retry_timeout:7; /* 242+ */
u8 rsvd12:1;
/* bits 7 */
- u8 afc_startup_config:2;/* 249 */
+ u8 afc_startup_config:2; /* 249+ */
u8 rsvd13:6;
} __packed;
@@ -182,6 +196,19 @@ struct bdb_general_features {
#define GPIO_PIN_ADD_DDC 0x04 /* "ADDCARD DDC GPIO pins" */
#define GPIO_PIN_ADD_DDC_I2C 0x06 /* "ADDCARD DDC/I2C GPIO pins" */
+/* Device handle */
+#define DEVICE_HANDLE_CRT 0x0001
+#define DEVICE_HANDLE_EFP1 0x0004
+#define DEVICE_HANDLE_EFP2 0x0040
+#define DEVICE_HANDLE_EFP3 0x0020
+#define DEVICE_HANDLE_EFP4 0x0010 /* 194+ */
+#define DEVICE_HANDLE_EFP5 0x0002 /* 215+ */
+#define DEVICE_HANDLE_EFP6 0x0001 /* 217+ */
+#define DEVICE_HANDLE_EFP7 0x0100 /* 217+ */
+#define DEVICE_HANDLE_EFP8 0x0200 /* 217+ */
+#define DEVICE_HANDLE_LFP1 0x0008
+#define DEVICE_HANDLE_LFP2 0x0080
+
/* Pre 915 */
#define DEVICE_TYPE_NONE 0x00
#define DEVICE_TYPE_CRT 0x01
@@ -271,27 +298,27 @@ struct bdb_general_features {
#define DVO_PORT_DPC 8
#define DVO_PORT_DPD 9
#define DVO_PORT_DPA 10
-#define DVO_PORT_DPE 11 /* 193 */
-#define DVO_PORT_HDMIE 12 /* 193 */
+#define DVO_PORT_DPE 11 /* 193+ */
+#define DVO_PORT_HDMIE 12 /* 193+ */
#define DVO_PORT_DPF 13 /* N/A */
#define DVO_PORT_HDMIF 14 /* N/A */
-#define DVO_PORT_DPG 15 /* 217 */
-#define DVO_PORT_HDMIG 16 /* 217 */
-#define DVO_PORT_DPH 17 /* 217 */
-#define DVO_PORT_HDMIH 18 /* 217 */
-#define DVO_PORT_DPI 19 /* 217 */
-#define DVO_PORT_HDMII 20 /* 217 */
-#define DVO_PORT_MIPIA 21 /* 171 */
-#define DVO_PORT_MIPIB 22 /* 171 */
-#define DVO_PORT_MIPIC 23 /* 171 */
-#define DVO_PORT_MIPID 24 /* 171 */
-
-#define HDMI_MAX_DATA_RATE_PLATFORM 0 /* 204 */
-#define HDMI_MAX_DATA_RATE_297 1 /* 204 */
-#define HDMI_MAX_DATA_RATE_165 2 /* 204 */
-#define HDMI_MAX_DATA_RATE_594 3 /* 249 */
-#define HDMI_MAX_DATA_RATE_340 4 /* 249 */
-#define HDMI_MAX_DATA_RATE_300 5 /* 249 */
+#define DVO_PORT_DPG 15 /* 217+ */
+#define DVO_PORT_HDMIG 16 /* 217+ */
+#define DVO_PORT_DPH 17 /* 217+ */
+#define DVO_PORT_HDMIH 18 /* 217+ */
+#define DVO_PORT_DPI 19 /* 217+ */
+#define DVO_PORT_HDMII 20 /* 217+ */
+#define DVO_PORT_MIPIA 21 /* 171+ */
+#define DVO_PORT_MIPIB 22 /* 171+ */
+#define DVO_PORT_MIPIC 23 /* 171+ */
+#define DVO_PORT_MIPID 24 /* 171+ */
+
+#define HDMI_MAX_DATA_RATE_PLATFORM 0 /* 204+ */
+#define HDMI_MAX_DATA_RATE_297 1 /* 204+ */
+#define HDMI_MAX_DATA_RATE_165 2 /* 204+ */
+#define HDMI_MAX_DATA_RATE_594 3 /* 249+ */
+#define HDMI_MAX_DATA_RATE_340 4 /* 249+ */
+#define HDMI_MAX_DATA_RATE_300 5 /* 249+ */
#define LEGACY_CHILD_DEVICE_CONFIG_SIZE 33
@@ -375,20 +402,29 @@ struct child_device_config {
u8 device_id[10]; /* ascii string */
struct {
u8 i2c_speed;
- u8 dp_onboard_redriver; /* 158 */
- u8 dp_ondock_redriver; /* 158 */
- u8 hdmi_level_shifter_value:5; /* 169 */
- u8 hdmi_max_data_rate:3; /* 204 */
- u16 dtd_buf_ptr; /* 161 */
- u8 edidless_efp:1; /* 161 */
- u8 compression_enable:1; /* 198 */
- u8 compression_method_cps:1; /* 198 */
- u8 ganged_edp:1; /* 202 */
- u8 reserved0:4;
- u8 compression_structure_index:4; /* 198 */
- u8 reserved1:4;
- u8 slave_port; /* 202 */
- u8 reserved2;
+ u8 dp_onboard_redriver_preemph:3; /* 158+ */
+ u8 dp_onboard_redriver_vswing:3; /* 158+ */
+ u8 dp_onboard_redriver_present:1; /* 158+ */
+ u8 reserved0:1;
+ u8 dp_ondock_redriver_preemph:3; /* 158+ */
+ u8 dp_ondock_redriver_vswing:3; /* 158+ */
+ u8 dp_ondock_redriver_present:1; /* 158+ */
+ u8 reserved1:1;
+ u8 hdmi_level_shifter_value:5; /* 158+ */
+ u8 hdmi_max_data_rate:3; /* 204+ */
+ u16 dtd_buf_ptr; /* 161+ */
+ u8 edidless_efp:1; /* 161+ */
+ u8 compression_enable:1; /* 198+ */
+ u8 compression_method_cps:1; /* 198+ */
+ u8 ganged_edp:1; /* 202+ */
+ u8 lttpr_non_transparent:1; /* 235+ */
+ u8 reserved2:3;
+ u8 compression_structure_index:4; /* 198+ */
+ u8 reserved3:4;
+ u8 hdmi_max_frl_rate:4; /* 237+ */
+ u8 hdmi_max_frl_rate_valid:1; /* 237+ */
+ u8 reserved4:3; /* 237+ */
+ u8 reserved5;
} __packed;
} __packed;
@@ -408,16 +444,16 @@ struct child_device_config {
u8 ddc2_pin;
} __packed;
struct {
- u8 efp_routed:1; /* 158 */
- u8 lane_reversal:1; /* 184 */
- u8 lspcon:1; /* 192 */
- u8 iboost:1; /* 196 */
- u8 hpd_invert:1; /* 196 */
- u8 use_vbt_vswing:1; /* 218 */
- u8 flag_reserved:2;
- u8 hdmi_support:1; /* 158 */
- u8 dp_support:1; /* 158 */
- u8 tmds_support:1; /* 158 */
+ u8 efp_routed:1; /* 158+ */
+ u8 lane_reversal:1; /* 184+ */
+ u8 lspcon:1; /* 192+ */
+ u8 iboost:1; /* 196+ */
+ u8 hpd_invert:1; /* 196+ */
+ u8 use_vbt_vswing:1; /* 218+ */
+ u8 dp_max_lane_count:2; /* 244+ */
+ u8 hdmi_support:1; /* 158+ */
+ u8 dp_support:1; /* 158+ */
+ u8 tmds_support:1; /* 158+ */
u8 support_reserved:5;
u8 aux_channel;
u8 dongle_detect;
@@ -425,7 +461,7 @@ struct child_device_config {
} __packed;
u8 pipe_cap:2;
- u8 sdvo_stall:1; /* 158 */
+ u8 sdvo_stall:1; /* 158+ */
u8 hpd_status:2;
u8 integrated_encoder:1;
u8 capabilities_reserved:2;
@@ -433,21 +469,21 @@ struct child_device_config {
union {
u8 dvo2_wiring;
- u8 mipi_bridge_type; /* 171 */
+ u8 mipi_bridge_type; /* 171+ */
} __packed;
u16 extended_type;
u8 dvo_function;
- u8 dp_usb_type_c:1; /* 195 */
- u8 tbt:1; /* 209 */
- u8 flags2_reserved:2; /* 195 */
- u8 dp_port_trace_length:4; /* 209 */
- u8 dp_gpio_index; /* 195 */
- u16 dp_gpio_pin_num; /* 195 */
- u8 dp_iboost_level:4; /* 196 */
- u8 hdmi_iboost_level:4; /* 196 */
- u8 dp_max_link_rate:3; /* 216/230 GLK+ */
- u8 dp_max_link_rate_reserved:5; /* 216/230 */
+ u8 dp_usb_type_c:1; /* 195+ */
+ u8 tbt:1; /* 209+ */
+ u8 flags2_reserved:2; /* 195+ */
+ u8 dp_port_trace_length:4; /* 209+ */
+ u8 dp_gpio_index; /* 195+ */
+ u16 dp_gpio_pin_num; /* 195+ */
+ u8 dp_iboost_level:4; /* 196+ */
+ u8 hdmi_iboost_level:4; /* 196+ */
+ u8 dp_max_link_rate:3; /* 216+ */
+ u8 dp_max_link_rate_reserved:5; /* 216+ */
} __packed;
struct bdb_general_definitions {
@@ -484,25 +520,25 @@ struct bdb_general_definitions {
struct psr_table {
/* Feature bits */
- u8 full_link:1;
- u8 require_aux_to_wakeup:1;
+ u8 full_link:1; /* 165+ */
+ u8 require_aux_to_wakeup:1; /* 165+ */
u8 feature_bits_rsvd:6;
/* Wait times */
- u8 idle_frames:4;
- u8 lines_to_wait:3;
+ u8 idle_frames:4; /* 165+ */
+ u8 lines_to_wait:3; /* 165+ */
u8 wait_times_rsvd:1;
/* TP wake up time in multiple of 100 */
- u16 tp1_wakeup_time;
- u16 tp2_tp3_wakeup_time;
+ u16 tp1_wakeup_time; /* 165+ */
+ u16 tp2_tp3_wakeup_time; /* 165+ */
} __packed;
struct bdb_psr {
struct psr_table psr_table[16];
/* PSR2 TP2/TP3 wakeup time for 16 panels */
- u32 psr2_tp2_tp3_wakeup_time;
+ u32 psr2_tp2_tp3_wakeup_time; /* 226+ */
} __packed;
/*
@@ -515,9 +551,10 @@ struct bdb_psr {
#define BDB_DRIVER_FEATURE_INT_SDVO_LVDS 3
struct bdb_driver_features {
+ /* Driver bits */
u8 boot_dev_algorithm:1;
- u8 block_display_switch:1;
- u8 allow_display_switch:1;
+ u8 allow_display_switch_dvd:1;
+ u8 allow_display_switch_dos:1;
u8 hotplug_dvo:1;
u8 dual_view_zoom:1;
u8 int15h_hook:1;
@@ -529,6 +566,7 @@ struct bdb_driver_features {
u8 boot_mode_bpp;
u8 boot_mode_refresh;
+ /* Extended Driver Bits 1 */
u16 enable_lfp_primary:1;
u16 selective_mode_pruning:1;
u16 dual_frequency:1;
@@ -544,29 +582,40 @@ struct bdb_driver_features {
u16 tv_hotplug:1;
u16 hdmi_config:2;
- u8 static_display:1;
- u8 reserved2:7;
+ /* Driver Flags 1 */
+ u8 static_display:1; /* 163+ */
+ u8 embedded_platform:1; /* 163+ */
+ u8 display_subsystem_enable:1; /* 163+ */
+ u8 reserved0:5;
+
u16 legacy_crt_max_x;
u16 legacy_crt_max_y;
u8 legacy_crt_max_refresh;
- u8 hdmi_termination;
- u8 custom_vbt_version;
- /* Driver features data block */
- u16 rmpm_enabled:1;
- u16 s2ddt_enabled:1;
- u16 dpst_enabled:1;
- u16 bltclt_enabled:1;
- u16 adb_enabled:1;
- u16 drrs_enabled:1;
- u16 grs_enabled:1;
- u16 gpmt_enabled:1;
- u16 tbt_enabled:1;
- u16 psr_enabled:1;
- u16 ips_enabled:1;
- u16 reserved3:1;
- u16 dmrrs_enabled:1;
- u16 reserved4:2;
+ /* Extended Driver Bits 2 */
+ u8 hdmi_termination:1;
+ u8 cea861d_hdmi_support:1;
+ u8 self_refresh_enable:1;
+ u8 reserved1:5;
+
+ u8 custom_vbt_version; /* 165+ */
+
+ /* Driver Feature Flags */
+ u16 rmpm_enabled:1; /* 165+ */
+ u16 s2ddt_enabled:1; /* 165+ */
+ u16 dpst_enabled:1; /* 165-227 */
+ u16 bltclt_enabled:1; /* 165+ */
+ u16 adb_enabled:1; /* 165-227 */
+ u16 drrs_enabled:1; /* 165-227 */
+ u16 grs_enabled:1; /* 165+ */
+ u16 gpmt_enabled:1; /* 165+ */
+ u16 tbt_enabled:1; /* 165+ */
+ u16 psr_enabled:1; /* 165-227 */
+ u16 ips_enabled:1; /* 165+ */
+ u16 dpfs_enabled:1; /* 165+ */
+ u16 dmrrs_enabled:1; /* 174-227 */
+ u16 adt_enabled:1; /* ???-228 */
+ u16 hpd_wake:1; /* 201-240 */
u16 pc_feature_valid:1;
} __packed;
@@ -653,7 +702,7 @@ struct bdb_sdvo_panel_dtds {
struct edp_fast_link_params {
- u8 rate:4;
+ u8 rate:4; /* ???-223 */
u8 lanes:4;
u8 preemphasis:4;
u8 vswing:4;
@@ -686,37 +735,34 @@ struct bdb_edp {
u32 sdrrs_msa_timing_delay;
/* ith bit indicates enabled/disabled for (i+1)th panel */
- u16 edp_s3d_feature; /* 162 */
- u16 edp_t3_optimization; /* 165 */
- u64 edp_vswing_preemph; /* 173 */
- u16 fast_link_training; /* 182 */
- u16 dpcd_600h_write_required; /* 185 */
- struct edp_pwm_delays pwm_delays[16]; /* 186 */
- u16 full_link_params_provided; /* 199 */
- struct edp_full_link_params full_link_params[16]; /* 199 */
- u16 apical_enable; /* 203 */
- struct edp_apical_params apical_params[16]; /* 203 */
- u16 edp_fast_link_training_rate[16]; /* 224 */
- u16 edp_max_port_link_rate[16]; /* 244 */
+ u16 edp_s3d_feature; /* 162+ */
+ u16 edp_t3_optimization; /* 165+ */
+ u64 edp_vswing_preemph; /* 173+ */
+ u16 fast_link_training; /* 182+ */
+ u16 dpcd_600h_write_required; /* 185+ */
+ struct edp_pwm_delays pwm_delays[16]; /* 186+ */
+ u16 full_link_params_provided; /* 199+ */
+ struct edp_full_link_params full_link_params[16]; /* 199+ */
+ u16 apical_enable; /* 203+ */
+ struct edp_apical_params apical_params[16]; /* 203+ */
+ u16 edp_fast_link_training_rate[16]; /* 224+ */
+ u16 edp_max_port_link_rate[16]; /* 244+ */
} __packed;
/*
* Block 40 - LFP Data Block
*/
-/* Mask for DRRS / Panel Channel / SSC / BLT control bits extraction */
-#define MODE_MASK 0x3
-
struct bdb_lvds_options {
u8 panel_type;
- u8 panel_type2; /* 212 */
+ u8 panel_type2; /* 212+ */
/* LVDS capabilities, stored in a dword */
u8 pfit_mode:2;
u8 pfit_text_mode_enhanced:1;
u8 pfit_gfx_mode_enhanced:1;
u8 pfit_ratio_auto:1;
u8 pixel_dither:1;
- u8 lvds_edid:1;
+ u8 lvds_edid:1; /* ???-240 */
u8 rsvd2:1;
u8 rsvd4;
/* LVDS Panel channel bits stored here */
@@ -730,11 +776,11 @@ struct bdb_lvds_options {
/* LVDS panel type bits stored here */
u32 dps_panel_type_bits;
/* LVDS backlight control type bits stored here */
- u32 blt_control_type_bits;
+ u32 blt_control_type_bits; /* ???-240 */
- u16 lcdvcc_s0_enable; /* 200 */
- u32 rotation; /* 228 */
- u32 position; /* 240 */
+ u16 lcdvcc_s0_enable; /* 200+ */
+ u32 rotation; /* 228+ */
+ u32 position; /* 240+ */
} __packed;
/*
@@ -755,7 +801,7 @@ struct lvds_lfp_data_ptr {
struct bdb_lvds_lfp_data_ptrs {
u8 lvds_entries;
struct lvds_lfp_data_ptr ptr[16];
- struct lvds_lfp_data_ptr_table panel_name; /* 156-163? */
+ struct lvds_lfp_data_ptr_table panel_name; /* (156-163?)+ */
} __packed;
/*
@@ -807,20 +853,20 @@ struct lvds_lfp_panel_name {
} __packed;
struct lvds_lfp_black_border {
- u8 top; /* 227 */
- u8 bottom; /* 227 */
- u8 left; /* 238 */
- u8 right; /* 238 */
+ u8 top; /* 227+ */
+ u8 bottom; /* 227+ */
+ u8 left; /* 238+ */
+ u8 right; /* 238+ */
} __packed;
struct bdb_lvds_lfp_data_tail {
- struct lvds_lfp_panel_name panel_name[16]; /* 156-163? */
- u16 scaling_enable; /* 187 */
- u8 seamless_drrs_min_refresh_rate[16]; /* 188 */
- u8 pixel_overlap_count[16]; /* 208 */
- struct lvds_lfp_black_border black_border[16]; /* 227 */
- u16 dual_lfp_port_sync_enable; /* 231 */
- u16 gpu_dithering_for_banding_artifacts; /* 245 */
+ struct lvds_lfp_panel_name panel_name[16]; /* (156-163?)+ */
+ u16 scaling_enable; /* 187+ */
+ u8 seamless_drrs_min_refresh_rate[16]; /* 188+ */
+ u8 pixel_overlap_count[16]; /* 208+ */
+ struct lvds_lfp_black_border black_border[16]; /* 227+ */
+ u16 dual_lfp_port_sync_enable; /* 231+ */
+ u16 gpu_dithering_for_banding_artifacts; /* 245+ */
} __packed;
/*
@@ -835,7 +881,7 @@ struct lfp_backlight_data_entry {
u8 active_low_pwm:1;
u8 obsolete1:5;
u16 pwm_freq_hz;
- u8 min_brightness; /* Obsolete from 234+ */
+ u8 min_brightness; /* ???-233 */
u8 obsolete2;
u8 obsolete3;
} __packed;
@@ -858,7 +904,7 @@ struct lfp_brightness_level {
struct bdb_lfp_backlight_data {
u8 entry_size;
struct lfp_backlight_data_entry data[16];
- u8 level[16]; /* Obsolete from 234+ */
+ u8 level[16]; /* ???-233 */
struct lfp_backlight_control_method backlight_control[16];
struct lfp_brightness_level brightness_level[16]; /* 234+ */
struct lfp_brightness_level brightness_min_level[16]; /* 234+ */
@@ -873,8 +919,8 @@ struct lfp_power_features {
u8 reserved1:1;
u8 power_conservation_pref:3;
u8 reserved2:1;
- u8 lace_enabled_status:1;
- u8 lace_support:1;
+ u8 lace_enabled_status:1; /* 210+ */
+ u8 lace_support:1; /* 210+ */
u8 als_enable:1;
} __packed;
@@ -894,24 +940,24 @@ struct aggressiveness_profile2_entry {
} __packed;
struct bdb_lfp_power {
- struct lfp_power_features features;
+ struct lfp_power_features features; /* ???-227 */
struct als_data_entry als[5];
- u8 lace_aggressiveness_profile:3;
+ u8 lace_aggressiveness_profile:3; /* 210-227 */
u8 reserved1:5;
- u16 dpst;
- u16 psr;
- u16 drrs;
- u16 lace_support;
- u16 adt;
- u16 dmrrs;
- u16 adb;
- u16 lace_enabled_status;
- struct aggressiveness_profile_entry aggressiveness[16];
- u16 hobl; /* 232+ */
- u16 vrr_feature_enabled; /* 233+ */
- u16 elp; /* 247+ */
- u16 opst; /* 247+ */
- struct aggressiveness_profile2_entry aggressiveness2[16]; /* 247+ */
+ u16 dpst; /* 228+ */
+ u16 psr; /* 228+ */
+ u16 drrs; /* 228+ */
+ u16 lace_support; /* 228+ */
+ u16 adt; /* 228+ */
+ u16 dmrrs; /* 228+ */
+ u16 adb; /* 228+ */
+ u16 lace_enabled_status; /* 228+ */
+ struct aggressiveness_profile_entry aggressiveness[16]; /* 228+ */
+ u16 hobl; /* 232+ */
+ u16 vrr_feature_enabled; /* 233+ */
+ u16 elp; /* 247+ */
+ u16 opst; /* 247+ */
+ struct aggressiveness_profile2_entry aggressiveness2[16]; /* 247+ */
} __packed;
/*
@@ -921,10 +967,10 @@ struct bdb_lfp_power {
#define MAX_MIPI_CONFIGURATIONS 6
struct bdb_mipi_config {
- struct mipi_config config[MAX_MIPI_CONFIGURATIONS]; /* 175 */
- struct mipi_pps_data pps[MAX_MIPI_CONFIGURATIONS]; /* 177 */
- struct edp_pwm_delays pwm_delays[MAX_MIPI_CONFIGURATIONS]; /* 186 */
- u8 pmic_i2c_bus_number[MAX_MIPI_CONFIGURATIONS]; /* 190 */
+ struct mipi_config config[MAX_MIPI_CONFIGURATIONS]; /* 175+ */
+ struct mipi_pps_data pps[MAX_MIPI_CONFIGURATIONS]; /* 177+ */
+ struct edp_pwm_delays pwm_delays[MAX_MIPI_CONFIGURATIONS]; /* 186+ */
+ u8 pmic_i2c_bus_number[MAX_MIPI_CONFIGURATIONS]; /* 190+ */
} __packed;
/*
--
2.35.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 04/14] tools/intel_vbt_decode: Introduce panel_bits()/panel_bool()
2022-07-15 20:25 [igt-dev] [PATCH i-g-t 00/14] tools/intel_vbt_decode: Improve VBT decoder Ville Syrjala
` (2 preceding siblings ...)
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 03/14] tools/intel_vbt_decode: update vbt defs from kernel Ville Syrjala
@ 2022-07-15 20:25 ` Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 05/14] tools/intel_vbt_decode: Remove pointless variables Ville Syrjala
` (11 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Ville Syrjala @ 2022-07-15 20:25 UTC (permalink / raw)
To: igt-dev
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
Add a few helpers for extracting panel specific bits from
the bitfields.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
tools/intel_vbt_decode.c | 78 +++++++++++++++++++++++-----------------
1 file changed, 45 insertions(+), 33 deletions(-)
diff --git a/tools/intel_vbt_decode.c b/tools/intel_vbt_decode.c
index 4bb8437bffb0..97db885aee63 100644
--- a/tools/intel_vbt_decode.c
+++ b/tools/intel_vbt_decode.c
@@ -507,6 +507,16 @@ static struct bdb_block *find_section(const struct context *context, int section
return block;
}
+static unsigned int panel_bits(unsigned int value, int panel_type, int num_bits)
+{
+ return (value >> (panel_type * num_bits)) & (BIT(num_bits) - 1);
+}
+
+static bool panel_bool(unsigned int value, int panel_type)
+{
+ return panel_bits(value, panel_type, 1);
+}
+
static int decode_ssc_freq(struct context *context, bool alternate)
{
switch (intel_gen(context->devid)) {
@@ -1101,58 +1111,58 @@ static void dump_lvds_options(struct context *context,
printf("\tPanel %d%s\n", i, context->panel_type == i ? " *" : "");
- val = (options->lvds_panel_channel_bits >> (i * 2)) & 3;
+ val = panel_bits(options->lvds_panel_channel_bits, i, 2);
printf("\t\tChannel type: %s (0x%x)\n",
channel_type[val], val);
- val = (options->ssc_bits >> i) & 1;
+ val = panel_bool(options->ssc_bits, i);
printf("\t\tSSC: %s (0x%x)\n",
YESNO(val), val);
- val = (options->ssc_freq >> i) & 1;
+ val = panel_bool(options->ssc_freq, i);
printf("\t\tSSC frequency: %d MHz (0x%x)\n",
decode_ssc_freq(context, val), val);
- val = (options->ssc_ddt >> i) & 1;
+ val = panel_bool(options->ssc_ddt, i);
printf("\t\tDisable SSC in dual display twin: %s (0x%x)\n",
YESNO(val), val);
if (block->size < 16)
continue;
- val = (options->panel_color_depth >> i) & 1;
+ val = panel_bool(options->panel_color_depth, i);
printf("\t\tPanel color depth: %d (0x%x)\n",
val ? 24 : 18, val);
if (block->size < 24)
continue;
- val = (options->dps_panel_type_bits >> (i * 2)) & 3;
+ val = panel_bits(options->dps_panel_type_bits, i, 2);
printf("\t\tDPS type: %s (0x%x)\n",
dps_type[val], val);
- val = (options->blt_control_type_bits >> (i * 2)) & 3;
+ val = panel_bits(options->blt_control_type_bits, i, 2);
printf("\t\tBacklight type: %s (0x%x)\n",
blt_type[val], val);
if (context->bdb->version < 200)
continue;
- val = (options->lcdvcc_s0_enable >> i) & 1;
+ val = panel_bool(options->lcdvcc_s0_enable, i);
printf("\t\tLCDVCC on during S0 state: %s (0x%x)\n",
YESNO(val), val);
if (context->bdb->version < 228)
continue;
- val = ((options->rotation) >> (i * 2)) & 3;
+ val = panel_bits((options->rotation), i, 2);
printf("\t\tPanel rotation: %d degrees (0x%x)\n",
val * 90, val);
if (context->bdb->version < 240)
continue;
- val = ((options->position) >> (i * 2)) & 3;
+ val = panel_bits((options->position), i, 2);
printf("\t\tPanel position: %s (0x%x)\n",
pos_type[val], val);
}
@@ -1291,7 +1301,7 @@ static void dump_lvds_data(struct context *context,
continue;
printf("\t\tScaling enable: %s\n",
- YESNO((tail->scaling_enable >> i) & 1));
+ YESNO(panel_bool(tail->scaling_enable, i)));
if (context->bdb->version < 188)
continue;
@@ -1318,13 +1328,13 @@ static void dump_lvds_data(struct context *context,
continue;
printf("\t\tDual LFP port sync enable: %s\n",
- YESNO((tail->dual_lfp_port_sync_enable >> i) & 1));
+ YESNO(panel_bool(tail->dual_lfp_port_sync_enable, i)));
if (context->bdb->version < 245)
continue;
printf("\t\tGPU dithering for banding artifacts: %s\n",
- YESNO((tail->gpu_dithering_for_banding_artifacts >> i) & 1));
+ YESNO(panel_bool(tail->gpu_dithering_for_banding_artifacts, i)));
}
free(ptrs_block);
@@ -1419,7 +1429,7 @@ static void dump_edp(struct context *context,
edp->power_seqs[i].t10,
edp->power_seqs[i].t12);
- bpp = (edp->color_depth >> (i * 2)) & 3;
+ bpp = panel_bits(edp->color_depth, i, 2);
printf("\t\tPanel color depth: ");
switch (bpp) {
@@ -1437,7 +1447,7 @@ static void dump_edp(struct context *context,
break;
}
- msa = (edp->sdrrs_msa_timing_delay >> (i * 2)) & 3;
+ msa = panel_bits(edp->sdrrs_msa_timing_delay, i, 2);
printf("\t\teDP sDRRS MSA Delay: Lane %d\n", msa + 1);
printf("\t\tFast link params:\n");
@@ -1467,12 +1477,12 @@ static void dump_edp(struct context *context,
edp->fast_link_params[i].vswing);
if (context->bdb->version >= 162) {
- bool val = (edp->edp_s3d_feature >> i) & 1;
+ bool val = panel_bool(edp->edp_s3d_feature, i);
printf("\t\tStereo 3D feature: %s\n", YESNO(val));
}
if (context->bdb->version >= 165) {
- bool val = (edp->edp_t3_optimization >> i) & 1;
+ bool val = panel_bool(edp->edp_t3_optimization, i);
printf("\t\tT3 optimization: %s\n", YESNO(val));
}
@@ -1494,12 +1504,12 @@ static void dump_edp(struct context *context,
}
if (context->bdb->version >= 182) {
- bool val = (edp->fast_link_training >> i) & 1;
+ bool val = panel_bool(edp->fast_link_training, i);
printf("\t\tFast link training: %s\n", YESNO(val));
}
if (context->bdb->version >= 185) {
- bool val = (edp->dpcd_600h_write_required >> i) & 1;
+ bool val = panel_bool(edp->dpcd_600h_write_required, i);
printf("\t\tDPCD 600h write required: %s\n", YESNO(val));
}
@@ -1512,7 +1522,7 @@ static void dump_edp(struct context *context,
}
if (context->bdb->version >= 199) {
- bool val = (edp->full_link_params_provided >> i) & 1;
+ bool val = panel_bool(edp->full_link_params_provided, i);
printf("\t\tFull link params provided: %s\n", YESNO(val));
printf("\t\tFull link params:\n");
@@ -1595,7 +1605,8 @@ static void dump_psr(struct context *context,
int index;
static const uint16_t psr2_tp_times[] = {500, 100, 2500, 5};
- index = (psr2_tp_time >> (i * 2)) & 0x3;
+ index = panel_bits(psr2_tp_time, i, 2);
+
printf("\t\tPSR2 TP2/TP3 wakeup time: %d usec (0x%x)\n",
psr2_tp_times[index], index);
}
@@ -1637,20 +1648,21 @@ static void dump_lfp_power(struct context *context,
printf("\tPanel %d%s\n", i, context->panel_type == i ? " *" : "");
printf("\t\tDPST: %s\n",
- YESNO((lfp_block->dpst >> i) & 1));
+ YESNO(panel_bool(lfp_block->dpst, i)));
printf("\t\tPSR: %s\n",
- YESNO((lfp_block->psr >> i) & 1));
+ YESNO(panel_bool(lfp_block->psr, i)));
printf("\t\tDRRS: %s\n",
- YESNO((lfp_block->drrs >> i) & 1));
+ YESNO(panel_bool(lfp_block->drrs, i)));
printf("\t\tDisplay LACE support: %s\n",
- YESNO((lfp_block->lace_support >> i) & 1));
+ YESNO(panel_bool(lfp_block->lace_support, i)));
printf("\t\tADT: %s\n",
- YESNO((lfp_block->adt >> i) & 1));
+ YESNO(panel_bool(lfp_block->adt, i)));
printf("\t\tDMRRS: %s\n",
- YESNO((lfp_block->dmrrs >> i) & 1));
- printf("\t\tADB: %s\n", YESNO((lfp_block->adb >> i) & 1));
+ YESNO(panel_bool(lfp_block->dmrrs, i)));
+ printf("\t\tADB: %s\n",
+ YESNO(panel_bool(lfp_block->adb, i)));
printf("\t\tDefault Display LACE enabled: %s\n",
- YESNO((lfp_block->lace_enabled_status >> i) & 1));
+ YESNO(panel_bool(lfp_block->lace_enabled_status, i)));
printf("\t\tLACE Aggressiveness: %d\n",
lfp_block->aggressiveness[i].lace_aggressiveness);
printf("\t\tDPST Aggressiveness: %d\n",
@@ -1660,21 +1672,21 @@ static void dump_lfp_power(struct context *context,
continue;
printf("\t\tEDP 4k/2k HOBL feature: %s\n",
- YESNO((lfp_block->hobl >> i) & 1));
+ YESNO(panel_bool(lfp_block->hobl, i)));
if (context->bdb->version < 233)
continue;
printf("\t\tVRR feature: %s\n",
- YESNO((lfp_block->vrr_feature_enabled >> i) & 1));
+ YESNO(panel_bool(lfp_block->vrr_feature_enabled, i)));
if (context->bdb->version < 247)
continue;
printf("\t\tELP: %s\n",
- YESNO((lfp_block->elp >> i) & 1));
+ YESNO(panel_bool(lfp_block->elp, i)));
printf("\t\tOPST: %s\n",
- YESNO((lfp_block->opst >> i) & 1));
+ YESNO(panel_bool(lfp_block->opst, i)));
printf("\t\tELP Aggressiveness: %d\n",
lfp_block->aggressiveness2[i].elp_aggressiveness);
printf("\t\tOPST Aggrgessiveness: %d\n",
--
2.35.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 05/14] tools/intel_vbt_decode: Remove pointless variables
2022-07-15 20:25 [igt-dev] [PATCH i-g-t 00/14] tools/intel_vbt_decode: Improve VBT decoder Ville Syrjala
` (3 preceding siblings ...)
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 04/14] tools/intel_vbt_decode: Introduce panel_bits()/panel_bool() Ville Syrjala
@ 2022-07-15 20:25 ` Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 06/14] tools/intel_vbt_decode: Extract lvds_config[] Ville Syrjala
` (10 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Ville Syrjala @ 2022-07-15 20:25 UTC (permalink / raw)
To: igt-dev
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
A bunch of places assign some random variable just to
print out its value with YESNO(). Skip the pointless
intermediate step.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
tools/intel_vbt_decode.c | 50 +++++++++++++++++-----------------------
1 file changed, 21 insertions(+), 29 deletions(-)
diff --git a/tools/intel_vbt_decode.c b/tools/intel_vbt_decode.c
index 97db885aee63..072c1d969c14 100644
--- a/tools/intel_vbt_decode.c
+++ b/tools/intel_vbt_decode.c
@@ -1115,17 +1115,15 @@ static void dump_lvds_options(struct context *context,
printf("\t\tChannel type: %s (0x%x)\n",
channel_type[val], val);
- val = panel_bool(options->ssc_bits, i);
- printf("\t\tSSC: %s (0x%x)\n",
- YESNO(val), val);
+ printf("\t\tSSC: %s\n",
+ YESNO(panel_bool(options->ssc_bits, i)));
val = panel_bool(options->ssc_freq, i);
printf("\t\tSSC frequency: %d MHz (0x%x)\n",
decode_ssc_freq(context, val), val);
- val = panel_bool(options->ssc_ddt, i);
- printf("\t\tDisable SSC in dual display twin: %s (0x%x)\n",
- YESNO(val), val);
+ printf("\t\tDisable SSC in dual display twin: %s\n",
+ YESNO(panel_bool(options->ssc_ddt, i)));
if (block->size < 16)
continue;
@@ -1148,9 +1146,8 @@ static void dump_lvds_options(struct context *context,
if (context->bdb->version < 200)
continue;
- val = panel_bool(options->lcdvcc_s0_enable, i);
- printf("\t\tLCDVCC on during S0 state: %s (0x%x)\n",
- YESNO(val), val);
+ printf("\t\tLCDVCC on during S0 state: %s\n",
+ YESNO(panel_bool(options->lcdvcc_s0_enable, i)));
if (context->bdb->version < 228)
continue;
@@ -1476,15 +1473,13 @@ static void dump_edp(struct context *context,
dp_preemph(edp->fast_link_params[i].vswing),
edp->fast_link_params[i].vswing);
- if (context->bdb->version >= 162) {
- bool val = panel_bool(edp->edp_s3d_feature, i);
- printf("\t\tStereo 3D feature: %s\n", YESNO(val));
- }
+ if (context->bdb->version >= 162)
+ printf("\t\tStereo 3D feature: %s\n",
+ YESNO(panel_bool(edp->edp_s3d_feature, i)));
- if (context->bdb->version >= 165) {
- bool val = panel_bool(edp->edp_t3_optimization, i);
- printf("\t\tT3 optimization: %s\n", YESNO(val));
- }
+ if (context->bdb->version >= 165)
+ printf("\t\tT3 optimization: %s\n",
+ YESNO(panel_bool(edp->edp_t3_optimization, i)));
if (context->bdb->version >= 173) {
int val = (edp->edp_vswing_preemph >> (i * 4)) & 0xf;
@@ -1503,28 +1498,25 @@ static void dump_edp(struct context *context,
}
}
- if (context->bdb->version >= 182) {
- bool val = panel_bool(edp->fast_link_training, i);
- printf("\t\tFast link training: %s\n", YESNO(val));
- }
+ if (context->bdb->version >= 182)
+ printf("\t\tFast link training: %s\n",
+ YESNO(panel_bool(edp->fast_link_training, i)));
- if (context->bdb->version >= 185) {
- bool val = panel_bool(edp->dpcd_600h_write_required, i);
- printf("\t\tDPCD 600h write required: %s\n", YESNO(val));
- }
+ if (context->bdb->version >= 185)
+ printf("\t\tDPCD 600h write required: %s\n",
+ YESNO(panel_bool(edp->dpcd_600h_write_required, i)));
- if (context->bdb->version >= 186) {
+ if (context->bdb->version >= 186)
printf("\t\tPWM delays:\n"
"\t\t\tPWM on to backlight enable: %d\n"
"\t\t\tBacklight disable to PWM off: %d\n",
edp->pwm_delays[i].pwm_on_to_backlight_enable,
edp->pwm_delays[i].backlight_disable_to_pwm_off);
- }
if (context->bdb->version >= 199) {
- bool val = panel_bool(edp->full_link_params_provided, i);
+ printf("\t\tFull link params provided: %s\n",
+ YESNO(panel_bool(edp->full_link_params_provided, i)));
- printf("\t\tFull link params provided: %s\n", YESNO(val));
printf("\t\tFull link params:\n");
printf("\t\t\tpre-emphasis: %s (0x%x)\n",
dp_preemph(edp->full_link_params[i].preemphasis),
--
2.35.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 06/14] tools/intel_vbt_decode: Extract lvds_config[]
2022-07-15 20:25 [igt-dev] [PATCH i-g-t 00/14] tools/intel_vbt_decode: Improve VBT decoder Ville Syrjala
` (4 preceding siblings ...)
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 05/14] tools/intel_vbt_decode: Remove pointless variables Ville Syrjala
@ 2022-07-15 20:25 ` Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 07/14] tools/intel_vbt_decode: Extract panel_fitting[] Ville Syrjala
` (9 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Ville Syrjala @ 2022-07-15 20:25 UTC (permalink / raw)
To: igt-dev
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
Extract the lvds_config string representation into an array.
Less clutter in the code this way.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
tools/intel_vbt_decode.c | 24 +++++++++---------------
1 file changed, 9 insertions(+), 15 deletions(-)
diff --git a/tools/intel_vbt_decode.c b/tools/intel_vbt_decode.c
index 072c1d969c14..cffc385306f2 100644
--- a/tools/intel_vbt_decode.c
+++ b/tools/intel_vbt_decode.c
@@ -1337,6 +1337,13 @@ static void dump_lvds_data(struct context *context,
free(ptrs_block);
}
+static const char * const lvds_config[] = {
+ [BDB_DRIVER_NO_LVDS] = "No LVDS",
+ [BDB_DRIVER_INT_LVDS] = "Integrated LVDS",
+ [BDB_DRIVER_SDVO_LVDS] = "SDVO LVDS",
+ [BDB_DRIVER_EDP] = "Embedded DisplayPort",
+};
+
static void dump_driver_feature(struct context *context,
const struct bdb_block *block)
{
@@ -1381,21 +1388,8 @@ static void dump_driver_feature(struct context *context,
printf("\tEnable SDVO device power down: %s\n",
YESNO(feature->sdvo_device_power_down));
printf("\tCRT hotplug: %s\n", YESNO(feature->crt_hotplug));
- printf("\tLVDS config: ");
- switch (feature->lvds_config) {
- case BDB_DRIVER_NO_LVDS:
- printf("No LVDS\n");
- break;
- case BDB_DRIVER_INT_LVDS:
- printf("Integrated LVDS\n");
- break;
- case BDB_DRIVER_SDVO_LVDS:
- printf("SDVO LVDS\n");
- break;
- case BDB_DRIVER_EDP:
- printf("Embedded DisplayPort\n");
- break;
- }
+ printf("\tLVDS config: %s (0x%x)\n",
+ lvds_config[feature->lvds_config], feature->lvds_config);
printf("\tDefine Display statically: %s\n",
YESNO(feature->static_display));
printf("\tLegacy CRT max X: %d\n", feature->legacy_crt_max_x);
--
2.35.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 07/14] tools/intel_vbt_decode: Extract panel_fitting[]
2022-07-15 20:25 [igt-dev] [PATCH i-g-t 00/14] tools/intel_vbt_decode: Improve VBT decoder Ville Syrjala
` (5 preceding siblings ...)
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 06/14] tools/intel_vbt_decode: Extract lvds_config[] Ville Syrjala
@ 2022-07-15 20:25 ` Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 08/14] tools/intel_vbt_decode: Parse HDMI FRL rate Ville Syrjala
` (8 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Ville Syrjala @ 2022-07-15 20:25 UTC (permalink / raw)
To: igt-dev
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
Extract the panel_fitting string representation into an array.
Less clutter in the code this way.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
tools/intel_vbt_decode.c | 24 +++++++++---------------
1 file changed, 9 insertions(+), 15 deletions(-)
diff --git a/tools/intel_vbt_decode.c b/tools/intel_vbt_decode.c
index cffc385306f2..b5b60723baa8 100644
--- a/tools/intel_vbt_decode.c
+++ b/tools/intel_vbt_decode.c
@@ -530,26 +530,20 @@ static int decode_ssc_freq(struct context *context, bool alternate)
}
}
+static const char * const panel_fitting[] = {
+ [0] = "disabled",
+ [1] = "text only",
+ [2] = "graphics only",
+ [3] = "text & graphics",
+};
+
static void dump_general_features(struct context *context,
const struct bdb_block *block)
{
const struct bdb_general_features *features = block_data(block);
- printf("\tPanel fitting: ");
- switch (features->panel_fitting) {
- case 0:
- printf("disabled\n");
- break;
- case 1:
- printf("text only\n");
- break;
- case 2:
- printf("graphics only\n");
- break;
- case 3:
- printf("text & graphics\n");
- break;
- }
+ printf("\tPanel fitting: %s (0x%x)\n",
+ panel_fitting[features->panel_fitting], features->panel_fitting);
printf("\tFlexaim: %s\n", YESNO(features->flexaim));
printf("\tMessage: %s\n", YESNO(features->msg_enable));
printf("\tClear screen: %d\n", features->clear_screen);
--
2.35.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 08/14] tools/intel_vbt_decode: Parse HDMI FRL rate
2022-07-15 20:25 [igt-dev] [PATCH i-g-t 00/14] tools/intel_vbt_decode: Improve VBT decoder Ville Syrjala
` (6 preceding siblings ...)
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 07/14] tools/intel_vbt_decode: Extract panel_fitting[] Ville Syrjala
@ 2022-07-15 20:25 ` Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 09/14] tools/intel_vbt_decode: Decode the "use VBT vswing tables" flag Ville Syrjala
` (7 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Ville Syrjala @ 2022-07-15 20:25 UTC (permalink / raw)
To: igt-dev
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
Parse the max HDMI FRL rate stuff.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
tools/intel_vbt_decode.c | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/tools/intel_vbt_decode.c b/tools/intel_vbt_decode.c
index b5b60723baa8..e05fed69b242 100644
--- a/tools/intel_vbt_decode.c
+++ b/tools/intel_vbt_decode.c
@@ -881,6 +881,19 @@ static const char *dp_preemph(u8 preemph)
}
}
+static const char *hdmi_frl_rate(u8 frl_rate)
+{
+ switch (frl_rate) {
+ case 0: return "FRL not supported";
+ case 1: return "3 GT/s";
+ case 2: return "6 GT/s";
+ case 3: return "8 GT/s";
+ case 4: return "10 GT/s";
+ case 5: return "12 GT/s";
+ default: return "<unknown>";
+ }
+}
+
static void dump_child_device(struct context *context,
const struct child_device_config *child)
{
@@ -924,6 +937,14 @@ static void dump_child_device(struct context *context,
printf("\t\tCompression method CPS: %s\n", YESNO(child->compression_method_cps));
printf("\t\tDual pipe ganged eDP: %s\n", YESNO(child->ganged_edp));
printf("\t\tCompression structure index: 0x%02x)\n", child->compression_structure_index);
+
+ if (context->bdb->version >= 237) {
+ printf("\t\tHDMI Max FRL rate valid: %s\n",
+ YESNO(child->hdmi_max_frl_rate_valid));
+ printf("\t\tHDMI Max FRL rate: %s (0x%x)\n",
+ hdmi_frl_rate(child->hdmi_max_frl_rate),
+ child->hdmi_max_frl_rate);
+ }
}
printf("\t\tAIM offset: %d\n", child->addin_offset);
--
2.35.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 09/14] tools/intel_vbt_decode: Decode the "use VBT vswing tables" flag
2022-07-15 20:25 [igt-dev] [PATCH i-g-t 00/14] tools/intel_vbt_decode: Improve VBT decoder Ville Syrjala
` (7 preceding siblings ...)
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 08/14] tools/intel_vbt_decode: Parse HDMI FRL rate Ville Syrjala
@ 2022-07-15 20:25 ` Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 10/14] tools/intel_vbt_decode: Decode eDP/DP max lane count Ville Syrjala
` (6 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Ville Syrjala @ 2022-07-15 20:25 UTC (permalink / raw)
To: igt-dev
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
Decode the "Use VBT swging tables" bit. Note that we don't decode
the actual tables so far.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
tools/intel_vbt_decode.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/tools/intel_vbt_decode.c b/tools/intel_vbt_decode.c
index e05fed69b242..7b7930086693 100644
--- a/tools/intel_vbt_decode.c
+++ b/tools/intel_vbt_decode.c
@@ -967,6 +967,7 @@ static void dump_child_device(struct context *context,
printf("\t\tOnboard LSPCON: %s\n", YESNO(child->lspcon));
printf("\t\tIboost enable: %s\n", YESNO(child->iboost));
printf("\t\tHPD sense invert: %s\n", YESNO(child->hpd_invert));
+ printf("\t\tUse VBT vswing/premph table: %s\n", YESNO(child->use_vbt_vswing));
printf("\t\tHDMI compatible? %s\n", YESNO(child->hdmi_support));
printf("\t\tDP compatible? %s\n", YESNO(child->dp_support));
printf("\t\tTMDS compatible? %s\n", YESNO(child->tmds_support));
--
2.35.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 10/14] tools/intel_vbt_decode: Decode eDP/DP max lane count
2022-07-15 20:25 [igt-dev] [PATCH i-g-t 00/14] tools/intel_vbt_decode: Improve VBT decoder Ville Syrjala
` (8 preceding siblings ...)
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 09/14] tools/intel_vbt_decode: Decode the "use VBT vswing tables" flag Ville Syrjala
@ 2022-07-15 20:25 ` Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 11/14] tools/intel_vbt_decode: Clean up driver features block decoding Ville Syrjala
` (5 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Ville Syrjala @ 2022-07-15 20:25 UTC (permalink / raw)
To: igt-dev
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
We have a new field for eDP/DP max lane count. Decode it.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
tools/intel_vbt_decode.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/tools/intel_vbt_decode.c b/tools/intel_vbt_decode.c
index 7b7930086693..37b195ab8c16 100644
--- a/tools/intel_vbt_decode.c
+++ b/tools/intel_vbt_decode.c
@@ -968,6 +968,8 @@ static void dump_child_device(struct context *context,
printf("\t\tIboost enable: %s\n", YESNO(child->iboost));
printf("\t\tHPD sense invert: %s\n", YESNO(child->hpd_invert));
printf("\t\tUse VBT vswing/premph table: %s\n", YESNO(child->use_vbt_vswing));
+ if (context->bdb->version >= 244)
+ printf("\t\teDP/DP max lane count: X%d\n", child->dp_max_lane_count + 1);
printf("\t\tHDMI compatible? %s\n", YESNO(child->hdmi_support));
printf("\t\tDP compatible? %s\n", YESNO(child->dp_support));
printf("\t\tTMDS compatible? %s\n", YESNO(child->tmds_support));
--
2.35.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 11/14] tools/intel_vbt_decode: Clean up driver features block decoding
2022-07-15 20:25 [igt-dev] [PATCH i-g-t 00/14] tools/intel_vbt_decode: Improve VBT decoder Ville Syrjala
` (9 preceding siblings ...)
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 10/14] tools/intel_vbt_decode: Decode eDP/DP max lane count Ville Syrjala
@ 2022-07-15 20:25 ` Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 12/14] tools/intel_vbt_decode: Decode AUX CH Ville Syrjala
` (4 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Ville Syrjala @ 2022-07-15 20:25 UTC (permalink / raw)
To: igt-dev
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
Print all the stuff from the driver features block, and print
it in the same order as the spec lists it to make it a bit
easier to compare the two.
Also use consistent naming for a bunch of the fields that
exist in both the driver features block and the power conservation
block.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
tools/intel_vbt_decode.c | 93 ++++++++++++++++++++++++++++++----------
1 file changed, 70 insertions(+), 23 deletions(-)
diff --git a/tools/intel_vbt_decode.c b/tools/intel_vbt_decode.c
index 37b195ab8c16..90ae7c667f16 100644
--- a/tools/intel_vbt_decode.c
+++ b/tools/intel_vbt_decode.c
@@ -1367,23 +1367,28 @@ static void dump_driver_feature(struct context *context,
{
const struct bdb_driver_features *feature = block_data(block);
- printf("\tBoot Device Algorithm: %s\n", feature->boot_dev_algorithm ?
- "driver default" : "os default");
- printf("\tBlock display switching when DVD active: %s\n",
- YESNO(feature->allow_display_switch_dvd));
- printf("\tAllow display switching when in Full Screen DOS: %s\n",
- YESNO(feature->allow_display_switch_dos));
- printf("\tHot Plug DVO: %s\n", YESNO(feature->hotplug_dvo));
- printf("\tDual View Zoom: %s\n", YESNO(feature->dual_view_zoom));
- printf("\tDriver INT 15h hook: %s\n", YESNO(feature->int15h_hook));
- printf("\tEnable Sprite in Clone Mode: %s\n",
- YESNO(feature->sprite_in_clone));
printf("\tUse 00000110h ID for Primary LFP: %s\n",
YESNO(feature->primary_lfp_id));
+ printf("\tEnable Sprite in Clone Mode: %s\n",
+ YESNO(feature->sprite_in_clone));
+ printf("\tDriver INT 15h hook: %s\n",
+ YESNO(feature->int15h_hook));
+ printf("\tDual View Zoom: %s\n",
+ YESNO(feature->dual_view_zoom));
+ printf("\tHot Plug DVO: %s\n",
+ YESNO(feature->hotplug_dvo));
+ printf("\tAllow display switching when in Full Screen DOS: %s\n",
+ YESNO(feature->allow_display_switch_dos));
+ printf("\tAllow display switching when DVD active: %s\n",
+ YESNO(feature->allow_display_switch_dvd));
+ printf("\tBoot Device Algorithm: %s\n",
+ feature->boot_dev_algorithm ? "driver default" : "os default");
+
printf("\tBoot Mode X: %u\n", feature->boot_mode_x);
printf("\tBoot Mode Y: %u\n", feature->boot_mode_y);
printf("\tBoot Mode Bpp: %u\n", feature->boot_mode_bpp);
printf("\tBoot Mode Refresh: %u\n", feature->boot_mode_refresh);
+
printf("\tEnable LFP as primary: %s\n",
YESNO(feature->enable_lfp_primary));
printf("\tSelective Mode Pruning: %s\n",
@@ -1396,9 +1401,8 @@ static void dump_driver_feature(struct context *context,
YESNO(feature->nt_clone_support));
printf("\tDefault Power Scheme user interface: %s\n",
feature->power_scheme_ui ? "3rd party" : "CUI");
- printf
- ("\tSprite Display Assignment when Overlay is Active in Clone Mode: %s\n",
- feature->sprite_display_assign ? "primary" : "secondary");
+ printf("\tSprite Display Assignment when Overlay is Active in Clone Mode: %s\n",
+ feature->sprite_display_assign ? "primary" : "secondary");
printf("\tDisplay Maintain Aspect Scaling via CUI: %s\n",
YESNO(feature->cui_aspect_scaling));
printf("\tPreserve Aspect Ratio: %s\n",
@@ -1406,16 +1410,59 @@ static void dump_driver_feature(struct context *context,
printf("\tEnable SDVO device power down: %s\n",
YESNO(feature->sdvo_device_power_down));
printf("\tCRT hotplug: %s\n", YESNO(feature->crt_hotplug));
+
printf("\tLVDS config: %s (0x%x)\n",
lvds_config[feature->lvds_config], feature->lvds_config);
+ printf("\tTV hotplug: %s\n",
+ YESNO(feature->tv_hotplug));
+
+ printf("\tDisplay subsystem enable: %s\n",
+ YESNO(feature->display_subsystem_enable));
+ printf("\tEmbedded platform: %s\n",
+ YESNO(feature->embedded_platform));
printf("\tDefine Display statically: %s\n",
YESNO(feature->static_display));
+
printf("\tLegacy CRT max X: %d\n", feature->legacy_crt_max_x);
printf("\tLegacy CRT max Y: %d\n", feature->legacy_crt_max_y);
printf("\tLegacy CRT max refresh: %d\n",
feature->legacy_crt_max_refresh);
- printf("\tEnable DRRS: %s\n", YESNO(feature->drrs_enabled));
- printf("\tEnable PSR: %s\n", YESNO(feature->psr_enabled));
+
+ printf("\tInternal source termination for HDMI: %s\n",
+ YESNO(feature->hdmi_termination));
+ printf("\tCEA 861-D HDMI support: %s\n",
+ YESNO(feature->cea861d_hdmi_support));
+ printf("\tSelf refresh enable: %s\n",
+ YESNO(feature->self_refresh_enable));
+
+ printf("\tCustom VBT number: 0x%x\n", feature->custom_vbt_version);
+
+ printf("\tPC Features field validity: %s\n",
+ YESNO(feature->pc_feature_valid));
+ printf("\tDynamic Media Refresh Rate Switching (DMRRS): %s\n",
+ YESNO(feature->dmrrs_enabled));
+ printf("\tIntermediate Pixel Storage (IPS): %s\n",
+ YESNO(feature->ips_enabled));
+ printf("\tPanel Self Refresh (PSR): %s\n",
+ YESNO(feature->psr_enabled));
+ printf("\tTurbo Boost Technology: %s\n",
+ YESNO(feature->tbt_enabled));
+ printf("\tGraphics Power Management (GPMT): %s\n",
+ YESNO(feature->gpmt_enabled));
+ printf("\tGraphics Render Standby (RS): %s\n",
+ YESNO(feature->grs_enabled));
+ printf("\tDynamic Refresh Rate Switching (DRRS): %s\n",
+ YESNO(feature->drrs_enabled));
+ printf("\tAutomatic Display Brightness (ADB): %s\n",
+ YESNO(feature->adb_enabled));
+ printf("\tDxgkDDI Backlight Control (DxgkDdiBLC): %s\n",
+ YESNO(feature->bltclt_enabled));
+ printf("\tDisplay Power Saving Technology (DPST): %s\n",
+ YESNO(feature->dpst_enabled));
+ printf("\tSmart 2D Display Technology (S2DDT): %s\n",
+ YESNO(feature->s2ddt_enabled));
+ printf("\tRapid Memory Power Management (RMPM): %s\n",
+ YESNO(feature->rmpm_enabled));
}
static void dump_edp(struct context *context,
@@ -1651,19 +1698,19 @@ static void dump_lfp_power(struct context *context,
printf("\tPanel %d%s\n", i, context->panel_type == i ? " *" : "");
- printf("\t\tDPST: %s\n",
+ printf("\t\tDisplay Power Saving Technology (DPST): %s\n",
YESNO(panel_bool(lfp_block->dpst, i)));
- printf("\t\tPSR: %s\n",
+ printf("\t\tPanel Self Refresh (PSR): %s\n",
YESNO(panel_bool(lfp_block->psr, i)));
- printf("\t\tDRRS: %s\n",
+ printf("\t\tDynamic Refresh Rate Switching (DRRS): %s\n",
YESNO(panel_bool(lfp_block->drrs, i)));
printf("\t\tDisplay LACE support: %s\n",
YESNO(panel_bool(lfp_block->lace_support, i)));
- printf("\t\tADT: %s\n",
+ printf("\t\tAssertive Display Technology (ADT): %s\n",
YESNO(panel_bool(lfp_block->adt, i)));
- printf("\t\tDMRRS: %s\n",
+ printf("\t\tDynamic Media Refresh Rate Switching (DMRRS): %s\n",
YESNO(panel_bool(lfp_block->dmrrs, i)));
- printf("\t\tADB: %s\n",
+ printf("\t\tAutomatic Display Brightness (ADB): %s\n",
YESNO(panel_bool(lfp_block->adb, i)));
printf("\t\tDefault Display LACE enabled: %s\n",
YESNO(panel_bool(lfp_block->lace_enabled_status, i)));
@@ -1681,7 +1728,7 @@ static void dump_lfp_power(struct context *context,
if (context->bdb->version < 233)
continue;
- printf("\t\tVRR feature: %s\n",
+ printf("\t\tVariable Refresh Rate (VRR): %s\n",
YESNO(panel_bool(lfp_block->vrr_feature_enabled, i)));
if (context->bdb->version < 247)
--
2.35.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 12/14] tools/intel_vbt_decode: Decode AUX CH
2022-07-15 20:25 [igt-dev] [PATCH i-g-t 00/14] tools/intel_vbt_decode: Improve VBT decoder Ville Syrjala
` (10 preceding siblings ...)
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 11/14] tools/intel_vbt_decode: Clean up driver features block decoding Ville Syrjala
@ 2022-07-15 20:25 ` Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 13/14] tools/intel_vbt_decode: Adjust DVO port printing Ville Syrjala
` (3 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Ville Syrjala @ 2022-07-15 20:25 UTC (permalink / raw)
To: igt-dev
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
Decode the AUX CH to a human readable name.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
tools/intel_vbt_decode.c | 26 +++++++++++++++++++++++++-
1 file changed, 25 insertions(+), 1 deletion(-)
diff --git a/tools/intel_vbt_decode.c b/tools/intel_vbt_decode.c
index 90ae7c667f16..10db394b3748 100644
--- a/tools/intel_vbt_decode.c
+++ b/tools/intel_vbt_decode.c
@@ -777,6 +777,29 @@ static const char *dvo_port(uint8_t type)
return "unknown";
}
+static const char *aux_ch_names[] = {
+ [0] = "none",
+ [DP_AUX_A >> 4] = "AUX-A",
+ [DP_AUX_B >> 4] = "AUX-B",
+ [DP_AUX_C >> 4] = "AUX-C",
+ [DP_AUX_D >> 4] = "AUX-D",
+ [DP_AUX_E >> 4] = "AUX-E",
+ [DP_AUX_F >> 4] = "AUX-F",
+ [DP_AUX_G >> 4] = "AUX-G",
+ [DP_AUX_H >> 4] = "AUX-H",
+ [DP_AUX_I >> 4] = "AUX-I",
+};
+
+static const char *aux_ch(uint8_t aux_ch)
+{
+ aux_ch >>= 4;
+
+ if (aux_ch < ARRAY_SIZE(aux_ch_names) && aux_ch_names[aux_ch])
+ return aux_ch_names[aux_ch];
+ else
+ return "unknown";
+}
+
static const char *mipi_bridge_type(uint8_t type)
{
switch (type) {
@@ -973,7 +996,8 @@ static void dump_child_device(struct context *context,
printf("\t\tHDMI compatible? %s\n", YESNO(child->hdmi_support));
printf("\t\tDP compatible? %s\n", YESNO(child->dp_support));
printf("\t\tTMDS compatible? %s\n", YESNO(child->tmds_support));
- printf("\t\tAux channel: 0x%02x\n", child->aux_channel);
+ printf("\t\tAux channel: %s (0x%02x)\n",
+ aux_ch(child->aux_channel), child->aux_channel);
printf("\t\tDongle detect: 0x%02x\n", child->dongle_detect);
}
--
2.35.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 13/14] tools/intel_vbt_decode: Adjust DVO port printing
2022-07-15 20:25 [igt-dev] [PATCH i-g-t 00/14] tools/intel_vbt_decode: Improve VBT decoder Ville Syrjala
` (11 preceding siblings ...)
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 12/14] tools/intel_vbt_decode: Decode AUX CH Ville Syrjala
@ 2022-07-15 20:25 ` Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 14/14] tools/intel_vbt_decode: Dump the compression structure index as decimal Ville Syrjala
` (2 subsequent siblings)
15 siblings, 0 replies; 19+ messages in thread
From: Ville Syrjala @ 2022-07-15 20:25 UTC (permalink / raw)
To: igt-dev
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
Dump the DVO port using the more standard form:
"DVO Port: <decoded name> (<raw value>)".
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
tools/intel_vbt_decode.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/tools/intel_vbt_decode.c b/tools/intel_vbt_decode.c
index 10db394b3748..de515aa6fd25 100644
--- a/tools/intel_vbt_decode.c
+++ b/tools/intel_vbt_decode.c
@@ -971,7 +971,8 @@ static void dump_child_device(struct context *context,
}
printf("\t\tAIM offset: %d\n", child->addin_offset);
- printf("\t\tDVO Port: 0x%02x (%s)\n", child->dvo_port, dvo_port(child->dvo_port));
+ printf("\t\tDVO Port: %s (0x%02x)\n",
+ dvo_port(child->dvo_port), child->dvo_port);
printf("\t\tAIM I2C pin: 0x%02x\n", child->i2c_pin);
printf("\t\tAIM Slave address: 0x%02x\n", child->slave_addr);
--
2.35.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] [PATCH i-g-t 14/14] tools/intel_vbt_decode: Dump the compression structure index as decimal
2022-07-15 20:25 [igt-dev] [PATCH i-g-t 00/14] tools/intel_vbt_decode: Improve VBT decoder Ville Syrjala
` (12 preceding siblings ...)
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 13/14] tools/intel_vbt_decode: Adjust DVO port printing Ville Syrjala
@ 2022-07-15 20:25 ` Ville Syrjala
2022-07-16 17:08 ` [igt-dev] ✓ Fi.CI.BAT: success for tools/intel_vbt_decode: Improve VBT decoder Patchwork
2022-07-16 19:57 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
15 siblings, 0 replies; 19+ messages in thread
From: Ville Syrjala @ 2022-07-15 20:25 UTC (permalink / raw)
To: igt-dev
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
The compression structure index is just that, and index. So just
dump it as a decimal number (and drop the mispaced parenthesis).
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
tools/intel_vbt_decode.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/intel_vbt_decode.c b/tools/intel_vbt_decode.c
index de515aa6fd25..8d88cdfa283c 100644
--- a/tools/intel_vbt_decode.c
+++ b/tools/intel_vbt_decode.c
@@ -959,7 +959,7 @@ static void dump_child_device(struct context *context,
printf("\t\tCompression enable: %s\n", YESNO(child->compression_enable));
printf("\t\tCompression method CPS: %s\n", YESNO(child->compression_method_cps));
printf("\t\tDual pipe ganged eDP: %s\n", YESNO(child->ganged_edp));
- printf("\t\tCompression structure index: 0x%02x)\n", child->compression_structure_index);
+ printf("\t\tCompression structure index: %d\n", child->compression_structure_index);
if (context->bdb->version >= 237) {
printf("\t\tHDMI Max FRL rate valid: %s\n",
--
2.35.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for tools/intel_vbt_decode: Improve VBT decoder
2022-07-15 20:25 [igt-dev] [PATCH i-g-t 00/14] tools/intel_vbt_decode: Improve VBT decoder Ville Syrjala
` (13 preceding siblings ...)
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 14/14] tools/intel_vbt_decode: Dump the compression structure index as decimal Ville Syrjala
@ 2022-07-16 17:08 ` Patchwork
2022-07-16 19:57 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
15 siblings, 0 replies; 19+ messages in thread
From: Patchwork @ 2022-07-16 17:08 UTC (permalink / raw)
To: Ville Syrjala; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 8819 bytes --]
== Series Details ==
Series: tools/intel_vbt_decode: Improve VBT decoder
URL : https://patchwork.freedesktop.org/series/106398/
State : success
== Summary ==
CI Bug Log - changes from IGT_6586 -> IGTPW_7529
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/index.html
Participating hosts (41 -> 42)
------------------------------
Additional (3): bat-dg2-8 fi-bxt-dsi fi-icl-u2
Missing (2): bat-rpls-1 fi-cfl-guc
Known issues
------------
Here are the changes found in IGTPW_7529 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_huc_copy@huc-copy:
- fi-icl-u2: NOTRUN -> [SKIP][1] ([i915#2190])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/fi-icl-u2/igt@gem_huc_copy@huc-copy.html
- fi-bxt-dsi: NOTRUN -> [SKIP][2] ([fdo#109271] / [i915#2190])
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/fi-bxt-dsi/igt@gem_huc_copy@huc-copy.html
* igt@gem_lmem_swapping@parallel-random-engines:
- fi-bxt-dsi: NOTRUN -> [SKIP][3] ([fdo#109271] / [i915#4613]) +3 similar issues
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/fi-bxt-dsi/igt@gem_lmem_swapping@parallel-random-engines.html
* igt@gem_lmem_swapping@random-engines:
- fi-icl-u2: NOTRUN -> [SKIP][4] ([i915#4613]) +3 similar issues
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/fi-icl-u2/igt@gem_lmem_swapping@random-engines.html
* igt@gem_tiled_blits@basic:
- fi-bxt-dsi: NOTRUN -> [SKIP][5] ([fdo#109271]) +12 similar issues
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/fi-bxt-dsi/igt@gem_tiled_blits@basic.html
* igt@i915_selftest@live@requests:
- fi-blb-e6850: [PASS][6] -> [DMESG-FAIL][7] ([i915#4528])
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/fi-blb-e6850/igt@i915_selftest@live@requests.html
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/fi-blb-e6850/igt@i915_selftest@live@requests.html
* igt@i915_suspend@basic-s3-without-i915:
- fi-icl-u2: NOTRUN -> [SKIP][8] ([i915#5903])
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/fi-icl-u2/igt@i915_suspend@basic-s3-without-i915.html
* igt@kms_chamelium@common-hpd-after-suspend:
- fi-hsw-g3258: NOTRUN -> [SKIP][9] ([fdo#109271] / [fdo#111827])
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/fi-hsw-g3258/igt@kms_chamelium@common-hpd-after-suspend.html
- fi-pnv-d510: NOTRUN -> [SKIP][10] ([fdo#109271])
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/fi-pnv-d510/igt@kms_chamelium@common-hpd-after-suspend.html
- fi-bdw-5557u: NOTRUN -> [SKIP][11] ([fdo#109271] / [fdo#111827])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/fi-bdw-5557u/igt@kms_chamelium@common-hpd-after-suspend.html
* igt@kms_chamelium@hdmi-edid-read:
- fi-bxt-dsi: NOTRUN -> [SKIP][12] ([fdo#109271] / [fdo#111827]) +8 similar issues
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/fi-bxt-dsi/igt@kms_chamelium@hdmi-edid-read.html
* igt@kms_chamelium@hdmi-hpd-fast:
- fi-icl-u2: NOTRUN -> [SKIP][13] ([fdo#111827]) +8 similar issues
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/fi-icl-u2/igt@kms_chamelium@hdmi-hpd-fast.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor:
- fi-icl-u2: NOTRUN -> [SKIP][14] ([i915#4103])
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/fi-icl-u2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor.html
* igt@kms_force_connector_basic@force-connector-state:
- fi-icl-u2: NOTRUN -> [WARN][15] ([i915#6008])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/fi-icl-u2/igt@kms_force_connector_basic@force-connector-state.html
* igt@kms_force_connector_basic@force-load-detect:
- fi-icl-u2: NOTRUN -> [SKIP][16] ([fdo#109285])
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/fi-icl-u2/igt@kms_force_connector_basic@force-load-detect.html
* igt@kms_setmode@basic-clone-single-crtc:
- fi-icl-u2: NOTRUN -> [SKIP][17] ([i915#3555])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/fi-icl-u2/igt@kms_setmode@basic-clone-single-crtc.html
* igt@prime_vgem@basic-userptr:
- fi-icl-u2: NOTRUN -> [SKIP][18] ([fdo#109295] / [i915#3301])
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/fi-icl-u2/igt@prime_vgem@basic-userptr.html
#### Possible fixes ####
* igt@fbdev@read:
- {bat-rpls-2}: [SKIP][19] ([i915#2582]) -> [PASS][20] +4 similar issues
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/bat-rpls-2/igt@fbdev@read.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/bat-rpls-2/igt@fbdev@read.html
* igt@i915_selftest@live@hangcheck:
- fi-hsw-g3258: [INCOMPLETE][21] ([i915#4785]) -> [PASS][22]
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/fi-hsw-g3258/igt@i915_selftest@live@hangcheck.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/fi-hsw-g3258/igt@i915_selftest@live@hangcheck.html
* igt@i915_selftest@live@requests:
- fi-pnv-d510: [DMESG-FAIL][23] ([i915#4528]) -> [PASS][24]
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/fi-pnv-d510/igt@i915_selftest@live@requests.html
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/fi-pnv-d510/igt@i915_selftest@live@requests.html
* igt@i915_suspend@basic-s3-without-i915:
- fi-bdw-5557u: [INCOMPLETE][25] ([i915#146]) -> [PASS][26]
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/fi-bdw-5557u/igt@i915_suspend@basic-s3-without-i915.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/fi-bdw-5557u/igt@i915_suspend@basic-s3-without-i915.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
[fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
[fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
[i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
[i915#1155]: https://gitlab.freedesktop.org/drm/intel/issues/1155
[i915#146]: https://gitlab.freedesktop.org/drm/intel/issues/146
[i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
[i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
[i915#2867]: https://gitlab.freedesktop.org/drm/intel/issues/2867
[i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
[i915#3301]: https://gitlab.freedesktop.org/drm/intel/issues/3301
[i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
[i915#3595]: https://gitlab.freedesktop.org/drm/intel/issues/3595
[i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
[i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
[i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
[i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
[i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
[i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
[i915#4215]: https://gitlab.freedesktop.org/drm/intel/issues/4215
[i915#4528]: https://gitlab.freedesktop.org/drm/intel/issues/4528
[i915#4579]: https://gitlab.freedesktop.org/drm/intel/issues/4579
[i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
[i915#4785]: https://gitlab.freedesktop.org/drm/intel/issues/4785
[i915#4873]: https://gitlab.freedesktop.org/drm/intel/issues/4873
[i915#5174]: https://gitlab.freedesktop.org/drm/intel/issues/5174
[i915#5190]: https://gitlab.freedesktop.org/drm/intel/issues/5190
[i915#5274]: https://gitlab.freedesktop.org/drm/intel/issues/5274
[i915#5354]: https://gitlab.freedesktop.org/drm/intel/issues/5354
[i915#5763]: https://gitlab.freedesktop.org/drm/intel/issues/5763
[i915#5903]: https://gitlab.freedesktop.org/drm/intel/issues/5903
[i915#6008]: https://gitlab.freedesktop.org/drm/intel/issues/6008
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_6586 -> IGTPW_7529
CI-20190529: 20190529
CI_DRM_11900: 5218ea24682b8edb1d629323dce5c88a44e225b0 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_7529: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/index.html
IGT_6586: 0e5931f66eb283ba404b07394840b8e0b0c5e621 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/index.html
[-- Attachment #2: Type: text/html, Size: 9501 bytes --]
^ permalink raw reply [flat|nested] 19+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for tools/intel_vbt_decode: Improve VBT decoder
2022-07-15 20:25 [igt-dev] [PATCH i-g-t 00/14] tools/intel_vbt_decode: Improve VBT decoder Ville Syrjala
` (14 preceding siblings ...)
2022-07-16 17:08 ` [igt-dev] ✓ Fi.CI.BAT: success for tools/intel_vbt_decode: Improve VBT decoder Patchwork
@ 2022-07-16 19:57 ` Patchwork
15 siblings, 0 replies; 19+ messages in thread
From: Patchwork @ 2022-07-16 19:57 UTC (permalink / raw)
To: Ville Syrjala; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 48011 bytes --]
== Series Details ==
Series: tools/intel_vbt_decode: Improve VBT decoder
URL : https://patchwork.freedesktop.org/series/106398/
State : success
== Summary ==
CI Bug Log - changes from IGT_6586_full -> IGTPW_7529_full
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/index.html
Participating hosts (10 -> 9)
------------------------------
Missing (1): shard-dg1
Known issues
------------
Here are the changes found in IGTPW_7529_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_ctx_persistence@engines-mixed:
- shard-snb: NOTRUN -> [SKIP][1] ([fdo#109271] / [i915#1099])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-snb5/igt@gem_ctx_persistence@engines-mixed.html
* igt@gem_exec_fair@basic-none-solo:
- shard-snb: NOTRUN -> [SKIP][2] ([fdo#109271]) +74 similar issues
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-snb4/igt@gem_exec_fair@basic-none-solo.html
* igt@gem_exec_fair@basic-none-solo@rcs0:
- shard-apl: NOTRUN -> [FAIL][3] ([i915#2842])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-apl1/igt@gem_exec_fair@basic-none-solo@rcs0.html
- shard-tglb: NOTRUN -> [FAIL][4] ([i915#2842])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb5/igt@gem_exec_fair@basic-none-solo@rcs0.html
- shard-glk: NOTRUN -> [FAIL][5] ([i915#2842])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-glk7/igt@gem_exec_fair@basic-none-solo@rcs0.html
- shard-iclb: NOTRUN -> [FAIL][6] ([i915#2842])
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb4/igt@gem_exec_fair@basic-none-solo@rcs0.html
- shard-kbl: NOTRUN -> [FAIL][7] ([i915#2842])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-kbl4/igt@gem_exec_fair@basic-none-solo@rcs0.html
* igt@gem_exec_fair@basic-none@rcs0:
- shard-kbl: [PASS][8] -> [FAIL][9] ([i915#2842]) +1 similar issue
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-kbl6/igt@gem_exec_fair@basic-none@rcs0.html
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-kbl1/igt@gem_exec_fair@basic-none@rcs0.html
* igt@gem_exec_fair@basic-pace-share@rcs0:
- shard-glk: [PASS][10] -> [FAIL][11] ([i915#2842])
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-glk9/igt@gem_exec_fair@basic-pace-share@rcs0.html
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-glk8/igt@gem_exec_fair@basic-pace-share@rcs0.html
- shard-tglb: [PASS][12] -> [FAIL][13] ([i915#2842])
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-tglb7/igt@gem_exec_fair@basic-pace-share@rcs0.html
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb7/igt@gem_exec_fair@basic-pace-share@rcs0.html
* igt@gem_exec_fair@basic-pace@vecs0:
- shard-iclb: [PASS][14] -> [FAIL][15] ([i915#2842]) +1 similar issue
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-iclb4/igt@gem_exec_fair@basic-pace@vecs0.html
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb4/igt@gem_exec_fair@basic-pace@vecs0.html
* igt@gem_huc_copy@huc-copy:
- shard-tglb: [PASS][16] -> [SKIP][17] ([i915#2190])
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-tglb1/igt@gem_huc_copy@huc-copy.html
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb7/igt@gem_huc_copy@huc-copy.html
* igt@gem_lmem_swapping@heavy-verify-multi:
- shard-apl: NOTRUN -> [SKIP][18] ([fdo#109271] / [i915#4613]) +1 similar issue
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-apl6/igt@gem_lmem_swapping@heavy-verify-multi.html
- shard-tglb: NOTRUN -> [SKIP][19] ([i915#4613])
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb6/igt@gem_lmem_swapping@heavy-verify-multi.html
- shard-glk: NOTRUN -> [SKIP][20] ([fdo#109271] / [i915#4613])
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-glk9/igt@gem_lmem_swapping@heavy-verify-multi.html
- shard-iclb: NOTRUN -> [SKIP][21] ([i915#4613])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb1/igt@gem_lmem_swapping@heavy-verify-multi.html
- shard-kbl: NOTRUN -> [SKIP][22] ([fdo#109271] / [i915#4613]) +1 similar issue
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-kbl6/igt@gem_lmem_swapping@heavy-verify-multi.html
* igt@gem_ppgtt@blt-vs-render-ctx0:
- shard-snb: [PASS][23] -> [DMESG-FAIL][24] ([i915#4998])
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-snb4/igt@gem_ppgtt@blt-vs-render-ctx0.html
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-snb7/igt@gem_ppgtt@blt-vs-render-ctx0.html
* igt@gem_pxp@fail-invalid-protected-context:
- shard-tglb: NOTRUN -> [SKIP][25] ([i915#4270])
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb3/igt@gem_pxp@fail-invalid-protected-context.html
- shard-iclb: NOTRUN -> [SKIP][26] ([i915#4270])
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb7/igt@gem_pxp@fail-invalid-protected-context.html
* igt@gem_render_copy@yf-tiled-mc-ccs-to-vebox-y-tiled:
- shard-iclb: NOTRUN -> [SKIP][27] ([i915#768])
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb5/igt@gem_render_copy@yf-tiled-mc-ccs-to-vebox-y-tiled.html
* igt@gem_softpin@evict-single-offset:
- shard-apl: NOTRUN -> [FAIL][28] ([i915#4171])
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-apl3/igt@gem_softpin@evict-single-offset.html
- shard-glk: NOTRUN -> [FAIL][29] ([i915#4171])
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-glk1/igt@gem_softpin@evict-single-offset.html
- shard-kbl: NOTRUN -> [FAIL][30] ([i915#4171])
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-kbl6/igt@gem_softpin@evict-single-offset.html
* igt@gem_spin_batch@engines@bcs0:
- shard-apl: [PASS][31] -> [FAIL][32] ([i915#2898])
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-apl4/igt@gem_spin_batch@engines@bcs0.html
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-apl8/igt@gem_spin_batch@engines@bcs0.html
* igt@i915_pm_dc@dc6-psr:
- shard-iclb: [PASS][33] -> [FAIL][34] ([i915#454])
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-iclb6/igt@i915_pm_dc@dc6-psr.html
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb6/igt@i915_pm_dc@dc6-psr.html
* igt@i915_query@query-topology-unsupported:
- shard-tglb: NOTRUN -> [SKIP][35] ([fdo#109302])
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb7/igt@i915_query@query-topology-unsupported.html
- shard-iclb: NOTRUN -> [SKIP][36] ([fdo#109302])
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb8/igt@i915_query@query-topology-unsupported.html
* igt@kms_big_fb@4-tiled-32bpp-rotate-90:
- shard-apl: NOTRUN -> [SKIP][37] ([fdo#109271]) +102 similar issues
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-apl2/igt@kms_big_fb@4-tiled-32bpp-rotate-90.html
- shard-tglb: NOTRUN -> [SKIP][38] ([i915#5286]) +1 similar issue
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb8/igt@kms_big_fb@4-tiled-32bpp-rotate-90.html
* igt@kms_big_fb@4-tiled-64bpp-rotate-180:
- shard-iclb: NOTRUN -> [SKIP][39] ([i915#5286]) +1 similar issue
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb1/igt@kms_big_fb@4-tiled-64bpp-rotate-180.html
* igt@kms_big_fb@yf-tiled-32bpp-rotate-270:
- shard-tglb: NOTRUN -> [SKIP][40] ([fdo#111615])
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb7/igt@kms_big_fb@yf-tiled-32bpp-rotate-270.html
* igt@kms_ccs@pipe-a-bad-aux-stride-yf_tiled_ccs:
- shard-tglb: NOTRUN -> [SKIP][41] ([fdo#111615] / [i915#3689]) +1 similar issue
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb5/igt@kms_ccs@pipe-a-bad-aux-stride-yf_tiled_ccs.html
* igt@kms_ccs@pipe-a-crc-primary-basic-4_tiled_dg2_rc_ccs_cc:
- shard-tglb: NOTRUN -> [SKIP][42] ([i915#6095]) +1 similar issue
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb6/igt@kms_ccs@pipe-a-crc-primary-basic-4_tiled_dg2_rc_ccs_cc.html
* igt@kms_ccs@pipe-b-bad-rotation-90-y_tiled_gen12_rc_ccs_cc:
- shard-glk: NOTRUN -> [SKIP][43] ([fdo#109271] / [i915#3886])
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-glk2/igt@kms_ccs@pipe-b-bad-rotation-90-y_tiled_gen12_rc_ccs_cc.html
- shard-iclb: NOTRUN -> [SKIP][44] ([fdo#109278] / [i915#3886])
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb3/igt@kms_ccs@pipe-b-bad-rotation-90-y_tiled_gen12_rc_ccs_cc.html
* igt@kms_ccs@pipe-c-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc:
- shard-kbl: NOTRUN -> [SKIP][45] ([fdo#109271] / [i915#3886]) +4 similar issues
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-kbl7/igt@kms_ccs@pipe-c-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc.html
- shard-apl: NOTRUN -> [SKIP][46] ([fdo#109271] / [i915#3886]) +2 similar issues
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-apl1/igt@kms_ccs@pipe-c-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc.html
* igt@kms_ccs@pipe-c-crc-primary-basic-4_tiled_dg2_mc_ccs:
- shard-tglb: NOTRUN -> [SKIP][47] ([i915#3689] / [i915#6095])
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb5/igt@kms_ccs@pipe-c-crc-primary-basic-4_tiled_dg2_mc_ccs.html
* igt@kms_ccs@pipe-c-crc-sprite-planes-basic-y_tiled_ccs:
- shard-tglb: NOTRUN -> [SKIP][48] ([i915#3689]) +2 similar issues
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb6/igt@kms_ccs@pipe-c-crc-sprite-planes-basic-y_tiled_ccs.html
* igt@kms_ccs@pipe-d-bad-aux-stride-y_tiled_gen12_mc_ccs:
- shard-iclb: NOTRUN -> [SKIP][49] ([fdo#109278]) +8 similar issues
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb4/igt@kms_ccs@pipe-d-bad-aux-stride-y_tiled_gen12_mc_ccs.html
* igt@kms_chamelium@vga-hpd:
- shard-apl: NOTRUN -> [SKIP][50] ([fdo#109271] / [fdo#111827]) +4 similar issues
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-apl4/igt@kms_chamelium@vga-hpd.html
* igt@kms_color_chamelium@pipe-a-ctm-max:
- shard-kbl: NOTRUN -> [SKIP][51] ([fdo#109271] / [fdo#111827]) +6 similar issues
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-kbl4/igt@kms_color_chamelium@pipe-a-ctm-max.html
- shard-snb: NOTRUN -> [SKIP][52] ([fdo#109271] / [fdo#111827]) +1 similar issue
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-snb6/igt@kms_color_chamelium@pipe-a-ctm-max.html
- shard-tglb: NOTRUN -> [SKIP][53] ([fdo#109284] / [fdo#111827]) +1 similar issue
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb2/igt@kms_color_chamelium@pipe-a-ctm-max.html
- shard-glk: NOTRUN -> [SKIP][54] ([fdo#109271] / [fdo#111827]) +1 similar issue
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-glk8/igt@kms_color_chamelium@pipe-a-ctm-max.html
* igt@kms_color_chamelium@pipe-c-ctm-limited-range:
- shard-iclb: NOTRUN -> [SKIP][55] ([fdo#109284] / [fdo#111827]) +1 similar issue
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb4/igt@kms_color_chamelium@pipe-c-ctm-limited-range.html
* igt@kms_content_protection@legacy:
- shard-apl: NOTRUN -> [TIMEOUT][56] ([i915#1319])
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-apl2/igt@kms_content_protection@legacy.html
- shard-tglb: NOTRUN -> [SKIP][57] ([i915#1063])
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb3/igt@kms_content_protection@legacy.html
- shard-iclb: NOTRUN -> [SKIP][58] ([fdo#109300] / [fdo#111066])
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb6/igt@kms_content_protection@legacy.html
* igt@kms_cursor_crc@cursor-suspend@pipe-a-dp-1:
- shard-kbl: [PASS][59] -> [DMESG-WARN][60] ([i915#180]) +7 similar issues
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-kbl6/igt@kms_cursor_crc@cursor-suspend@pipe-a-dp-1.html
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-kbl4/igt@kms_cursor_crc@cursor-suspend@pipe-a-dp-1.html
* igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions-varying-size:
- shard-glk: [PASS][61] -> [FAIL][62] ([i915#2346])
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-glk3/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions-varying-size.html
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-glk5/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions-varying-size.html
* igt@kms_draw_crc@draw-method-xrgb8888-mmap-wc-4tiled:
- shard-tglb: NOTRUN -> [SKIP][63] ([i915#5287]) +1 similar issue
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb2/igt@kms_draw_crc@draw-method-xrgb8888-mmap-wc-4tiled.html
- shard-iclb: NOTRUN -> [SKIP][64] ([i915#5287]) +1 similar issue
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb6/igt@kms_draw_crc@draw-method-xrgb8888-mmap-wc-4tiled.html
* igt@kms_flip@2x-flip-vs-fences-interruptible:
- shard-tglb: NOTRUN -> [SKIP][65] ([fdo#109274] / [fdo#111825] / [i915#3637]) +1 similar issue
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb3/igt@kms_flip@2x-flip-vs-fences-interruptible.html
- shard-iclb: NOTRUN -> [SKIP][66] ([fdo#109274]) +1 similar issue
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb7/igt@kms_flip@2x-flip-vs-fences-interruptible.html
* igt@kms_flip@flip-vs-suspend@c-dp1:
- shard-apl: [PASS][67] -> [DMESG-WARN][68] ([i915#180]) +3 similar issues
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-apl2/igt@kms_flip@flip-vs-suspend@c-dp1.html
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-apl1/igt@kms_flip@flip-vs-suspend@c-dp1.html
* igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling@pipe-a-valid-mode:
- shard-iclb: NOTRUN -> [SKIP][69] ([i915#2672]) +7 similar issues
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb1/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling@pipe-a-valid-mode:
- shard-tglb: NOTRUN -> [SKIP][70] ([i915#2672])
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb8/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-downscaling@pipe-a-default-mode:
- shard-iclb: NOTRUN -> [SKIP][71] ([i915#3555])
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb2/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-downscaling@pipe-a-default-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling@pipe-a-valid-mode:
- shard-iclb: NOTRUN -> [SKIP][72] ([i915#2672] / [i915#3555])
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb5/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling@pipe-a-valid-mode.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-pwrite:
- shard-tglb: NOTRUN -> [SKIP][73] ([fdo#109280] / [fdo#111825]) +10 similar issues
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb8/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-pwrite.html
* igt@kms_frontbuffer_tracking@fbcpsr-tiling-linear:
- shard-tglb: NOTRUN -> [FAIL][74] ([i915#160]) +2 similar issues
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb1/igt@kms_frontbuffer_tracking@fbcpsr-tiling-linear.html
* igt@kms_frontbuffer_tracking@psr-1p-primscrn-pri-indfb-draw-mmap-cpu:
- shard-glk: NOTRUN -> [SKIP][75] ([fdo#109271]) +40 similar issues
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-glk5/igt@kms_frontbuffer_tracking@psr-1p-primscrn-pri-indfb-draw-mmap-cpu.html
* igt@kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-move:
- shard-iclb: NOTRUN -> [SKIP][76] ([fdo#109280]) +10 similar issues
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb1/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-move.html
* igt@kms_hdr@bpc-switch@pipe-a-dp-1:
- shard-kbl: NOTRUN -> [FAIL][77] ([i915#1188])
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-kbl4/igt@kms_hdr@bpc-switch@pipe-a-dp-1.html
* igt@kms_plane_alpha_blend@pipe-a-alpha-opaque-fb:
- shard-kbl: NOTRUN -> [FAIL][78] ([fdo#108145] / [i915#265])
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-kbl6/igt@kms_plane_alpha_blend@pipe-a-alpha-opaque-fb.html
- shard-apl: NOTRUN -> [FAIL][79] ([fdo#108145] / [i915#265])
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-apl2/igt@kms_plane_alpha_blend@pipe-a-alpha-opaque-fb.html
* igt@kms_plane_scaling@plane-downscale-with-pixel-format-factor-0-5@pipe-a-edp-1:
- shard-iclb: [PASS][80] -> [SKIP][81] ([i915#5176]) +2 similar issues
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-iclb7/igt@kms_plane_scaling@plane-downscale-with-pixel-format-factor-0-5@pipe-a-edp-1.html
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb2/igt@kms_plane_scaling@plane-downscale-with-pixel-format-factor-0-5@pipe-a-edp-1.html
* igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area:
- shard-apl: NOTRUN -> [SKIP][82] ([fdo#109271] / [i915#658])
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-apl2/igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area.html
- shard-kbl: NOTRUN -> [SKIP][83] ([fdo#109271] / [i915#658])
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-kbl7/igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area.html
* igt@kms_psr@psr2_sprite_mmap_gtt:
- shard-iclb: NOTRUN -> [SKIP][84] ([fdo#109441])
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb7/igt@kms_psr@psr2_sprite_mmap_gtt.html
- shard-tglb: NOTRUN -> [FAIL][85] ([i915#132] / [i915#3467])
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb5/igt@kms_psr@psr2_sprite_mmap_gtt.html
* igt@kms_psr@psr2_suspend:
- shard-iclb: [PASS][86] -> [SKIP][87] ([fdo#109441]) +2 similar issues
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-iclb2/igt@kms_psr@psr2_suspend.html
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb7/igt@kms_psr@psr2_suspend.html
* igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180:
- shard-tglb: NOTRUN -> [SKIP][88] ([fdo#111615] / [i915#5289])
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb5/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180.html
* igt@kms_writeback@writeback-check-output:
- shard-apl: NOTRUN -> [SKIP][89] ([fdo#109271] / [i915#2437])
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-apl3/igt@kms_writeback@writeback-check-output.html
- shard-tglb: NOTRUN -> [SKIP][90] ([i915#2437])
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb7/igt@kms_writeback@writeback-check-output.html
- shard-glk: NOTRUN -> [SKIP][91] ([fdo#109271] / [i915#2437])
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-glk1/igt@kms_writeback@writeback-check-output.html
- shard-iclb: NOTRUN -> [SKIP][92] ([i915#2437])
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb2/igt@kms_writeback@writeback-check-output.html
- shard-kbl: NOTRUN -> [SKIP][93] ([fdo#109271] / [i915#2437])
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-kbl6/igt@kms_writeback@writeback-check-output.html
* igt@perf@gen12-mi-rpc:
- shard-iclb: NOTRUN -> [SKIP][94] ([fdo#109289])
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb1/igt@perf@gen12-mi-rpc.html
* igt@prime_nv_pcopy@test2:
- shard-kbl: NOTRUN -> [SKIP][95] ([fdo#109271]) +144 similar issues
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-kbl4/igt@prime_nv_pcopy@test2.html
* igt@prime_nv_test@nv_write_i915_cpu_mmap_read:
- shard-tglb: NOTRUN -> [SKIP][96] ([fdo#109291])
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb2/igt@prime_nv_test@nv_write_i915_cpu_mmap_read.html
- shard-iclb: NOTRUN -> [SKIP][97] ([fdo#109291])
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb6/igt@prime_nv_test@nv_write_i915_cpu_mmap_read.html
* igt@sysfs_clients@split-10:
- shard-iclb: NOTRUN -> [SKIP][98] ([i915#2994])
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb5/igt@sysfs_clients@split-10.html
- shard-kbl: NOTRUN -> [SKIP][99] ([fdo#109271] / [i915#2994]) +1 similar issue
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-kbl6/igt@sysfs_clients@split-10.html
- shard-apl: NOTRUN -> [SKIP][100] ([fdo#109271] / [i915#2994])
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-apl4/igt@sysfs_clients@split-10.html
- shard-tglb: NOTRUN -> [SKIP][101] ([i915#2994])
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb8/igt@sysfs_clients@split-10.html
- shard-glk: NOTRUN -> [SKIP][102] ([fdo#109271] / [i915#2994])
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-glk9/igt@sysfs_clients@split-10.html
* igt@tools_test@sysfs_l3_parity:
- shard-tglb: NOTRUN -> [SKIP][103] ([fdo#109307])
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb3/igt@tools_test@sysfs_l3_parity.html
- shard-iclb: NOTRUN -> [SKIP][104] ([fdo#109307])
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb3/igt@tools_test@sysfs_l3_parity.html
#### Possible fixes ####
* igt@fbdev@write:
- {shard-rkl}: [SKIP][105] ([i915#2582]) -> [PASS][106]
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-rkl-2/igt@fbdev@write.html
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-rkl-2/igt@fbdev@write.html
* igt@gem_ctx_exec@basic-nohangcheck:
- shard-tglb: [FAIL][107] ([i915#6268]) -> [PASS][108]
[107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-tglb5/igt@gem_ctx_exec@basic-nohangcheck.html
[108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb6/igt@gem_ctx_exec@basic-nohangcheck.html
* igt@gem_ctx_persistence@legacy-engines-hang@blt:
- {shard-rkl}: [SKIP][109] ([i915#6252]) -> [PASS][110]
[109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-rkl-5/igt@gem_ctx_persistence@legacy-engines-hang@blt.html
[110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-rkl-2/igt@gem_ctx_persistence@legacy-engines-hang@blt.html
* igt@gem_eio@in-flight-immediate:
- shard-tglb: [TIMEOUT][111] ([i915#3063]) -> [PASS][112]
[111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-tglb8/igt@gem_eio@in-flight-immediate.html
[112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb1/igt@gem_eio@in-flight-immediate.html
* igt@gem_exec_fair@basic-none-share@rcs0:
- {shard-tglu}: [FAIL][113] ([i915#2842]) -> [PASS][114]
[113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-tglu-4/igt@gem_exec_fair@basic-none-share@rcs0.html
[114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglu-2/igt@gem_exec_fair@basic-none-share@rcs0.html
- shard-tglb: [FAIL][115] ([i915#2842]) -> [PASS][116]
[115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-tglb3/igt@gem_exec_fair@basic-none-share@rcs0.html
[116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb5/igt@gem_exec_fair@basic-none-share@rcs0.html
- shard-glk: [FAIL][117] ([i915#2842]) -> [PASS][118]
[117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-glk1/igt@gem_exec_fair@basic-none-share@rcs0.html
[118]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-glk5/igt@gem_exec_fair@basic-none-share@rcs0.html
* igt@gem_exec_fair@basic-pace-solo@rcs0:
- shard-apl: [FAIL][119] ([i915#2842]) -> [PASS][120]
[119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-apl8/igt@gem_exec_fair@basic-pace-solo@rcs0.html
[120]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-apl3/igt@gem_exec_fair@basic-pace-solo@rcs0.html
* igt@gem_exec_fair@basic-pace@rcs0:
- {shard-rkl}: [FAIL][121] ([i915#2842]) -> [PASS][122] +1 similar issue
[121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-rkl-1/igt@gem_exec_fair@basic-pace@rcs0.html
[122]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-rkl-5/igt@gem_exec_fair@basic-pace@rcs0.html
* igt@gem_exec_fair@basic-pace@vecs0:
- shard-kbl: [FAIL][123] ([i915#2842]) -> [PASS][124]
[123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-kbl6/igt@gem_exec_fair@basic-pace@vecs0.html
[124]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-kbl4/igt@gem_exec_fair@basic-pace@vecs0.html
* igt@gem_exec_fair@basic-throttle@rcs0:
- shard-iclb: [FAIL][125] ([i915#2849]) -> [PASS][126]
[125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-iclb7/igt@gem_exec_fair@basic-throttle@rcs0.html
[126]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb1/igt@gem_exec_fair@basic-throttle@rcs0.html
* igt@gem_exec_flush@basic-batch-kernel-default-cmd:
- {shard-rkl}: [SKIP][127] ([fdo#109313]) -> [PASS][128]
[127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-rkl-2/igt@gem_exec_flush@basic-batch-kernel-default-cmd.html
[128]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-rkl-5/igt@gem_exec_flush@basic-batch-kernel-default-cmd.html
* igt@gem_exec_nop@basic-sequential:
- shard-glk: [DMESG-WARN][129] ([i915#118]) -> [PASS][130]
[129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-glk2/igt@gem_exec_nop@basic-sequential.html
[130]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-glk1/igt@gem_exec_nop@basic-sequential.html
* igt@gem_exec_reloc@basic-write-read-active:
- {shard-rkl}: [SKIP][131] ([i915#3281]) -> [PASS][132] +8 similar issues
[131]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-rkl-6/igt@gem_exec_reloc@basic-write-read-active.html
[132]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-rkl-5/igt@gem_exec_reloc@basic-write-read-active.html
* igt@gem_readwrite@write-bad-handle:
- {shard-rkl}: [SKIP][133] ([i915#3282]) -> [PASS][134] +3 similar issues
[133]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-rkl-1/igt@gem_readwrite@write-bad-handle.html
[134]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-rkl-5/igt@gem_readwrite@write-bad-handle.html
* igt@gen9_exec_parse@secure-batches:
- {shard-rkl}: [SKIP][135] ([i915#2527]) -> [PASS][136] +4 similar issues
[135]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-rkl-1/igt@gen9_exec_parse@secure-batches.html
[136]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-rkl-5/igt@gen9_exec_parse@secure-batches.html
* igt@i915_pm_dc@dc9-dpms:
- {shard-rkl}: [SKIP][137] ([i915#3361]) -> [PASS][138]
[137]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-rkl-5/igt@i915_pm_dc@dc9-dpms.html
[138]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-rkl-4/igt@i915_pm_dc@dc9-dpms.html
* igt@i915_suspend@fence-restore-tiled2untiled:
- shard-kbl: [DMESG-WARN][139] ([i915#180]) -> [PASS][140]
[139]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-kbl4/igt@i915_suspend@fence-restore-tiled2untiled.html
[140]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-kbl6/igt@i915_suspend@fence-restore-tiled2untiled.html
* igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions:
- shard-glk: [FAIL][141] ([i915#2346]) -> [PASS][142]
[141]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-glk3/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions.html
[142]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-glk5/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions.html
* igt@kms_cursor_legacy@flip-vs-cursor@toggle:
- shard-iclb: [FAIL][143] ([i915#2346]) -> [PASS][144] +3 similar issues
[143]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-iclb7/igt@kms_cursor_legacy@flip-vs-cursor@toggle.html
[144]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb5/igt@kms_cursor_legacy@flip-vs-cursor@toggle.html
* igt@kms_draw_crc@draw-method-rgb565-mmap-cpu-untiled:
- shard-glk: [FAIL][145] ([i915#5160]) -> [PASS][146]
[145]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-glk3/igt@kms_draw_crc@draw-method-rgb565-mmap-cpu-untiled.html
[146]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-glk1/igt@kms_draw_crc@draw-method-rgb565-mmap-cpu-untiled.html
* igt@kms_draw_crc@draw-method-rgb565-render-ytiled:
- shard-glk: [DMESG-FAIL][147] ([i915#118] / [i915#1888]) -> [PASS][148] +1 similar issue
[147]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-glk7/igt@kms_draw_crc@draw-method-rgb565-render-ytiled.html
[148]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-glk8/igt@kms_draw_crc@draw-method-rgb565-render-ytiled.html
* igt@kms_flip@flip-vs-suspend@a-dp1:
- shard-apl: [DMESG-WARN][149] ([i915#180]) -> [PASS][150] +2 similar issues
[149]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-apl2/igt@kms_flip@flip-vs-suspend@a-dp1.html
[150]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-apl1/igt@kms_flip@flip-vs-suspend@a-dp1.html
* igt@kms_hdr@bpc-switch-dpms@pipe-a-dp-1:
- shard-kbl: [FAIL][151] ([i915#1188]) -> [PASS][152]
[151]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-kbl7/igt@kms_hdr@bpc-switch-dpms@pipe-a-dp-1.html
[152]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-kbl4/igt@kms_hdr@bpc-switch-dpms@pipe-a-dp-1.html
* igt@kms_plane_scaling@planes-downscale-factor-0-5@pipe-a-edp-1:
- shard-iclb: [SKIP][153] ([i915#5235]) -> [PASS][154] +5 similar issues
[153]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-iclb2/igt@kms_plane_scaling@planes-downscale-factor-0-5@pipe-a-edp-1.html
[154]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb7/igt@kms_plane_scaling@planes-downscale-factor-0-5@pipe-a-edp-1.html
* igt@kms_psr@psr2_cursor_blt:
- shard-iclb: [SKIP][155] ([fdo#109441]) -> [PASS][156] +1 similar issue
[155]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-iclb4/igt@kms_psr@psr2_cursor_blt.html
[156]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb2/igt@kms_psr@psr2_cursor_blt.html
* igt@kms_rotation_crc@multiplane-rotation-cropping-top:
- shard-glk: [FAIL][157] ([i915#1888]) -> [PASS][158] +1 similar issue
[157]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-glk3/igt@kms_rotation_crc@multiplane-rotation-cropping-top.html
[158]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-glk3/igt@kms_rotation_crc@multiplane-rotation-cropping-top.html
* igt@perf@polling-parameterized:
- shard-iclb: [FAIL][159] ([i915#5639]) -> [PASS][160]
[159]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-iclb1/igt@perf@polling-parameterized.html
[160]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb6/igt@perf@polling-parameterized.html
* igt@prime_vgem@coherency-gtt:
- {shard-rkl}: [SKIP][161] ([fdo#109295] / [fdo#111656] / [i915#3708]) -> [PASS][162]
[161]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-rkl-1/igt@prime_vgem@coherency-gtt.html
[162]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-rkl-5/igt@prime_vgem@coherency-gtt.html
* igt@testdisplay:
- {shard-tglu}: [DMESG-WARN][163] ([i915#4941]) -> [PASS][164]
[163]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-tglu-2/igt@testdisplay.html
[164]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglu-1/igt@testdisplay.html
#### Warnings ####
* igt@gem_exec_balancer@parallel-ordering:
- shard-iclb: [FAIL][165] ([i915#6117]) -> [SKIP][166] ([i915#4525])
[165]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-iclb2/igt@gem_exec_balancer@parallel-ordering.html
[166]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb3/igt@gem_exec_balancer@parallel-ordering.html
* igt@kms_content_protection@mei_interface:
- shard-tglb: [SKIP][167] ([i915#1063]) -> [SKIP][168] ([fdo#109300])
[167]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-tglb2/igt@kms_content_protection@mei_interface.html
[168]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-tglb7/igt@kms_content_protection@mei_interface.html
- shard-iclb: [SKIP][169] ([fdo#109300] / [fdo#111066]) -> [SKIP][170] ([fdo#109300])
[169]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-iclb8/igt@kms_content_protection@mei_interface.html
[170]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb3/igt@kms_content_protection@mei_interface.html
* igt@kms_hdr@bpc-switch-suspend@pipe-a-dp-1:
- shard-kbl: [FAIL][171] ([i915#1188]) -> [DMESG-FAIL][172] ([i915#180])
[171]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-kbl1/igt@kms_hdr@bpc-switch-suspend@pipe-a-dp-1.html
[172]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-kbl7/igt@kms_hdr@bpc-switch-suspend@pipe-a-dp-1.html
* igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf:
- shard-iclb: [SKIP][173] ([i915#2920]) -> [SKIP][174] ([i915#658])
[173]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-iclb2/igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf.html
[174]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb4/igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf.html
* igt@kms_psr2_sf@cursor-plane-update-sf:
- shard-iclb: [SKIP][175] ([i915#2920]) -> [SKIP][176] ([fdo#111068] / [i915#658])
[175]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-iclb2/igt@kms_psr2_sf@cursor-plane-update-sf.html
[176]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb7/igt@kms_psr2_sf@cursor-plane-update-sf.html
* igt@kms_psr2_sf@overlay-plane-move-continuous-sf:
- shard-iclb: [SKIP][177] ([i915#658]) -> [SKIP][178] ([i915#2920])
[177]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-iclb4/igt@kms_psr2_sf@overlay-plane-move-continuous-sf.html
[178]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb2/igt@kms_psr2_sf@overlay-plane-move-continuous-sf.html
* igt@kms_psr2_sf@plane-move-sf-dmg-area:
- shard-iclb: [SKIP][179] ([fdo#111068] / [i915#658]) -> [SKIP][180] ([i915#2920])
[179]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-iclb5/igt@kms_psr2_sf@plane-move-sf-dmg-area.html
[180]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb2/igt@kms_psr2_sf@plane-move-sf-dmg-area.html
* igt@kms_psr2_su@page_flip-p010:
- shard-iclb: [SKIP][181] ([fdo#109642] / [fdo#111068] / [i915#658]) -> [FAIL][182] ([i915#5939])
[181]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-iclb3/igt@kms_psr2_su@page_flip-p010.html
[182]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-iclb2/igt@kms_psr2_su@page_flip-p010.html
* igt@runner@aborted:
- shard-apl: ([FAIL][183], [FAIL][184], [FAIL][185], [FAIL][186]) ([i915#180] / [i915#3002] / [i915#4312] / [i915#5257]) -> ([FAIL][187], [FAIL][188], [FAIL][189], [FAIL][190], [FAIL][191], [FAIL][192]) ([fdo#109271] / [i915#180] / [i915#3002] / [i915#4312] / [i915#5257])
[183]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-apl1/igt@runner@aborted.html
[184]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-apl7/igt@runner@aborted.html
[185]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-apl8/igt@runner@aborted.html
[186]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6586/shard-apl2/igt@runner@aborted.html
[187]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-apl8/igt@runner@aborted.html
[188]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-apl8/igt@runner@aborted.html
[189]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-apl1/igt@runner@aborted.html
[190]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-apl3/igt@runner@aborted.html
[191]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-apl8/igt@runner@aborted.html
[192]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/shard-apl7/igt@runner@aborted.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274
[fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
[fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
[fdo#109283]: https://bugs.freedesktop.org/show_bug.cgi?id=109283
[fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284
[fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
[fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
[fdo#109291]: https://bugs.freedesktop.org/show_bug.cgi?id=109291
[fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
[fdo#109300]: https://bugs.freedesktop.org/show_bug.cgi?id=109300
[fdo#109302]: https://bugs.freedesktop.org/show_bug.cgi?id=109302
[fdo#109307]: https://bugs.freedesktop.org/show_bug.cgi?id=109307
[fdo#109309]: https://bugs.freedesktop.org/show_bug.cgi?id=109309
[fdo#109312]: https://bugs.freedesktop.org/show_bug.cgi?id=109312
[fdo#109313]: https://bugs.freedesktop.org/show_bug.cgi?id=109313
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#109506]: https://bugs.freedesktop.org/show_bug.cgi?id=109506
[fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
[fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
[fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
[fdo#111066]: https://bugs.freedesktop.org/show_bug.cgi?id=111066
[fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
[fdo#111314]: https://bugs.freedesktop.org/show_bug.cgi?id=111314
[fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614
[fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
[fdo#111644]: https://bugs.freedesktop.org/show_bug.cgi?id=111644
[fdo#111656]: https://bugs.freedesktop.org/show_bug.cgi?id=111656
[fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
[fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
[i915#1063]: https://gitlab.freedesktop.org/drm/intel/issues/1063
[i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
[i915#1099]: https://gitlab.freedesktop.org/drm/intel/issues/1099
[i915#1155]: https://gitlab.freedesktop.org/drm/intel/issues/1155
[i915#118]: https://gitlab.freedesktop.org/drm/intel/issues/118
[i915#1188]: https://gitlab.freedesktop.org/drm/intel/issues/1188
[i915#1319]: https://gitlab.freedesktop.org/drm/intel/issues/1319
[i915#132]: https://gitlab.freedesktop.org/drm/intel/issues/132
[i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
[i915#160]: https://gitlab.freedesktop.org/drm/intel/issues/160
[i915#1769]: https://gitlab.freedesktop.org/drm/intel/issues/1769
[i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
[i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825
[i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839
[i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
[i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849
[i915#1888]: https://gitlab.freedesktop.org/drm/intel/issues/1888
[i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
[i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
[i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437
[i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527
[i915#2530]: https://gitlab.freedesktop.org/drm/intel/issues/2530
[i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
[i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265
[i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672
[i915#2681]: https://gitlab.freedesktop.org/drm/intel/issues/2681
[i915#2705]: https://gitlab.freedesktop.org/drm/intel/issues/2705
[i915#280]: https://gitlab.freedesktop.org/drm/intel/issues/280
[i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
[i915#2846]: https://gitlab.freedesktop.org/drm/intel/issues/2846
[i915#2849]: https://gitlab.freedesktop.org/drm/intel/issues/2849
[i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856
[i915#2898]: https://gitlab.freedesktop.org/drm/intel/issues/2898
[i915#2920]: https://gitlab.freedesktop.org/drm/intel/issues/2920
[i915#2994]: https://gitlab.freedesktop.org/drm/intel/issues/2994
[i915#3002]: https://gitlab.freedesktop.org/drm/intel/issues/3002
[i915#3012]: https://gitlab.freedesktop.org/drm/intel/issues/3012
[i915#3063]: https://gitlab.freedesktop.org/drm/intel/issues/3063
[i915#3116]: https://gitlab.freedesktop.org/drm/intel/issues/3116
[i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281
[i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
[i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
[i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
[i915#3299]: https://gitlab.freedesktop.org/drm/intel/issues/3299
[i915#3301]: https://gitlab.freedesktop.org/drm/intel/issues/3301
[i915#3323]: https://gitlab.freedesktop.org/drm/intel/issues/3323
[i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
[i915#3361]: https://gitlab.freedesktop.org/drm/intel/issues/3361
[i915#3467]: https://gitlab.freedesktop.org/drm/intel/issues/3467
[i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
[i915#3558]: https://gitlab.freedesktop.org/drm/intel/issues/3558
[i915#3591]: https://gitlab.freedesktop.org/drm/intel/issues/3591
[i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637
[i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638
[i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689
[i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
[i915#3734]: https://gitlab.freedesktop.org/drm/intel/issues/3734
[i915#3742]: https://gitlab.freedesktop.org/drm/intel/issues/3742
[i915#3828]: https://gitlab.freedesktop.org/drm/intel/issues/3828
[i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
[i915#3955]: https://gitlab.freedesktop.org/drm/intel/issues/3955
[i915#3966]: https://gitlab.freedesktop.org/drm/intel/issues/3966
[i915#4016]: https://gitlab.freedesktop.org/drm/intel/issues/4016
[i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070
[i915#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098
[i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
[i915#4171]: https://gitlab.freedesktop.org/drm/intel/issues/4171
[i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
[i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
[i915#4369]: https://gitlab.freedesktop.org/drm/intel/issues/4369
[i915#4387]: https://gitlab.freedesktop.org/drm/intel/issues/4387
[i915#4462]: https://gitlab.freedesktop.org/drm/intel/issues/4462
[i915#4525]: https://gitlab.freedesktop.org/drm/intel/issues/4525
[i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454
[i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
[i915#4941]: https://gitlab.freedesktop.org/drm/intel/issues/4941
[i915#4998]: https://gitlab.freedesktop.org/drm/intel/issues/4998
[i915#5160]: https://gitlab.freedesktop.org/drm/intel/issues/5160
[i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
[i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
[i915#5257]: https://gitlab.freedesktop.org/drm/intel/issues/5257
[i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
[i915#5287]: https://gitlab.freedesktop.org/drm/intel/issues/5287
[i915#5288]: https://gitlab.freedesktop.org/drm/intel/issues/5288
[i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289
[i915#5325]: https://gitlab.freedesktop.org/drm/intel/issues/5325
[i915#5327]: https://gitlab.freedesktop.org/drm/intel/issues/5327
[i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
[i915#5461]: https://gitlab.freedesktop.org/drm/intel/issues/5461
[i915#5639]: https://gitlab.freedesktop.org/drm/intel/issues/5639
[i915#5723]: https://gitlab.freedesktop.org/drm/intel/issues/5723
[i915#5939]: https://gitlab.freedesktop.org/drm/intel/issues/5939
[i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
[i915#6117]: https://gitlab.freedesktop.org/drm/intel/issues/6117
[i915#6227]: https://gitlab.freedesktop.org/drm/intel/issues/6227
[i915#6247]: https://gitlab.freedesktop.org/drm/intel/issues/6247
[i915#6248]: https://gitlab.freedesktop.org/drm/intel/issues/6248
[i915#6251]: https://gitlab.freedesktop.org/drm/intel/issues/6251
[i915#6252]: https://gitlab.freedesktop.org/drm/intel/issues/6252
[i915#6268]: https://gitlab.freedesktop.org/drm/intel/issues/6268
[i915#6335]: https://gitlab.freedesktop.org/drm/intel/issues/6335
[i915#6405]: https://gitlab.freedesktop.org/drm/intel/issues/6405
[i915#6412]: https://gitlab.freedesktop.org/drm/intel/issues/6412
[i915#6433]: https://gitlab.freedesktop.org/drm/intel/issues/6433
[i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
[i915#768]: https://gitlab.freedesktop.org/drm/intel/issues/768
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_6586 -> IGTPW_7529
CI-20190529: 20190529
CI_DRM_11900: 5218ea24682b8edb1d629323dce5c88a44e225b0 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_7529: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/index.html
IGT_6586: 0e5931f66eb283ba404b07394840b8e0b0c5e621 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7529/index.html
[-- Attachment #2: Type: text/html, Size: 55451 bytes --]
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 01/14] tools/intel_vbt_decode: Simplify fast link training lane count
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 01/14] tools/intel_vbt_decode: Simplify fast link training lane count Ville Syrjala
@ 2022-08-04 10:03 ` Jani Nikula
0 siblings, 0 replies; 19+ messages in thread
From: Jani Nikula @ 2022-08-04 10:03 UTC (permalink / raw)
To: Ville Syrjala, igt-dev
On Fri, 15 Jul 2022, Ville Syrjala <ville.syrjala@linux.intel.com> wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> Get rid of the pointless switch statement and decode the
> fast link training lane count as just <val>+1. We already
> do the same for the DSI lane count.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
> ---
> tools/intel_vbt_decode.c | 18 ++----------------
> 1 file changed, 2 insertions(+), 16 deletions(-)
>
> diff --git a/tools/intel_vbt_decode.c b/tools/intel_vbt_decode.c
> index 5494a34bdca3..1ed03745bd05 100644
> --- a/tools/intel_vbt_decode.c
> +++ b/tools/intel_vbt_decode.c
> @@ -1420,22 +1420,8 @@ static void dump_edp(struct context *context,
> edp->fast_link_params[i].rate);
> break;
> }
> - printf("\t\t\tlanes: ");
> - switch (edp->fast_link_params[i].lanes) {
> - case EDP_LANE_1:
> - printf("x1 mode\n");
> - break;
> - case EDP_LANE_2:
> - printf("x2 mode\n");
> - break;
> - case EDP_LANE_4:
> - printf("x4 mode\n");
> - break;
> - default:
> - printf("(unknown value %d)\n",
> - edp->fast_link_params[i].lanes);
> - break;
> - }
> + printf("\t\t\tlanes: X%d",
> + edp->fast_link_params[i].lanes + 1);
> printf("\t\t\tpre-emphasis: ");
> switch (edp->fast_link_params[i].preemphasis) {
> case EDP_PREEMPHASIS_NONE:
--
Jani Nikula, Intel Open Source Graphics Center
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 02/14] tools/intel_vbt_decode: Extract dp_vswing()/dp_preemph()
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 02/14] tools/intel_vbt_decode: Extract dp_vswing()/dp_preemph() Ville Syrjala
@ 2022-08-04 10:05 ` Jani Nikula
0 siblings, 0 replies; 19+ messages in thread
From: Jani Nikula @ 2022-08-04 10:05 UTC (permalink / raw)
To: Ville Syrjala, igt-dev
On Fri, 15 Jul 2022, Ville Syrjala <ville.syrjala@linux.intel.com> wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> A bunch of places need to decode the DP vswing/preemph values.
> Fortunately all of them use the the same format so we can
> extract this stuff into a few helpers.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> ---
> tools/intel_vbt_decode.c | 110 ++++++++++++---------------------------
> 1 file changed, 34 insertions(+), 76 deletions(-)
>
> diff --git a/tools/intel_vbt_decode.c b/tools/intel_vbt_decode.c
> index 1ed03745bd05..13e927edd17f 100644
> --- a/tools/intel_vbt_decode.c
> +++ b/tools/intel_vbt_decode.c
> @@ -855,6 +855,28 @@ static void dump_dp_max_link_rate(uint16_t version, uint8_t dp_max_link_rate)
> link_rate / 100.0f, dp_max_link_rate);
> }
>
> +static const char *dp_vswing(u8 vswing)
> +{
> + switch (vswing) {
> + case 0: return "0.4V";
> + case 1: return "0.6V";
> + case 2: return "0.8V";
> + case 3: return "1.2V";
> + default: return "<unknown>";
> + }
> +}
> +
> +static const char *dp_preemph(u8 preemph)
> +{
> + switch (preemph) {
> + case 0: return "0dB";
> + case 1: return "3.5dB";
> + case 2: return "6dB";
> + case 3: return "9.5dB";
> + default: return "<unknown>";
> + }
> +}
> +
> static void dump_child_device(struct context *context,
> const struct child_device_config *child)
> {
> @@ -1422,44 +1444,12 @@ static void dump_edp(struct context *context,
> }
> printf("\t\t\tlanes: X%d",
> edp->fast_link_params[i].lanes + 1);
> - printf("\t\t\tpre-emphasis: ");
> - switch (edp->fast_link_params[i].preemphasis) {
> - case EDP_PREEMPHASIS_NONE:
> - printf("none\n");
> - break;
> - case EDP_PREEMPHASIS_3_5dB:
> - printf("3.5dB\n");
> - break;
> - case EDP_PREEMPHASIS_6dB:
> - printf("6dB\n");
> - break;
> - case EDP_PREEMPHASIS_9_5dB:
> - printf("9.5dB\n");
> - break;
> - default:
> - printf("(unknown value %d)\n",
> - edp->fast_link_params[i].preemphasis);
> - break;
> - }
> - printf("\t\t\tvswing: ");
> - switch (edp->fast_link_params[i].vswing) {
> - case EDP_VSWING_0_4V:
> - printf("0.4V\n");
> - break;
> - case EDP_VSWING_0_6V:
> - printf("0.6V\n");
> - break;
> - case EDP_VSWING_0_8V:
> - printf("0.8V\n");
> - break;
> - case EDP_VSWING_1_2V:
> - printf("1.2V\n");
> - break;
> - default:
> - printf("(unknown value %d)\n",
> - edp->fast_link_params[i].vswing);
> - break;
> - }
> + printf("\t\t\tpre-emphasis: %s (0x%x)\n",
> + dp_preemph(edp->fast_link_params[i].preemphasis),
> + edp->fast_link_params[i].preemphasis);
> + printf("\t\t\tvswing: %s (0x%x)\n",
> + dp_preemph(edp->fast_link_params[i].vswing),
Copy-paste fail, should be dp_vswing().
Otherwise,
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
> + edp->fast_link_params[i].vswing);
>
> if (context->bdb->version >= 162) {
> bool val = (edp->edp_s3d_feature >> i) & 1;
> @@ -1511,44 +1501,12 @@ static void dump_edp(struct context *context,
>
> printf("\t\tFull link params provided: %s\n", YESNO(val));
> printf("\t\tFull link params:\n");
> - printf("\t\t\tpre-emphasis: ");
> - switch (edp->full_link_params[i].preemphasis) {
> - case EDP_PREEMPHASIS_NONE:
> - printf("none\n");
> - break;
> - case EDP_PREEMPHASIS_3_5dB:
> - printf("3.5dB\n");
> - break;
> - case EDP_PREEMPHASIS_6dB:
> - printf("6dB\n");
> - break;
> - case EDP_PREEMPHASIS_9_5dB:
> - printf("9.5dB\n");
> - break;
> - default:
> - printf("(unknown value %d)\n",
> - edp->full_link_params[i].preemphasis);
> - break;
> - }
> - printf("\t\t\tvswing: ");
> - switch (edp->full_link_params[i].vswing) {
> - case EDP_VSWING_0_4V:
> - printf("0.4V\n");
> - break;
> - case EDP_VSWING_0_6V:
> - printf("0.6V\n");
> - break;
> - case EDP_VSWING_0_8V:
> - printf("0.8V\n");
> - break;
> - case EDP_VSWING_1_2V:
> - printf("1.2V\n");
> - break;
> - default:
> - printf("(unknown value %d)\n",
> - edp->full_link_params[i].vswing);
> - break;
> - }
> + printf("\t\t\tpre-emphasis: %s (0x%x)\n",
> + dp_preemph(edp->full_link_params[i].preemphasis),
> + edp->full_link_params[i].preemphasis);
> + printf("\t\t\tvswing: %s (0x%x)\n",
> + dp_vswing(edp->full_link_params[i].vswing),
> + edp->full_link_params[i].vswing);
> }
>
> if (context->bdb->version >= 224) {
--
Jani Nikula, Intel Open Source Graphics Center
^ permalink raw reply [flat|nested] 19+ messages in thread
end of thread, other threads:[~2022-08-04 10:05 UTC | newest]
Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-15 20:25 [igt-dev] [PATCH i-g-t 00/14] tools/intel_vbt_decode: Improve VBT decoder Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 01/14] tools/intel_vbt_decode: Simplify fast link training lane count Ville Syrjala
2022-08-04 10:03 ` Jani Nikula
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 02/14] tools/intel_vbt_decode: Extract dp_vswing()/dp_preemph() Ville Syrjala
2022-08-04 10:05 ` Jani Nikula
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 03/14] tools/intel_vbt_decode: update vbt defs from kernel Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 04/14] tools/intel_vbt_decode: Introduce panel_bits()/panel_bool() Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 05/14] tools/intel_vbt_decode: Remove pointless variables Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 06/14] tools/intel_vbt_decode: Extract lvds_config[] Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 07/14] tools/intel_vbt_decode: Extract panel_fitting[] Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 08/14] tools/intel_vbt_decode: Parse HDMI FRL rate Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 09/14] tools/intel_vbt_decode: Decode the "use VBT vswing tables" flag Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 10/14] tools/intel_vbt_decode: Decode eDP/DP max lane count Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 11/14] tools/intel_vbt_decode: Clean up driver features block decoding Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 12/14] tools/intel_vbt_decode: Decode AUX CH Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 13/14] tools/intel_vbt_decode: Adjust DVO port printing Ville Syrjala
2022-07-15 20:25 ` [igt-dev] [PATCH i-g-t 14/14] tools/intel_vbt_decode: Dump the compression structure index as decimal Ville Syrjala
2022-07-16 17:08 ` [igt-dev] ✓ Fi.CI.BAT: success for tools/intel_vbt_decode: Improve VBT decoder Patchwork
2022-07-16 19:57 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.