* [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for Enable HDR on MCA LSPCON based Gen9 devices (rev8)
2020-10-15 23:48 [Intel-gfx] [v8 00/12] Enable HDR on MCA LSPCON based Gen9 devices Uma Shankar
@ 2020-10-15 23:31 ` Patchwork
2020-10-15 23:33 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork
` (13 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2020-10-15 23:31 UTC (permalink / raw)
To: Shankar, Uma; +Cc: intel-gfx
== Series Details ==
Series: Enable HDR on MCA LSPCON based Gen9 devices (rev8)
URL : https://patchwork.freedesktop.org/series/68081/
State : warning
== Summary ==
$ dim checkpatch origin/drm-tip
62480888ccb1 drm/i915/display: Add HDR Capability detection for LSPCON
15c1cb8280c0 drm/i915/display: Enable HDR on gen9 devices with MCA Lspcon
721405832649 drm/i915/display: Attach HDR property for capable Gen9 devices
-:43: WARNING:LONG_LINE: line length of 108 exceeds 100 columns
#43: FILE: drivers/gpu/drm/i915/display/intel_dp.c:6698:
+ connector->dev->mode_config.hdr_output_metadata_property,
total: 0 errors, 1 warnings, 0 checks, 38 lines checked
a05978eaafe6 drm/i915/display: Attach content type property for LSPCON
813cb31bc7d1 drm/i915/display: Nuke bogus lspcon check
cc0e9c0dc660 drm/i915/display: Enable BT2020 for HDR on LSPCON devices
0631b094c3ed drm/i915/display: Enable HDR for Parade based lspcon
c88e51dacf4d drm/i915/display: Implement infoframes readback for LSPCON
adc0af969c20 drm/i915/display: Implement DRM infoframe read for LSPCON
beefd06e6c9f drm/i915/lspcon: Create separate infoframe_enabled helper
02d1d49d45b9 drm/i915/lspcon: Do not send DRM infoframes to non-HDMI sinks
e6ee6102dccd drm/i915/display: [NOT FOR MERGE] Reduce blanking to support 4k60@10bpp for LSPCON
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 16+ messages in thread
* [Intel-gfx] ✗ Fi.CI.SPARSE: warning for Enable HDR on MCA LSPCON based Gen9 devices (rev8)
2020-10-15 23:48 [Intel-gfx] [v8 00/12] Enable HDR on MCA LSPCON based Gen9 devices Uma Shankar
2020-10-15 23:31 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for Enable HDR on MCA LSPCON based Gen9 devices (rev8) Patchwork
@ 2020-10-15 23:33 ` Patchwork
2020-10-15 23:48 ` [Intel-gfx] [v8 01/12] drm/i915/display: Add HDR Capability detection for LSPCON Uma Shankar
` (12 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2020-10-15 23:33 UTC (permalink / raw)
To: Shankar, Uma; +Cc: intel-gfx
== Series Details ==
Series: Enable HDR on MCA LSPCON based Gen9 devices (rev8)
URL : https://patchwork.freedesktop.org/series/68081/
State : warning
== Summary ==
$ dim sparse --fast origin/drm-tip
Sparse version: v0.6.2
Fast mode used, each commit won't be checked separately.
-
+drivers/gpu/drm/i915/gt/intel_reset.c:1312:5: warning: context imbalance in 'intel_gt_reset_trylock' - different lock contexts for basic block
+drivers/gpu/drm/i915/gvt/mmio.c:290:23: warning: memcpy with byte count of 279040
+drivers/gpu/drm/i915/i915_perf.c:1440:15: warning: memset with byte count of 16777216
+drivers/gpu/drm/i915/i915_perf.c:1494:15: warning: memset with byte count of 16777216
+./include/linux/seqlock.h:752:24: warning: trying to copy expression type 31
+./include/linux/seqlock.h:778:16: warning: trying to copy expression type 31
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'fwtable_read16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'fwtable_read32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'fwtable_read64' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'fwtable_read8' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'fwtable_write16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'fwtable_write32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'fwtable_write8' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen11_fwtable_read16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen11_fwtable_read32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen11_fwtable_read64' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen11_fwtable_read8' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen11_fwtable_write16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen11_fwtable_write32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen11_fwtable_write8' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen12_fwtable_read16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen12_fwtable_read32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen12_fwtable_read64' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen12_fwtable_read8' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen12_fwtable_write16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen12_fwtable_write32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen12_fwtable_write8' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen6_read16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen6_read32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen6_read64' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen6_read8' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen6_write16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen6_write32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen6_write8' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen8_write16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen8_write32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen8_write8' - different lock contexts for basic block
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 16+ messages in thread
* [Intel-gfx] [v8 00/12] Enable HDR on MCA LSPCON based Gen9 devices
@ 2020-10-15 23:48 Uma Shankar
2020-10-15 23:31 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for Enable HDR on MCA LSPCON based Gen9 devices (rev8) Patchwork
` (14 more replies)
0 siblings, 15 replies; 16+ messages in thread
From: Uma Shankar @ 2020-10-15 23:48 UTC (permalink / raw)
To: intel-gfx
Gen9 hardware supports HDMI2.0 through LSPCON chips. Extending HDR
support for MCA and Parade LSPCON based GEN9 devices.
SOC will drive LSPCON as DP and send HDR metadata as standard
DP SDP packets. LSPCON will be set to operate in PCON mode,
will receive the metadata and create Dynamic Range and
Mastering Infoframe (DRM packets) and send it to HDR capable
HDMI sink devices.
v2: Fixed Ville's review comments. Suppressed some warnings.
Patch 8 of the series is marked "Not for Merge" and is just for
reference to userspace people to incorporate in order to support
10bit content with 4K@60 resolutions.
v3: Added Infoframe readout support for DRM infoframes.
Addressed Jani Nikula's review comments.
v4: Addressed Ville's review comments and added proper bitmask for
enabled infoframes. Series also incorporates Ville's patch for stopping
infoframes to be sent to DVI sinks. Extended the same for DRM as well.
v5: Created separate helper function for lspcon_infoframes_enabled as per
Ville's suggestion.
v6: Rebase
v7: Addressed Ville's review comments.
v8: Addressed Ville's review comments. Fixed the colorspace handling for
Pcon and property attachment logic based on new lspcon detetction changes.
Thanks Ville for all the suggestions and inputs.
Note: Patch 12 of the series is for reference to userspace, not to be
merged to driver.
Uma Shankar (12):
drm/i915/display: Add HDR Capability detection for LSPCON
drm/i915/display: Enable HDR on gen9 devices with MCA Lspcon
drm/i915/display: Attach HDR property for capable Gen9 devices
drm/i915/display: Attach content type property for LSPCON
drm/i915/display: Nuke bogus lspcon check
drm/i915/display: Enable BT2020 for HDR on LSPCON devices
drm/i915/display: Enable HDR for Parade based lspcon
drm/i915/display: Implement infoframes readback for LSPCON
drm/i915/display: Implement DRM infoframe read for LSPCON
drm/i915/lspcon: Create separate infoframe_enabled helper
drm/i915/lspcon: Do not send DRM infoframes to non-HDMI sinks
drm/i915/display: [NOT FOR MERGE] Reduce blanking to support
4k60@10bpp for LSPCON
drivers/gpu/drm/i915/display/intel_ddi.c | 20 +-
.../drm/i915/display/intel_display_types.h | 1 +
drivers/gpu/drm/i915/display/intel_dp.c | 29 +++
drivers/gpu/drm/i915/display/intel_hdmi.c | 25 +--
drivers/gpu/drm/i915/display/intel_lspcon.c | 181 +++++++++++++++---
drivers/gpu/drm/i915/display/intel_lspcon.h | 12 ++
drivers/gpu/drm/i915/i915_reg.h | 2 +
7 files changed, 226 insertions(+), 44 deletions(-)
--
2.26.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 16+ messages in thread
* [Intel-gfx] [v8 01/12] drm/i915/display: Add HDR Capability detection for LSPCON
2020-10-15 23:48 [Intel-gfx] [v8 00/12] Enable HDR on MCA LSPCON based Gen9 devices Uma Shankar
2020-10-15 23:31 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for Enable HDR on MCA LSPCON based Gen9 devices (rev8) Patchwork
2020-10-15 23:33 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork
@ 2020-10-15 23:48 ` Uma Shankar
2020-10-15 23:48 ` [Intel-gfx] [v8 02/12] drm/i915/display: Enable HDR on gen9 devices with MCA Lspcon Uma Shankar
` (11 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Uma Shankar @ 2020-10-15 23:48 UTC (permalink / raw)
To: intel-gfx
LSPCON firmware exposes HDR capability through LPCON_CAPABILITIES
DPCD register. LSPCON implementations capable of supporting
HDR set HDR_CAPABILITY bit in LSPCON_CAPABILITIES to 1. This patch
reads the same, detects the HDR capability and adds this to
intel_lspcon struct.
v2: Addressed Jani Nikula's review comment and fixed the HDR
capability detection logic
v3: Deferred HDR detection from lspcon_init (Ville)
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
---
.../drm/i915/display/intel_display_types.h | 1 +
drivers/gpu/drm/i915/display/intel_lspcon.c | 28 +++++++++++++++++++
drivers/gpu/drm/i915/display/intel_lspcon.h | 1 +
3 files changed, 30 insertions(+)
diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h
index 0b5df8e44966..537144ed1494 100644
--- a/drivers/gpu/drm/i915/display/intel_display_types.h
+++ b/drivers/gpu/drm/i915/display/intel_display_types.h
@@ -1418,6 +1418,7 @@ struct intel_lspcon {
bool active;
enum drm_lspcon_mode mode;
enum lspcon_vendor vendor;
+ bool hdr_supported;
};
struct intel_digital_port {
diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.c b/drivers/gpu/drm/i915/display/intel_lspcon.c
index ee95fc353a56..093329cbb3bd 100644
--- a/drivers/gpu/drm/i915/display/intel_lspcon.c
+++ b/drivers/gpu/drm/i915/display/intel_lspcon.c
@@ -35,6 +35,8 @@
#define LSPCON_VENDOR_PARADE_OUI 0x001CF8
#define LSPCON_VENDOR_MCA_OUI 0x0060AD
+#define DPCD_MCA_LSPCON_HDR_STATUS 0x70003
+
/* AUX addresses to write MCA AVI IF */
#define LSPCON_MCA_AVI_IF_WRITE_OFFSET 0x5C0
#define LSPCON_MCA_AVI_IF_CTRL 0x5DF
@@ -104,6 +106,32 @@ static bool lspcon_detect_vendor(struct intel_lspcon *lspcon)
return true;
}
+void lspcon_detect_hdr_capability(struct intel_lspcon *lspcon)
+{
+ struct intel_digital_port *dig_port =
+ container_of(lspcon, struct intel_digital_port, lspcon);
+ struct drm_device *dev = dig_port->base.base.dev;
+ struct intel_dp *dp = lspcon_to_intel_dp(lspcon);
+ u8 hdr_caps;
+ int ret;
+
+ /* Enable HDR for MCA based LSPCON devices */
+ if (lspcon->vendor == LSPCON_VENDOR_MCA)
+ ret = drm_dp_dpcd_read(&dp->aux, DPCD_MCA_LSPCON_HDR_STATUS,
+ &hdr_caps, 1);
+ else
+ return;
+
+ if (ret < 0) {
+ drm_dbg_kms(dev, "hdr capability detection failed\n");
+ lspcon->hdr_supported = false;
+ return;
+ } else if (hdr_caps & 0x1) {
+ drm_dbg_kms(dev, "lspcon capable of HDR\n");
+ lspcon->hdr_supported = true;
+ }
+}
+
static enum drm_lspcon_mode lspcon_get_current_mode(struct intel_lspcon *lspcon)
{
enum drm_lspcon_mode current_mode;
diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.h b/drivers/gpu/drm/i915/display/intel_lspcon.h
index 0851ea30831a..a54b97cd3d64 100644
--- a/drivers/gpu/drm/i915/display/intel_lspcon.h
+++ b/drivers/gpu/drm/i915/display/intel_lspcon.h
@@ -15,6 +15,7 @@ struct intel_digital_port;
struct intel_encoder;
struct intel_lspcon;
+void lspcon_detect_hdr_capability(struct intel_lspcon *lspcon);
void lspcon_resume(struct intel_digital_port *dig_port);
void lspcon_wait_pcon_mode(struct intel_lspcon *lspcon);
void lspcon_write_infoframe(struct intel_encoder *encoder,
--
2.26.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Intel-gfx] [v8 02/12] drm/i915/display: Enable HDR on gen9 devices with MCA Lspcon
2020-10-15 23:48 [Intel-gfx] [v8 00/12] Enable HDR on MCA LSPCON based Gen9 devices Uma Shankar
` (2 preceding siblings ...)
2020-10-15 23:48 ` [Intel-gfx] [v8 01/12] drm/i915/display: Add HDR Capability detection for LSPCON Uma Shankar
@ 2020-10-15 23:48 ` Uma Shankar
2020-10-15 23:48 ` [Intel-gfx] [v8 03/12] drm/i915/display: Attach HDR property for capable Gen9 devices Uma Shankar
` (10 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Uma Shankar @ 2020-10-15 23:48 UTC (permalink / raw)
To: intel-gfx
Gen9 hardware supports HDMI2.0 through LSPCON chips.
Extending HDR support for MCA LSPCON based GEN9 devices.
SOC will drive LSPCON as DP and send HDR metadata as standard
DP SDP packets. LSPCON will be set to operate in PCON mode,
will receive the metadata and create Dynamic Range and
Mastering Infoframe (DRM packets) and send it to HDR capable
HDMI sink devices.
v2: Re-used hsw infoframe write implementation for HDR metadata
for LSPCON as per Ville's suggestion.
v3: Addressed Jani Nikula's review comments.
v4: Addressed Ville's review comments, removed redundant wrapper
and checks, passed arguments instead of hardcodings.
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
---
drivers/gpu/drm/i915/display/intel_hdmi.c | 8 +++---
drivers/gpu/drm/i915/display/intel_lspcon.c | 31 ++++++++++++---------
drivers/gpu/drm/i915/display/intel_lspcon.h | 4 +++
3 files changed, 26 insertions(+), 17 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_hdmi.c b/drivers/gpu/drm/i915/display/intel_hdmi.c
index f90838bc74fb..8e4b820b715a 100644
--- a/drivers/gpu/drm/i915/display/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/display/intel_hdmi.c
@@ -518,10 +518,10 @@ static u32 vlv_infoframes_enabled(struct intel_encoder *encoder,
VIDEO_DIP_ENABLE_SPD | VIDEO_DIP_ENABLE_GCP);
}
-static void hsw_write_infoframe(struct intel_encoder *encoder,
- const struct intel_crtc_state *crtc_state,
- unsigned int type,
- const void *frame, ssize_t len)
+void hsw_write_infoframe(struct intel_encoder *encoder,
+ const struct intel_crtc_state *crtc_state,
+ unsigned int type,
+ const void *frame, ssize_t len)
{
const u32 *data = frame;
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.c b/drivers/gpu/drm/i915/display/intel_lspcon.c
index 093329cbb3bd..9c821f569081 100644
--- a/drivers/gpu/drm/i915/display/intel_lspcon.c
+++ b/drivers/gpu/drm/i915/display/intel_lspcon.c
@@ -461,27 +461,32 @@ void lspcon_write_infoframe(struct intel_encoder *encoder,
unsigned int type,
const void *frame, ssize_t len)
{
- bool ret;
+ bool ret = true;
struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
struct intel_lspcon *lspcon = enc_to_intel_lspcon(encoder);
- /* LSPCON only needs AVI IF */
- if (type != HDMI_INFOFRAME_TYPE_AVI)
+ switch (type) {
+ case HDMI_INFOFRAME_TYPE_AVI:
+ if (lspcon->vendor == LSPCON_VENDOR_MCA)
+ ret = _lspcon_write_avi_infoframe_mca(&intel_dp->aux,
+ frame, len);
+ else
+ ret = _lspcon_write_avi_infoframe_parade(&intel_dp->aux,
+ frame, len);
+ break;
+ case HDMI_PACKET_TYPE_GAMUT_METADATA:
+ drm_dbg_kms(encoder->base.dev, "Update HDR metadata for lspcon\n");
+ /* It uses the legacy hsw implementation for the same */
+ hsw_write_infoframe(encoder, crtc_state, type, frame, len);
+ break;
+ default:
return;
-
- if (lspcon->vendor == LSPCON_VENDOR_MCA)
- ret = _lspcon_write_avi_infoframe_mca(&intel_dp->aux,
- frame, len);
- else
- ret = _lspcon_write_avi_infoframe_parade(&intel_dp->aux,
- frame, len);
+ }
if (!ret) {
- DRM_ERROR("Failed to write AVI infoframes\n");
+ DRM_ERROR("Failed to write infoframes\n");
return;
}
-
- DRM_DEBUG_DRIVER("AVI infoframes updated successfully\n");
}
void lspcon_read_infoframe(struct intel_encoder *encoder,
diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.h b/drivers/gpu/drm/i915/display/intel_lspcon.h
index a54b97cd3d64..0726418d6a9b 100644
--- a/drivers/gpu/drm/i915/display/intel_lspcon.h
+++ b/drivers/gpu/drm/i915/display/intel_lspcon.h
@@ -34,5 +34,9 @@ u32 lspcon_infoframes_enabled(struct intel_encoder *encoder,
const struct intel_crtc_state *pipe_config);
void lspcon_ycbcr420_config(struct drm_connector *connector,
struct intel_crtc_state *crtc_state);
+void hsw_write_infoframe(struct intel_encoder *encoder,
+ const struct intel_crtc_state *crtc_state,
+ unsigned int type,
+ const void *frame, ssize_t len);
#endif /* __INTEL_LSPCON_H__ */
--
2.26.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Intel-gfx] [v8 03/12] drm/i915/display: Attach HDR property for capable Gen9 devices
2020-10-15 23:48 [Intel-gfx] [v8 00/12] Enable HDR on MCA LSPCON based Gen9 devices Uma Shankar
` (3 preceding siblings ...)
2020-10-15 23:48 ` [Intel-gfx] [v8 02/12] drm/i915/display: Enable HDR on gen9 devices with MCA Lspcon Uma Shankar
@ 2020-10-15 23:48 ` Uma Shankar
2020-10-15 23:48 ` [Intel-gfx] [v8 04/12] drm/i915/display: Attach content type property for LSPCON Uma Shankar
` (9 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Uma Shankar @ 2020-10-15 23:48 UTC (permalink / raw)
To: intel-gfx
Attach HDR property for Gen9 devices with MCA LSPCON
chips.
v2: Cleaned HDR property attachment logic based on capability
as per Jani Nikula's suggestion.
v3: Fixed the HDR property attachment logic as per the new changes
by Kai-Feng to align with lspcon detection failure on some devices.
v4: Add HDR proprty in late_register to handle lspcon detection,
as suggested by Ville.
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
---
drivers/gpu/drm/i915/display/intel_dp.c | 11 +++++++++++
drivers/gpu/drm/i915/display/intel_lspcon.c | 2 +-
drivers/gpu/drm/i915/display/intel_lspcon.h | 1 +
3 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
index 4f8266c3ed43..d434cb32f0ff 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -6675,6 +6675,8 @@ intel_dp_connector_register(struct drm_connector *connector)
{
struct drm_i915_private *i915 = to_i915(connector->dev);
struct intel_dp *intel_dp = intel_attached_dp(to_intel_connector(connector));
+ struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp);
+ struct intel_lspcon *lspcon = &dig_port->lspcon;
int ret;
ret = intel_connector_register(connector);
@@ -6688,6 +6690,15 @@ intel_dp_connector_register(struct drm_connector *connector)
ret = drm_dp_aux_register(&intel_dp->aux);
if (!ret)
drm_dp_cec_register_connector(&intel_dp->aux, connector);
+
+ if (lspcon_init(dig_port)) {
+ lspcon_detect_hdr_capability(lspcon);
+ if (lspcon->hdr_supported)
+ drm_object_attach_property(&connector->base,
+ connector->dev->mode_config.hdr_output_metadata_property,
+ 0);
+ }
+
return ret;
}
diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.c b/drivers/gpu/drm/i915/display/intel_lspcon.c
index 9c821f569081..2f480f2fc213 100644
--- a/drivers/gpu/drm/i915/display/intel_lspcon.c
+++ b/drivers/gpu/drm/i915/display/intel_lspcon.c
@@ -563,7 +563,7 @@ void lspcon_wait_pcon_mode(struct intel_lspcon *lspcon)
lspcon_wait_mode(lspcon, DRM_LSPCON_MODE_PCON);
}
-static bool lspcon_init(struct intel_digital_port *dig_port)
+bool lspcon_init(struct intel_digital_port *dig_port)
{
struct intel_dp *dp = &dig_port->dp;
struct intel_lspcon *lspcon = &dig_port->lspcon;
diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.h b/drivers/gpu/drm/i915/display/intel_lspcon.h
index 0726418d6a9b..972afa3b2168 100644
--- a/drivers/gpu/drm/i915/display/intel_lspcon.h
+++ b/drivers/gpu/drm/i915/display/intel_lspcon.h
@@ -15,6 +15,7 @@ struct intel_digital_port;
struct intel_encoder;
struct intel_lspcon;
+bool lspcon_init(struct intel_digital_port *dig_port);
void lspcon_detect_hdr_capability(struct intel_lspcon *lspcon);
void lspcon_resume(struct intel_digital_port *dig_port);
void lspcon_wait_pcon_mode(struct intel_lspcon *lspcon);
--
2.26.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Intel-gfx] [v8 04/12] drm/i915/display: Attach content type property for LSPCON
2020-10-15 23:48 [Intel-gfx] [v8 00/12] Enable HDR on MCA LSPCON based Gen9 devices Uma Shankar
` (4 preceding siblings ...)
2020-10-15 23:48 ` [Intel-gfx] [v8 03/12] drm/i915/display: Attach HDR property for capable Gen9 devices Uma Shankar
@ 2020-10-15 23:48 ` Uma Shankar
2020-10-15 23:48 ` [Intel-gfx] [v8 05/12] drm/i915/display: Nuke bogus lspcon check Uma Shankar
` (8 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Uma Shankar @ 2020-10-15 23:48 UTC (permalink / raw)
To: intel-gfx
Content type is supported on HDMI sink devices. Attached the
property for the same for LSPCON based devices.
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
---
drivers/gpu/drm/i915/display/intel_dp.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
index d434cb32f0ff..1eea514c62b3 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -6697,6 +6697,7 @@ intel_dp_connector_register(struct drm_connector *connector)
drm_object_attach_property(&connector->base,
connector->dev->mode_config.hdr_output_metadata_property,
0);
+ drm_connector_attach_content_type_property(connector);
}
return ret;
--
2.26.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Intel-gfx] [v8 05/12] drm/i915/display: Nuke bogus lspcon check
2020-10-15 23:48 [Intel-gfx] [v8 00/12] Enable HDR on MCA LSPCON based Gen9 devices Uma Shankar
` (5 preceding siblings ...)
2020-10-15 23:48 ` [Intel-gfx] [v8 04/12] drm/i915/display: Attach content type property for LSPCON Uma Shankar
@ 2020-10-15 23:48 ` Uma Shankar
2020-10-15 23:48 ` [Intel-gfx] [v8 06/12] drm/i915/display: Enable BT2020 for HDR on LSPCON devices Uma Shankar
` (7 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Uma Shankar @ 2020-10-15 23:48 UTC (permalink / raw)
To: intel-gfx
Dropped a irrelevant lspcon check from intel_hdmi_add_properties
function.
Suggested-by: Ville Syrjälä" <ville.syrjala@linux.intel.com>
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
---
drivers/gpu/drm/i915/display/intel_hdmi.c | 10 +---------
1 file changed, 1 insertion(+), 9 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_hdmi.c b/drivers/gpu/drm/i915/display/intel_hdmi.c
index 8e4b820b715a..f1a927cdf798 100644
--- a/drivers/gpu/drm/i915/display/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/display/intel_hdmi.c
@@ -2950,20 +2950,12 @@ static void
intel_hdmi_add_properties(struct intel_hdmi *intel_hdmi, struct drm_connector *connector)
{
struct drm_i915_private *dev_priv = to_i915(connector->dev);
- struct intel_digital_port *dig_port =
- hdmi_to_dig_port(intel_hdmi);
intel_attach_force_audio_property(connector);
intel_attach_broadcast_rgb_property(connector);
intel_attach_aspect_ratio_property(connector);
- /*
- * Attach Colorspace property for Non LSPCON based device
- * ToDo: This needs to be extended for LSPCON implementation
- * as well. Will be implemented separately.
- */
- if (!dig_port->lspcon.active)
- intel_attach_colorspace_property(connector);
+ intel_attach_colorspace_property(connector);
drm_connector_attach_content_type_property(connector);
--
2.26.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Intel-gfx] [v8 06/12] drm/i915/display: Enable BT2020 for HDR on LSPCON devices
2020-10-15 23:48 [Intel-gfx] [v8 00/12] Enable HDR on MCA LSPCON based Gen9 devices Uma Shankar
` (6 preceding siblings ...)
2020-10-15 23:48 ` [Intel-gfx] [v8 05/12] drm/i915/display: Nuke bogus lspcon check Uma Shankar
@ 2020-10-15 23:48 ` Uma Shankar
2020-10-15 23:48 ` [Intel-gfx] [v8 07/12] drm/i915/display: Enable HDR for Parade based lspcon Uma Shankar
` (6 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Uma Shankar @ 2020-10-15 23:48 UTC (permalink / raw)
To: intel-gfx
Enable Colorspace as BT2020 if driving HDR content.Sending Colorimetry
data for HDR using AVI infoframe. LSPCON firmware expects this and though
SOC drives DP, for HDMI panel AVI infoframe is sent to the LSPCON device
which transfers the same to HDMI sink.
v2: Dropped state managed in drm core as per Jani Nikula's suggestion.
v3: Aligned colorimetry handling for lspcon as per compute_avi_infoframes,
as suggested by Ville.
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
---
drivers/gpu/drm/i915/display/intel_lspcon.c | 31 +++++++++++++++++----
1 file changed, 25 insertions(+), 6 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.c b/drivers/gpu/drm/i915/display/intel_lspcon.c
index 2f480f2fc213..2467e3e95985 100644
--- a/drivers/gpu/drm/i915/display/intel_lspcon.c
+++ b/drivers/gpu/drm/i915/display/intel_lspcon.c
@@ -534,12 +534,31 @@ void lspcon_set_infoframes(struct intel_encoder *encoder,
frame.avi.colorspace = HDMI_COLORSPACE_RGB;
}
- drm_hdmi_avi_infoframe_quant_range(&frame.avi,
- conn_state->connector,
- adjusted_mode,
- crtc_state->limited_color_range ?
- HDMI_QUANTIZATION_RANGE_LIMITED :
- HDMI_QUANTIZATION_RANGE_FULL);
+ /*
+ * Set the HDMI Colorspace which are supported by DP as well.
+ * For all others (3 combinations which are exclusive for DP),
+ * Let the colorspace be set to default i.e No Data.
+ * Fixme: Expose HDMI colorspaces for instead of DP counterparts
+ */
+ drm_hdmi_avi_infoframe_colorspace(&frame.avi, conn_state);
+
+ /* nonsense combination */
+ drm_WARN_ON(encoder->base.dev, crtc_state->limited_color_range &&
+ crtc_state->output_format != INTEL_OUTPUT_FORMAT_RGB);
+
+ if (crtc_state->output_format == INTEL_OUTPUT_FORMAT_RGB) {
+ drm_hdmi_avi_infoframe_quant_range(&frame.avi,
+ conn_state->connector,
+ adjusted_mode,
+ crtc_state->limited_color_range ?
+ HDMI_QUANTIZATION_RANGE_LIMITED :
+ HDMI_QUANTIZATION_RANGE_FULL);
+ } else {
+ frame.avi.quantization_range = HDMI_QUANTIZATION_RANGE_DEFAULT;
+ frame.avi.ycc_quantization_range = HDMI_YCC_QUANTIZATION_RANGE_LIMITED;
+ }
+
+ drm_hdmi_avi_infoframe_content_type(&frame.avi, conn_state);
ret = hdmi_infoframe_pack(&frame, buf, sizeof(buf));
if (ret < 0) {
--
2.26.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Intel-gfx] [v8 07/12] drm/i915/display: Enable HDR for Parade based lspcon
2020-10-15 23:48 [Intel-gfx] [v8 00/12] Enable HDR on MCA LSPCON based Gen9 devices Uma Shankar
` (7 preceding siblings ...)
2020-10-15 23:48 ` [Intel-gfx] [v8 06/12] drm/i915/display: Enable BT2020 for HDR on LSPCON devices Uma Shankar
@ 2020-10-15 23:48 ` Uma Shankar
2020-10-15 23:48 ` [Intel-gfx] [v8 08/12] drm/i915/display: Implement infoframes readback for LSPCON Uma Shankar
` (5 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Uma Shankar @ 2020-10-15 23:48 UTC (permalink / raw)
To: intel-gfx; +Cc: Vipin Anand
Enable HDR for LSPCON based on Parade along with MCA.
v2: Added a helper for status reg as suggested by Ville.
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
Signed-off-by: Vipin Anand <vipin.anand@intel.com>
---
drivers/gpu/drm/i915/display/intel_lspcon.c | 19 +++++++++++++------
1 file changed, 13 insertions(+), 6 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.c b/drivers/gpu/drm/i915/display/intel_lspcon.c
index 2467e3e95985..be59cbde9413 100644
--- a/drivers/gpu/drm/i915/display/intel_lspcon.c
+++ b/drivers/gpu/drm/i915/display/intel_lspcon.c
@@ -36,6 +36,7 @@
#define LSPCON_VENDOR_MCA_OUI 0x0060AD
#define DPCD_MCA_LSPCON_HDR_STATUS 0x70003
+#define DPCD_PARADE_LSPCON_HDR_STATUS 0x00511
/* AUX addresses to write MCA AVI IF */
#define LSPCON_MCA_AVI_IF_WRITE_OFFSET 0x5C0
@@ -106,21 +107,27 @@ static bool lspcon_detect_vendor(struct intel_lspcon *lspcon)
return true;
}
+static u32 get_hdr_status_reg(struct intel_lspcon *lspcon)
+{
+ if (lspcon->vendor == LSPCON_VENDOR_MCA)
+ return DPCD_MCA_LSPCON_HDR_STATUS;
+ else
+ return DPCD_PARADE_LSPCON_HDR_STATUS;
+}
+
void lspcon_detect_hdr_capability(struct intel_lspcon *lspcon)
{
struct intel_digital_port *dig_port =
container_of(lspcon, struct intel_digital_port, lspcon);
struct drm_device *dev = dig_port->base.base.dev;
struct intel_dp *dp = lspcon_to_intel_dp(lspcon);
+ u32 lspcon_hdr_status_reg;
u8 hdr_caps;
int ret;
- /* Enable HDR for MCA based LSPCON devices */
- if (lspcon->vendor == LSPCON_VENDOR_MCA)
- ret = drm_dp_dpcd_read(&dp->aux, DPCD_MCA_LSPCON_HDR_STATUS,
- &hdr_caps, 1);
- else
- return;
+ lspcon_hdr_status_reg = get_hdr_status_reg(lspcon);
+ ret = drm_dp_dpcd_read(&dp->aux, lspcon_hdr_status_reg,
+ &hdr_caps, 1);
if (ret < 0) {
drm_dbg_kms(dev, "hdr capability detection failed\n");
--
2.26.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Intel-gfx] [v8 08/12] drm/i915/display: Implement infoframes readback for LSPCON
2020-10-15 23:48 [Intel-gfx] [v8 00/12] Enable HDR on MCA LSPCON based Gen9 devices Uma Shankar
` (8 preceding siblings ...)
2020-10-15 23:48 ` [Intel-gfx] [v8 07/12] drm/i915/display: Enable HDR for Parade based lspcon Uma Shankar
@ 2020-10-15 23:48 ` Uma Shankar
2020-10-15 23:48 ` [Intel-gfx] [v8 09/12] drm/i915/display: Implement DRM infoframe read " Uma Shankar
` (4 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Uma Shankar @ 2020-10-15 23:48 UTC (permalink / raw)
To: intel-gfx
Implemented Infoframes enabled readback for LSPCON devices.
This will help align the implementation with state readback
infrastructure.
v2: Added proper bitmask of enabled infoframes as per Ville's
recommendation.
v3: Added pcon specific infoframe types instead of using the HSW
one's, as recommended by Ville.
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
---
drivers/gpu/drm/i915/display/intel_lspcon.c | 57 ++++++++++++++++++++-
drivers/gpu/drm/i915/i915_reg.h | 2 +
2 files changed, 57 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.c b/drivers/gpu/drm/i915/display/intel_lspcon.c
index be59cbde9413..9685be1991ca 100644
--- a/drivers/gpu/drm/i915/display/intel_lspcon.c
+++ b/drivers/gpu/drm/i915/display/intel_lspcon.c
@@ -577,11 +577,64 @@ void lspcon_set_infoframes(struct intel_encoder *encoder,
buf, ret);
}
+static bool _lspcon_read_avi_infoframe_enabled_mca(struct drm_dp_aux *aux)
+{
+ int ret;
+ u32 val = 0;
+ u16 reg = LSPCON_MCA_AVI_IF_CTRL;
+
+ ret = drm_dp_dpcd_read(aux, reg, &val, 1);
+ if (ret < 0) {
+ DRM_ERROR("DPCD read failed, address 0x%x\n", reg);
+ return false;
+ }
+
+ return val & LSPCON_MCA_AVI_IF_KICKOFF;
+}
+
+static bool _lspcon_read_avi_infoframe_enabled_parade(struct drm_dp_aux *aux)
+{
+ int ret;
+ u32 val = 0;
+ u16 reg = LSPCON_PARADE_AVI_IF_CTRL;
+
+ ret = drm_dp_dpcd_read(aux, reg, &val, 1);
+ if (ret < 0) {
+ DRM_ERROR("DPCD read failed, address 0x%x\n", reg);
+ return false;
+ }
+
+ return val & LSPCON_PARADE_AVI_IF_KICKOFF;
+}
+
u32 lspcon_infoframes_enabled(struct intel_encoder *encoder,
const struct intel_crtc_state *pipe_config)
{
- /* FIXME actually read this from the hw */
- return 0;
+ struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
+ struct intel_lspcon *lspcon = enc_to_intel_lspcon(encoder);
+ struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
+ bool infoframes_enabled;
+ u32 val = 0;
+ u32 mask, tmp;
+
+ if (lspcon->vendor == LSPCON_VENDOR_MCA)
+ infoframes_enabled = _lspcon_read_avi_infoframe_enabled_mca(&intel_dp->aux);
+ else
+ infoframes_enabled = _lspcon_read_avi_infoframe_enabled_parade(&intel_dp->aux);
+
+ if (infoframes_enabled)
+ val |= VIDEO_DIP_ENABLE_AVI_PCON;
+
+ if (lspcon->hdr_supported) {
+ tmp = intel_de_read(dev_priv,
+ HSW_TVIDEO_DIP_CTL(pipe_config->cpu_transcoder));
+ mask = VIDEO_DIP_ENABLE_GMP_PCON;
+
+ if (tmp & mask)
+ val |= mask;
+ }
+
+ return val;
}
void lspcon_wait_pcon_mode(struct intel_lspcon *lspcon)
diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
index 04c966a524ce..337aca1d9384 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -4977,6 +4977,8 @@ enum {
#define VIDEO_DIP_ENABLE_VS_HSW (1 << 8)
#define VIDEO_DIP_ENABLE_GMP_HSW (1 << 4)
#define VIDEO_DIP_ENABLE_SPD_HSW (1 << 0)
+#define VIDEO_DIP_ENABLE_AVI_PCON (1 << 12)
+#define VIDEO_DIP_ENABLE_GMP_PCON (1 << 4)
/* Panel power sequencing */
#define PPS_BASE 0x61200
--
2.26.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Intel-gfx] [v8 09/12] drm/i915/display: Implement DRM infoframe read for LSPCON
2020-10-15 23:48 [Intel-gfx] [v8 00/12] Enable HDR on MCA LSPCON based Gen9 devices Uma Shankar
` (9 preceding siblings ...)
2020-10-15 23:48 ` [Intel-gfx] [v8 08/12] drm/i915/display: Implement infoframes readback for LSPCON Uma Shankar
@ 2020-10-15 23:48 ` Uma Shankar
2020-10-15 23:49 ` [Intel-gfx] [v8 10/12] drm/i915/lspcon: Create separate infoframe_enabled helper Uma Shankar
` (3 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Uma Shankar @ 2020-10-15 23:48 UTC (permalink / raw)
To: intel-gfx
Implement Read back of HDR metadata infoframes i.e Dynamic Range
and Mastering Infoframe for LSPCON devices.
v2: Added proper bitmask of enabled infoframes as per Ville's
recommendation.
v3: Dropped a redundant wrapper as per Ville's comment.
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
---
drivers/gpu/drm/i915/display/intel_hdmi.c | 7 +++----
drivers/gpu/drm/i915/display/intel_lspcon.c | 7 ++++++-
drivers/gpu/drm/i915/display/intel_lspcon.h | 4 ++++
3 files changed, 13 insertions(+), 5 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_hdmi.c b/drivers/gpu/drm/i915/display/intel_hdmi.c
index f1a927cdf798..81dabffbb3e6 100644
--- a/drivers/gpu/drm/i915/display/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/display/intel_hdmi.c
@@ -555,10 +555,9 @@ void hsw_write_infoframe(struct intel_encoder *encoder,
intel_de_posting_read(dev_priv, ctl_reg);
}
-static void hsw_read_infoframe(struct intel_encoder *encoder,
- const struct intel_crtc_state *crtc_state,
- unsigned int type,
- void *frame, ssize_t len)
+void hsw_read_infoframe(struct intel_encoder *encoder,
+ const struct intel_crtc_state *crtc_state,
+ unsigned int type, void *frame, ssize_t len)
{
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
enum transcoder cpu_transcoder = crtc_state->cpu_transcoder;
diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.c b/drivers/gpu/drm/i915/display/intel_lspcon.c
index 9685be1991ca..d81a615ff9ac 100644
--- a/drivers/gpu/drm/i915/display/intel_lspcon.c
+++ b/drivers/gpu/drm/i915/display/intel_lspcon.c
@@ -501,7 +501,12 @@ void lspcon_read_infoframe(struct intel_encoder *encoder,
unsigned int type,
void *frame, ssize_t len)
{
- /* FIXME implement this */
+ /* FIXME implement for AVI Infoframe as well */
+ if (type == HDMI_PACKET_TYPE_GAMUT_METADATA) {
+ drm_dbg_kms(encoder->base.dev, "Read HDR metadata for lspcon\n");
+ hsw_read_infoframe(encoder, crtc_state, type,
+ frame, len);
+ }
}
void lspcon_set_infoframes(struct intel_encoder *encoder,
diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.h b/drivers/gpu/drm/i915/display/intel_lspcon.h
index 972afa3b2168..15965c77b43a 100644
--- a/drivers/gpu/drm/i915/display/intel_lspcon.h
+++ b/drivers/gpu/drm/i915/display/intel_lspcon.h
@@ -39,5 +39,9 @@ void hsw_write_infoframe(struct intel_encoder *encoder,
const struct intel_crtc_state *crtc_state,
unsigned int type,
const void *frame, ssize_t len);
+void hsw_read_infoframe(struct intel_encoder *encoder,
+ const struct intel_crtc_state *crtc_state,
+ unsigned int type,
+ void *frame, ssize_t len);
#endif /* __INTEL_LSPCON_H__ */
--
2.26.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Intel-gfx] [v8 10/12] drm/i915/lspcon: Create separate infoframe_enabled helper
2020-10-15 23:48 [Intel-gfx] [v8 00/12] Enable HDR on MCA LSPCON based Gen9 devices Uma Shankar
` (10 preceding siblings ...)
2020-10-15 23:48 ` [Intel-gfx] [v8 09/12] drm/i915/display: Implement DRM infoframe read " Uma Shankar
@ 2020-10-15 23:49 ` Uma Shankar
2020-10-15 23:49 ` [Intel-gfx] [v8 11/12] drm/i915/lspcon: Do not send DRM infoframes to non-HDMI sinks Uma Shankar
` (2 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Uma Shankar @ 2020-10-15 23:49 UTC (permalink / raw)
To: intel-gfx
Lspcon has Infoframes as well as DIP for HDR metadata(DRM Infoframe).
Create a separate mechanism for lspcon compared to HDMI in order to
address the same and ensure future scalability.
Suggested-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
---
drivers/gpu/drm/i915/display/intel_ddi.c | 10 +++++++---
drivers/gpu/drm/i915/display/intel_lspcon.c | 18 ++++++++++++++++++
drivers/gpu/drm/i915/display/intel_lspcon.h | 2 ++
3 files changed, 27 insertions(+), 3 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c b/drivers/gpu/drm/i915/display/intel_ddi.c
index 35edbd826443..ca99b94b4cbf 100644
--- a/drivers/gpu/drm/i915/display/intel_ddi.c
+++ b/drivers/gpu/drm/i915/display/intel_ddi.c
@@ -4402,6 +4402,7 @@ void intel_ddi_get_config(struct intel_encoder *encoder,
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
struct intel_crtc *intel_crtc = to_intel_crtc(pipe_config->uapi.crtc);
enum transcoder cpu_transcoder = pipe_config->cpu_transcoder;
+ struct intel_digital_port *dig_port = enc_to_dig_port(encoder);
u32 temp, flags = 0;
/* XXX: DSI transcoder paranoia */
@@ -4482,9 +4483,12 @@ void intel_ddi_get_config(struct intel_encoder *encoder,
pipe_config->fec_enable);
}
- pipe_config->infoframes.enable |=
- intel_hdmi_infoframes_enabled(encoder, pipe_config);
-
+ if (dig_port->lspcon.active && dig_port->dp.has_hdmi_sink)
+ pipe_config->infoframes.enable |=
+ intel_lspcon_infoframes_enabled(encoder, pipe_config);
+ else
+ pipe_config->infoframes.enable |=
+ intel_hdmi_infoframes_enabled(encoder, pipe_config);
break;
case TRANS_DDI_MODE_SELECT_DP_MST:
pipe_config->output_types |= BIT(INTEL_OUTPUT_DP_MST);
diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.c b/drivers/gpu/drm/i915/display/intel_lspcon.c
index d81a615ff9ac..737bfae6d0ce 100644
--- a/drivers/gpu/drm/i915/display/intel_lspcon.c
+++ b/drivers/gpu/drm/i915/display/intel_lspcon.c
@@ -30,6 +30,7 @@
#include "intel_display_types.h"
#include "intel_dp.h"
#include "intel_lspcon.h"
+#include "intel_hdmi.h"
/* LSPCON OUI Vendor ID(signatures) */
#define LSPCON_VENDOR_PARADE_OUI 0x001CF8
@@ -677,6 +678,23 @@ bool lspcon_init(struct intel_digital_port *dig_port)
return true;
}
+u32 intel_lspcon_infoframes_enabled(struct intel_encoder *encoder,
+ const struct intel_crtc_state *pipe_config)
+{
+ struct intel_digital_port *dig_port = enc_to_dig_port(encoder);
+ u32 val, enabled = 0;
+
+ val = dig_port->infoframes_enabled(encoder, pipe_config);
+
+ if (val & VIDEO_DIP_ENABLE_AVI_HSW)
+ enabled |= intel_hdmi_infoframe_enable(HDMI_INFOFRAME_TYPE_AVI);
+
+ if (val & VIDEO_DIP_ENABLE_GMP_HSW)
+ enabled |= intel_hdmi_infoframe_enable(HDMI_PACKET_TYPE_GAMUT_METADATA);
+
+ return enabled;
+}
+
void lspcon_resume(struct intel_digital_port *dig_port)
{
struct intel_lspcon *lspcon = &dig_port->lspcon;
diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.h b/drivers/gpu/drm/i915/display/intel_lspcon.h
index 15965c77b43a..d69056f12a8b 100644
--- a/drivers/gpu/drm/i915/display/intel_lspcon.h
+++ b/drivers/gpu/drm/i915/display/intel_lspcon.h
@@ -43,5 +43,7 @@ void hsw_read_infoframe(struct intel_encoder *encoder,
const struct intel_crtc_state *crtc_state,
unsigned int type,
void *frame, ssize_t len);
+u32 intel_lspcon_infoframes_enabled(struct intel_encoder *encoder,
+ const struct intel_crtc_state *pipe_config);
#endif /* __INTEL_LSPCON_H__ */
--
2.26.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Intel-gfx] [v8 11/12] drm/i915/lspcon: Do not send DRM infoframes to non-HDMI sinks
2020-10-15 23:48 [Intel-gfx] [v8 00/12] Enable HDR on MCA LSPCON based Gen9 devices Uma Shankar
` (11 preceding siblings ...)
2020-10-15 23:49 ` [Intel-gfx] [v8 10/12] drm/i915/lspcon: Create separate infoframe_enabled helper Uma Shankar
@ 2020-10-15 23:49 ` Uma Shankar
2020-10-15 23:49 ` [Intel-gfx] [v8 12/12] drm/i915/display: [NOT FOR MERGE] Reduce blanking to support 4k60@10bpp for LSPCON Uma Shankar
2020-10-16 0:03 ` [Intel-gfx] ✗ Fi.CI.BAT: failure for Enable HDR on MCA LSPCON based Gen9 devices (rev8) Patchwork
14 siblings, 0 replies; 16+ messages in thread
From: Uma Shankar @ 2020-10-15 23:49 UTC (permalink / raw)
To: intel-gfx
Non-HDMI sinks shouldn't be sent Dynamic Range and Mastering infoframes.
Check for that when using LSPCON.
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
---
drivers/gpu/drm/i915/display/intel_ddi.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c b/drivers/gpu/drm/i915/display/intel_ddi.c
index ca99b94b4cbf..b7032df47f69 100644
--- a/drivers/gpu/drm/i915/display/intel_ddi.c
+++ b/drivers/gpu/drm/i915/display/intel_ddi.c
@@ -3938,6 +3938,7 @@ static void intel_enable_ddi_dp(struct intel_atomic_state *state,
{
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
+ struct intel_digital_port *dig_port = enc_to_dig_port(encoder);
enum port port = encoder->port;
if (port == PORT_A && INTEL_GEN(dev_priv) < 9)
@@ -3945,7 +3946,14 @@ static void intel_enable_ddi_dp(struct intel_atomic_state *state,
intel_edp_backlight_on(crtc_state, conn_state);
intel_psr_enable(intel_dp, crtc_state, conn_state);
- intel_dp_set_infoframes(encoder, true, crtc_state, conn_state);
+
+ if (dig_port->lspcon.active) {
+ if (dig_port->dp.has_hdmi_sink)
+ intel_dp_set_infoframes(encoder, true, crtc_state, conn_state);
+ } else {
+ intel_dp_set_infoframes(encoder, true, crtc_state, conn_state);
+ }
+
intel_edp_drrs_enable(intel_dp, crtc_state);
if (crtc_state->has_audio)
--
2.26.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Intel-gfx] [v8 12/12] drm/i915/display: [NOT FOR MERGE] Reduce blanking to support 4k60@10bpp for LSPCON
2020-10-15 23:48 [Intel-gfx] [v8 00/12] Enable HDR on MCA LSPCON based Gen9 devices Uma Shankar
` (12 preceding siblings ...)
2020-10-15 23:49 ` [Intel-gfx] [v8 11/12] drm/i915/lspcon: Do not send DRM infoframes to non-HDMI sinks Uma Shankar
@ 2020-10-15 23:49 ` Uma Shankar
2020-10-16 0:03 ` [Intel-gfx] ✗ Fi.CI.BAT: failure for Enable HDR on MCA LSPCON based Gen9 devices (rev8) Patchwork
14 siblings, 0 replies; 16+ messages in thread
From: Uma Shankar @ 2020-10-15 23:49 UTC (permalink / raw)
To: intel-gfx
Blanking needs to be reduced to incorporate DP and HDMI timing/link
bandwidth limitations for CEA modes (4k@60 at 10 bpp). DP can drive
17.28Gbs while 4k modes (VIC97 etc) at 10 bpp required 17.8 Gbps.
This will cause mode to blank out. Reduced Htotal by shortening the
back porch and front porch within permissible limits.
Note: This is for reference for userspace, not to be merged in kernel.
v2: This is marked as Not for merge and the responsibilty to program
these custom timings will be on userspace. This patch is just for
reference purposes. This is based on Ville's recommendation.
v3: updated commit message.
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
---
drivers/gpu/drm/i915/display/intel_dp.c | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
index 1eea514c62b3..fc9522b224aa 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -708,8 +708,10 @@ intel_dp_mode_valid(struct drm_connector *connector,
{
struct intel_dp *intel_dp = intel_attached_dp(to_intel_connector(connector));
struct intel_connector *intel_connector = to_intel_connector(connector);
+ struct intel_encoder *intel_encoder = intel_attached_encoder(intel_connector);
struct drm_display_mode *fixed_mode = intel_connector->panel.fixed_mode;
struct drm_i915_private *dev_priv = to_i915(connector->dev);
+ struct intel_lspcon *lspcon = enc_to_intel_lspcon(intel_encoder);
int target_clock = mode->clock;
int max_rate, mode_rate, max_lanes, max_link_clock;
int max_dotclk = dev_priv->max_dotclk_freq;
@@ -730,6 +732,21 @@ intel_dp_mode_valid(struct drm_connector *connector,
target_clock = fixed_mode->clock;
}
+ /*
+ * Reducing Blanking to incorporate DP and HDMI timing/link bandwidth
+ * limitations for CEA modes (4k@60 at 10 bpp). DP can drive 17.28Gbs
+ * while 4k modes (VIC97 etc) at 10 bpp required 17.8 Gbps. This will
+ * cause mode to blank out. Reduced Htotal by shortening the back porch
+ * and front porch within permissible limits.
+ */
+ if (lspcon->active && lspcon->hdr_supported &&
+ mode->clock > 570000) {
+ mode->clock = 570000;
+ mode->htotal -= 180;
+ mode->hsync_start -= 72;
+ mode->hsync_end -= 72;
+ }
+
max_link_clock = intel_dp_max_link_rate(intel_dp);
max_lanes = intel_dp_max_lane_count(intel_dp);
--
2.26.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Intel-gfx] ✗ Fi.CI.BAT: failure for Enable HDR on MCA LSPCON based Gen9 devices (rev8)
2020-10-15 23:48 [Intel-gfx] [v8 00/12] Enable HDR on MCA LSPCON based Gen9 devices Uma Shankar
` (13 preceding siblings ...)
2020-10-15 23:49 ` [Intel-gfx] [v8 12/12] drm/i915/display: [NOT FOR MERGE] Reduce blanking to support 4k60@10bpp for LSPCON Uma Shankar
@ 2020-10-16 0:03 ` Patchwork
14 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2020-10-16 0:03 UTC (permalink / raw)
To: Shankar, Uma; +Cc: intel-gfx
[-- Attachment #1.1: Type: text/plain, Size: 19366 bytes --]
== Series Details ==
Series: Enable HDR on MCA LSPCON based Gen9 devices (rev8)
URL : https://patchwork.freedesktop.org/series/68081/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_9145 -> Patchwork_18710
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_18710 absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_18710, please notify your bug team to allow them
to document this new failure mode, which will reduce false positives in CI.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/index.html
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_18710:
### IGT changes ###
#### Possible regressions ####
* igt@i915_selftest@live@client:
- fi-ivb-3770: [PASS][1] -> [DMESG-WARN][2] +33 similar issues
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-ivb-3770/igt@i915_selftest@live@client.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-ivb-3770/igt@i915_selftest@live@client.html
* igt@i915_selftest@live@dmabuf:
- fi-cfl-8700k: [PASS][3] -> [DMESG-WARN][4] +34 similar issues
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-cfl-8700k/igt@i915_selftest@live@dmabuf.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-cfl-8700k/igt@i915_selftest@live@dmabuf.html
* igt@i915_selftest@live@gem:
- fi-snb-2600: [PASS][5] -> [DMESG-WARN][6] +33 similar issues
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-snb-2600/igt@i915_selftest@live@gem.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-snb-2600/igt@i915_selftest@live@gem.html
* igt@i915_selftest@live@gem_contexts:
- fi-tgl-y: [PASS][7] -> [DMESG-WARN][8] +30 similar issues
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-tgl-y/igt@i915_selftest@live@gem_contexts.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-tgl-y/igt@i915_selftest@live@gem_contexts.html
* igt@i915_selftest@live@gt_engines:
- fi-skl-lmem: [PASS][9] -> [DMESG-WARN][10] +34 similar issues
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-skl-lmem/igt@i915_selftest@live@gt_engines.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-skl-lmem/igt@i915_selftest@live@gt_engines.html
* igt@i915_selftest@live@gt_heartbeat:
- fi-skl-6600u: [PASS][11] -> [DMESG-WARN][12] +34 similar issues
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-skl-6600u/igt@i915_selftest@live@gt_heartbeat.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-skl-6600u/igt@i915_selftest@live@gt_heartbeat.html
- fi-kbl-x1275: [PASS][13] -> [DMESG-WARN][14] +34 similar issues
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-kbl-x1275/igt@i915_selftest@live@gt_heartbeat.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-kbl-x1275/igt@i915_selftest@live@gt_heartbeat.html
* igt@i915_selftest@live@gt_lrc:
- fi-ilk-650: [PASS][15] -> [DMESG-WARN][16] +33 similar issues
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-ilk-650/igt@i915_selftest@live@gt_lrc.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-ilk-650/igt@i915_selftest@live@gt_lrc.html
* igt@i915_selftest@live@gt_mocs:
- fi-byt-j1900: [PASS][17] -> [DMESG-WARN][18] +34 similar issues
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-byt-j1900/igt@i915_selftest@live@gt_mocs.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-byt-j1900/igt@i915_selftest@live@gt_mocs.html
* igt@i915_selftest@live@gt_pm:
- fi-cml-s: [PASS][19] -> [DMESG-WARN][20] +34 similar issues
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-cml-s/igt@i915_selftest@live@gt_pm.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-cml-s/igt@i915_selftest@live@gt_pm.html
* igt@i915_selftest@live@gt_timelines:
- fi-skl-6700k2: [PASS][21] -> [DMESG-WARN][22] +31 similar issues
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-skl-6700k2/igt@i915_selftest@live@gt_timelines.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-skl-6700k2/igt@i915_selftest@live@gt_timelines.html
* igt@i915_selftest@live@hangcheck:
- fi-elk-e7500: [PASS][23] -> [DMESG-WARN][24] +33 similar issues
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-elk-e7500/igt@i915_selftest@live@hangcheck.html
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-elk-e7500/igt@i915_selftest@live@hangcheck.html
- fi-cml-u2: [PASS][25] -> [DMESG-WARN][26] +34 similar issues
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-cml-u2/igt@i915_selftest@live@hangcheck.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-cml-u2/igt@i915_selftest@live@hangcheck.html
* igt@i915_selftest@live@late_gt_pm:
- fi-kbl-guc: [PASS][27] -> [DMESG-WARN][28] +31 similar issues
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-kbl-guc/igt@i915_selftest@live@late_gt_pm.html
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-kbl-guc/igt@i915_selftest@live@late_gt_pm.html
* igt@i915_selftest@live@mman:
- fi-bsw-kefka: [PASS][29] -> [DMESG-WARN][30] +34 similar issues
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-bsw-kefka/igt@i915_selftest@live@mman.html
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-bsw-kefka/igt@i915_selftest@live@mman.html
* igt@i915_selftest@live@objects:
- fi-snb-2520m: [PASS][31] -> [DMESG-WARN][32] +33 similar issues
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-snb-2520m/igt@i915_selftest@live@objects.html
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-snb-2520m/igt@i915_selftest@live@objects.html
* igt@i915_selftest@live@perf:
- fi-kbl-r: [PASS][33] -> [DMESG-WARN][34] +34 similar issues
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-kbl-r/igt@i915_selftest@live@perf.html
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-kbl-r/igt@i915_selftest@live@perf.html
* igt@i915_selftest@live@requests:
- fi-cfl-guc: [PASS][35] -> [DMESG-WARN][36] +34 similar issues
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-cfl-guc/igt@i915_selftest@live@requests.html
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-cfl-guc/igt@i915_selftest@live@requests.html
- fi-kbl-soraka: [PASS][37] -> [DMESG-WARN][38] +33 similar issues
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-kbl-soraka/igt@i915_selftest@live@requests.html
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-kbl-soraka/igt@i915_selftest@live@requests.html
- fi-hsw-4770: [PASS][39] -> [DMESG-WARN][40] +33 similar issues
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-hsw-4770/igt@i915_selftest@live@requests.html
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-hsw-4770/igt@i915_selftest@live@requests.html
* igt@i915_selftest@live@ring_submission:
- fi-icl-y: [PASS][41] -> [DMESG-WARN][42] +34 similar issues
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-icl-y/igt@i915_selftest@live@ring_submission.html
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-icl-y/igt@i915_selftest@live@ring_submission.html
- fi-bsw-nick: [PASS][43] -> [DMESG-WARN][44] +34 similar issues
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-bsw-nick/igt@i915_selftest@live@ring_submission.html
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-bsw-nick/igt@i915_selftest@live@ring_submission.html
* igt@i915_selftest@live@sanitycheck:
- fi-kbl-7500u: [PASS][45] -> [DMESG-WARN][46] +32 similar issues
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-kbl-7500u/igt@i915_selftest@live@sanitycheck.html
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-kbl-7500u/igt@i915_selftest@live@sanitycheck.html
* igt@i915_selftest@live@uncore:
- fi-glk-dsi: [PASS][47] -> [DMESG-WARN][48] +34 similar issues
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-glk-dsi/igt@i915_selftest@live@uncore.html
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-glk-dsi/igt@i915_selftest@live@uncore.html
- fi-bdw-5557u: [PASS][49] -> [DMESG-WARN][50] +33 similar issues
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-bdw-5557u/igt@i915_selftest@live@uncore.html
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-bdw-5557u/igt@i915_selftest@live@uncore.html
* igt@i915_selftest@live@workarounds:
- fi-tgl-u2: [PASS][51] -> [DMESG-WARN][52] +33 similar issues
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-tgl-u2/igt@i915_selftest@live@workarounds.html
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-tgl-u2/igt@i915_selftest@live@workarounds.html
- fi-bsw-n3050: [PASS][53] -> [DMESG-WARN][54] +34 similar issues
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-bsw-n3050/igt@i915_selftest@live@workarounds.html
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-bsw-n3050/igt@i915_selftest@live@workarounds.html
#### Warnings ####
* igt@core_hotunplug@unbind-rebind:
- fi-hsw-4770: [WARN][55] ([i915#2283]) -> [DMESG-WARN][56]
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-hsw-4770/igt@core_hotunplug@unbind-rebind.html
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-hsw-4770/igt@core_hotunplug@unbind-rebind.html
- fi-bdw-5557u: [WARN][57] ([i915#2283]) -> [DMESG-WARN][58]
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-bdw-5557u/igt@core_hotunplug@unbind-rebind.html
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-bdw-5557u/igt@core_hotunplug@unbind-rebind.html
#### Suppressed ####
The following results come from untrusted machines, tests, or statuses.
They do not affect the overall result.
* igt@i915_selftest@live@active:
- {fi-kbl-7560u}: [PASS][59] -> [DMESG-WARN][60] +34 similar issues
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-kbl-7560u/igt@i915_selftest@live@active.html
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-kbl-7560u/igt@i915_selftest@live@active.html
* igt@i915_selftest@live@execlists:
- {fi-tgl-dsi}: [INCOMPLETE][61] ([i915#2268]) -> [DMESG-WARN][62]
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-tgl-dsi/igt@i915_selftest@live@execlists.html
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-tgl-dsi/igt@i915_selftest@live@execlists.html
* igt@i915_selftest@live@gem_contexts:
- {fi-tgl-dsi}: [PASS][63] -> [DMESG-WARN][64] +26 similar issues
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-tgl-dsi/igt@i915_selftest@live@gem_contexts.html
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-tgl-dsi/igt@i915_selftest@live@gem_contexts.html
* igt@i915_selftest@live@mman:
- {fi-ehl-1}: [PASS][65] -> [DMESG-WARN][66] +33 similar issues
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-ehl-1/igt@i915_selftest@live@mman.html
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-ehl-1/igt@i915_selftest@live@mman.html
* igt@i915_selftest@live@perf:
- {fi-tgl-dsi}: NOTRUN -> [DMESG-WARN][67] +2 similar issues
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-tgl-dsi/igt@i915_selftest@live@perf.html
Known issues
------------
Here are the changes found in Patchwork_18710 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_flink_basic@flink-lifetime:
- fi-tgl-y: [PASS][68] -> [DMESG-WARN][69] ([i915#402])
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-tgl-y/igt@gem_flink_basic@flink-lifetime.html
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-tgl-y/igt@gem_flink_basic@flink-lifetime.html
* igt@i915_module_load@reload:
- fi-tgl-y: [PASS][70] -> [DMESG-WARN][71] ([k.org#205379])
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-tgl-y/igt@i915_module_load@reload.html
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-tgl-y/igt@i915_module_load@reload.html
* igt@i915_pm_rpm@module-reload:
- fi-kbl-7500u: [PASS][72] -> [DMESG-WARN][73] ([i915#203]) +1 similar issue
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-kbl-7500u/igt@i915_pm_rpm@module-reload.html
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-kbl-7500u/igt@i915_pm_rpm@module-reload.html
* igt@kms_chamelium@hdmi-crc-fast:
- fi-kbl-7500u: [PASS][74] -> [DMESG-WARN][75] ([i915#2203])
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-kbl-7500u/igt@kms_chamelium@hdmi-crc-fast.html
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-kbl-7500u/igt@kms_chamelium@hdmi-crc-fast.html
* igt@kms_flip@basic-flip-vs-wf_vblank@b-edp1:
- fi-icl-u2: [PASS][76] -> [DMESG-WARN][77] ([i915#1982]) +1 similar issue
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-icl-u2/igt@kms_flip@basic-flip-vs-wf_vblank@b-edp1.html
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-icl-u2/igt@kms_flip@basic-flip-vs-wf_vblank@b-edp1.html
* igt@kms_psr@sprite_plane_onoff:
- fi-tgl-y: [PASS][78] -> [DMESG-WARN][79] ([i915#1982]) +1 similar issue
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-tgl-y/igt@kms_psr@sprite_plane_onoff.html
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-tgl-y/igt@kms_psr@sprite_plane_onoff.html
#### Possible fixes ####
* igt@i915_pm_rpm@basic-pci-d3-state:
- fi-bsw-kefka: [DMESG-WARN][80] ([i915#1982]) -> [PASS][81]
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-bsw-kefka/igt@i915_pm_rpm@basic-pci-d3-state.html
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-bsw-kefka/igt@i915_pm_rpm@basic-pci-d3-state.html
* igt@kms_busy@basic@flip:
- {fi-tgl-dsi}: [DMESG-WARN][82] ([i915#1982]) -> [PASS][83]
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-tgl-dsi/igt@kms_busy@basic@flip.html
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-tgl-dsi/igt@kms_busy@basic@flip.html
* igt@kms_chamelium@dp-crc-fast:
- fi-kbl-7500u: [FAIL][84] ([i915#1161] / [i915#262]) -> [PASS][85]
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-kbl-7500u/igt@kms_chamelium@dp-crc-fast.html
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-kbl-7500u/igt@kms_chamelium@dp-crc-fast.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
- fi-icl-u2: [DMESG-WARN][86] ([i915#1982]) -> [PASS][87]
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-icl-u2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-icl-u2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html
* igt@vgem_basic@dmabuf-fence:
- fi-tgl-y: [DMESG-WARN][88] ([i915#402]) -> [PASS][89] +1 similar issue
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-tgl-y/igt@vgem_basic@dmabuf-fence.html
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-tgl-y/igt@vgem_basic@dmabuf-fence.html
#### Warnings ####
* igt@i915_module_load@reload:
- fi-tgl-u2: [DMESG-WARN][90] ([i915#1982] / [k.org#205379]) -> [DMESG-WARN][91] ([k.org#205379])
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-tgl-u2/igt@i915_module_load@reload.html
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-tgl-u2/igt@i915_module_load@reload.html
* igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
- fi-tgl-y: [DMESG-WARN][92] ([i915#2411]) -> [DMESG-WARN][93] ([i915#1982] / [i915#2411])
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9145/fi-tgl-y/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/fi-tgl-y/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[i915#1161]: https://gitlab.freedesktop.org/drm/intel/issues/1161
[i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982
[i915#203]: https://gitlab.freedesktop.org/drm/intel/issues/203
[i915#2203]: https://gitlab.freedesktop.org/drm/intel/issues/2203
[i915#2268]: https://gitlab.freedesktop.org/drm/intel/issues/2268
[i915#2283]: https://gitlab.freedesktop.org/drm/intel/issues/2283
[i915#2411]: https://gitlab.freedesktop.org/drm/intel/issues/2411
[i915#262]: https://gitlab.freedesktop.org/drm/intel/issues/262
[i915#402]: https://gitlab.freedesktop.org/drm/intel/issues/402
[k.org#205379]: https://bugzilla.kernel.org/show_bug.cgi?id=205379
Participating hosts (44 -> 38)
------------------------------
Missing (6): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-byt-clapper fi-bdw-samus
Build changes
-------------
* Linux: CI_DRM_9145 -> Patchwork_18710
CI-20190529: 20190529
CI_DRM_9145: 1b4f5161759852616a451c1366b95ff2ab8a1263 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5820: 520f88d7817ebb7464907252a32e8e747429102b @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_18710: e6ee6102dccdd80038ab592bcd7408f74568444d @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
e6ee6102dccd drm/i915/display: [NOT FOR MERGE] Reduce blanking to support 4k60@10bpp for LSPCON
02d1d49d45b9 drm/i915/lspcon: Do not send DRM infoframes to non-HDMI sinks
beefd06e6c9f drm/i915/lspcon: Create separate infoframe_enabled helper
adc0af969c20 drm/i915/display: Implement DRM infoframe read for LSPCON
c88e51dacf4d drm/i915/display: Implement infoframes readback for LSPCON
0631b094c3ed drm/i915/display: Enable HDR for Parade based lspcon
cc0e9c0dc660 drm/i915/display: Enable BT2020 for HDR on LSPCON devices
813cb31bc7d1 drm/i915/display: Nuke bogus lspcon check
a05978eaafe6 drm/i915/display: Attach content type property for LSPCON
721405832649 drm/i915/display: Attach HDR property for capable Gen9 devices
15c1cb8280c0 drm/i915/display: Enable HDR on gen9 devices with MCA Lspcon
62480888ccb1 drm/i915/display: Add HDR Capability detection for LSPCON
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18710/index.html
[-- Attachment #1.2: Type: text/html, Size: 22024 bytes --]
[-- Attachment #2: Type: text/plain, Size: 160 bytes --]
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 16+ messages in thread
end of thread, other threads:[~2020-10-16 0:03 UTC | newest]
Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-10-15 23:48 [Intel-gfx] [v8 00/12] Enable HDR on MCA LSPCON based Gen9 devices Uma Shankar
2020-10-15 23:31 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for Enable HDR on MCA LSPCON based Gen9 devices (rev8) Patchwork
2020-10-15 23:33 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork
2020-10-15 23:48 ` [Intel-gfx] [v8 01/12] drm/i915/display: Add HDR Capability detection for LSPCON Uma Shankar
2020-10-15 23:48 ` [Intel-gfx] [v8 02/12] drm/i915/display: Enable HDR on gen9 devices with MCA Lspcon Uma Shankar
2020-10-15 23:48 ` [Intel-gfx] [v8 03/12] drm/i915/display: Attach HDR property for capable Gen9 devices Uma Shankar
2020-10-15 23:48 ` [Intel-gfx] [v8 04/12] drm/i915/display: Attach content type property for LSPCON Uma Shankar
2020-10-15 23:48 ` [Intel-gfx] [v8 05/12] drm/i915/display: Nuke bogus lspcon check Uma Shankar
2020-10-15 23:48 ` [Intel-gfx] [v8 06/12] drm/i915/display: Enable BT2020 for HDR on LSPCON devices Uma Shankar
2020-10-15 23:48 ` [Intel-gfx] [v8 07/12] drm/i915/display: Enable HDR for Parade based lspcon Uma Shankar
2020-10-15 23:48 ` [Intel-gfx] [v8 08/12] drm/i915/display: Implement infoframes readback for LSPCON Uma Shankar
2020-10-15 23:48 ` [Intel-gfx] [v8 09/12] drm/i915/display: Implement DRM infoframe read " Uma Shankar
2020-10-15 23:49 ` [Intel-gfx] [v8 10/12] drm/i915/lspcon: Create separate infoframe_enabled helper Uma Shankar
2020-10-15 23:49 ` [Intel-gfx] [v8 11/12] drm/i915/lspcon: Do not send DRM infoframes to non-HDMI sinks Uma Shankar
2020-10-15 23:49 ` [Intel-gfx] [v8 12/12] drm/i915/display: [NOT FOR MERGE] Reduce blanking to support 4k60@10bpp for LSPCON Uma Shankar
2020-10-16 0:03 ` [Intel-gfx] ✗ Fi.CI.BAT: failure for Enable HDR on MCA LSPCON based Gen9 devices (rev8) Patchwork
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox