[Intel-gfx] [PATCH 4/7] drm/i915/display: Set HDR Infoframe for HDR capable LSPCON devices
Jani Nikula
jani.nikula at linux.intel.com
Tue Apr 7 12:37:51 UTC 2020
On Tue, 07 Apr 2020, Jani Nikula <jani.nikula at linux.intel.com> wrote:
> On Fri, 27 Mar 2020, Vipin Anand <vipin.anand at intel.com> wrote:
>> From: Uma Shankar <uma.shankar at intel.com>
>>
>> Send Dynamic Range and Mastering Infoframe (DRM for HDR metadata)
>> as SDP packet to LSPCON following the DP spec. LSPCON receives the
>> same and sends it to HDMI sink.
>>
>> v2: Suppressed some warnings. No functional change.
>>
>> Signed-off-by: Uma Shankar <uma.shankar at intel.com>
>> ---
>> drivers/gpu/drm/drm_atomic_state_helper.c | 1 +
>> drivers/gpu/drm/drm_atomic_uapi.c | 1 +
>> drivers/gpu/drm/i915/display/intel_lspcon.h | 1 +
>> include/drm/drm_connector.h | 1 +
>> 4 files changed, 4 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/drm_atomic_state_helper.c b/drivers/gpu/drm/drm_atomic_state_helper.c
>> index 7cf3cf936547..7cf98c06f424 100644
>> --- a/drivers/gpu/drm/drm_atomic_state_helper.c
>> +++ b/drivers/gpu/drm/drm_atomic_state_helper.c
>> @@ -468,6 +468,7 @@ __drm_atomic_helper_connector_duplicate_state(struct drm_connector *connector,
>>
>> if (state->hdr_output_metadata)
>> drm_property_blob_get(state->hdr_output_metadata);
>> + state->hdr_metadata_changed = false;
>>
>> /* Don't copy over a writeback job, they are used only once */
>> state->writeback_job = NULL;
>> diff --git a/drivers/gpu/drm/drm_atomic_uapi.c b/drivers/gpu/drm/drm_atomic_uapi.c
>> index a1e5e262bae2..4c520e0b9872 100644
>> --- a/drivers/gpu/drm/drm_atomic_uapi.c
>> +++ b/drivers/gpu/drm/drm_atomic_uapi.c
>> @@ -734,6 +734,7 @@ static int drm_atomic_connector_set_property(struct drm_connector *connector,
>> val,
>> sizeof(struct hdr_output_metadata), -1,
>> &replaced);
>> + state->hdr_metadata_changed |= replaced;
>> return ret;
>> } else if (property == config->aspect_ratio_property) {
>> state->picture_aspect_ratio = val;
>> diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.h b/drivers/gpu/drm/i915/display/intel_lspcon.h
>> index b2051f236223..bc34124f532e 100644
>> --- a/drivers/gpu/drm/i915/display/intel_lspcon.h
>> +++ b/drivers/gpu/drm/i915/display/intel_lspcon.h
>> @@ -38,4 +38,5 @@ void lspcon_drm_write_infoframe(struct intel_encoder *encoder,
>> const struct intel_crtc_state *crtc_state,
>> unsigned int type,
>> const void *frame, ssize_t len);
>> +
>
> Superfluous change.
>
> Patch needs to be posted to dri-devel.
Alternatively, the details need to be in intel specific states.
>
> BR,
> Jani.
>
>> #endif /* __INTEL_LSPCON_H__ */
>> diff --git a/include/drm/drm_connector.h b/include/drm/drm_connector.h
>> index 221910948b37..28df268aa1a7 100644
>> --- a/include/drm/drm_connector.h
>> +++ b/include/drm/drm_connector.h
>> @@ -661,6 +661,7 @@ struct drm_connector_state {
>> * DRM blob property for HDR output metadata
>> */
>> struct drm_property_blob *hdr_output_metadata;
>> + u8 hdr_metadata_changed : 1;
>> };
>>
>> /**
--
Jani Nikula, Intel Open Source Graphics Center
More information about the Intel-gfx
mailing list