All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 2/4] drm: Fix docbook warnings in hdr metadata helper structures
  2019-05-29 19:59 [PATCH 0/4] Document fixes for DRM UAPI and HDR Uma Shankar
@ 2019-05-29 19:59   ` Uma Shankar
  2019-05-29 19:59 ` [PATCH 1/4] drm: Drop a redundant unused variable Uma Shankar
                     ` (6 subsequent siblings)
  7 siblings, 0 replies; 22+ messages in thread
From: Uma Shankar @ 2019-05-29 19:31 UTC (permalink / raw)
  To: intel-gfx, dri-devel
  Cc: linux-fbdev, dcastagna, jonas, Maxime Ripard,
	Bartlomiej Zolnierkiewicz, Hans Verkuil, David Airlie, seanpaul

Fixes the following warnings:
./include/drm/drm_mode_config.h:841: warning: Incorrect use of
kernel-doc format:          * hdr_output_metadata_property: Connector
property containing hdr
./include/drm/drm_mode_config.h:918: warning: Function parameter or member 'hdr_output_metadata_property' not described in 'drm_mode_config'
./include/drm/drm_connector.h:1251: warning: Function parameter or member 'hdr_output_metadata' not described in 'drm_connector'
./include/drm/drm_connector.h:1251: warning: Function parameter or member 'hdr_sink_metadata' not described in 'drm_connector'

Also adds some property documentation for HDR Metadata Connector
Property in connector property create function.

v2: Fixed Sean Paul's review comments.

v3: Fixed Daniel Vetter's review comments, added the UAPI structure
definition section in kernel docs.

Cc: Shashank Sharma <shashank.sharma@intel.com>
Cc: Ville Syrj채l채 <ville.syrjala@linux.intel.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Maxime Ripard <maxime.ripard@bootlin.com>
Cc: Sean Paul <sean@poorly.run>
Cc: David Airlie <airlied@linux.ie>
Cc: Daniel Vetter <daniel@ffwll.ch>
Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Cc: "Ville Syrj채l채" <ville.syrjala@linux.intel.com>
Cc: Hans Verkuil <hansverk@cisco.com>
Cc: dri-devel@lists.freedesktop.org
Cc: linux-fbdev@vger.kernel.org
Reviewed-by: Sean Paul <sean@poorly.run>
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
---
 Documentation/gpu/drm-uapi.rst  |  9 +++++++++
 drivers/gpu/drm/drm_connector.c | 31 +++++++++++++++++++++++++++++++
 include/drm/drm_connector.h     |  1 +
 include/drm/drm_mode_config.h   |  4 ++--
 include/linux/hdmi.h            |  1 +
 include/uapi/drm/drm_mode.h     | 37 ++++++++++++++++++++++++++++++++++++-
 6 files changed, 80 insertions(+), 3 deletions(-)

diff --git a/Documentation/gpu/drm-uapi.rst b/Documentation/gpu/drm-uapi.rst
index 05874d0..6b39e2c 100644
--- a/Documentation/gpu/drm-uapi.rst
+++ b/Documentation/gpu/drm-uapi.rst
@@ -329,3 +329,12 @@ DRM_IOCTL_MODESET_CTL
     mode setting, since on many devices the vertical blank counter is
     reset to 0 at some point during modeset. Modern drivers should not
     call this any more since with kernel mode setting it is a no-op.
+
+Userspace API Structures
+============
+
+.. kernel-doc:: include/uapi/drm/drm_mode.h
+   :doc: overview
+
+.. kernel-doc:: include/uapi/drm/drm_mode.h
+   :internal:
diff --git a/drivers/gpu/drm/drm_connector.c b/drivers/gpu/drm/drm_connector.c
index c9ac8b9..6a93527 100644
--- a/drivers/gpu/drm/drm_connector.c
+++ b/drivers/gpu/drm/drm_connector.c
@@ -956,6 +956,37 @@ int drm_display_info_set_bus_formats(struct drm_display_info *info,
  *	  is no longer protected and userspace should take appropriate action
  *	  (whatever that might be).
  *
+ * HDR_OUTPUT_METADATA:
+ *	Connector property to enable userspace to send HDR Metadata to
+ *	driver. This metadata is based on the composition and blending
+ *	policies decided by user, taking into account the hardware and
+ *	sink capabilities. The driver gets this metadata and creates a
+ *	Dynamic Range and Mastering Infoframe (DRM) in case of HDMI,
+ *	SDP packet (Non-audio INFOFRAME SDP v1.3) for DP. This is then
+ *	sent to sink. This notifies the sink of the upcoming frame's Color
+ *	Encoding and Luminance parameters.
+ *
+ *	Userspace first need to detect the HDR capabilities of sink by
+ *	reading and parsing the EDID. Details of HDR metadata for HDMI
+ *	are added in CTA 861.G spec. For DP , its defined in VESA DP
+ *	Standard v1.4. It needs to then get the metadata information
+ *	of the video/game/app content which are encoded in HDR (basically
+ *	using HDR transfer functions). With this information it needs to
+ *	decide on a blending policy and compose the relevant
+ *	layers/overlays into a common format. Once this blending is done,
+ *	userspace will be aware of the metadata of the composed frame to
+ *	be send to sink. It then uses this property to communicate this
+ *	metadata to driver which then make a Infoframe packet and sends
+ *	to sink based on the type of encoder connected.
+ *
+ *	Userspace will be responsible to do Tone mapping operation in case:
+ *		- Some layers are HDR and others are SDR
+ *		- HDR layers luminance is not same as sink
+ *	It will even need to do colorspace conversion and get all layers
+ *	to one common colorspace for blending. It can use either GL, Media
+ *	or display engine to get this done based on the capabilties of the
+ *	associated hardware.
+ *
  * max bpc:
  *	This range property is used by userspace to limit the bit depth. When
  *	used the driver would limit the bpc in accordance with the valid range
diff --git a/include/drm/drm_connector.h b/include/drm/drm_connector.h
index 5476561..47e749b 100644
--- a/include/drm/drm_connector.h
+++ b/include/drm/drm_connector.h
@@ -1244,6 +1244,7 @@ struct drm_connector {
 	 */
 	struct llist_node free_node;
 
+	/** @hdr_sink_metadata: HDR Metadata Information read from sink */
 	struct hdr_sink_metadata hdr_sink_metadata;
 };
 
diff --git a/include/drm/drm_mode_config.h b/include/drm/drm_mode_config.h
index 4f88cc9..759d462 100644
--- a/include/drm/drm_mode_config.h
+++ b/include/drm/drm_mode_config.h
@@ -837,8 +837,8 @@ struct drm_mode_config {
 	struct drm_property *writeback_out_fence_ptr_property;
 
 	/**
-	 * hdr_output_metadata_property: Connector property containing hdr
-	 * metatda. This will be provided by userspace compositors based
+	 * @hdr_output_metadata_property: Connector property containing hdr
+	 * metatada. This will be provided by userspace compositors based
 	 * on HDR content
 	 */
 	struct drm_property *hdr_output_metadata_property;
diff --git a/include/linux/hdmi.h b/include/linux/hdmi.h
index ee55ba5..55c6db5 100644
--- a/include/linux/hdmi.h
+++ b/include/linux/hdmi.h
@@ -398,6 +398,7 @@ ssize_t hdmi_vendor_infoframe_pack_only(const struct hdmi_vendor_infoframe *fram
  * @spd: spd infoframe
  * @vendor: union of all vendor infoframes
  * @audio: audio infoframe
+ * @drm: Dynamic Range and Mastering infoframe
  *
  * This is used by the generic pack function. This works since all infoframes
  * have the same header which also indicates which type of infoframe should be
diff --git a/include/uapi/drm/drm_mode.h b/include/uapi/drm/drm_mode.h
index 997a7e0..5d3964f 100644
--- a/include/uapi/drm/drm_mode.h
+++ b/include/uapi/drm/drm_mode.h
@@ -33,6 +33,15 @@
 extern "C" {
 #endif
 
+/**
+ * DOC: overview
+ *
+ * DRM exposes many UAPI and structure definition to have a consistent
+ * and standardized interface with user.
+ * Userspace can refer to these structure definitions and UAPI formats
+ * to communicate to driver
+ */
+
 #define DRM_CONNECTOR_NAME_LEN	32
 #define DRM_DISPLAY_MODE_LEN	32
 #define DRM_PROP_NAME_LEN	32
@@ -630,7 +639,26 @@ struct drm_color_lut {
 	__u16 reserved;
 };
 
-/* HDR Metadata Infoframe as per 861.G spec */
+/**
+ * struct hdr_metadata_infoframe - HDR Metadata Infoframe Data.
+ * @eotf: Electro-Optical Transfer Function (EOTF) used in the stream.
+ * @metadata_type: Static_Metadata_Descriptor_ID.
+ * @display_primaries: Color Primaries of the Data.
+ * @display_primaries.x: X cordinate of color primary.
+ * @display_primaries.y: Y cordinate of color primary.
+ * @white_point: White Point of Colorspace Data.
+ * @white_point.x: X cordinate of whitepoint of color primary.
+ * @white_point.y: Y cordinate of whitepoint of color primary.
+ * @max_display_mastering_luminance: Max Mastering Display Luminance.
+ * @min_display_mastering_luminance: Min Mastering Display Luminance.
+ * @max_cll: Max Content Light Level.
+ * @max_fall: Max Frame Average Light Level.
+ *
+ * With drm subsystem using struct drm_rect to manage rectangular area this
+ * export it to user-space.
+ *
+ * Currently used by drm_mode_atomic blob property FB_DAMAGE_CLIPS.
+ */
 struct hdr_metadata_infoframe {
 	__u8 eotf;
 	__u8 metadata_type;
@@ -646,6 +674,13 @@ struct hdr_metadata_infoframe {
 	__u16 max_fall;
 };
 
+/**
+ * struct hdr_output_metadata - HDR output metadata
+ *
+ * Metadata Information to be passed from userspace
+ * @metadata_type: Static_Metadata_Descriptor_ID.
+ * @hdmi_metadata_type1: HDR Metadata Infoframe.
+ */
 struct hdr_output_metadata {
 	__u32 metadata_type;
 	union {
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [PATCH 0/4] Document fixes for DRM UAPI and HDR
@ 2019-05-29 19:59 Uma Shankar
  2019-05-29 19:59   ` Uma Shankar
                   ` (7 more replies)
  0 siblings, 8 replies; 22+ messages in thread
From: Uma Shankar @ 2019-05-29 19:59 UTC (permalink / raw)
  To: intel-gfx, dri-devel; +Cc: dcastagna, jonas, seanpaul

This series adds DRM UAPI header structure documentation to kernel
docs. Fixes issues with existing structure documentation in drm
uapi header.

This also fixes warnings in HDR doc and addresses suggestions from
Daniel Vetter.

Also dropped static function documentation in hdmi core.

Uma Shankar (4):
  drm: Drop a redundant unused variable
  drm: Fix docbook warnings in hdr metadata helper structures
  drm: Fixed doc warnings in drm uapi header
  video/hdmi: Dropped static functions from kernel doc

 Documentation/gpu/drm-uapi.rst  |  9 +++++++
 drivers/gpu/drm/drm_connector.c | 31 ++++++++++++++++++++++
 drivers/video/hdmi.c            | 32 +++++++++++-----------
 include/drm/drm_connector.h     |  3 +--
 include/drm/drm_mode_config.h   |  4 +--
 include/linux/hdmi.h            |  1 +
 include/uapi/drm/drm_mode.h     | 59 ++++++++++++++++++++++++++++++++++++++++-
 7 files changed, 118 insertions(+), 21 deletions(-)

-- 
1.9.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [PATCH 1/4] drm: Drop a redundant unused variable
  2019-05-29 19:59 [PATCH 0/4] Document fixes for DRM UAPI and HDR Uma Shankar
  2019-05-29 19:59   ` Uma Shankar
@ 2019-05-29 19:59 ` Uma Shankar
  2019-06-03  8:12   ` Daniel Vetter
  2019-05-29 19:59 ` [PATCH 3/4] drm: Fixed doc warnings in drm uapi header Uma Shankar
                   ` (5 subsequent siblings)
  7 siblings, 1 reply; 22+ messages in thread
From: Uma Shankar @ 2019-05-29 19:59 UTC (permalink / raw)
  To: intel-gfx, dri-devel
  Cc: dcastagna, jonas, emil.l.velikov, Uma Shankar, seanpaul

Drop a redundant and unused variable "hdr_output_metadata" from
drm_connector.

Suggested-by: Daniel Vetter <daniel@ffwll.ch>
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
---
 include/drm/drm_connector.h | 2 --
 1 file changed, 2 deletions(-)

diff --git a/include/drm/drm_connector.h b/include/drm/drm_connector.h
index f8f4003..5476561 100644
--- a/include/drm/drm_connector.h
+++ b/include/drm/drm_connector.h
@@ -1244,8 +1244,6 @@ struct drm_connector {
 	 */
 	struct llist_node free_node;
 
-	/* HDR metdata */
-	struct hdr_output_metadata hdr_output_metadata;
 	struct hdr_sink_metadata hdr_sink_metadata;
 };
 
-- 
1.9.1

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [PATCH 2/4] drm: Fix docbook warnings in hdr metadata helper structures
@ 2019-05-29 19:59   ` Uma Shankar
  0 siblings, 0 replies; 22+ messages in thread
From: Uma Shankar @ 2019-05-29 19:59 UTC (permalink / raw)
  To: intel-gfx, dri-devel
  Cc: linux-fbdev, dcastagna, jonas, Maxime Ripard,
	Bartlomiej Zolnierkiewicz, Hans Verkuil, David Airlie, seanpaul

Fixes the following warnings:
./include/drm/drm_mode_config.h:841: warning: Incorrect use of
kernel-doc format:          * hdr_output_metadata_property: Connector
property containing hdr
./include/drm/drm_mode_config.h:918: warning: Function parameter or member 'hdr_output_metadata_property' not described in 'drm_mode_config'
./include/drm/drm_connector.h:1251: warning: Function parameter or member 'hdr_output_metadata' not described in 'drm_connector'
./include/drm/drm_connector.h:1251: warning: Function parameter or member 'hdr_sink_metadata' not described in 'drm_connector'

Also adds some property documentation for HDR Metadata Connector
Property in connector property create function.

v2: Fixed Sean Paul's review comments.

v3: Fixed Daniel Vetter's review comments, added the UAPI structure
definition section in kernel docs.

Cc: Shashank Sharma <shashank.sharma@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Maxime Ripard <maxime.ripard@bootlin.com>
Cc: Sean Paul <sean@poorly.run>
Cc: David Airlie <airlied@linux.ie>
Cc: Daniel Vetter <daniel@ffwll.ch>
Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Cc: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
Cc: Hans Verkuil <hansverk@cisco.com>
Cc: dri-devel@lists.freedesktop.org
Cc: linux-fbdev@vger.kernel.org
Reviewed-by: Sean Paul <sean@poorly.run>
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
---
 Documentation/gpu/drm-uapi.rst  |  9 +++++++++
 drivers/gpu/drm/drm_connector.c | 31 +++++++++++++++++++++++++++++++
 include/drm/drm_connector.h     |  1 +
 include/drm/drm_mode_config.h   |  4 ++--
 include/linux/hdmi.h            |  1 +
 include/uapi/drm/drm_mode.h     | 37 ++++++++++++++++++++++++++++++++++++-
 6 files changed, 80 insertions(+), 3 deletions(-)

diff --git a/Documentation/gpu/drm-uapi.rst b/Documentation/gpu/drm-uapi.rst
index 05874d0..6b39e2c 100644
--- a/Documentation/gpu/drm-uapi.rst
+++ b/Documentation/gpu/drm-uapi.rst
@@ -329,3 +329,12 @@ DRM_IOCTL_MODESET_CTL
     mode setting, since on many devices the vertical blank counter is
     reset to 0 at some point during modeset. Modern drivers should not
     call this any more since with kernel mode setting it is a no-op.
+
+Userspace API Structures
+========================
+
+.. kernel-doc:: include/uapi/drm/drm_mode.h
+   :doc: overview
+
+.. kernel-doc:: include/uapi/drm/drm_mode.h
+   :internal:
diff --git a/drivers/gpu/drm/drm_connector.c b/drivers/gpu/drm/drm_connector.c
index c9ac8b9..6a93527 100644
--- a/drivers/gpu/drm/drm_connector.c
+++ b/drivers/gpu/drm/drm_connector.c
@@ -956,6 +956,37 @@ int drm_display_info_set_bus_formats(struct drm_display_info *info,
  *	  is no longer protected and userspace should take appropriate action
  *	  (whatever that might be).
  *
+ * HDR_OUTPUT_METADATA:
+ *	Connector property to enable userspace to send HDR Metadata to
+ *	driver. This metadata is based on the composition and blending
+ *	policies decided by user, taking into account the hardware and
+ *	sink capabilities. The driver gets this metadata and creates a
+ *	Dynamic Range and Mastering Infoframe (DRM) in case of HDMI,
+ *	SDP packet (Non-audio INFOFRAME SDP v1.3) for DP. This is then
+ *	sent to sink. This notifies the sink of the upcoming frame's Color
+ *	Encoding and Luminance parameters.
+ *
+ *	Userspace first need to detect the HDR capabilities of sink by
+ *	reading and parsing the EDID. Details of HDR metadata for HDMI
+ *	are added in CTA 861.G spec. For DP , its defined in VESA DP
+ *	Standard v1.4. It needs to then get the metadata information
+ *	of the video/game/app content which are encoded in HDR (basically
+ *	using HDR transfer functions). With this information it needs to
+ *	decide on a blending policy and compose the relevant
+ *	layers/overlays into a common format. Once this blending is done,
+ *	userspace will be aware of the metadata of the composed frame to
+ *	be send to sink. It then uses this property to communicate this
+ *	metadata to driver which then make a Infoframe packet and sends
+ *	to sink based on the type of encoder connected.
+ *
+ *	Userspace will be responsible to do Tone mapping operation in case:
+ *		- Some layers are HDR and others are SDR
+ *		- HDR layers luminance is not same as sink
+ *	It will even need to do colorspace conversion and get all layers
+ *	to one common colorspace for blending. It can use either GL, Media
+ *	or display engine to get this done based on the capabilties of the
+ *	associated hardware.
+ *
  * max bpc:
  *	This range property is used by userspace to limit the bit depth. When
  *	used the driver would limit the bpc in accordance with the valid range
diff --git a/include/drm/drm_connector.h b/include/drm/drm_connector.h
index 5476561..47e749b 100644
--- a/include/drm/drm_connector.h
+++ b/include/drm/drm_connector.h
@@ -1244,6 +1244,7 @@ struct drm_connector {
 	 */
 	struct llist_node free_node;
 
+	/** @hdr_sink_metadata: HDR Metadata Information read from sink */
 	struct hdr_sink_metadata hdr_sink_metadata;
 };
 
diff --git a/include/drm/drm_mode_config.h b/include/drm/drm_mode_config.h
index 4f88cc9..759d462 100644
--- a/include/drm/drm_mode_config.h
+++ b/include/drm/drm_mode_config.h
@@ -837,8 +837,8 @@ struct drm_mode_config {
 	struct drm_property *writeback_out_fence_ptr_property;
 
 	/**
-	 * hdr_output_metadata_property: Connector property containing hdr
-	 * metatda. This will be provided by userspace compositors based
+	 * @hdr_output_metadata_property: Connector property containing hdr
+	 * metatada. This will be provided by userspace compositors based
 	 * on HDR content
 	 */
 	struct drm_property *hdr_output_metadata_property;
diff --git a/include/linux/hdmi.h b/include/linux/hdmi.h
index ee55ba5..55c6db5 100644
--- a/include/linux/hdmi.h
+++ b/include/linux/hdmi.h
@@ -398,6 +398,7 @@ ssize_t hdmi_vendor_infoframe_pack_only(const struct hdmi_vendor_infoframe *fram
  * @spd: spd infoframe
  * @vendor: union of all vendor infoframes
  * @audio: audio infoframe
+ * @drm: Dynamic Range and Mastering infoframe
  *
  * This is used by the generic pack function. This works since all infoframes
  * have the same header which also indicates which type of infoframe should be
diff --git a/include/uapi/drm/drm_mode.h b/include/uapi/drm/drm_mode.h
index 997a7e0..5d3964f 100644
--- a/include/uapi/drm/drm_mode.h
+++ b/include/uapi/drm/drm_mode.h
@@ -33,6 +33,15 @@
 extern "C" {
 #endif
 
+/**
+ * DOC: overview
+ *
+ * DRM exposes many UAPI and structure definition to have a consistent
+ * and standardized interface with user.
+ * Userspace can refer to these structure definitions and UAPI formats
+ * to communicate to driver
+ */
+
 #define DRM_CONNECTOR_NAME_LEN	32
 #define DRM_DISPLAY_MODE_LEN	32
 #define DRM_PROP_NAME_LEN	32
@@ -630,7 +639,26 @@ struct drm_color_lut {
 	__u16 reserved;
 };
 
-/* HDR Metadata Infoframe as per 861.G spec */
+/**
+ * struct hdr_metadata_infoframe - HDR Metadata Infoframe Data.
+ * @eotf: Electro-Optical Transfer Function (EOTF) used in the stream.
+ * @metadata_type: Static_Metadata_Descriptor_ID.
+ * @display_primaries: Color Primaries of the Data.
+ * @display_primaries.x: X cordinate of color primary.
+ * @display_primaries.y: Y cordinate of color primary.
+ * @white_point: White Point of Colorspace Data.
+ * @white_point.x: X cordinate of whitepoint of color primary.
+ * @white_point.y: Y cordinate of whitepoint of color primary.
+ * @max_display_mastering_luminance: Max Mastering Display Luminance.
+ * @min_display_mastering_luminance: Min Mastering Display Luminance.
+ * @max_cll: Max Content Light Level.
+ * @max_fall: Max Frame Average Light Level.
+ *
+ * With drm subsystem using struct drm_rect to manage rectangular area this
+ * export it to user-space.
+ *
+ * Currently used by drm_mode_atomic blob property FB_DAMAGE_CLIPS.
+ */
 struct hdr_metadata_infoframe {
 	__u8 eotf;
 	__u8 metadata_type;
@@ -646,6 +674,13 @@ struct hdr_metadata_infoframe {
 	__u16 max_fall;
 };
 
+/**
+ * struct hdr_output_metadata - HDR output metadata
+ *
+ * Metadata Information to be passed from userspace
+ * @metadata_type: Static_Metadata_Descriptor_ID.
+ * @hdmi_metadata_type1: HDR Metadata Infoframe.
+ */
 struct hdr_output_metadata {
 	__u32 metadata_type;
 	union {
-- 
1.9.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [PATCH 3/4] drm: Fixed doc warnings in drm uapi header
  2019-05-29 19:59 [PATCH 0/4] Document fixes for DRM UAPI and HDR Uma Shankar
  2019-05-29 19:59   ` Uma Shankar
  2019-05-29 19:59 ` [PATCH 1/4] drm: Drop a redundant unused variable Uma Shankar
@ 2019-05-29 19:59 ` Uma Shankar
  2019-06-03  8:26   ` Daniel Vetter
  2019-05-29 19:59 ` [PATCH 4/4] video/hdmi: Dropped static functions from kernel doc Uma Shankar
                   ` (4 subsequent siblings)
  7 siblings, 1 reply; 22+ messages in thread
From: Uma Shankar @ 2019-05-29 19:59 UTC (permalink / raw)
  To: intel-gfx, dri-devel; +Cc: dcastagna, jonas, seanpaul

Fixed doc warnings in drm uapi header. All the UAPI
structures are now documented in kernel doc.

Signed-off-by: Uma Shankar <uma.shankar@intel.com>
---
 include/uapi/drm/drm_mode.h | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/include/uapi/drm/drm_mode.h b/include/uapi/drm/drm_mode.h
index 5d3964f..02b2a2b 100644
--- a/include/uapi/drm/drm_mode.h
+++ b/include/uapi/drm/drm_mode.h
@@ -861,6 +861,10 @@ struct drm_format_modifier {
 };
 
 /**
+ * struct drm_mode_create_blob - Create New block property
+ * @data: Pointer to data to copy.
+ * @length: Length of data to copy.
+ * @blob_id: new property ID.
  * Create a new 'blob' data property, copying length bytes from data pointer,
  * and returning new blob ID.
  */
@@ -874,6 +878,8 @@ struct drm_mode_create_blob {
 };
 
 /**
+ * struct drm_mode_destroy_blob - Destroy user blob
+ * @blob_id: blob_id to destroy
  * Destroy a user-created blob property.
  */
 struct drm_mode_destroy_blob {
@@ -881,6 +887,12 @@ struct drm_mode_destroy_blob {
 };
 
 /**
+ * struct drm_mode_create_lease - Create lease
+ * @object_ids: Pointer to array of object ids.
+ * @object_count: Number of object ids.
+ * @flags: flags for new FD.
+ * @lessee_id: unique identifier for lessee.
+ * @fd: file descriptor to new drm_master file.
  * Lease mode resources, creating another drm_master.
  */
 struct drm_mode_create_lease {
@@ -898,6 +910,10 @@ struct drm_mode_create_lease {
 };
 
 /**
+ * struct drm_mode_list_lessees - List lessees
+ * @count_lessees: Number of lessees.
+ * @pad: pad.
+ * @lessees_ptr: Pointer to lessess.
  * List lesses from a drm_master
  */
 struct drm_mode_list_lessees {
@@ -918,6 +934,10 @@ struct drm_mode_list_lessees {
 };
 
 /**
+ * struct drm_mode_get_lease - Get Lease
+ * @count_objects: Number of leased objects.
+ * @pad: pad.
+ * @objects_ptr: Pointer to objects.
  * Get leased objects
  */
 struct drm_mode_get_lease {
@@ -938,6 +958,8 @@ struct drm_mode_get_lease {
 };
 
 /**
+ * struct drm_mode_revoke_lease - Revoke lease
+ * @lessee_id: Unique ID of lessee.
  * Revoke lease
  */
 struct drm_mode_revoke_lease {
-- 
1.9.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [PATCH 4/4] video/hdmi: Dropped static functions from kernel doc
  2019-05-29 19:59 [PATCH 0/4] Document fixes for DRM UAPI and HDR Uma Shankar
                   ` (2 preceding siblings ...)
  2019-05-29 19:59 ` [PATCH 3/4] drm: Fixed doc warnings in drm uapi header Uma Shankar
@ 2019-05-29 19:59 ` Uma Shankar
  2019-06-03  8:24   ` Daniel Vetter
  2019-05-29 20:35 ` ✓ Fi.CI.BAT: success for Document fixes for DRM UAPI and HDR Patchwork
                   ` (3 subsequent siblings)
  7 siblings, 1 reply; 22+ messages in thread
From: Uma Shankar @ 2019-05-29 19:59 UTC (permalink / raw)
  To: intel-gfx, dri-devel; +Cc: dcastagna, jonas, seanpaul

Dropped static functions from kernel documentation.

Suggested-by: Daniel Vetter <daniel@ffwll.ch>
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
---
 drivers/video/hdmi.c | 32 ++++++++++++++++----------------
 1 file changed, 16 insertions(+), 16 deletions(-)

diff --git a/drivers/video/hdmi.c b/drivers/video/hdmi.c
index b99ba01..72c654b 100644
--- a/drivers/video/hdmi.c
+++ b/drivers/video/hdmi.c
@@ -1191,11 +1191,11 @@ static const char *hdmi_nups_get_name(enum hdmi_nups nups)
 	return "Invalid";
 }
 
-/**
+/*
  * hdmi_avi_infoframe_log() - log info of HDMI AVI infoframe
- * @level: logging level
- * @dev: device
- * @frame: HDMI AVI infoframe
+ * level: logging level
+ * dev: device
+ * frame: HDMI AVI infoframe
  */
 static void hdmi_avi_infoframe_log(const char *level,
 				   struct device *dev,
@@ -1268,11 +1268,11 @@ static const char *hdmi_spd_sdi_get_name(enum hdmi_spd_sdi sdi)
 	return "Reserved";
 }
 
-/**
+/*
  * hdmi_spd_infoframe_log() - log info of HDMI SPD infoframe
- * @level: logging level
- * @dev: device
- * @frame: HDMI SPD infoframe
+ * level: logging level
+ * dev: device
+ * frame: HDMI SPD infoframe
  */
 static void hdmi_spd_infoframe_log(const char *level,
 				   struct device *dev,
@@ -1404,11 +1404,11 @@ static void hdmi_spd_infoframe_log(const char *level,
 	return "Reserved";
 }
 
-/**
+/*
  * hdmi_audio_infoframe_log() - log info of HDMI AUDIO infoframe
- * @level: logging level
- * @dev: device
- * @frame: HDMI AUDIO infoframe
+ * level: logging level
+ * dev: device
+ * frame: HDMI AUDIO infoframe
  */
 static void hdmi_audio_infoframe_log(const char *level,
 				     struct device *dev,
@@ -1437,11 +1437,11 @@ static void hdmi_audio_infoframe_log(const char *level,
 			frame->downmix_inhibit ? "Yes" : "No");
 }
 
-/**
+/*
  * hdmi_drm_infoframe_log() - log info of HDMI DRM infoframe
- * @level: logging level
- * @dev: device
- * @frame: HDMI DRM infoframe
+ * level: logging level
+ * dev: device
+ * frame: HDMI DRM infoframe
  */
 static void hdmi_drm_infoframe_log(const char *level,
 				   struct device *dev,
-- 
1.9.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* ✓ Fi.CI.BAT: success for Document fixes for DRM UAPI and HDR
  2019-05-29 19:59 [PATCH 0/4] Document fixes for DRM UAPI and HDR Uma Shankar
                   ` (3 preceding siblings ...)
  2019-05-29 19:59 ` [PATCH 4/4] video/hdmi: Dropped static functions from kernel doc Uma Shankar
@ 2019-05-29 20:35 ` Patchwork
  2019-05-30  6:46 ` ✓ Fi.CI.IGT: " Patchwork
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 22+ messages in thread
From: Patchwork @ 2019-05-29 20:35 UTC (permalink / raw)
  To: Uma Shankar; +Cc: intel-gfx

== Series Details ==

Series: Document fixes for DRM UAPI and HDR
URL   : https://patchwork.freedesktop.org/series/61349/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_6165 -> Patchwork_13134
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/

Known issues
------------

  Here are the changes found in Patchwork_13134 that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
    - fi-icl-u3:          [PASS][1] -> [DMESG-WARN][2] ([fdo#107724])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/fi-icl-u3/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/fi-icl-u3/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html

  * igt@kms_frontbuffer_tracking@basic:
    - fi-hsw-peppy:       [PASS][3] -> [DMESG-WARN][4] ([fdo#102614])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/fi-hsw-peppy/igt@kms_frontbuffer_tracking@basic.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/fi-hsw-peppy/igt@kms_frontbuffer_tracking@basic.html
    - fi-icl-u2:          [PASS][5] -> [FAIL][6] ([fdo#103167])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/fi-icl-u2/igt@kms_frontbuffer_tracking@basic.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/fi-icl-u2/igt@kms_frontbuffer_tracking@basic.html

  
#### Possible fixes ####

  * igt@gem_exec_suspend@basic-s4-devices:
    - fi-kbl-7500u:       [DMESG-WARN][7] ([fdo#105128] / [fdo#107139]) -> [PASS][8]
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/fi-kbl-7500u/igt@gem_exec_suspend@basic-s4-devices.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/fi-kbl-7500u/igt@gem_exec_suspend@basic-s4-devices.html

  * igt@i915_pm_rpm@basic-pci-d3-state:
    - fi-hsw-4770:        [SKIP][9] ([fdo#109271]) -> [PASS][10] +1 similar issue
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/fi-hsw-4770/igt@i915_pm_rpm@basic-pci-d3-state.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/fi-hsw-4770/igt@i915_pm_rpm@basic-pci-d3-state.html

  * igt@i915_selftest@live_contexts:
    - fi-skl-gvtdvm:      [DMESG-FAIL][11] ([fdo#110235]) -> [PASS][12]
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/fi-skl-gvtdvm/igt@i915_selftest@live_contexts.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/fi-skl-gvtdvm/igt@i915_selftest@live_contexts.html

  * igt@kms_cursor_legacy@basic-flip-after-cursor-legacy:
    - fi-icl-u3:          [DMESG-WARN][13] ([fdo#107724]) -> [PASS][14]
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/fi-icl-u3/igt@kms_cursor_legacy@basic-flip-after-cursor-legacy.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/fi-icl-u3/igt@kms_cursor_legacy@basic-flip-after-cursor-legacy.html

  
#### Warnings ####

  * igt@i915_selftest@live_hangcheck:
    - fi-icl-u3:          [DMESG-WARN][15] -> [INCOMPLETE][16] ([fdo#107713] / [fdo#108569])
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/fi-icl-u3/igt@i915_selftest@live_hangcheck.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/fi-icl-u3/igt@i915_selftest@live_hangcheck.html

  
  [fdo#102614]: https://bugs.freedesktop.org/show_bug.cgi?id=102614
  [fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
  [fdo#105128]: https://bugs.freedesktop.org/show_bug.cgi?id=105128
  [fdo#107139]: https://bugs.freedesktop.org/show_bug.cgi?id=107139
  [fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
  [fdo#107724]: https://bugs.freedesktop.org/show_bug.cgi?id=107724
  [fdo#108569]: https://bugs.freedesktop.org/show_bug.cgi?id=108569
  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#110235]: https://bugs.freedesktop.org/show_bug.cgi?id=110235


Participating hosts (50 -> 45)
------------------------------

  Missing    (5): fi-ilk-m540 fi-byt-squawks fi-bsw-cyan fi-byt-clapper fi-bdw-samus 


Build changes
-------------

  * Linux: CI_DRM_6165 -> Patchwork_13134

  CI_DRM_6165: 1052ef9140e463d4836c5214d33158b009d21b51 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_5024: f414756be2ac57e194919973da7b86644ba61241 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_13134: bede8a45a41e49c8a7a1b8d77456f439a429606e @ git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

bede8a45a41e video/hdmi: Dropped static functions from kernel doc
02a348e013cb drm: Fixed doc warnings in drm uapi header
9b6b4ff2948c drm: Fix docbook warnings in hdr metadata helper structures
ffe2484a8c50 drm: Drop a redundant unused variable

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 22+ messages in thread

* ✓ Fi.CI.IGT: success for Document fixes for DRM UAPI and HDR
  2019-05-29 19:59 [PATCH 0/4] Document fixes for DRM UAPI and HDR Uma Shankar
                   ` (4 preceding siblings ...)
  2019-05-29 20:35 ` ✓ Fi.CI.BAT: success for Document fixes for DRM UAPI and HDR Patchwork
@ 2019-05-30  6:46 ` Patchwork
  2019-05-31  8:02 ` ✓ Fi.CI.BAT: " Patchwork
  2019-05-31 16:24 ` ✓ Fi.CI.IGT: " Patchwork
  7 siblings, 0 replies; 22+ messages in thread
From: Patchwork @ 2019-05-30  6:46 UTC (permalink / raw)
  To: Uma Shankar; +Cc: intel-gfx

== Series Details ==

Series: Document fixes for DRM UAPI and HDR
URL   : https://patchwork.freedesktop.org/series/61349/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_6165_full -> Patchwork_13134_full
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  

Known issues
------------

  Here are the changes found in Patchwork_13134_full that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@gem_ctx_isolation@vecs0-s3:
    - shard-apl:          [PASS][1] -> [DMESG-WARN][2] ([fdo#108566])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-apl3/igt@gem_ctx_isolation@vecs0-s3.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-apl8/igt@gem_ctx_isolation@vecs0-s3.html

  * igt@gem_ctx_switch@basic-all-heavy:
    - shard-glk:          [PASS][3] -> [INCOMPLETE][4] ([fdo#103359] / [k.org#198133])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-glk7/igt@gem_ctx_switch@basic-all-heavy.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-glk8/igt@gem_ctx_switch@basic-all-heavy.html

  * igt@gem_tiled_swapping@non-threaded:
    - shard-kbl:          [PASS][5] -> [DMESG-WARN][6] ([fdo#108686])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-kbl3/igt@gem_tiled_swapping@non-threaded.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-kbl2/igt@gem_tiled_swapping@non-threaded.html

  * igt@i915_pm_rc6_residency@rc6-accuracy:
    - shard-snb:          [PASS][7] -> [SKIP][8] ([fdo#109271])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-snb7/igt@i915_pm_rc6_residency@rc6-accuracy.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-snb5/igt@i915_pm_rc6_residency@rc6-accuracy.html

  * igt@kms_cursor_legacy@cursorb-vs-flipb-atomic:
    - shard-hsw:          [PASS][9] -> [SKIP][10] ([fdo#109271]) +10 similar issues
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-hsw5/igt@kms_cursor_legacy@cursorb-vs-flipb-atomic.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-hsw1/igt@kms_cursor_legacy@cursorb-vs-flipb-atomic.html

  * igt@kms_flip@2x-flip-vs-expired-vblank:
    - shard-hsw:          [PASS][11] -> [FAIL][12] ([fdo#102887])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-hsw8/igt@kms_flip@2x-flip-vs-expired-vblank.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-hsw4/igt@kms_flip@2x-flip-vs-expired-vblank.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible:
    - shard-skl:          [PASS][13] -> [FAIL][14] ([fdo#105363])
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-skl6/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-skl2/igt@kms_flip@flip-vs-expired-vblank-interruptible.html

  * igt@kms_plane_alpha_blend@pipe-b-coverage-7efc:
    - shard-skl:          [PASS][15] -> [FAIL][16] ([fdo#108145] / [fdo#110403])
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-skl7/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-skl7/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html

  * igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min:
    - shard-skl:          [PASS][17] -> [FAIL][18] ([fdo#108145])
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-skl4/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min.html
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-skl1/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min.html

  
#### Possible fixes ####

  * igt@gem_ctx_isolation@rcs0-s3:
    - shard-skl:          [INCOMPLETE][19] ([fdo#104108]) -> [PASS][20]
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-skl8/igt@gem_ctx_isolation@rcs0-s3.html
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-skl3/igt@gem_ctx_isolation@rcs0-s3.html

  * igt@gem_eio@in-flight-suspend:
    - shard-kbl:          [FAIL][21] ([fdo#110667]) -> [PASS][22]
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-kbl3/igt@gem_eio@in-flight-suspend.html
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-kbl3/igt@gem_eio@in-flight-suspend.html

  * igt@gem_workarounds@basic-read-context:
    - {shard-iclb}:       [FAIL][23] -> [PASS][24]
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-iclb1/igt@gem_workarounds@basic-read-context.html
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb5/igt@gem_workarounds@basic-read-context.html

  * igt@i915_suspend@debugfs-reader:
    - shard-apl:          [DMESG-WARN][25] ([fdo#108566]) -> [PASS][26] +4 similar issues
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-apl8/igt@i915_suspend@debugfs-reader.html
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-apl2/igt@i915_suspend@debugfs-reader.html

  * igt@kms_dp_dsc@basic-dsc-enable-edp:
    - {shard-iclb}:       [SKIP][27] ([fdo#109349]) -> [PASS][28]
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-iclb6/igt@kms_dp_dsc@basic-dsc-enable-edp.html
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb2/igt@kms_dp_dsc@basic-dsc-enable-edp.html

  * igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-pwrite:
    - {shard-iclb}:       [FAIL][29] ([fdo#103167]) -> [PASS][30] +4 similar issues
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-iclb4/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-pwrite.html
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb6/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-pwrite.html

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-pwrite:
    - shard-hsw:          [SKIP][31] ([fdo#109271]) -> [PASS][32] +15 similar issues
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-hsw1/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-pwrite.html
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-hsw2/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-pwrite.html

  * igt@kms_plane_alpha_blend@pipe-c-coverage-7efc:
    - shard-skl:          [FAIL][33] ([fdo#108145] / [fdo#110403]) -> [PASS][34]
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-skl9/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-skl10/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html

  * igt@kms_psr@psr2_basic:
    - {shard-iclb}:       [SKIP][35] ([fdo#109441]) -> [PASS][36]
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-iclb6/igt@kms_psr@psr2_basic.html
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb2/igt@kms_psr@psr2_basic.html

  
#### Warnings ####

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-move:
    - shard-skl:          [FAIL][37] ([fdo#108040]) -> [FAIL][38] ([fdo#103167])
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-skl3/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-move.html
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-skl3/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-move.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [fdo#100047]: https://bugs.freedesktop.org/show_bug.cgi?id=100047
  [fdo#102887]: https://bugs.freedesktop.org/show_bug.cgi?id=102887
  [fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
  [fdo#103359]: https://bugs.freedesktop.org/show_bug.cgi?id=103359
  [fdo#104108]: https://bugs.freedesktop.org/show_bug.cgi?id=104108
  [fdo#105363]: https://bugs.freedesktop.org/show_bug.cgi?id=105363
  [fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
  [fdo#108040]: https://bugs.freedesktop.org/show_bug.cgi?id=108040
  [fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
  [fdo#108566]: https://bugs.freedesktop.org/show_bug.cgi?id=108566
  [fdo#108686]: https://bugs.freedesktop.org/show_bug.cgi?id=108686
  [fdo#109100]: https://bugs.freedesktop.org/show_bug.cgi?id=109100
  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
  [fdo#109349]: https://bugs.freedesktop.org/show_bug.cgi?id=109349
  [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
  [fdo#109673]: https://bugs.freedesktop.org/show_bug.cgi?id=109673
  [fdo#110403]: https://bugs.freedesktop.org/show_bug.cgi?id=110403
  [fdo#110667]: https://bugs.freedesktop.org/show_bug.cgi?id=110667
  [k.org#198133]: https://bugzilla.kernel.org/show_bug.cgi?id=198133


Participating hosts (10 -> 10)
------------------------------

  No changes in participating hosts


Build changes
-------------

  * Linux: CI_DRM_6165 -> Patchwork_13134

  CI_DRM_6165: 1052ef9140e463d4836c5214d33158b009d21b51 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_5024: f414756be2ac57e194919973da7b86644ba61241 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_13134: bede8a45a41e49c8a7a1b8d77456f439a429606e @ git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 22+ messages in thread

* ✓ Fi.CI.BAT: success for Document fixes for DRM UAPI and HDR
  2019-05-29 19:59 [PATCH 0/4] Document fixes for DRM UAPI and HDR Uma Shankar
                   ` (5 preceding siblings ...)
  2019-05-30  6:46 ` ✓ Fi.CI.IGT: " Patchwork
@ 2019-05-31  8:02 ` Patchwork
  2019-05-31 16:24 ` ✓ Fi.CI.IGT: " Patchwork
  7 siblings, 0 replies; 22+ messages in thread
From: Patchwork @ 2019-05-31  8:02 UTC (permalink / raw)
  To: Uma Shankar; +Cc: intel-gfx

== Series Details ==

Series: Document fixes for DRM UAPI and HDR
URL   : https://patchwork.freedesktop.org/series/61349/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_6165 -> Patchwork_13134
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/

Known issues
------------

  Here are the changes found in Patchwork_13134 that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
    - fi-icl-u3:          [PASS][1] -> [DMESG-WARN][2] ([fdo#107724])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/fi-icl-u3/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/fi-icl-u3/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html

  * igt@kms_frontbuffer_tracking@basic:
    - fi-hsw-peppy:       [PASS][3] -> [DMESG-WARN][4] ([fdo#102614])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/fi-hsw-peppy/igt@kms_frontbuffer_tracking@basic.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/fi-hsw-peppy/igt@kms_frontbuffer_tracking@basic.html
    - fi-icl-u2:          [PASS][5] -> [FAIL][6] ([fdo#103167])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/fi-icl-u2/igt@kms_frontbuffer_tracking@basic.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/fi-icl-u2/igt@kms_frontbuffer_tracking@basic.html

  
#### Possible fixes ####

  * igt@gem_exec_suspend@basic-s4-devices:
    - fi-kbl-7500u:       [DMESG-WARN][7] ([fdo#105128] / [fdo#107139]) -> [PASS][8]
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/fi-kbl-7500u/igt@gem_exec_suspend@basic-s4-devices.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/fi-kbl-7500u/igt@gem_exec_suspend@basic-s4-devices.html

  * igt@i915_pm_rpm@basic-pci-d3-state:
    - fi-hsw-4770:        [SKIP][9] ([fdo#109271]) -> [PASS][10] +1 similar issue
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/fi-hsw-4770/igt@i915_pm_rpm@basic-pci-d3-state.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/fi-hsw-4770/igt@i915_pm_rpm@basic-pci-d3-state.html

  * igt@i915_selftest@live_contexts:
    - fi-skl-gvtdvm:      [DMESG-FAIL][11] ([fdo#110235]) -> [PASS][12]
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/fi-skl-gvtdvm/igt@i915_selftest@live_contexts.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/fi-skl-gvtdvm/igt@i915_selftest@live_contexts.html

  * igt@kms_cursor_legacy@basic-flip-after-cursor-legacy:
    - fi-icl-u3:          [DMESG-WARN][13] ([fdo#107724]) -> [PASS][14]
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/fi-icl-u3/igt@kms_cursor_legacy@basic-flip-after-cursor-legacy.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/fi-icl-u3/igt@kms_cursor_legacy@basic-flip-after-cursor-legacy.html

  
#### Warnings ####

  * igt@i915_selftest@live_hangcheck:
    - fi-icl-u3:          [DMESG-WARN][15] ([fdo#110801]) -> [INCOMPLETE][16] ([fdo#107713] / [fdo#108569])
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/fi-icl-u3/igt@i915_selftest@live_hangcheck.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/fi-icl-u3/igt@i915_selftest@live_hangcheck.html

  
  [fdo#102614]: https://bugs.freedesktop.org/show_bug.cgi?id=102614
  [fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
  [fdo#105128]: https://bugs.freedesktop.org/show_bug.cgi?id=105128
  [fdo#107139]: https://bugs.freedesktop.org/show_bug.cgi?id=107139
  [fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
  [fdo#107724]: https://bugs.freedesktop.org/show_bug.cgi?id=107724
  [fdo#108569]: https://bugs.freedesktop.org/show_bug.cgi?id=108569
  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#110235]: https://bugs.freedesktop.org/show_bug.cgi?id=110235
  [fdo#110801]: https://bugs.freedesktop.org/show_bug.cgi?id=110801


Participating hosts (50 -> 45)
------------------------------

  Missing    (5): fi-ilk-m540 fi-byt-squawks fi-bsw-cyan fi-byt-clapper fi-bdw-samus 


Build changes
-------------

  * Linux: CI_DRM_6165 -> Patchwork_13134

  CI_DRM_6165: 1052ef9140e463d4836c5214d33158b009d21b51 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_5024: f414756be2ac57e194919973da7b86644ba61241 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_13134: bede8a45a41e49c8a7a1b8d77456f439a429606e @ git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

bede8a45a41e video/hdmi: Dropped static functions from kernel doc
02a348e013cb drm: Fixed doc warnings in drm uapi header
9b6b4ff2948c drm: Fix docbook warnings in hdr metadata helper structures
ffe2484a8c50 drm: Drop a redundant unused variable

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 22+ messages in thread

* ✓ Fi.CI.IGT: success for Document fixes for DRM UAPI and HDR
  2019-05-29 19:59 [PATCH 0/4] Document fixes for DRM UAPI and HDR Uma Shankar
                   ` (6 preceding siblings ...)
  2019-05-31  8:02 ` ✓ Fi.CI.BAT: " Patchwork
@ 2019-05-31 16:24 ` Patchwork
  7 siblings, 0 replies; 22+ messages in thread
From: Patchwork @ 2019-05-31 16:24 UTC (permalink / raw)
  To: Uma Shankar; +Cc: intel-gfx

== Series Details ==

Series: Document fixes for DRM UAPI and HDR
URL   : https://patchwork.freedesktop.org/series/61349/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_6165_full -> Patchwork_13134_full
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  

Known issues
------------

  Here are the changes found in Patchwork_13134_full that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@gem_ctx_isolation@bcs0-s3:
    - shard-apl:          [PASS][1] -> [DMESG-WARN][2] ([fdo#108566]) +1 similar issue
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-apl2/igt@gem_ctx_isolation@bcs0-s3.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-apl5/igt@gem_ctx_isolation@bcs0-s3.html

  * igt@gem_ctx_switch@basic-all-heavy:
    - shard-glk:          [PASS][3] -> ([INCOMPLETE][4], [PASS][5]) ([fdo#103359] / [k.org#198133])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-glk7/igt@gem_ctx_switch@basic-all-heavy.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-glk8/igt@gem_ctx_switch@basic-all-heavy.html
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-glk9/igt@gem_ctx_switch@basic-all-heavy.html
    - shard-apl:          [PASS][6] -> ([INCOMPLETE][7], [PASS][8]) ([fdo#103927])
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-apl2/igt@gem_ctx_switch@basic-all-heavy.html
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-apl5/igt@gem_ctx_switch@basic-all-heavy.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-apl1/igt@gem_ctx_switch@basic-all-heavy.html

  * igt@gem_tiled_swapping@non-threaded:
    - shard-kbl:          [PASS][9] -> ([DMESG-WARN][10], [PASS][11]) ([fdo#108686])
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-kbl3/igt@gem_tiled_swapping@non-threaded.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-kbl2/igt@gem_tiled_swapping@non-threaded.html
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-kbl1/igt@gem_tiled_swapping@non-threaded.html

  * igt@gem_workarounds@basic-read:
    - shard-iclb:         [PASS][12] -> ([PASS][13], [FAIL][14]) ([fdo#110802])
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-iclb6/igt@gem_workarounds@basic-read.html
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb8/igt@gem_workarounds@basic-read.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb1/igt@gem_workarounds@basic-read.html

  * igt@gem_workarounds@suspend-resume-context:
    - shard-kbl:          [PASS][15] -> ([DMESG-WARN][16], [PASS][17]) ([fdo#108566])
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-kbl1/igt@gem_workarounds@suspend-resume-context.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-kbl6/igt@gem_workarounds@suspend-resume-context.html
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-kbl1/igt@gem_workarounds@suspend-resume-context.html

  * igt@i915_pm_rc6_residency@rc6-accuracy:
    - shard-snb:          [PASS][18] -> ([SKIP][19], [SKIP][20]) ([fdo#109271])
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-snb7/igt@i915_pm_rc6_residency@rc6-accuracy.html
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-snb2/igt@i915_pm_rc6_residency@rc6-accuracy.html
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-snb5/igt@i915_pm_rc6_residency@rc6-accuracy.html

  * igt@kms_cursor_crc@pipe-c-cursor-suspend:
    - shard-apl:          [PASS][21] -> ([PASS][22], [DMESG-WARN][23]) ([fdo#108566])
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-apl5/igt@kms_cursor_crc@pipe-c-cursor-suspend.html
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-apl6/igt@kms_cursor_crc@pipe-c-cursor-suspend.html
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-apl7/igt@kms_cursor_crc@pipe-c-cursor-suspend.html

  * igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic:
    - shard-glk:          [PASS][24] -> ([FAIL][25], [PASS][26]) ([fdo#104873])
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-glk8/igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic.html
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-glk1/igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic.html
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-glk6/igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic.html

  * igt@kms_flip@2x-flip-vs-dpms-off-vs-modeset:
    - shard-hsw:          [PASS][27] -> [SKIP][28] ([fdo#109271]) +7 similar issues
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-hsw5/igt@kms_flip@2x-flip-vs-dpms-off-vs-modeset.html
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-hsw1/igt@kms_flip@2x-flip-vs-dpms-off-vs-modeset.html

  * igt@kms_flip@2x-flip-vs-expired-vblank:
    - shard-hsw:          [PASS][29] -> ([PASS][30], [FAIL][31]) ([fdo#102887])
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-hsw8/igt@kms_flip@2x-flip-vs-expired-vblank.html
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-hsw7/igt@kms_flip@2x-flip-vs-expired-vblank.html
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-hsw4/igt@kms_flip@2x-flip-vs-expired-vblank.html

  * igt@kms_flip@2x-plain-flip-ts-check-interruptible:
    - shard-hsw:          [PASS][32] -> ([SKIP][33], [PASS][34]) ([fdo#109271]) +26 similar issues
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-hsw2/igt@kms_flip@2x-plain-flip-ts-check-interruptible.html
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-hsw1/igt@kms_flip@2x-plain-flip-ts-check-interruptible.html
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-hsw5/igt@kms_flip@2x-plain-flip-ts-check-interruptible.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible:
    - shard-skl:          [PASS][35] -> ([PASS][36], [FAIL][37]) ([fdo#105363])
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-skl6/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-skl9/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-skl2/igt@kms_flip@flip-vs-expired-vblank-interruptible.html

  * igt@kms_frontbuffer_tracking@fbc-rgb565-draw-pwrite:
    - shard-iclb:         [PASS][38] -> ([PASS][39], [FAIL][40]) ([fdo#103167]) +7 similar issues
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-iclb2/igt@kms_frontbuffer_tracking@fbc-rgb565-draw-pwrite.html
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb3/igt@kms_frontbuffer_tracking@fbc-rgb565-draw-pwrite.html
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb7/igt@kms_frontbuffer_tracking@fbc-rgb565-draw-pwrite.html

  * igt@kms_plane_alpha_blend@pipe-b-coverage-7efc:
    - shard-skl:          [PASS][41] -> ([FAIL][42], [PASS][43]) ([fdo#108145] / [fdo#110403])
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-skl7/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-skl7/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-skl4/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html

  * igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min:
    - shard-skl:          [PASS][44] -> ([FAIL][45], [FAIL][46]) ([fdo#108145])
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-skl4/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min.html
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-skl9/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min.html
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-skl1/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min.html

  * igt@kms_psr@psr2_cursor_mmap_gtt:
    - shard-iclb:         [PASS][47] -> [SKIP][48] ([fdo#109441])
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-iclb2/igt@kms_psr@psr2_cursor_mmap_gtt.html
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb7/igt@kms_psr@psr2_cursor_mmap_gtt.html

  * igt@kms_sysfs_edid_timing:
    - shard-iclb:         [PASS][49] -> ([PASS][50], [FAIL][51]) ([fdo#100047])
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-iclb7/igt@kms_sysfs_edid_timing.html
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb6/igt@kms_sysfs_edid_timing.html
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb3/igt@kms_sysfs_edid_timing.html
    - shard-hsw:          [PASS][52] -> ([PASS][53], [FAIL][54]) ([fdo#100047])
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-hsw6/igt@kms_sysfs_edid_timing.html
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-hsw5/igt@kms_sysfs_edid_timing.html
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-hsw1/igt@kms_sysfs_edid_timing.html

  * igt@perf@polling:
    - shard-iclb:         [PASS][55] -> [FAIL][56] ([fdo#110728])
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-iclb7/igt@perf@polling.html
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb5/igt@perf@polling.html

  
#### Possible fixes ####

  * igt@gem_ctx_isolation@rcs0-s3:
    - shard-apl:          [DMESG-WARN][57] ([fdo#108566]) -> [PASS][58] +2 similar issues
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-apl7/igt@gem_ctx_isolation@rcs0-s3.html
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-apl1/igt@gem_ctx_isolation@rcs0-s3.html
    - shard-skl:          [INCOMPLETE][59] ([fdo#104108]) -> ([PASS][60], [PASS][61])
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-skl8/igt@gem_ctx_isolation@rcs0-s3.html
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-skl9/igt@gem_ctx_isolation@rcs0-s3.html
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-skl3/igt@gem_ctx_isolation@rcs0-s3.html

  * igt@gem_eio@in-flight-suspend:
    - shard-kbl:          [FAIL][62] ([fdo#110667]) -> ([PASS][63], [PASS][64])
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-kbl3/igt@gem_eio@in-flight-suspend.html
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-kbl3/igt@gem_eio@in-flight-suspend.html
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-kbl4/igt@gem_eio@in-flight-suspend.html

  * igt@gem_workarounds@basic-read-context:
    - shard-iclb:         [FAIL][65] ([fdo#110802]) -> ([PASS][66], [PASS][67])
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-iclb1/igt@gem_workarounds@basic-read-context.html
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb5/igt@gem_workarounds@basic-read-context.html
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb8/igt@gem_workarounds@basic-read-context.html

  * igt@i915_suspend@sysfs-reader:
    - shard-apl:          [DMESG-WARN][68] ([fdo#108566]) -> ([PASS][69], [PASS][70]) +4 similar issues
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-apl4/igt@i915_suspend@sysfs-reader.html
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-apl5/igt@i915_suspend@sysfs-reader.html
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-apl2/igt@i915_suspend@sysfs-reader.html

  * igt@kms_flip@2x-busy-flip:
    - shard-hsw:          [SKIP][71] ([fdo#109271]) -> [PASS][72]
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-hsw1/igt@kms_flip@2x-busy-flip.html
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-hsw4/igt@kms_flip@2x-busy-flip.html

  * igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-pwrite:
    - shard-iclb:         [FAIL][73] ([fdo#103167]) -> ([PASS][74], [PASS][75]) +2 similar issues
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-iclb4/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-pwrite.html
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb4/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-pwrite.html
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb6/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-pwrite.html

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-pwrite:
    - shard-hsw:          [SKIP][76] ([fdo#109271]) -> ([PASS][77], [PASS][78]) +14 similar issues
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-hsw1/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-pwrite.html
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-hsw2/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-pwrite.html
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-hsw5/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-pwrite.html

  * igt@kms_plane_alpha_blend@pipe-c-coverage-7efc:
    - shard-skl:          [FAIL][79] ([fdo#108145] / [fdo#110403]) -> ([PASS][80], [PASS][81])
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-skl9/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-skl10/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-skl7/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html

  * igt@kms_setmode@basic:
    - shard-apl:          [FAIL][82] ([fdo#99912]) -> [PASS][83]
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-apl2/igt@kms_setmode@basic.html
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-apl5/igt@kms_setmode@basic.html

  
#### Warnings ####

  * igt@gem_mmap_gtt@forked-big-copy-odd:
    - shard-iclb:         [TIMEOUT][84] ([fdo#109673]) -> ([TIMEOUT][85], [INCOMPLETE][86]) ([fdo#107713] / [fdo#109100] / [fdo#109673])
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-iclb4/igt@gem_mmap_gtt@forked-big-copy-odd.html
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb6/igt@gem_mmap_gtt@forked-big-copy-odd.html
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb4/igt@gem_mmap_gtt@forked-big-copy-odd.html

  * igt@gem_mmap_gtt@forked-big-copy-xy:
    - shard-iclb:         [INCOMPLETE][87] ([fdo#107713] / [fdo#109100]) -> [TIMEOUT][88] ([fdo#109673])
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-iclb1/igt@gem_mmap_gtt@forked-big-copy-xy.html
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb7/igt@gem_mmap_gtt@forked-big-copy-xy.html

  * igt@gem_tiled_swapping@non-threaded:
    - shard-hsw:          [FAIL][89] ([fdo#108686]) -> ([INCOMPLETE][90], [FAIL][91]) ([fdo#103540] / [fdo#108686])
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-hsw5/igt@gem_tiled_swapping@non-threaded.html
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-hsw5/igt@gem_tiled_swapping@non-threaded.html
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-hsw1/igt@gem_tiled_swapping@non-threaded.html

  * igt@kms_cursor_crc@pipe-c-cursor-dpms:
    - shard-glk:          [INCOMPLETE][92] ([fdo#103359] / [k.org#198133]) -> [FAIL][93] ([fdo#103232])
   [92]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-glk7/igt@kms_cursor_crc@pipe-c-cursor-dpms.html
   [93]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-glk9/igt@kms_cursor_crc@pipe-c-cursor-dpms.html

  * igt@kms_dp_dsc@basic-dsc-enable-edp:
    - shard-iclb:         [SKIP][94] ([fdo#109349]) -> ([SKIP][95], [PASS][96]) ([fdo#109349])
   [94]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-iclb6/igt@kms_dp_dsc@basic-dsc-enable-edp.html
   [95]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb5/igt@kms_dp_dsc@basic-dsc-enable-edp.html
   [96]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb2/igt@kms_dp_dsc@basic-dsc-enable-edp.html

  * igt@kms_frontbuffer_tracking@fbc-2p-pri-indfb-multidraw:
    - shard-hsw:          [SKIP][97] ([fdo#109271]) -> ([SKIP][98], [PASS][99]) ([fdo#109271]) +13 similar issues
   [97]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-hsw1/igt@kms_frontbuffer_tracking@fbc-2p-pri-indfb-multidraw.html
   [98]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-hsw1/igt@kms_frontbuffer_tracking@fbc-2p-pri-indfb-multidraw.html
   [99]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-hsw2/igt@kms_frontbuffer_tracking@fbc-2p-pri-indfb-multidraw.html

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-render:
    - shard-iclb:         [INCOMPLETE][100] ([fdo#107713]) -> ([SKIP][101], [SKIP][102]) ([fdo#109280])
   [100]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-iclb1/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-render.html
   [101]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb4/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-render.html
   [102]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb2/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-render.html

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-move:
    - shard-skl:          [FAIL][103] ([fdo#108040]) -> ([FAIL][104], [FAIL][105]) ([fdo#103167] / [fdo#108040]) +1 similar issue
   [103]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-skl3/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-move.html
   [104]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-skl8/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-move.html
   [105]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-skl3/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-move.html

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-render:
    - shard-iclb:         [FAIL][106] ([fdo#103167]) -> ([PASS][107], [FAIL][108]) ([fdo#103167]) +1 similar issue
   [106]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-iclb2/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-render.html
   [107]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb7/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-render.html
   [108]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb3/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-render.html

  * igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes:
    - shard-apl:          [DMESG-WARN][109] ([fdo#108566]) -> ([DMESG-WARN][110], [PASS][111]) ([fdo#108566])
   [109]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-apl1/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes.html
   [110]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-apl1/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes.html
   [111]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-apl4/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes.html

  * igt@kms_psr@psr2_cursor_plane_onoff:
    - shard-iclb:         [SKIP][112] ([fdo#109441]) -> ([SKIP][113], [PASS][114]) ([fdo#109441]) +2 similar issues
   [112]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6165/shard-iclb5/igt@kms_psr@psr2_cursor_plane_onoff.html
   [113]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/shard-iclb7/igt@kms_psr@psr2_cursor_plane_onoff.html
   [114]: https://intel-gfx-ci.01.org/tree/drm

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13134/
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH 1/4] drm: Drop a redundant unused variable
  2019-05-29 19:59 ` [PATCH 1/4] drm: Drop a redundant unused variable Uma Shankar
@ 2019-06-03  8:12   ` Daniel Vetter
  2019-06-03 11:52     ` Shankar, Uma
  0 siblings, 1 reply; 22+ messages in thread
From: Daniel Vetter @ 2019-06-03  8:12 UTC (permalink / raw)
  To: Uma Shankar
  Cc: dcastagna, jonas, intel-gfx, emil.l.velikov, dri-devel, seanpaul

On Thu, May 30, 2019 at 01:29:01AM +0530, Uma Shankar wrote:
> Drop a redundant and unused variable "hdr_output_metadata" from
> drm_connector.
> 
> Suggested-by: Daniel Vetter <daniel@ffwll.ch>
> Signed-off-by: Uma Shankar <uma.shankar@intel.com>

For next time around: Please add Fixes: lines to indicate which already
merged commit you're improving.

Patch merged, thanks.
-Daniel

> ---
>  include/drm/drm_connector.h | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/include/drm/drm_connector.h b/include/drm/drm_connector.h
> index f8f4003..5476561 100644
> --- a/include/drm/drm_connector.h
> +++ b/include/drm/drm_connector.h
> @@ -1244,8 +1244,6 @@ struct drm_connector {
>  	 */
>  	struct llist_node free_node;
>  
> -	/* HDR metdata */
> -	struct hdr_output_metadata hdr_output_metadata;
>  	struct hdr_sink_metadata hdr_sink_metadata;
>  };
>  
> -- 
> 1.9.1
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH 2/4] drm: Fix docbook warnings in hdr metadata helper structures
  2019-05-29 19:59   ` Uma Shankar
@ 2019-06-03  8:23     ` Daniel Vetter
  -1 siblings, 0 replies; 22+ messages in thread
From: Daniel Vetter @ 2019-06-03  8:23 UTC (permalink / raw)
  To: Uma Shankar
  Cc: Sean Paul, linux-fbdev, dcastagna, jonas, Maxime Ripard,
	intel-gfx, Bartlomiej Zolnierkiewicz, emil.l.velikov, dri-devel,
	Hans Verkuil, David Airlie, seanpaul

On Thu, May 30, 2019 at 01:29:02AM +0530, Uma Shankar wrote:
> Fixes the following warnings:
> ./include/drm/drm_mode_config.h:841: warning: Incorrect use of
> kernel-doc format:          * hdr_output_metadata_property: Connector
> property containing hdr
> ./include/drm/drm_mode_config.h:918: warning: Function parameter or member 'hdr_output_metadata_property' not described in 'drm_mode_config'
> ./include/drm/drm_connector.h:1251: warning: Function parameter or member 'hdr_output_metadata' not described in 'drm_connector'
> ./include/drm/drm_connector.h:1251: warning: Function parameter or member 'hdr_sink_metadata' not described in 'drm_connector'
> 
> Also adds some property documentation for HDR Metadata Connector
> Property in connector property create function.
> 
> v2: Fixed Sean Paul's review comments.
> 
> v3: Fixed Daniel Vetter's review comments, added the UAPI structure
> definition section in kernel docs.
> 
> Cc: Shashank Sharma <shashank.sharma@intel.com>
> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> Cc: Maxime Ripard <maxime.ripard@bootlin.com>
> Cc: Sean Paul <sean@poorly.run>
> Cc: David Airlie <airlied@linux.ie>
> Cc: Daniel Vetter <daniel@ffwll.ch>
> Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
> Cc: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
> Cc: Hans Verkuil <hansverk@cisco.com>
> Cc: dri-devel@lists.freedesktop.org
> Cc: linux-fbdev@vger.kernel.org
> Reviewed-by: Sean Paul <sean@poorly.run>
> Signed-off-by: Uma Shankar <uma.shankar@intel.com>
> ---
>  Documentation/gpu/drm-uapi.rst  |  9 +++++++++
>  drivers/gpu/drm/drm_connector.c | 31 +++++++++++++++++++++++++++++++
>  include/drm/drm_connector.h     |  1 +
>  include/drm/drm_mode_config.h   |  4 ++--
>  include/linux/hdmi.h            |  1 +
>  include/uapi/drm/drm_mode.h     | 37 ++++++++++++++++++++++++++++++++++++-
>  6 files changed, 80 insertions(+), 3 deletions(-)
> 
> diff --git a/Documentation/gpu/drm-uapi.rst b/Documentation/gpu/drm-uapi.rst
> index 05874d0..6b39e2c 100644
> --- a/Documentation/gpu/drm-uapi.rst
> +++ b/Documentation/gpu/drm-uapi.rst
> @@ -329,3 +329,12 @@ DRM_IOCTL_MODESET_CTL
>      mode setting, since on many devices the vertical blank counter is
>      reset to 0 at some point during modeset. Modern drivers should not
>      call this any more since with kernel mode setting it is a no-op.
> +
> +Userspace API Structures
> +============
> +
> +.. kernel-doc:: include/uapi/drm/drm_mode.h
> +   :doc: overview
> +
> +.. kernel-doc:: include/uapi/drm/drm_mode.h
> +   :internal:
> diff --git a/drivers/gpu/drm/drm_connector.c b/drivers/gpu/drm/drm_connector.c
> index c9ac8b9..6a93527 100644
> --- a/drivers/gpu/drm/drm_connector.c
> +++ b/drivers/gpu/drm/drm_connector.c
> @@ -956,6 +956,37 @@ int drm_display_info_set_bus_formats(struct drm_display_info *info,
>   *	  is no longer protected and userspace should take appropriate action
>   *	  (whatever that might be).
>   *
> + * HDR_OUTPUT_METADATA:
> + *	Connector property to enable userspace to send HDR Metadata to
> + *	driver. This metadata is based on the composition and blending
> + *	policies decided by user, taking into account the hardware and
> + *	sink capabilities. The driver gets this metadata and creates a
> + *	Dynamic Range and Mastering Infoframe (DRM) in case of HDMI,
> + *	SDP packet (Non-audio INFOFRAME SDP v1.3) for DP. This is then
> + *	sent to sink. This notifies the sink of the upcoming frame's Color
> + *	Encoding and Luminance parameters.
> + *
> + *	Userspace first need to detect the HDR capabilities of sink by
> + *	reading and parsing the EDID. Details of HDR metadata for HDMI
> + *	are added in CTA 861.G spec. For DP , its defined in VESA DP
> + *	Standard v1.4. It needs to then get the metadata information
> + *	of the video/game/app content which are encoded in HDR (basically
> + *	using HDR transfer functions). With this information it needs to
> + *	decide on a blending policy and compose the relevant
> + *	layers/overlays into a common format. Once this blending is done,
> + *	userspace will be aware of the metadata of the composed frame to
> + *	be send to sink. It then uses this property to communicate this
> + *	metadata to driver which then make a Infoframe packet and sends
> + *	to sink based on the type of encoder connected.
> + *
> + *	Userspace will be responsible to do Tone mapping operation in case:
> + *		- Some layers are HDR and others are SDR
> + *		- HDR layers luminance is not same as sink
> + *	It will even need to do colorspace conversion and get all layers
> + *	to one common colorspace for blending. It can use either GL, Media
> + *	or display engine to get this done based on the capabilties of the
> + *	associated hardware.

I think it'd be good to add 1-2 sentences here about what this looks like
for the driver side. E.g. which function drivers need to call to set up
hdr, how to get at the metadata and whether there's any helpers for these.

Here I'd point at hdr_output_metadata, hdr_sink_metadata, and
drm_add_display_info() for filling in the former.

I think with that this is a solid doc patch.

> + *
>   * max bpc:
>   *	This range property is used by userspace to limit the bit depth. When
>   *	used the driver would limit the bpc in accordance with the valid range
> diff --git a/include/drm/drm_connector.h b/include/drm/drm_connector.h
> index 5476561..47e749b 100644
> --- a/include/drm/drm_connector.h
> +++ b/include/drm/drm_connector.h
> @@ -1244,6 +1244,7 @@ struct drm_connector {
>  	 */
>  	struct llist_node free_node;
>  
> +	/** @hdr_sink_metadata: HDR Metadata Information read from sink */
>  	struct hdr_sink_metadata hdr_sink_metadata;

Something I realized while reading the code: This should probably be put
into the drm_display_info struct, like all the other things we parse out
of the edid. I think that would be a lot more consistent with the code -
the driver interface function which calls this code is called
drm_add_display_info() after all.

Can you pls change that in a follow-up patch?

>  };
>  
> diff --git a/include/drm/drm_mode_config.h b/include/drm/drm_mode_config.h
> index 4f88cc9..759d462 100644
> --- a/include/drm/drm_mode_config.h
> +++ b/include/drm/drm_mode_config.h
> @@ -837,8 +837,8 @@ struct drm_mode_config {
>  	struct drm_property *writeback_out_fence_ptr_property;
>  
>  	/**
> -	 * hdr_output_metadata_property: Connector property containing hdr
> -	 * metatda. This will be provided by userspace compositors based
> +	 * @hdr_output_metadata_property: Connector property containing hdr
> +	 * metatada. This will be provided by userspace compositors based
>  	 * on HDR content
>  	 */
>  	struct drm_property *hdr_output_metadata_property;
> diff --git a/include/linux/hdmi.h b/include/linux/hdmi.h
> index ee55ba5..55c6db5 100644
> --- a/include/linux/hdmi.h
> +++ b/include/linux/hdmi.h
> @@ -398,6 +398,7 @@ ssize_t hdmi_vendor_infoframe_pack_only(const struct hdmi_vendor_infoframe *fram
>   * @spd: spd infoframe
>   * @vendor: union of all vendor infoframes
>   * @audio: audio infoframe
> + * @drm: Dynamic Range and Mastering infoframe
>   *
>   * This is used by the generic pack function. This works since all infoframes
>   * have the same header which also indicates which type of infoframe should be
> diff --git a/include/uapi/drm/drm_mode.h b/include/uapi/drm/drm_mode.h
> index 997a7e0..5d3964f 100644
> --- a/include/uapi/drm/drm_mode.h
> +++ b/include/uapi/drm/drm_mode.h
> @@ -33,6 +33,15 @@
>  extern "C" {
>  #endif
>  
> +/**
> + * DOC: overview
> + *
> + * DRM exposes many UAPI and structure definition to have a consistent
> + * and standardized interface with user.
> + * Userspace can refer to these structure definitions and UAPI formats
> + * to communicate to driver
> + */
> +
>  #define DRM_CONNECTOR_NAME_LEN	32
>  #define DRM_DISPLAY_MODE_LEN	32
>  #define DRM_PROP_NAME_LEN	32
> @@ -630,7 +639,26 @@ struct drm_color_lut {
>  	__u16 reserved;
>  };
>  
> -/* HDR Metadata Infoframe as per 861.G spec */

Keep the spec reference imo, maybe even add a note that this is supposed
to perfectly match it.

> +/**
> + * struct hdr_metadata_infoframe - HDR Metadata Infoframe Data.
> + * @eotf: Electro-Optical Transfer Function (EOTF) used in the stream.
> + * @metadata_type: Static_Metadata_Descriptor_ID.
> + * @display_primaries: Color Primaries of the Data.
> + * @display_primaries.x: X cordinate of color primary.

Would be good to spend a few more words about "in which standard/format"
this color number is. I.e. fixed point or whatever, and color space.

> + * @display_primaries.y: Y cordinate of color primary.
> + * @white_point: White Point of Colorspace Data.
> + * @white_point.x: X cordinate of whitepoint of color primary.
> + * @white_point.y: Y cordinate of whitepoint of color primary.
> + * @max_display_mastering_luminance: Max Mastering Display Luminance.
> + * @min_display_mastering_luminance: Min Mastering Display Luminance.
> + * @max_cll: Max Content Light Level.
> + * @max_fall: Max Frame Average Light Level.

btw for long structs I prefer the inline kerneldoc style. This one is just
at the edge imo.

> + *
> + * With drm subsystem using struct drm_rect to manage rectangular area this

struct &drm_rect to make it a hyperlink. Once we have drm_rect documented
:-)

> + * export it to user-space.
> + *
> + * Currently used by drm_mode_atomic blob property FB_DAMAGE_CLIPS.
> + */
>  struct hdr_metadata_infoframe {
>  	__u8 eotf;
>  	__u8 metadata_type;
> @@ -646,6 +674,13 @@ struct hdr_metadata_infoframe {
>  	__u16 max_fall;
>  };
>  
> +/**
> + * struct hdr_output_metadata - HDR output metadata
> + *
> + * Metadata Information to be passed from userspace
> + * @metadata_type: Static_Metadata_Descriptor_ID.
> + * @hdmi_metadata_type1: HDR Metadata Infoframe.

If you want to move the member docs closer to their definition, go with
the inline style.

Thanks, Daniel

> + */
>  struct hdr_output_metadata {
>  	__u32 metadata_type;
>  	union {
> -- 
> 1.9.1
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH 2/4] drm: Fix docbook warnings in hdr metadata helper structures
@ 2019-06-03  8:23     ` Daniel Vetter
  0 siblings, 0 replies; 22+ messages in thread
From: Daniel Vetter @ 2019-06-03  8:23 UTC (permalink / raw)
  To: Uma Shankar
  Cc: Sean Paul, linux-fbdev, dcastagna, jonas, Maxime Ripard,
	intel-gfx, Bartlomiej Zolnierkiewicz, emil.l.velikov, dri-devel,
	Hans Verkuil, David Airlie, seanpaul

On Thu, May 30, 2019 at 01:29:02AM +0530, Uma Shankar wrote:
> Fixes the following warnings:
> ./include/drm/drm_mode_config.h:841: warning: Incorrect use of
> kernel-doc format:          * hdr_output_metadata_property: Connector
> property containing hdr
> ./include/drm/drm_mode_config.h:918: warning: Function parameter or member 'hdr_output_metadata_property' not described in 'drm_mode_config'
> ./include/drm/drm_connector.h:1251: warning: Function parameter or member 'hdr_output_metadata' not described in 'drm_connector'
> ./include/drm/drm_connector.h:1251: warning: Function parameter or member 'hdr_sink_metadata' not described in 'drm_connector'
> 
> Also adds some property documentation for HDR Metadata Connector
> Property in connector property create function.
> 
> v2: Fixed Sean Paul's review comments.
> 
> v3: Fixed Daniel Vetter's review comments, added the UAPI structure
> definition section in kernel docs.
> 
> Cc: Shashank Sharma <shashank.sharma@intel.com>
> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> Cc: Maxime Ripard <maxime.ripard@bootlin.com>
> Cc: Sean Paul <sean@poorly.run>
> Cc: David Airlie <airlied@linux.ie>
> Cc: Daniel Vetter <daniel@ffwll.ch>
> Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
> Cc: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
> Cc: Hans Verkuil <hansverk@cisco.com>
> Cc: dri-devel@lists.freedesktop.org
> Cc: linux-fbdev@vger.kernel.org
> Reviewed-by: Sean Paul <sean@poorly.run>
> Signed-off-by: Uma Shankar <uma.shankar@intel.com>
> ---
>  Documentation/gpu/drm-uapi.rst  |  9 +++++++++
>  drivers/gpu/drm/drm_connector.c | 31 +++++++++++++++++++++++++++++++
>  include/drm/drm_connector.h     |  1 +
>  include/drm/drm_mode_config.h   |  4 ++--
>  include/linux/hdmi.h            |  1 +
>  include/uapi/drm/drm_mode.h     | 37 ++++++++++++++++++++++++++++++++++++-
>  6 files changed, 80 insertions(+), 3 deletions(-)
> 
> diff --git a/Documentation/gpu/drm-uapi.rst b/Documentation/gpu/drm-uapi.rst
> index 05874d0..6b39e2c 100644
> --- a/Documentation/gpu/drm-uapi.rst
> +++ b/Documentation/gpu/drm-uapi.rst
> @@ -329,3 +329,12 @@ DRM_IOCTL_MODESET_CTL
>      mode setting, since on many devices the vertical blank counter is
>      reset to 0 at some point during modeset. Modern drivers should not
>      call this any more since with kernel mode setting it is a no-op.
> +
> +Userspace API Structures
> +========================
> +
> +.. kernel-doc:: include/uapi/drm/drm_mode.h
> +   :doc: overview
> +
> +.. kernel-doc:: include/uapi/drm/drm_mode.h
> +   :internal:
> diff --git a/drivers/gpu/drm/drm_connector.c b/drivers/gpu/drm/drm_connector.c
> index c9ac8b9..6a93527 100644
> --- a/drivers/gpu/drm/drm_connector.c
> +++ b/drivers/gpu/drm/drm_connector.c
> @@ -956,6 +956,37 @@ int drm_display_info_set_bus_formats(struct drm_display_info *info,
>   *	  is no longer protected and userspace should take appropriate action
>   *	  (whatever that might be).
>   *
> + * HDR_OUTPUT_METADATA:
> + *	Connector property to enable userspace to send HDR Metadata to
> + *	driver. This metadata is based on the composition and blending
> + *	policies decided by user, taking into account the hardware and
> + *	sink capabilities. The driver gets this metadata and creates a
> + *	Dynamic Range and Mastering Infoframe (DRM) in case of HDMI,
> + *	SDP packet (Non-audio INFOFRAME SDP v1.3) for DP. This is then
> + *	sent to sink. This notifies the sink of the upcoming frame's Color
> + *	Encoding and Luminance parameters.
> + *
> + *	Userspace first need to detect the HDR capabilities of sink by
> + *	reading and parsing the EDID. Details of HDR metadata for HDMI
> + *	are added in CTA 861.G spec. For DP , its defined in VESA DP
> + *	Standard v1.4. It needs to then get the metadata information
> + *	of the video/game/app content which are encoded in HDR (basically
> + *	using HDR transfer functions). With this information it needs to
> + *	decide on a blending policy and compose the relevant
> + *	layers/overlays into a common format. Once this blending is done,
> + *	userspace will be aware of the metadata of the composed frame to
> + *	be send to sink. It then uses this property to communicate this
> + *	metadata to driver which then make a Infoframe packet and sends
> + *	to sink based on the type of encoder connected.
> + *
> + *	Userspace will be responsible to do Tone mapping operation in case:
> + *		- Some layers are HDR and others are SDR
> + *		- HDR layers luminance is not same as sink
> + *	It will even need to do colorspace conversion and get all layers
> + *	to one common colorspace for blending. It can use either GL, Media
> + *	or display engine to get this done based on the capabilties of the
> + *	associated hardware.

I think it'd be good to add 1-2 sentences here about what this looks like
for the driver side. E.g. which function drivers need to call to set up
hdr, how to get at the metadata and whether there's any helpers for these.

Here I'd point at hdr_output_metadata, hdr_sink_metadata, and
drm_add_display_info() for filling in the former.

I think with that this is a solid doc patch.

> + *
>   * max bpc:
>   *	This range property is used by userspace to limit the bit depth. When
>   *	used the driver would limit the bpc in accordance with the valid range
> diff --git a/include/drm/drm_connector.h b/include/drm/drm_connector.h
> index 5476561..47e749b 100644
> --- a/include/drm/drm_connector.h
> +++ b/include/drm/drm_connector.h
> @@ -1244,6 +1244,7 @@ struct drm_connector {
>  	 */
>  	struct llist_node free_node;
>  
> +	/** @hdr_sink_metadata: HDR Metadata Information read from sink */
>  	struct hdr_sink_metadata hdr_sink_metadata;

Something I realized while reading the code: This should probably be put
into the drm_display_info struct, like all the other things we parse out
of the edid. I think that would be a lot more consistent with the code -
the driver interface function which calls this code is called
drm_add_display_info() after all.

Can you pls change that in a follow-up patch?

>  };
>  
> diff --git a/include/drm/drm_mode_config.h b/include/drm/drm_mode_config.h
> index 4f88cc9..759d462 100644
> --- a/include/drm/drm_mode_config.h
> +++ b/include/drm/drm_mode_config.h
> @@ -837,8 +837,8 @@ struct drm_mode_config {
>  	struct drm_property *writeback_out_fence_ptr_property;
>  
>  	/**
> -	 * hdr_output_metadata_property: Connector property containing hdr
> -	 * metatda. This will be provided by userspace compositors based
> +	 * @hdr_output_metadata_property: Connector property containing hdr
> +	 * metatada. This will be provided by userspace compositors based
>  	 * on HDR content
>  	 */
>  	struct drm_property *hdr_output_metadata_property;
> diff --git a/include/linux/hdmi.h b/include/linux/hdmi.h
> index ee55ba5..55c6db5 100644
> --- a/include/linux/hdmi.h
> +++ b/include/linux/hdmi.h
> @@ -398,6 +398,7 @@ ssize_t hdmi_vendor_infoframe_pack_only(const struct hdmi_vendor_infoframe *fram
>   * @spd: spd infoframe
>   * @vendor: union of all vendor infoframes
>   * @audio: audio infoframe
> + * @drm: Dynamic Range and Mastering infoframe
>   *
>   * This is used by the generic pack function. This works since all infoframes
>   * have the same header which also indicates which type of infoframe should be
> diff --git a/include/uapi/drm/drm_mode.h b/include/uapi/drm/drm_mode.h
> index 997a7e0..5d3964f 100644
> --- a/include/uapi/drm/drm_mode.h
> +++ b/include/uapi/drm/drm_mode.h
> @@ -33,6 +33,15 @@
>  extern "C" {
>  #endif
>  
> +/**
> + * DOC: overview
> + *
> + * DRM exposes many UAPI and structure definition to have a consistent
> + * and standardized interface with user.
> + * Userspace can refer to these structure definitions and UAPI formats
> + * to communicate to driver
> + */
> +
>  #define DRM_CONNECTOR_NAME_LEN	32
>  #define DRM_DISPLAY_MODE_LEN	32
>  #define DRM_PROP_NAME_LEN	32
> @@ -630,7 +639,26 @@ struct drm_color_lut {
>  	__u16 reserved;
>  };
>  
> -/* HDR Metadata Infoframe as per 861.G spec */

Keep the spec reference imo, maybe even add a note that this is supposed
to perfectly match it.

> +/**
> + * struct hdr_metadata_infoframe - HDR Metadata Infoframe Data.
> + * @eotf: Electro-Optical Transfer Function (EOTF) used in the stream.
> + * @metadata_type: Static_Metadata_Descriptor_ID.
> + * @display_primaries: Color Primaries of the Data.
> + * @display_primaries.x: X cordinate of color primary.

Would be good to spend a few more words about "in which standard/format"
this color number is. I.e. fixed point or whatever, and color space.

> + * @display_primaries.y: Y cordinate of color primary.
> + * @white_point: White Point of Colorspace Data.
> + * @white_point.x: X cordinate of whitepoint of color primary.
> + * @white_point.y: Y cordinate of whitepoint of color primary.
> + * @max_display_mastering_luminance: Max Mastering Display Luminance.
> + * @min_display_mastering_luminance: Min Mastering Display Luminance.
> + * @max_cll: Max Content Light Level.
> + * @max_fall: Max Frame Average Light Level.

btw for long structs I prefer the inline kerneldoc style. This one is just
at the edge imo.

> + *
> + * With drm subsystem using struct drm_rect to manage rectangular area this

struct &drm_rect to make it a hyperlink. Once we have drm_rect documented
:-)

> + * export it to user-space.
> + *
> + * Currently used by drm_mode_atomic blob property FB_DAMAGE_CLIPS.
> + */
>  struct hdr_metadata_infoframe {
>  	__u8 eotf;
>  	__u8 metadata_type;
> @@ -646,6 +674,13 @@ struct hdr_metadata_infoframe {
>  	__u16 max_fall;
>  };
>  
> +/**
> + * struct hdr_output_metadata - HDR output metadata
> + *
> + * Metadata Information to be passed from userspace
> + * @metadata_type: Static_Metadata_Descriptor_ID.
> + * @hdmi_metadata_type1: HDR Metadata Infoframe.

If you want to move the member docs closer to their definition, go with
the inline style.

Thanks, Daniel

> + */
>  struct hdr_output_metadata {
>  	__u32 metadata_type;
>  	union {
> -- 
> 1.9.1
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH 4/4] video/hdmi: Dropped static functions from kernel doc
  2019-05-29 19:59 ` [PATCH 4/4] video/hdmi: Dropped static functions from kernel doc Uma Shankar
@ 2019-06-03  8:24   ` Daniel Vetter
  2019-06-03 11:54     ` Shankar, Uma
  0 siblings, 1 reply; 22+ messages in thread
From: Daniel Vetter @ 2019-06-03  8:24 UTC (permalink / raw)
  To: Uma Shankar; +Cc: dcastagna, jonas, intel-gfx, dri-devel, seanpaul

On Thu, May 30, 2019 at 01:29:04AM +0530, Uma Shankar wrote:
> Dropped static functions from kernel documentation.
> 
> Suggested-by: Daniel Vetter <daniel@ffwll.ch>
> Signed-off-by: Uma Shankar <uma.shankar@intel.com>
> ---
>  drivers/video/hdmi.c | 32 ++++++++++++++++----------------
>  1 file changed, 16 insertions(+), 16 deletions(-)
> 
> diff --git a/drivers/video/hdmi.c b/drivers/video/hdmi.c
> index b99ba01..72c654b 100644
> --- a/drivers/video/hdmi.c
> +++ b/drivers/video/hdmi.c
> @@ -1191,11 +1191,11 @@ static const char *hdmi_nups_get_name(enum hdmi_nups nups)
>  	return "Invalid";
>  }
>  
> -/**
> +/*
>   * hdmi_avi_infoframe_log() - log info of HDMI AVI infoframe
> - * @level: logging level
> - * @dev: device
> - * @frame: HDMI AVI infoframe
> + * level: logging level
> + * dev: device
> + * frame: HDMI AVI infoframe
>   */
>  static void hdmi_avi_infoframe_log(const char *level,
>  				   struct device *dev,
> @@ -1268,11 +1268,11 @@ static const char *hdmi_spd_sdi_get_name(enum hdmi_spd_sdi sdi)
>  	return "Reserved";
>  }
>  
> -/**
> +/*
>   * hdmi_spd_infoframe_log() - log info of HDMI SPD infoframe
> - * @level: logging level
> - * @dev: device
> - * @frame: HDMI SPD infoframe
> + * level: logging level
> + * dev: device
> + * frame: HDMI SPD infoframe
>   */

For internal functions I think there's not really any value in documenting
this. The variable names are obvious enough. Imo better to ditch this
outright.
-Daniel

>  static void hdmi_spd_infoframe_log(const char *level,
>  				   struct device *dev,
> @@ -1404,11 +1404,11 @@ static void hdmi_spd_infoframe_log(const char *level,
>  	return "Reserved";
>  }
>  
> -/**
> +/*
>   * hdmi_audio_infoframe_log() - log info of HDMI AUDIO infoframe
> - * @level: logging level
> - * @dev: device
> - * @frame: HDMI AUDIO infoframe
> + * level: logging level
> + * dev: device
> + * frame: HDMI AUDIO infoframe
>   */
>  static void hdmi_audio_infoframe_log(const char *level,
>  				     struct device *dev,
> @@ -1437,11 +1437,11 @@ static void hdmi_audio_infoframe_log(const char *level,
>  			frame->downmix_inhibit ? "Yes" : "No");
>  }
>  
> -/**
> +/*
>   * hdmi_drm_infoframe_log() - log info of HDMI DRM infoframe
> - * @level: logging level
> - * @dev: device
> - * @frame: HDMI DRM infoframe
> + * level: logging level
> + * dev: device
> + * frame: HDMI DRM infoframe
>   */
>  static void hdmi_drm_infoframe_log(const char *level,
>  				   struct device *dev,
> -- 
> 1.9.1
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH 3/4] drm: Fixed doc warnings in drm uapi header
  2019-05-29 19:59 ` [PATCH 3/4] drm: Fixed doc warnings in drm uapi header Uma Shankar
@ 2019-06-03  8:26   ` Daniel Vetter
  2019-06-03 11:53     ` Shankar, Uma
  0 siblings, 1 reply; 22+ messages in thread
From: Daniel Vetter @ 2019-06-03  8:26 UTC (permalink / raw)
  To: Uma Shankar; +Cc: dcastagna, jonas, intel-gfx, dri-devel, seanpaul

On Thu, May 30, 2019 at 01:29:03AM +0530, Uma Shankar wrote:
> Fixed doc warnings in drm uapi header. All the UAPI
> structures are now documented in kernel doc.
> 
> Signed-off-by: Uma Shankar <uma.shankar@intel.com>

Applied, thanks for the patch.

Long-term there's obviously a lot more to do here, but this at least gets
us started.

Btw I think it'd be good to split out the "add new uapi ioctl structures
section" part from the previous patch, and merge that separately.

Thanks, Daniel

> ---
>  include/uapi/drm/drm_mode.h | 22 ++++++++++++++++++++++
>  1 file changed, 22 insertions(+)
> 
> diff --git a/include/uapi/drm/drm_mode.h b/include/uapi/drm/drm_mode.h
> index 5d3964f..02b2a2b 100644
> --- a/include/uapi/drm/drm_mode.h
> +++ b/include/uapi/drm/drm_mode.h
> @@ -861,6 +861,10 @@ struct drm_format_modifier {
>  };
>  
>  /**
> + * struct drm_mode_create_blob - Create New block property
> + * @data: Pointer to data to copy.
> + * @length: Length of data to copy.
> + * @blob_id: new property ID.
>   * Create a new 'blob' data property, copying length bytes from data pointer,
>   * and returning new blob ID.
>   */
> @@ -874,6 +878,8 @@ struct drm_mode_create_blob {
>  };
>  
>  /**
> + * struct drm_mode_destroy_blob - Destroy user blob
> + * @blob_id: blob_id to destroy
>   * Destroy a user-created blob property.
>   */
>  struct drm_mode_destroy_blob {
> @@ -881,6 +887,12 @@ struct drm_mode_destroy_blob {
>  };
>  
>  /**
> + * struct drm_mode_create_lease - Create lease
> + * @object_ids: Pointer to array of object ids.
> + * @object_count: Number of object ids.
> + * @flags: flags for new FD.
> + * @lessee_id: unique identifier for lessee.
> + * @fd: file descriptor to new drm_master file.
>   * Lease mode resources, creating another drm_master.
>   */
>  struct drm_mode_create_lease {
> @@ -898,6 +910,10 @@ struct drm_mode_create_lease {
>  };
>  
>  /**
> + * struct drm_mode_list_lessees - List lessees
> + * @count_lessees: Number of lessees.
> + * @pad: pad.
> + * @lessees_ptr: Pointer to lessess.
>   * List lesses from a drm_master
>   */
>  struct drm_mode_list_lessees {
> @@ -918,6 +934,10 @@ struct drm_mode_list_lessees {
>  };
>  
>  /**
> + * struct drm_mode_get_lease - Get Lease
> + * @count_objects: Number of leased objects.
> + * @pad: pad.
> + * @objects_ptr: Pointer to objects.
>   * Get leased objects
>   */
>  struct drm_mode_get_lease {
> @@ -938,6 +958,8 @@ struct drm_mode_get_lease {
>  };
>  
>  /**
> + * struct drm_mode_revoke_lease - Revoke lease
> + * @lessee_id: Unique ID of lessee.
>   * Revoke lease
>   */
>  struct drm_mode_revoke_lease {
> -- 
> 1.9.1
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH 1/4] drm: Drop a redundant unused variable
  2019-06-03  8:12   ` Daniel Vetter
@ 2019-06-03 11:52     ` Shankar, Uma
  0 siblings, 0 replies; 22+ messages in thread
From: Shankar, Uma @ 2019-06-03 11:52 UTC (permalink / raw)
  To: Daniel Vetter; +Cc: dcastagna, jonas, intel-gfx, dri-devel, seanpaul



>-----Original Message-----
>From: Daniel Vetter [mailto:daniel.vetter@ffwll.ch] On Behalf Of Daniel Vetter
>Sent: Monday, June 3, 2019 1:42 PM
>To: Shankar, Uma <uma.shankar@intel.com>
>Cc: intel-gfx@lists.freedesktop.org; dri-devel@lists.freedesktop.org;
>maarten.lankhorst@linux.intel.com; ville.syrjala@linux.intel.com; Sharma, Shashank
><shashank.sharma@intel.com>; emil.l.velikov@gmail.com; brian.starkey@arm.com;
>dcastagna@chromium.org; seanpaul@chromium.org; Roper, Matthew D
><matthew.d.roper@intel.com>; jonas@kwiboo.se; daniel@ffwll.ch
>Subject: Re: [PATCH 1/4] drm: Drop a redundant unused variable
>
>On Thu, May 30, 2019 at 01:29:01AM +0530, Uma Shankar wrote:
>> Drop a redundant and unused variable "hdr_output_metadata" from
>> drm_connector.
>>
>> Suggested-by: Daniel Vetter <daniel@ffwll.ch>
>> Signed-off-by: Uma Shankar <uma.shankar@intel.com>
>
>For next time around: Please add Fixes: lines to indicate which already merged
>commit you're improving.

Thanks Daniel. Sure, will take care of that in future.

Regards,
Uma Shankar

>Patch merged, thanks.
>-Daniel
>
>> ---
>>  include/drm/drm_connector.h | 2 --
>>  1 file changed, 2 deletions(-)
>>
>> diff --git a/include/drm/drm_connector.h b/include/drm/drm_connector.h
>> index f8f4003..5476561 100644
>> --- a/include/drm/drm_connector.h
>> +++ b/include/drm/drm_connector.h
>> @@ -1244,8 +1244,6 @@ struct drm_connector {
>>  	 */
>>  	struct llist_node free_node;
>>
>> -	/* HDR metdata */
>> -	struct hdr_output_metadata hdr_output_metadata;
>>  	struct hdr_sink_metadata hdr_sink_metadata;  };
>>
>> --
>> 1.9.1
>>
>
>--
>Daniel Vetter
>Software Engineer, Intel Corporation
>http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 22+ messages in thread

* RE: [PATCH 3/4] drm: Fixed doc warnings in drm uapi header
  2019-06-03  8:26   ` Daniel Vetter
@ 2019-06-03 11:53     ` Shankar, Uma
  0 siblings, 0 replies; 22+ messages in thread
From: Shankar, Uma @ 2019-06-03 11:53 UTC (permalink / raw)
  To: Daniel Vetter
  Cc: dcastagna, jonas, intel-gfx, emil.l.velikov, dri-devel, seanpaul



>-----Original Message-----
>From: Daniel Vetter [mailto:daniel.vetter@ffwll.ch] On Behalf Of Daniel Vetter
>Sent: Monday, June 3, 2019 1:56 PM
>To: Shankar, Uma <uma.shankar@intel.com>
>Cc: intel-gfx@lists.freedesktop.org; dri-devel@lists.freedesktop.org;
>maarten.lankhorst@linux.intel.com; ville.syrjala@linux.intel.com; Sharma, Shashank
><shashank.sharma@intel.com>; emil.l.velikov@gmail.com; brian.starkey@arm.com;
>dcastagna@chromium.org; seanpaul@chromium.org; Roper, Matthew D
><matthew.d.roper@intel.com>; jonas@kwiboo.se; daniel@ffwll.ch
>Subject: Re: [PATCH 3/4] drm: Fixed doc warnings in drm uapi header
>
>On Thu, May 30, 2019 at 01:29:03AM +0530, Uma Shankar wrote:
>> Fixed doc warnings in drm uapi header. All the UAPI structures are now
>> documented in kernel doc.
>>
>> Signed-off-by: Uma Shankar <uma.shankar@intel.com>
>
>Applied, thanks for the patch.
>
>Long-term there's obviously a lot more to do here, but this at least gets us started.
>
>Btw I think it'd be good to split out the "add new uapi ioctl structures section" part
>from the previous patch, and merge that separately.

Ok, will do the same.

Regards,
Uma Shankar

>Thanks, Daniel
>
>> ---
>>  include/uapi/drm/drm_mode.h | 22 ++++++++++++++++++++++
>>  1 file changed, 22 insertions(+)
>>
>> diff --git a/include/uapi/drm/drm_mode.h b/include/uapi/drm/drm_mode.h
>> index 5d3964f..02b2a2b 100644
>> --- a/include/uapi/drm/drm_mode.h
>> +++ b/include/uapi/drm/drm_mode.h
>> @@ -861,6 +861,10 @@ struct drm_format_modifier {  };
>>
>>  /**
>> + * struct drm_mode_create_blob - Create New block property
>> + * @data: Pointer to data to copy.
>> + * @length: Length of data to copy.
>> + * @blob_id: new property ID.
>>   * Create a new 'blob' data property, copying length bytes from data pointer,
>>   * and returning new blob ID.
>>   */
>> @@ -874,6 +878,8 @@ struct drm_mode_create_blob {  };
>>
>>  /**
>> + * struct drm_mode_destroy_blob - Destroy user blob
>> + * @blob_id: blob_id to destroy
>>   * Destroy a user-created blob property.
>>   */
>>  struct drm_mode_destroy_blob {
>> @@ -881,6 +887,12 @@ struct drm_mode_destroy_blob {  };
>>
>>  /**
>> + * struct drm_mode_create_lease - Create lease
>> + * @object_ids: Pointer to array of object ids.
>> + * @object_count: Number of object ids.
>> + * @flags: flags for new FD.
>> + * @lessee_id: unique identifier for lessee.
>> + * @fd: file descriptor to new drm_master file.
>>   * Lease mode resources, creating another drm_master.
>>   */
>>  struct drm_mode_create_lease {
>> @@ -898,6 +910,10 @@ struct drm_mode_create_lease {  };
>>
>>  /**
>> + * struct drm_mode_list_lessees - List lessees
>> + * @count_lessees: Number of lessees.
>> + * @pad: pad.
>> + * @lessees_ptr: Pointer to lessess.
>>   * List lesses from a drm_master
>>   */
>>  struct drm_mode_list_lessees {
>> @@ -918,6 +934,10 @@ struct drm_mode_list_lessees {  };
>>
>>  /**
>> + * struct drm_mode_get_lease - Get Lease
>> + * @count_objects: Number of leased objects.
>> + * @pad: pad.
>> + * @objects_ptr: Pointer to objects.
>>   * Get leased objects
>>   */
>>  struct drm_mode_get_lease {
>> @@ -938,6 +958,8 @@ struct drm_mode_get_lease {  };
>>
>>  /**
>> + * struct drm_mode_revoke_lease - Revoke lease
>> + * @lessee_id: Unique ID of lessee.
>>   * Revoke lease
>>   */
>>  struct drm_mode_revoke_lease {
>> --
>> 1.9.1
>>
>
>--
>Daniel Vetter
>Software Engineer, Intel Corporation
>http://blog.ffwll.ch
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH 4/4] video/hdmi: Dropped static functions from kernel doc
  2019-06-03  8:24   ` Daniel Vetter
@ 2019-06-03 11:54     ` Shankar, Uma
  0 siblings, 0 replies; 22+ messages in thread
From: Shankar, Uma @ 2019-06-03 11:54 UTC (permalink / raw)
  To: Daniel Vetter; +Cc: dcastagna, jonas, intel-gfx, dri-devel, seanpaul



>-----Original Message-----
>From: Daniel Vetter [mailto:daniel.vetter@ffwll.ch] On Behalf Of Daniel Vetter
>Sent: Monday, June 3, 2019 1:55 PM
>To: Shankar, Uma <uma.shankar@intel.com>
>Cc: intel-gfx@lists.freedesktop.org; dri-devel@lists.freedesktop.org;
>maarten.lankhorst@linux.intel.com; ville.syrjala@linux.intel.com; Sharma, Shashank
><shashank.sharma@intel.com>; emil.l.velikov@gmail.com; brian.starkey@arm.com;
>dcastagna@chromium.org; seanpaul@chromium.org; Roper, Matthew D
><matthew.d.roper@intel.com>; jonas@kwiboo.se; daniel@ffwll.ch
>Subject: Re: [PATCH 4/4] video/hdmi: Dropped static functions from kernel doc
>
>On Thu, May 30, 2019 at 01:29:04AM +0530, Uma Shankar wrote:
>> Dropped static functions from kernel documentation.
>>
>> Suggested-by: Daniel Vetter <daniel@ffwll.ch>
>> Signed-off-by: Uma Shankar <uma.shankar@intel.com>
>> ---
>>  drivers/video/hdmi.c | 32 ++++++++++++++++----------------
>>  1 file changed, 16 insertions(+), 16 deletions(-)
>>
>> diff --git a/drivers/video/hdmi.c b/drivers/video/hdmi.c index
>> b99ba01..72c654b 100644
>> --- a/drivers/video/hdmi.c
>> +++ b/drivers/video/hdmi.c
>> @@ -1191,11 +1191,11 @@ static const char *hdmi_nups_get_name(enum
>hdmi_nups nups)
>>  	return "Invalid";
>>  }
>>
>> -/**
>> +/*
>>   * hdmi_avi_infoframe_log() - log info of HDMI AVI infoframe
>> - * @level: logging level
>> - * @dev: device
>> - * @frame: HDMI AVI infoframe
>> + * level: logging level
>> + * dev: device
>> + * frame: HDMI AVI infoframe
>>   */
>>  static void hdmi_avi_infoframe_log(const char *level,
>>  				   struct device *dev,
>> @@ -1268,11 +1268,11 @@ static const char *hdmi_spd_sdi_get_name(enum
>hdmi_spd_sdi sdi)
>>  	return "Reserved";
>>  }
>>
>> -/**
>> +/*
>>   * hdmi_spd_infoframe_log() - log info of HDMI SPD infoframe
>> - * @level: logging level
>> - * @dev: device
>> - * @frame: HDMI SPD infoframe
>> + * level: logging level
>> + * dev: device
>> + * frame: HDMI SPD infoframe
>>   */
>
>For internal functions I think there's not really any value in documenting this. The
>variable names are obvious enough. Imo better to ditch this outright.

Ok, will drop the comments from all these static functions.

Regards,
Uma Shankar

>-Daniel
>
>>  static void hdmi_spd_infoframe_log(const char *level,
>>  				   struct device *dev,
>> @@ -1404,11 +1404,11 @@ static void hdmi_spd_infoframe_log(const char *level,
>>  	return "Reserved";
>>  }
>>
>> -/**
>> +/*
>>   * hdmi_audio_infoframe_log() - log info of HDMI AUDIO infoframe
>> - * @level: logging level
>> - * @dev: device
>> - * @frame: HDMI AUDIO infoframe
>> + * level: logging level
>> + * dev: device
>> + * frame: HDMI AUDIO infoframe
>>   */
>>  static void hdmi_audio_infoframe_log(const char *level,
>>  				     struct device *dev,
>> @@ -1437,11 +1437,11 @@ static void hdmi_audio_infoframe_log(const char
>*level,
>>  			frame->downmix_inhibit ? "Yes" : "No");  }
>>
>> -/**
>> +/*
>>   * hdmi_drm_infoframe_log() - log info of HDMI DRM infoframe
>> - * @level: logging level
>> - * @dev: device
>> - * @frame: HDMI DRM infoframe
>> + * level: logging level
>> + * dev: device
>> + * frame: HDMI DRM infoframe
>>   */
>>  static void hdmi_drm_infoframe_log(const char *level,
>>  				   struct device *dev,
>> --
>> 1.9.1
>>
>
>--
>Daniel Vetter
>Software Engineer, Intel Corporation
>http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 22+ messages in thread

* RE: [PATCH 2/4] drm: Fix docbook warnings in hdr metadata helper structures
  2019-06-03  8:23     ` Daniel Vetter
@ 2019-06-03 12:01       ` Shankar, Uma
  -1 siblings, 0 replies; 22+ messages in thread
From: Shankar, Uma @ 2019-06-03 12:01 UTC (permalink / raw)
  To: Daniel Vetter
  Cc: linux-fbdev, dcastagna, jonas, Maxime Ripard, intel-gfx,
	Bartlomiej Zolnierkiewicz, dri-devel, Hans Verkuil, David Airlie,
	seanpaul

DQoNCj4tLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPkZyb206IGRyaS1kZXZlbCBbbWFpbHRv
OmRyaS1kZXZlbC1ib3VuY2VzQGxpc3RzLmZyZWVkZXNrdG9wLm9yZ10gT24gQmVoYWxmIE9mIERh
bmllbA0KPlZldHRlcg0KPlNlbnQ6IE1vbmRheSwgSnVuZSAzLCAyMDE5IDE6NTMgUE0NCj5Ubzog
U2hhbmthciwgVW1hIDx1bWEuc2hhbmthckBpbnRlbC5jb20+DQo+Q2M6IFNlYW4gUGF1bCA8c2Vh
bkBwb29ybHkucnVuPjsgbGludXgtZmJkZXZAdmdlci5rZXJuZWwub3JnOw0KPmRjYXN0YWduYUBj
aHJvbWl1bS5vcmc7IGpvbmFzQGt3aWJvby5zZTsgTWF4aW1lIFJpcGFyZA0KPjxtYXhpbWUucmlw
YXJkQGJvb3RsaW4uY29tPjsgaW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZzsgQmFydGxv
bWllag0KPlpvbG5pZXJraWV3aWN6IDxiLnpvbG5pZXJraWVAc2Ftc3VuZy5jb20+OyBlbWlsLmwu
dmVsaWtvdkBnbWFpbC5jb207IGRyaS0NCj5kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmc7IEhh
bnMgVmVya3VpbCA8aGFuc3ZlcmtAY2lzY28uY29tPjsgRGF2aWQgQWlybGllDQo+PGFpcmxpZWRA
bGludXguaWU+OyBzZWFucGF1bEBjaHJvbWl1bS5vcmcNCj5TdWJqZWN0OiBSZTogW1BBVENIIDIv
NF0gZHJtOiBGaXggZG9jYm9vayB3YXJuaW5ncyBpbiBoZHIgbWV0YWRhdGEgaGVscGVyIHN0cnVj
dHVyZXMNCj4NCj5PbiBUaHUsIE1heSAzMCwgMjAxOSBhdCAwMToyOTowMkFNICswNTMwLCBVbWEg
U2hhbmthciB3cm90ZToNCj4+IEZpeGVzIHRoZSBmb2xsb3dpbmcgd2FybmluZ3M6DQo+PiAuL2lu
Y2x1ZGUvZHJtL2RybV9tb2RlX2NvbmZpZy5oOjg0MTogd2FybmluZzogSW5jb3JyZWN0IHVzZSBv
Zg0KPj4ga2VybmVsLWRvYyBmb3JtYXQ6ICAgICAgICAgICogaGRyX291dHB1dF9tZXRhZGF0YV9w
cm9wZXJ0eTogQ29ubmVjdG9yDQo+PiBwcm9wZXJ0eSBjb250YWluaW5nIGhkcg0KPj4gLi9pbmNs
dWRlL2RybS9kcm1fbW9kZV9jb25maWcuaDo5MTg6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRl
ciBvciBtZW1iZXINCj4naGRyX291dHB1dF9tZXRhZGF0YV9wcm9wZXJ0eScgbm90IGRlc2NyaWJl
ZCBpbiAnZHJtX21vZGVfY29uZmlnJw0KPj4gLi9pbmNsdWRlL2RybS9kcm1fY29ubmVjdG9yLmg6
MTI1MTogd2FybmluZzogRnVuY3Rpb24gcGFyYW1ldGVyIG9yIG1lbWJlcg0KPidoZHJfb3V0cHV0
X21ldGFkYXRhJyBub3QgZGVzY3JpYmVkIGluICdkcm1fY29ubmVjdG9yJw0KPj4gLi9pbmNsdWRl
L2RybS9kcm1fY29ubmVjdG9yLmg6MTI1MTogd2FybmluZzogRnVuY3Rpb24gcGFyYW1ldGVyIG9y
IG1lbWJlcg0KPidoZHJfc2lua19tZXRhZGF0YScgbm90IGRlc2NyaWJlZCBpbiAnZHJtX2Nvbm5l
Y3RvcicNCj4+DQo+PiBBbHNvIGFkZHMgc29tZSBwcm9wZXJ0eSBkb2N1bWVudGF0aW9uIGZvciBI
RFIgTWV0YWRhdGEgQ29ubmVjdG9yDQo+PiBQcm9wZXJ0eSBpbiBjb25uZWN0b3IgcHJvcGVydHkg
Y3JlYXRlIGZ1bmN0aW9uLg0KPj4NCj4+IHYyOiBGaXhlZCBTZWFuIFBhdWwncyByZXZpZXcgY29t
bWVudHMuDQo+Pg0KPj4gdjM6IEZpeGVkIERhbmllbCBWZXR0ZXIncyByZXZpZXcgY29tbWVudHMs
IGFkZGVkIHRoZSBVQVBJIHN0cnVjdHVyZQ0KPj4gZGVmaW5pdGlvbiBzZWN0aW9uIGluIGtlcm5l
bCBkb2NzLg0KPj4NCj4+IENjOiBTaGFzaGFuayBTaGFybWEgPHNoYXNoYW5rLnNoYXJtYUBpbnRl
bC5jb20+DQo+PiBDYzogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVs
LmNvbT4NCj4+IENjOiBNYWFydGVuIExhbmtob3JzdCA8bWFhcnRlbi5sYW5raG9yc3RAbGludXgu
aW50ZWwuY29tPg0KPj4gQ2M6IE1heGltZSBSaXBhcmQgPG1heGltZS5yaXBhcmRAYm9vdGxpbi5j
b20+DQo+PiBDYzogU2VhbiBQYXVsIDxzZWFuQHBvb3JseS5ydW4+DQo+PiBDYzogRGF2aWQgQWly
bGllIDxhaXJsaWVkQGxpbnV4LmllPg0KPj4gQ2M6IERhbmllbCBWZXR0ZXIgPGRhbmllbEBmZnds
bC5jaD4NCj4+IENjOiBCYXJ0bG9taWVqIFpvbG5pZXJraWV3aWN6IDxiLnpvbG5pZXJraWVAc2Ft
c3VuZy5jb20+DQo+PiBDYzogIlZpbGxlIFN5cmrDpGzDpCIgPHZpbGxlLnN5cmphbGFAbGludXgu
aW50ZWwuY29tPg0KPj4gQ2M6IEhhbnMgVmVya3VpbCA8aGFuc3ZlcmtAY2lzY28uY29tPg0KPj4g
Q2M6IGRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcNCj4+IENjOiBsaW51eC1mYmRldkB2
Z2VyLmtlcm5lbC5vcmcNCj4+IFJldmlld2VkLWJ5OiBTZWFuIFBhdWwgPHNlYW5AcG9vcmx5LnJ1
bj4NCj4+IFNpZ25lZC1vZmYtYnk6IFVtYSBTaGFua2FyIDx1bWEuc2hhbmthckBpbnRlbC5jb20+
DQo+PiAtLS0NCj4+ICBEb2N1bWVudGF0aW9uL2dwdS9kcm0tdWFwaS5yc3QgIHwgIDkgKysrKysr
KysrDQo+PiBkcml2ZXJzL2dwdS9kcm0vZHJtX2Nvbm5lY3Rvci5jIHwgMzEgKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKw0KPj4gIGluY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaCAgICAg
fCAgMSArDQo+PiAgaW5jbHVkZS9kcm0vZHJtX21vZGVfY29uZmlnLmggICB8ICA0ICsrLS0NCj4+
ICBpbmNsdWRlL2xpbnV4L2hkbWkuaCAgICAgICAgICAgIHwgIDEgKw0KPj4gIGluY2x1ZGUvdWFw
aS9kcm0vZHJtX21vZGUuaCAgICAgfCAzNw0KPisrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKy0NCj4+ICA2IGZpbGVzIGNoYW5nZWQsIDgwIGluc2VydGlvbnMoKyksIDMgZGVsZXRp
b25zKC0pDQo+Pg0KPj4gZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ3B1L2RybS11YXBpLnJz
dA0KPj4gYi9Eb2N1bWVudGF0aW9uL2dwdS9kcm0tdWFwaS5yc3QgaW5kZXggMDU4NzRkMC4uNmIz
OWUyYyAxMDA2NDQNCj4+IC0tLSBhL0RvY3VtZW50YXRpb24vZ3B1L2RybS11YXBpLnJzdA0KPj4g
KysrIGIvRG9jdW1lbnRhdGlvbi9ncHUvZHJtLXVhcGkucnN0DQo+PiBAQCAtMzI5LDMgKzMyOSwx
MiBAQCBEUk1fSU9DVExfTU9ERVNFVF9DVEwNCj4+ICAgICAgbW9kZSBzZXR0aW5nLCBzaW5jZSBv
biBtYW55IGRldmljZXMgdGhlIHZlcnRpY2FsIGJsYW5rIGNvdW50ZXIgaXMNCj4+ICAgICAgcmVz
ZXQgdG8gMCBhdCBzb21lIHBvaW50IGR1cmluZyBtb2Rlc2V0LiBNb2Rlcm4gZHJpdmVycyBzaG91
bGQgbm90DQo+PiAgICAgIGNhbGwgdGhpcyBhbnkgbW9yZSBzaW5jZSB3aXRoIGtlcm5lbCBtb2Rl
IHNldHRpbmcgaXQgaXMgYSBuby1vcC4NCj4+ICsNCj4+ICtVc2Vyc3BhY2UgQVBJIFN0cnVjdHVy
ZXMNCj4+ICs9PT09PT09PT09PT09PT09PT09PT09PT0NCj4+ICsNCj4+ICsuLiBrZXJuZWwtZG9j
OjogaW5jbHVkZS91YXBpL2RybS9kcm1fbW9kZS5oDQo+PiArICAgOmRvYzogb3ZlcnZpZXcNCj4+
ICsNCj4+ICsuLiBrZXJuZWwtZG9jOjogaW5jbHVkZS91YXBpL2RybS9kcm1fbW9kZS5oDQo+PiAr
ICAgOmludGVybmFsOg0KPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fY29ubmVj
dG9yLmMNCj4+IGIvZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3IuYyBpbmRleCBjOWFjOGI5
Li42YTkzNTI3IDEwMDY0NA0KPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3Iu
Yw0KPj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3IuYw0KPj4gQEAgLTk1Niw2
ICs5NTYsMzcgQEAgaW50IGRybV9kaXNwbGF5X2luZm9fc2V0X2J1c19mb3JtYXRzKHN0cnVjdA0K
PmRybV9kaXNwbGF5X2luZm8gKmluZm8sDQo+PiAgICoJICBpcyBubyBsb25nZXIgcHJvdGVjdGVk
IGFuZCB1c2Vyc3BhY2Ugc2hvdWxkIHRha2UgYXBwcm9wcmlhdGUgYWN0aW9uDQo+PiAgICoJICAo
d2hhdGV2ZXIgdGhhdCBtaWdodCBiZSkuDQo+PiAgICoNCj4+ICsgKiBIRFJfT1VUUFVUX01FVEFE
QVRBOg0KPj4gKyAqCUNvbm5lY3RvciBwcm9wZXJ0eSB0byBlbmFibGUgdXNlcnNwYWNlIHRvIHNl
bmQgSERSIE1ldGFkYXRhIHRvDQo+PiArICoJZHJpdmVyLiBUaGlzIG1ldGFkYXRhIGlzIGJhc2Vk
IG9uIHRoZSBjb21wb3NpdGlvbiBhbmQgYmxlbmRpbmcNCj4+ICsgKglwb2xpY2llcyBkZWNpZGVk
IGJ5IHVzZXIsIHRha2luZyBpbnRvIGFjY291bnQgdGhlIGhhcmR3YXJlIGFuZA0KPj4gKyAqCXNp
bmsgY2FwYWJpbGl0aWVzLiBUaGUgZHJpdmVyIGdldHMgdGhpcyBtZXRhZGF0YSBhbmQgY3JlYXRl
cyBhDQo+PiArICoJRHluYW1pYyBSYW5nZSBhbmQgTWFzdGVyaW5nIEluZm9mcmFtZSAoRFJNKSBp
biBjYXNlIG9mIEhETUksDQo+PiArICoJU0RQIHBhY2tldCAoTm9uLWF1ZGlvIElORk9GUkFNRSBT
RFAgdjEuMykgZm9yIERQLiBUaGlzIGlzIHRoZW4NCj4+ICsgKglzZW50IHRvIHNpbmsuIFRoaXMg
bm90aWZpZXMgdGhlIHNpbmsgb2YgdGhlIHVwY29taW5nIGZyYW1lJ3MgQ29sb3INCj4+ICsgKglF
bmNvZGluZyBhbmQgTHVtaW5hbmNlIHBhcmFtZXRlcnMuDQo+PiArICoNCj4+ICsgKglVc2Vyc3Bh
Y2UgZmlyc3QgbmVlZCB0byBkZXRlY3QgdGhlIEhEUiBjYXBhYmlsaXRpZXMgb2Ygc2luayBieQ0K
Pj4gKyAqCXJlYWRpbmcgYW5kIHBhcnNpbmcgdGhlIEVESUQuIERldGFpbHMgb2YgSERSIG1ldGFk
YXRhIGZvciBIRE1JDQo+PiArICoJYXJlIGFkZGVkIGluIENUQSA4NjEuRyBzcGVjLiBGb3IgRFAg
LCBpdHMgZGVmaW5lZCBpbiBWRVNBIERQDQo+PiArICoJU3RhbmRhcmQgdjEuNC4gSXQgbmVlZHMg
dG8gdGhlbiBnZXQgdGhlIG1ldGFkYXRhIGluZm9ybWF0aW9uDQo+PiArICoJb2YgdGhlIHZpZGVv
L2dhbWUvYXBwIGNvbnRlbnQgd2hpY2ggYXJlIGVuY29kZWQgaW4gSERSIChiYXNpY2FsbHkNCj4+
ICsgKgl1c2luZyBIRFIgdHJhbnNmZXIgZnVuY3Rpb25zKS4gV2l0aCB0aGlzIGluZm9ybWF0aW9u
IGl0IG5lZWRzIHRvDQo+PiArICoJZGVjaWRlIG9uIGEgYmxlbmRpbmcgcG9saWN5IGFuZCBjb21w
b3NlIHRoZSByZWxldmFudA0KPj4gKyAqCWxheWVycy9vdmVybGF5cyBpbnRvIGEgY29tbW9uIGZv
cm1hdC4gT25jZSB0aGlzIGJsZW5kaW5nIGlzIGRvbmUsDQo+PiArICoJdXNlcnNwYWNlIHdpbGwg
YmUgYXdhcmUgb2YgdGhlIG1ldGFkYXRhIG9mIHRoZSBjb21wb3NlZCBmcmFtZSB0bw0KPj4gKyAq
CWJlIHNlbmQgdG8gc2luay4gSXQgdGhlbiB1c2VzIHRoaXMgcHJvcGVydHkgdG8gY29tbXVuaWNh
dGUgdGhpcw0KPj4gKyAqCW1ldGFkYXRhIHRvIGRyaXZlciB3aGljaCB0aGVuIG1ha2UgYSBJbmZv
ZnJhbWUgcGFja2V0IGFuZCBzZW5kcw0KPj4gKyAqCXRvIHNpbmsgYmFzZWQgb24gdGhlIHR5cGUg
b2YgZW5jb2RlciBjb25uZWN0ZWQuDQo+PiArICoNCj4+ICsgKglVc2Vyc3BhY2Ugd2lsbCBiZSBy
ZXNwb25zaWJsZSB0byBkbyBUb25lIG1hcHBpbmcgb3BlcmF0aW9uIGluIGNhc2U6DQo+PiArICoJ
CS0gU29tZSBsYXllcnMgYXJlIEhEUiBhbmQgb3RoZXJzIGFyZSBTRFINCj4+ICsgKgkJLSBIRFIg
bGF5ZXJzIGx1bWluYW5jZSBpcyBub3Qgc2FtZSBhcyBzaW5rDQo+PiArICoJSXQgd2lsbCBldmVu
IG5lZWQgdG8gZG8gY29sb3JzcGFjZSBjb252ZXJzaW9uIGFuZCBnZXQgYWxsIGxheWVycw0KPj4g
KyAqCXRvIG9uZSBjb21tb24gY29sb3JzcGFjZSBmb3IgYmxlbmRpbmcuIEl0IGNhbiB1c2UgZWl0
aGVyIEdMLCBNZWRpYQ0KPj4gKyAqCW9yIGRpc3BsYXkgZW5naW5lIHRvIGdldCB0aGlzIGRvbmUg
YmFzZWQgb24gdGhlIGNhcGFiaWx0aWVzIG9mIHRoZQ0KPj4gKyAqCWFzc29jaWF0ZWQgaGFyZHdh
cmUuDQo+DQo+SSB0aGluayBpdCdkIGJlIGdvb2QgdG8gYWRkIDEtMiBzZW50ZW5jZXMgaGVyZSBh
Ym91dCB3aGF0IHRoaXMgbG9va3MgbGlrZSBmb3IgdGhlIGRyaXZlcg0KPnNpZGUuIEUuZy4gd2hp
Y2ggZnVuY3Rpb24gZHJpdmVycyBuZWVkIHRvIGNhbGwgdG8gc2V0IHVwIGhkciwgaG93IHRvIGdl
dCBhdCB0aGUgbWV0YWRhdGENCj5hbmQgd2hldGhlciB0aGVyZSdzIGFueSBoZWxwZXJzIGZvciB0
aGVzZS4NCj4NCj5IZXJlIEknZCBwb2ludCBhdCBoZHJfb3V0cHV0X21ldGFkYXRhLCBoZHJfc2lu
a19tZXRhZGF0YSwgYW5kDQo+ZHJtX2FkZF9kaXNwbGF5X2luZm8oKSBmb3IgZmlsbGluZyBpbiB0
aGUgZm9ybWVyLg0KDQpTdXJlLCB3aWxsIGRvIHRoZSBzYW1lLg0KDQo+SSB0aGluayB3aXRoIHRo
YXQgdGhpcyBpcyBhIHNvbGlkIGRvYyBwYXRjaC4NCj4NCj4+ICsgKg0KPj4gICAqIG1heCBicGM6
DQo+PiAgICoJVGhpcyByYW5nZSBwcm9wZXJ0eSBpcyB1c2VkIGJ5IHVzZXJzcGFjZSB0byBsaW1p
dCB0aGUgYml0IGRlcHRoLiBXaGVuDQo+PiAgICoJdXNlZCB0aGUgZHJpdmVyIHdvdWxkIGxpbWl0
IHRoZSBicGMgaW4gYWNjb3JkYW5jZSB3aXRoIHRoZSB2YWxpZCByYW5nZQ0KPj4gZGlmZiAtLWdp
dCBhL2luY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaCBiL2luY2x1ZGUvZHJtL2RybV9jb25uZWN0
b3IuaA0KPj4gaW5kZXggNTQ3NjU2MS4uNDdlNzQ5YiAxMDA2NDQNCj4+IC0tLSBhL2luY2x1ZGUv
ZHJtL2RybV9jb25uZWN0b3IuaA0KPj4gKysrIGIvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5o
DQo+PiBAQCAtMTI0NCw2ICsxMjQ0LDcgQEAgc3RydWN0IGRybV9jb25uZWN0b3Igew0KPj4gIAkg
Ki8NCj4+ICAJc3RydWN0IGxsaXN0X25vZGUgZnJlZV9ub2RlOw0KPj4NCj4+ICsJLyoqIEBoZHJf
c2lua19tZXRhZGF0YTogSERSIE1ldGFkYXRhIEluZm9ybWF0aW9uIHJlYWQgZnJvbSBzaW5rICov
DQo+PiAgCXN0cnVjdCBoZHJfc2lua19tZXRhZGF0YSBoZHJfc2lua19tZXRhZGF0YTsNCj4NCj5T
b21ldGhpbmcgSSByZWFsaXplZCB3aGlsZSByZWFkaW5nIHRoZSBjb2RlOiBUaGlzIHNob3VsZCBw
cm9iYWJseSBiZSBwdXQgaW50byB0aGUNCj5kcm1fZGlzcGxheV9pbmZvIHN0cnVjdCwgbGlrZSBh
bGwgdGhlIG90aGVyIHRoaW5ncyB3ZSBwYXJzZSBvdXQgb2YgdGhlIGVkaWQuIEkgdGhpbmsgdGhh
dA0KPndvdWxkIGJlIGEgbG90IG1vcmUgY29uc2lzdGVudCB3aXRoIHRoZSBjb2RlIC0gdGhlIGRy
aXZlciBpbnRlcmZhY2UgZnVuY3Rpb24gd2hpY2gNCj5jYWxscyB0aGlzIGNvZGUgaXMgY2FsbGVk
DQo+ZHJtX2FkZF9kaXNwbGF5X2luZm8oKSBhZnRlciBhbGwuDQo+DQo+Q2FuIHlvdSBwbHMgY2hh
bmdlIHRoYXQgaW4gYSBmb2xsb3ctdXAgcGF0Y2g/DQoNCk9rLCBJIHdpbGwgZG8gdGhhdCBhcyBh
IGZvbGxvdy11cC4NCg0KPj4gIH07DQo+Pg0KPj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2Ry
bV9tb2RlX2NvbmZpZy5oDQo+PiBiL2luY2x1ZGUvZHJtL2RybV9tb2RlX2NvbmZpZy5oIGluZGV4
IDRmODhjYzkuLjc1OWQ0NjIgMTAwNjQ0DQo+PiAtLS0gYS9pbmNsdWRlL2RybS9kcm1fbW9kZV9j
b25maWcuaA0KPj4gKysrIGIvaW5jbHVkZS9kcm0vZHJtX21vZGVfY29uZmlnLmgNCj4+IEBAIC04
MzcsOCArODM3LDggQEAgc3RydWN0IGRybV9tb2RlX2NvbmZpZyB7DQo+PiAgCXN0cnVjdCBkcm1f
cHJvcGVydHkgKndyaXRlYmFja19vdXRfZmVuY2VfcHRyX3Byb3BlcnR5Ow0KPj4NCj4+ICAJLyoq
DQo+PiAtCSAqIGhkcl9vdXRwdXRfbWV0YWRhdGFfcHJvcGVydHk6IENvbm5lY3RvciBwcm9wZXJ0
eSBjb250YWluaW5nIGhkcg0KPj4gLQkgKiBtZXRhdGRhLiBUaGlzIHdpbGwgYmUgcHJvdmlkZWQg
YnkgdXNlcnNwYWNlIGNvbXBvc2l0b3JzIGJhc2VkDQo+PiArCSAqIEBoZHJfb3V0cHV0X21ldGFk
YXRhX3Byb3BlcnR5OiBDb25uZWN0b3IgcHJvcGVydHkgY29udGFpbmluZyBoZHINCj4+ICsJICog
bWV0YXRhZGEuIFRoaXMgd2lsbCBiZSBwcm92aWRlZCBieSB1c2Vyc3BhY2UgY29tcG9zaXRvcnMg
YmFzZWQNCj4+ICAJICogb24gSERSIGNvbnRlbnQNCj4+ICAJICovDQo+PiAgCXN0cnVjdCBkcm1f
cHJvcGVydHkgKmhkcl9vdXRwdXRfbWV0YWRhdGFfcHJvcGVydHk7IGRpZmYgLS1naXQNCj4+IGEv
aW5jbHVkZS9saW51eC9oZG1pLmggYi9pbmNsdWRlL2xpbnV4L2hkbWkuaCBpbmRleCBlZTU1YmE1
Li41NWM2ZGI1DQo+PiAxMDA2NDQNCj4+IC0tLSBhL2luY2x1ZGUvbGludXgvaGRtaS5oDQo+PiAr
KysgYi9pbmNsdWRlL2xpbnV4L2hkbWkuaA0KPj4gQEAgLTM5OCw2ICszOTgsNyBAQCBzc2l6ZV90
IGhkbWlfdmVuZG9yX2luZm9mcmFtZV9wYWNrX29ubHkoY29uc3Qgc3RydWN0DQo+aGRtaV92ZW5k
b3JfaW5mb2ZyYW1lICpmcmFtDQo+PiAgICogQHNwZDogc3BkIGluZm9mcmFtZQ0KPj4gICAqIEB2
ZW5kb3I6IHVuaW9uIG9mIGFsbCB2ZW5kb3IgaW5mb2ZyYW1lcw0KPj4gICAqIEBhdWRpbzogYXVk
aW8gaW5mb2ZyYW1lDQo+PiArICogQGRybTogRHluYW1pYyBSYW5nZSBhbmQgTWFzdGVyaW5nIGlu
Zm9mcmFtZQ0KPj4gICAqDQo+PiAgICogVGhpcyBpcyB1c2VkIGJ5IHRoZSBnZW5lcmljIHBhY2sg
ZnVuY3Rpb24uIFRoaXMgd29ya3Mgc2luY2UgYWxsIGluZm9mcmFtZXMNCj4+ICAgKiBoYXZlIHRo
ZSBzYW1lIGhlYWRlciB3aGljaCBhbHNvIGluZGljYXRlcyB3aGljaCB0eXBlIG9mIGluZm9mcmFt
ZQ0KPj4gc2hvdWxkIGJlIGRpZmYgLS1naXQgYS9pbmNsdWRlL3VhcGkvZHJtL2RybV9tb2RlLmgN
Cj4+IGIvaW5jbHVkZS91YXBpL2RybS9kcm1fbW9kZS5oIGluZGV4IDk5N2E3ZTAuLjVkMzk2NGYg
MTAwNjQ0DQo+PiAtLS0gYS9pbmNsdWRlL3VhcGkvZHJtL2RybV9tb2RlLmgNCj4+ICsrKyBiL2lu
Y2x1ZGUvdWFwaS9kcm0vZHJtX21vZGUuaA0KPj4gQEAgLTMzLDYgKzMzLDE1IEBADQo+PiAgZXh0
ZXJuICJDIiB7DQo+PiAgI2VuZGlmDQo+Pg0KPj4gKy8qKg0KPj4gKyAqIERPQzogb3ZlcnZpZXcN
Cj4+ICsgKg0KPj4gKyAqIERSTSBleHBvc2VzIG1hbnkgVUFQSSBhbmQgc3RydWN0dXJlIGRlZmlu
aXRpb24gdG8gaGF2ZSBhDQo+PiArY29uc2lzdGVudA0KPj4gKyAqIGFuZCBzdGFuZGFyZGl6ZWQg
aW50ZXJmYWNlIHdpdGggdXNlci4NCj4+ICsgKiBVc2Vyc3BhY2UgY2FuIHJlZmVyIHRvIHRoZXNl
IHN0cnVjdHVyZSBkZWZpbml0aW9ucyBhbmQgVUFQSQ0KPj4gK2Zvcm1hdHMNCj4+ICsgKiB0byBj
b21tdW5pY2F0ZSB0byBkcml2ZXINCj4+ICsgKi8NCj4+ICsNCj4+ICAjZGVmaW5lIERSTV9DT05O
RUNUT1JfTkFNRV9MRU4JMzINCj4+ICAjZGVmaW5lIERSTV9ESVNQTEFZX01PREVfTEVOCTMyDQo+
PiAgI2RlZmluZSBEUk1fUFJPUF9OQU1FX0xFTgkzMg0KPj4gQEAgLTYzMCw3ICs2MzksMjYgQEAg
c3RydWN0IGRybV9jb2xvcl9sdXQgew0KPj4gIAlfX3UxNiByZXNlcnZlZDsNCj4+ICB9Ow0KPj4N
Cj4+IC0vKiBIRFIgTWV0YWRhdGEgSW5mb2ZyYW1lIGFzIHBlciA4NjEuRyBzcGVjICovDQo+DQo+
S2VlcCB0aGUgc3BlYyByZWZlcmVuY2UgaW1vLCBtYXliZSBldmVuIGFkZCBhIG5vdGUgdGhhdCB0
aGlzIGlzIHN1cHBvc2VkIHRvDQo+cGVyZmVjdGx5IG1hdGNoIGl0Lg0KDQpPaywgd2lsbCBhZGQg
dGhpcy4NCg0KPj4gKy8qKg0KPj4gKyAqIHN0cnVjdCBoZHJfbWV0YWRhdGFfaW5mb2ZyYW1lIC0g
SERSIE1ldGFkYXRhIEluZm9mcmFtZSBEYXRhLg0KPj4gKyAqIEBlb3RmOiBFbGVjdHJvLU9wdGlj
YWwgVHJhbnNmZXIgRnVuY3Rpb24gKEVPVEYpIHVzZWQgaW4gdGhlIHN0cmVhbS4NCj4+ICsgKiBA
bWV0YWRhdGFfdHlwZTogU3RhdGljX01ldGFkYXRhX0Rlc2NyaXB0b3JfSUQuDQo+PiArICogQGRp
c3BsYXlfcHJpbWFyaWVzOiBDb2xvciBQcmltYXJpZXMgb2YgdGhlIERhdGEuDQo+PiArICogQGRp
c3BsYXlfcHJpbWFyaWVzLng6IFggY29yZGluYXRlIG9mIGNvbG9yIHByaW1hcnkuDQo+DQo+V291
bGQgYmUgZ29vZCB0byBzcGVuZCBhIGZldyBtb3JlIHdvcmRzIGFib3V0ICJpbiB3aGljaCBzdGFu
ZGFyZC9mb3JtYXQiDQo+dGhpcyBjb2xvciBudW1iZXIgaXMuIEkuZS4gZml4ZWQgcG9pbnQgb3Ig
d2hhdGV2ZXIsIGFuZCBjb2xvciBzcGFjZS4NCg0KU3VyZSwgd2lsbCBhZGQgbW9yZSBkZXRhaWxz
IG9uIHRoZXNlIHZhbHVlcy4NCg0KPj4gKyAqIEBkaXNwbGF5X3ByaW1hcmllcy55OiBZIGNvcmRp
bmF0ZSBvZiBjb2xvciBwcmltYXJ5Lg0KPj4gKyAqIEB3aGl0ZV9wb2ludDogV2hpdGUgUG9pbnQg
b2YgQ29sb3JzcGFjZSBEYXRhLg0KPj4gKyAqIEB3aGl0ZV9wb2ludC54OiBYIGNvcmRpbmF0ZSBv
ZiB3aGl0ZXBvaW50IG9mIGNvbG9yIHByaW1hcnkuDQo+PiArICogQHdoaXRlX3BvaW50Lnk6IFkg
Y29yZGluYXRlIG9mIHdoaXRlcG9pbnQgb2YgY29sb3IgcHJpbWFyeS4NCj4+ICsgKiBAbWF4X2Rp
c3BsYXlfbWFzdGVyaW5nX2x1bWluYW5jZTogTWF4IE1hc3RlcmluZyBEaXNwbGF5IEx1bWluYW5j
ZS4NCj4+ICsgKiBAbWluX2Rpc3BsYXlfbWFzdGVyaW5nX2x1bWluYW5jZTogTWluIE1hc3Rlcmlu
ZyBEaXNwbGF5IEx1bWluYW5jZS4NCj4+ICsgKiBAbWF4X2NsbDogTWF4IENvbnRlbnQgTGlnaHQg
TGV2ZWwuDQo+PiArICogQG1heF9mYWxsOiBNYXggRnJhbWUgQXZlcmFnZSBMaWdodCBMZXZlbC4N
Cj4NCj5idHcgZm9yIGxvbmcgc3RydWN0cyBJIHByZWZlciB0aGUgaW5saW5lIGtlcm5lbGRvYyBz
dHlsZS4gVGhpcyBvbmUgaXMganVzdCBhdCB0aGUgZWRnZSBpbW8uDQoNCk9rLCB3aWxsIGRvIHRo
YXQuDQoNCj4+ICsgKg0KPj4gKyAqIFdpdGggZHJtIHN1YnN5c3RlbSB1c2luZyBzdHJ1Y3QgZHJt
X3JlY3QgdG8gbWFuYWdlIHJlY3Rhbmd1bGFyDQo+PiArIGFyZWEgdGhpcw0KPg0KPnN0cnVjdCAm
ZHJtX3JlY3QgdG8gbWFrZSBpdCBhIGh5cGVybGluay4gT25jZSB3ZSBoYXZlIGRybV9yZWN0IGRv
Y3VtZW50ZWQNCj46LSkNCg0KVGhpcyBpcyBub3QgcmVxdWlyZWQgaGVyZSwgd2lsbCBkcm9wIHRo
ZXNlIGNvbW1lbnRzLg0KDQo+PiArICogZXhwb3J0IGl0IHRvIHVzZXItc3BhY2UuDQo+PiArICoN
Cj4+ICsgKiBDdXJyZW50bHkgdXNlZCBieSBkcm1fbW9kZV9hdG9taWMgYmxvYiBwcm9wZXJ0eSBG
Ql9EQU1BR0VfQ0xJUFMuDQo+PiArICovDQo+PiAgc3RydWN0IGhkcl9tZXRhZGF0YV9pbmZvZnJh
bWUgew0KPj4gIAlfX3U4IGVvdGY7DQo+PiAgCV9fdTggbWV0YWRhdGFfdHlwZTsNCj4+IEBAIC02
NDYsNiArNjc0LDEzIEBAIHN0cnVjdCBoZHJfbWV0YWRhdGFfaW5mb2ZyYW1lIHsNCj4+ICAJX191
MTYgbWF4X2ZhbGw7DQo+PiAgfTsNCj4+DQo+PiArLyoqDQo+PiArICogc3RydWN0IGhkcl9vdXRw
dXRfbWV0YWRhdGEgLSBIRFIgb3V0cHV0IG1ldGFkYXRhDQo+PiArICoNCj4+ICsgKiBNZXRhZGF0
YSBJbmZvcm1hdGlvbiB0byBiZSBwYXNzZWQgZnJvbSB1c2Vyc3BhY2UNCj4+ICsgKiBAbWV0YWRh
dGFfdHlwZTogU3RhdGljX01ldGFkYXRhX0Rlc2NyaXB0b3JfSUQuDQo+PiArICogQGhkbWlfbWV0
YWRhdGFfdHlwZTE6IEhEUiBNZXRhZGF0YSBJbmZvZnJhbWUuDQo+DQo+SWYgeW91IHdhbnQgdG8g
bW92ZSB0aGUgbWVtYmVyIGRvY3MgY2xvc2VyIHRvIHRoZWlyIGRlZmluaXRpb24sIGdvIHdpdGgg
dGhlIGlubGluZQ0KPnN0eWxlLg0KDQpPaywgd2lsbCB1cGRhdGUgdGhpcy4NCg0KVGhhbmtzIERh
bmllbCBmb3IgdGhlIHJldmlldyBjb21tZW50cyBhbmQgc3VnZ2VzdGlvbnMuDQpXaWxsIHNlbmQg
b3V0IHRoZSBuZXh0IHZlcnNpb24gc29vbi4NCg0KUmVnYXJkcywNClVtYSBTaGFua2FyDQoNCj5U
aGFua3MsIERhbmllbA0KPg0KPj4gKyAqLw0KPj4gIHN0cnVjdCBoZHJfb3V0cHV0X21ldGFkYXRh
IHsNCj4+ICAJX191MzIgbWV0YWRhdGFfdHlwZTsNCj4+ICAJdW5pb24gew0KPj4gLS0NCj4+IDEu
OS4xDQo+Pg0KPg0KPi0tDQo+RGFuaWVsIFZldHRlcg0KPlNvZnR3YXJlIEVuZ2luZWVyLCBJbnRl
bCBDb3Jwb3JhdGlvbg0KPmh0dHA6Ly9ibG9nLmZmd2xsLmNoDQo+X19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCj5kcmktZGV2ZWwgbWFpbGluZyBsaXN0DQo+
ZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZw0KPmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0
b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsDQo

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH 2/4] drm: Fix docbook warnings in hdr metadata helper structures
@ 2019-06-03 12:01       ` Shankar, Uma
  0 siblings, 0 replies; 22+ messages in thread
From: Shankar, Uma @ 2019-06-03 12:01 UTC (permalink / raw)
  To: Daniel Vetter
  Cc: linux-fbdev, dcastagna, jonas, Maxime Ripard, intel-gfx,
	Bartlomiej Zolnierkiewicz, dri-devel, Hans Verkuil, David Airlie,
	seanpaul



>-----Original Message-----
>From: dri-devel [mailto:dri-devel-bounces@lists.freedesktop.org] On Behalf Of Daniel
>Vetter
>Sent: Monday, June 3, 2019 1:53 PM
>To: Shankar, Uma <uma.shankar@intel.com>
>Cc: Sean Paul <sean@poorly.run>; linux-fbdev@vger.kernel.org;
>dcastagna@chromium.org; jonas@kwiboo.se; Maxime Ripard
><maxime.ripard@bootlin.com>; intel-gfx@lists.freedesktop.org; Bartlomiej
>Zolnierkiewicz <b.zolnierkie@samsung.com>; emil.l.velikov@gmail.com; dri-
>devel@lists.freedesktop.org; Hans Verkuil <hansverk@cisco.com>; David Airlie
><airlied@linux.ie>; seanpaul@chromium.org
>Subject: Re: [PATCH 2/4] drm: Fix docbook warnings in hdr metadata helper structures
>
>On Thu, May 30, 2019 at 01:29:02AM +0530, Uma Shankar wrote:
>> Fixes the following warnings:
>> ./include/drm/drm_mode_config.h:841: warning: Incorrect use of
>> kernel-doc format:          * hdr_output_metadata_property: Connector
>> property containing hdr
>> ./include/drm/drm_mode_config.h:918: warning: Function parameter or member
>'hdr_output_metadata_property' not described in 'drm_mode_config'
>> ./include/drm/drm_connector.h:1251: warning: Function parameter or member
>'hdr_output_metadata' not described in 'drm_connector'
>> ./include/drm/drm_connector.h:1251: warning: Function parameter or member
>'hdr_sink_metadata' not described in 'drm_connector'
>>
>> Also adds some property documentation for HDR Metadata Connector
>> Property in connector property create function.
>>
>> v2: Fixed Sean Paul's review comments.
>>
>> v3: Fixed Daniel Vetter's review comments, added the UAPI structure
>> definition section in kernel docs.
>>
>> Cc: Shashank Sharma <shashank.sharma@intel.com>
>> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
>> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
>> Cc: Maxime Ripard <maxime.ripard@bootlin.com>
>> Cc: Sean Paul <sean@poorly.run>
>> Cc: David Airlie <airlied@linux.ie>
>> Cc: Daniel Vetter <daniel@ffwll.ch>
>> Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
>> Cc: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
>> Cc: Hans Verkuil <hansverk@cisco.com>
>> Cc: dri-devel@lists.freedesktop.org
>> Cc: linux-fbdev@vger.kernel.org
>> Reviewed-by: Sean Paul <sean@poorly.run>
>> Signed-off-by: Uma Shankar <uma.shankar@intel.com>
>> ---
>>  Documentation/gpu/drm-uapi.rst  |  9 +++++++++
>> drivers/gpu/drm/drm_connector.c | 31 +++++++++++++++++++++++++++++++
>>  include/drm/drm_connector.h     |  1 +
>>  include/drm/drm_mode_config.h   |  4 ++--
>>  include/linux/hdmi.h            |  1 +
>>  include/uapi/drm/drm_mode.h     | 37
>++++++++++++++++++++++++++++++++++++-
>>  6 files changed, 80 insertions(+), 3 deletions(-)
>>
>> diff --git a/Documentation/gpu/drm-uapi.rst
>> b/Documentation/gpu/drm-uapi.rst index 05874d0..6b39e2c 100644
>> --- a/Documentation/gpu/drm-uapi.rst
>> +++ b/Documentation/gpu/drm-uapi.rst
>> @@ -329,3 +329,12 @@ DRM_IOCTL_MODESET_CTL
>>      mode setting, since on many devices the vertical blank counter is
>>      reset to 0 at some point during modeset. Modern drivers should not
>>      call this any more since with kernel mode setting it is a no-op.
>> +
>> +Userspace API Structures
>> +========================
>> +
>> +.. kernel-doc:: include/uapi/drm/drm_mode.h
>> +   :doc: overview
>> +
>> +.. kernel-doc:: include/uapi/drm/drm_mode.h
>> +   :internal:
>> diff --git a/drivers/gpu/drm/drm_connector.c
>> b/drivers/gpu/drm/drm_connector.c index c9ac8b9..6a93527 100644
>> --- a/drivers/gpu/drm/drm_connector.c
>> +++ b/drivers/gpu/drm/drm_connector.c
>> @@ -956,6 +956,37 @@ int drm_display_info_set_bus_formats(struct
>drm_display_info *info,
>>   *	  is no longer protected and userspace should take appropriate action
>>   *	  (whatever that might be).
>>   *
>> + * HDR_OUTPUT_METADATA:
>> + *	Connector property to enable userspace to send HDR Metadata to
>> + *	driver. This metadata is based on the composition and blending
>> + *	policies decided by user, taking into account the hardware and
>> + *	sink capabilities. The driver gets this metadata and creates a
>> + *	Dynamic Range and Mastering Infoframe (DRM) in case of HDMI,
>> + *	SDP packet (Non-audio INFOFRAME SDP v1.3) for DP. This is then
>> + *	sent to sink. This notifies the sink of the upcoming frame's Color
>> + *	Encoding and Luminance parameters.
>> + *
>> + *	Userspace first need to detect the HDR capabilities of sink by
>> + *	reading and parsing the EDID. Details of HDR metadata for HDMI
>> + *	are added in CTA 861.G spec. For DP , its defined in VESA DP
>> + *	Standard v1.4. It needs to then get the metadata information
>> + *	of the video/game/app content which are encoded in HDR (basically
>> + *	using HDR transfer functions). With this information it needs to
>> + *	decide on a blending policy and compose the relevant
>> + *	layers/overlays into a common format. Once this blending is done,
>> + *	userspace will be aware of the metadata of the composed frame to
>> + *	be send to sink. It then uses this property to communicate this
>> + *	metadata to driver which then make a Infoframe packet and sends
>> + *	to sink based on the type of encoder connected.
>> + *
>> + *	Userspace will be responsible to do Tone mapping operation in case:
>> + *		- Some layers are HDR and others are SDR
>> + *		- HDR layers luminance is not same as sink
>> + *	It will even need to do colorspace conversion and get all layers
>> + *	to one common colorspace for blending. It can use either GL, Media
>> + *	or display engine to get this done based on the capabilties of the
>> + *	associated hardware.
>
>I think it'd be good to add 1-2 sentences here about what this looks like for the driver
>side. E.g. which function drivers need to call to set up hdr, how to get at the metadata
>and whether there's any helpers for these.
>
>Here I'd point at hdr_output_metadata, hdr_sink_metadata, and
>drm_add_display_info() for filling in the former.

Sure, will do the same.

>I think with that this is a solid doc patch.
>
>> + *
>>   * max bpc:
>>   *	This range property is used by userspace to limit the bit depth. When
>>   *	used the driver would limit the bpc in accordance with the valid range
>> diff --git a/include/drm/drm_connector.h b/include/drm/drm_connector.h
>> index 5476561..47e749b 100644
>> --- a/include/drm/drm_connector.h
>> +++ b/include/drm/drm_connector.h
>> @@ -1244,6 +1244,7 @@ struct drm_connector {
>>  	 */
>>  	struct llist_node free_node;
>>
>> +	/** @hdr_sink_metadata: HDR Metadata Information read from sink */
>>  	struct hdr_sink_metadata hdr_sink_metadata;
>
>Something I realized while reading the code: This should probably be put into the
>drm_display_info struct, like all the other things we parse out of the edid. I think that
>would be a lot more consistent with the code - the driver interface function which
>calls this code is called
>drm_add_display_info() after all.
>
>Can you pls change that in a follow-up patch?

Ok, I will do that as a follow-up.

>>  };
>>
>> diff --git a/include/drm/drm_mode_config.h
>> b/include/drm/drm_mode_config.h index 4f88cc9..759d462 100644
>> --- a/include/drm/drm_mode_config.h
>> +++ b/include/drm/drm_mode_config.h
>> @@ -837,8 +837,8 @@ struct drm_mode_config {
>>  	struct drm_property *writeback_out_fence_ptr_property;
>>
>>  	/**
>> -	 * hdr_output_metadata_property: Connector property containing hdr
>> -	 * metatda. This will be provided by userspace compositors based
>> +	 * @hdr_output_metadata_property: Connector property containing hdr
>> +	 * metatada. This will be provided by userspace compositors based
>>  	 * on HDR content
>>  	 */
>>  	struct drm_property *hdr_output_metadata_property; diff --git
>> a/include/linux/hdmi.h b/include/linux/hdmi.h index ee55ba5..55c6db5
>> 100644
>> --- a/include/linux/hdmi.h
>> +++ b/include/linux/hdmi.h
>> @@ -398,6 +398,7 @@ ssize_t hdmi_vendor_infoframe_pack_only(const struct
>hdmi_vendor_infoframe *fram
>>   * @spd: spd infoframe
>>   * @vendor: union of all vendor infoframes
>>   * @audio: audio infoframe
>> + * @drm: Dynamic Range and Mastering infoframe
>>   *
>>   * This is used by the generic pack function. This works since all infoframes
>>   * have the same header which also indicates which type of infoframe
>> should be diff --git a/include/uapi/drm/drm_mode.h
>> b/include/uapi/drm/drm_mode.h index 997a7e0..5d3964f 100644
>> --- a/include/uapi/drm/drm_mode.h
>> +++ b/include/uapi/drm/drm_mode.h
>> @@ -33,6 +33,15 @@
>>  extern "C" {
>>  #endif
>>
>> +/**
>> + * DOC: overview
>> + *
>> + * DRM exposes many UAPI and structure definition to have a
>> +consistent
>> + * and standardized interface with user.
>> + * Userspace can refer to these structure definitions and UAPI
>> +formats
>> + * to communicate to driver
>> + */
>> +
>>  #define DRM_CONNECTOR_NAME_LEN	32
>>  #define DRM_DISPLAY_MODE_LEN	32
>>  #define DRM_PROP_NAME_LEN	32
>> @@ -630,7 +639,26 @@ struct drm_color_lut {
>>  	__u16 reserved;
>>  };
>>
>> -/* HDR Metadata Infoframe as per 861.G spec */
>
>Keep the spec reference imo, maybe even add a note that this is supposed to
>perfectly match it.

Ok, will add this.

>> +/**
>> + * struct hdr_metadata_infoframe - HDR Metadata Infoframe Data.
>> + * @eotf: Electro-Optical Transfer Function (EOTF) used in the stream.
>> + * @metadata_type: Static_Metadata_Descriptor_ID.
>> + * @display_primaries: Color Primaries of the Data.
>> + * @display_primaries.x: X cordinate of color primary.
>
>Would be good to spend a few more words about "in which standard/format"
>this color number is. I.e. fixed point or whatever, and color space.

Sure, will add more details on these values.

>> + * @display_primaries.y: Y cordinate of color primary.
>> + * @white_point: White Point of Colorspace Data.
>> + * @white_point.x: X cordinate of whitepoint of color primary.
>> + * @white_point.y: Y cordinate of whitepoint of color primary.
>> + * @max_display_mastering_luminance: Max Mastering Display Luminance.
>> + * @min_display_mastering_luminance: Min Mastering Display Luminance.
>> + * @max_cll: Max Content Light Level.
>> + * @max_fall: Max Frame Average Light Level.
>
>btw for long structs I prefer the inline kerneldoc style. This one is just at the edge imo.

Ok, will do that.

>> + *
>> + * With drm subsystem using struct drm_rect to manage rectangular
>> + area this
>
>struct &drm_rect to make it a hyperlink. Once we have drm_rect documented
>:-)

This is not required here, will drop these comments.

>> + * export it to user-space.
>> + *
>> + * Currently used by drm_mode_atomic blob property FB_DAMAGE_CLIPS.
>> + */
>>  struct hdr_metadata_infoframe {
>>  	__u8 eotf;
>>  	__u8 metadata_type;
>> @@ -646,6 +674,13 @@ struct hdr_metadata_infoframe {
>>  	__u16 max_fall;
>>  };
>>
>> +/**
>> + * struct hdr_output_metadata - HDR output metadata
>> + *
>> + * Metadata Information to be passed from userspace
>> + * @metadata_type: Static_Metadata_Descriptor_ID.
>> + * @hdmi_metadata_type1: HDR Metadata Infoframe.
>
>If you want to move the member docs closer to their definition, go with the inline
>style.

Ok, will update this.

Thanks Daniel for the review comments and suggestions.
Will send out the next version soon.

Regards,
Uma Shankar

>Thanks, Daniel
>
>> + */
>>  struct hdr_output_metadata {
>>  	__u32 metadata_type;
>>  	union {
>> --
>> 1.9.1
>>
>
>--
>Daniel Vetter
>Software Engineer, Intel Corporation
>http://blog.ffwll.ch
>_______________________________________________
>dri-devel mailing list
>dri-devel@lists.freedesktop.org
>https://lists.freedesktop.org/mailman/listinfo/dri-devel
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [v3 2/3] drm: Fix docbook warnings in hdr metadata helper structures
  2019-06-03  8:23     ` Daniel Vetter
@ 2019-06-04 11:17       ` Uma Shankar
  -1 siblings, 0 replies; 22+ messages in thread
From: Uma Shankar @ 2019-06-04 10:52 UTC (permalink / raw)
  To: intel-gfx, dri-devel
  Cc: linux-fbdev, jonas, Maxime Ripard, Bartlomiej Zolnierkiewicz,
	Hans Verkuil, David Airlie, seanpaul

Fixes the following warnings:
./include/drm/drm_mode_config.h:841: warning: Incorrect use of
kernel-doc format:          * hdr_output_metadata_property: Connector
property containing hdr
./include/drm/drm_mode_config.h:918: warning: Function parameter or member 'hdr_output_metadata_property' not described in 'drm_mode_config'
./include/drm/drm_connector.h:1251: warning: Function parameter or member 'hdr_output_metadata' not described in 'drm_connector'
./include/drm/drm_connector.h:1251: warning: Function parameter or member 'hdr_sink_metadata' not described in 'drm_connector'

Also adds some property documentation for HDR Metadata Connector
Property in connector property create function.

v2: Fixed Sean Paul's review comments.

v3: Fixed Daniel Vetter's review comments, added the UAPI structure
definition section in kernel docs.

v4: Fixed Daniel Vetter's review comments.

v5: Added structure member references as per Daniel's suggestion.

Cc: Shashank Sharma <shashank.sharma@intel.com>
Cc: Ville Syrjä <ville.syrjala@linux.intel.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Maxime Ripard <maxime.ripard@bootlin.com>
Cc: Sean Paul <sean@poorly.run>
Cc: David Airlie <airlied@linux.ie>
Cc: Daniel Vetter <daniel@ffwll.ch>
Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Cc: "Ville Syrjä" <ville.syrjala@linux.intel.com>
Cc: Hans Verkuil <hansverk@cisco.com>
Cc: dri-devel@lists.freedesktop.org
Cc: linux-fbdev@vger.kernel.org
Reviewed-by: Sean Paul <sean@poorly.run>
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
---
 drivers/gpu/drm/drm_connector.c | 39 ++++++++++++++++++++++
 include/drm/drm_connector.h     |  1 +
 include/drm/drm_mode_config.h   |  4 +--
 include/linux/hdmi.h            | 12 +++++++
 include/uapi/drm/drm_mode.h     | 74 ++++++++++++++++++++++++++++++++++++++++-
 5 files changed, 127 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/drm_connector.c b/drivers/gpu/drm/drm_connector.c
index c9ac8b9..d371f5c 100644
--- a/drivers/gpu/drm/drm_connector.c
+++ b/drivers/gpu/drm/drm_connector.c
@@ -956,6 +956,45 @@ int drm_display_info_set_bus_formats(struct drm_display_info *info,
  *	  is no longer protected and userspace should take appropriate action
  *	  (whatever that might be).
  *
+ * HDR_OUTPUT_METADATA:
+ *	Connector property to enable userspace to send HDR Metadata to
+ *	driver. This metadata is based on the composition and blending
+ *	policies decided by user, taking into account the hardware and
+ *	sink capabilities. The driver gets this metadata and creates a
+ *	Dynamic Range and Mastering Infoframe (DRM) in case of HDMI,
+ *	SDP packet (Non-audio INFOFRAME SDP v1.3) for DP. This is then
+ *	sent to sink. This notifies the sink of the upcoming frame's Color
+ *	Encoding and Luminance parameters.
+ *
+ *	Userspace first need to detect the HDR capabilities of sink by
+ *	reading and parsing the EDID. Details of HDR metadata for HDMI
+ *	are added in CTA 861.G spec. For DP , its defined in VESA DP
+ *	Standard v1.4. It needs to then get the metadata information
+ *	of the video/game/app content which are encoded in HDR (basically
+ *	using HDR transfer functions). With this information it needs to
+ *	decide on a blending policy and compose the relevant
+ *	layers/overlays into a common format. Once this blending is done,
+ *	userspace will be aware of the metadata of the composed frame to
+ *	be send to sink. It then uses this property to communicate this
+ *	metadata to driver which then make a Infoframe packet and sends
+ *	to sink based on the type of encoder connected.
+ *
+ *	Userspace will be responsible to do Tone mapping operation in case:
+ *		- Some layers are HDR and others are SDR
+ *		- HDR layers luminance is not same as sink
+ *	It will even need to do colorspace conversion and get all layers
+ *	to one common colorspace for blending. It can use either GL, Media
+ *	or display engine to get this done based on the capabilties of the
+ *	associated hardware.
+ *
+ *	Driver expects metadata to be put in &hdr_output_metadata structure
+ *	from userspace. This is received as blob and stored in
+ *	&drm_connector_state.hdr_output_metadata. It parses EDID and saves the
+ *	sink metadata in &hdr_sink_metadata, as &drm_connector.hdr_sink_metadata.
+ *	Driver uses &drm_hdmi_infoframe_set_hdr_metadata helper to set the HDR
+ *	metadata, &hdmi_drm_infoframe_pack to pack the infoframe as per spec,
+ *	in case of HDMI encoder.
+ *
  * max bpc:
  *	This range property is used by userspace to limit the bit depth. When
  *	used the driver would limit the bpc in accordance with the valid range
diff --git a/include/drm/drm_connector.h b/include/drm/drm_connector.h
index 5476561..47e749b 100644
--- a/include/drm/drm_connector.h
+++ b/include/drm/drm_connector.h
@@ -1244,6 +1244,7 @@ struct drm_connector {
 	 */
 	struct llist_node free_node;
 
+	/** @hdr_sink_metadata: HDR Metadata Information read from sink */
 	struct hdr_sink_metadata hdr_sink_metadata;
 };
 
diff --git a/include/drm/drm_mode_config.h b/include/drm/drm_mode_config.h
index 4f88cc9..759d462 100644
--- a/include/drm/drm_mode_config.h
+++ b/include/drm/drm_mode_config.h
@@ -837,8 +837,8 @@ struct drm_mode_config {
 	struct drm_property *writeback_out_fence_ptr_property;
 
 	/**
-	 * hdr_output_metadata_property: Connector property containing hdr
-	 * metatda. This will be provided by userspace compositors based
+	 * @hdr_output_metadata_property: Connector property containing hdr
+	 * metatada. This will be provided by userspace compositors based
 	 * on HDR content
 	 */
 	struct drm_property *hdr_output_metadata_property;
diff --git a/include/linux/hdmi.h b/include/linux/hdmi.h
index ee55ba5..9918a6c 100644
--- a/include/linux/hdmi.h
+++ b/include/linux/hdmi.h
@@ -367,8 +367,19 @@ struct hdr_static_metadata {
 	__u16 min_cll;
 };
 
+/**
+ * struct hdr_sink_metadata - HDR sink metadata
+ *
+ * Metadata Information read from Sink's EDID
+ */
 struct hdr_sink_metadata {
+	/**
+	 * @metadata_type: Static_Metadata_Descriptor_ID.
+	 */
 	__u32 metadata_type;
+	/**
+	 * @hdmi_type1: HDR Metadata Infoframe.
+	 */
 	union {
 		struct hdr_static_metadata hdmi_type1;
 	};
@@ -398,6 +409,7 @@ ssize_t hdmi_vendor_infoframe_pack_only(const struct hdmi_vendor_infoframe *fram
  * @spd: spd infoframe
  * @vendor: union of all vendor infoframes
  * @audio: audio infoframe
+ * @drm: Dynamic Range and Mastering infoframe
  *
  * This is used by the generic pack function. This works since all infoframes
  * have the same header which also indicates which type of infoframe should be
diff --git a/include/uapi/drm/drm_mode.h b/include/uapi/drm/drm_mode.h
index 19b5cf3..5ab331e 100644
--- a/include/uapi/drm/drm_mode.h
+++ b/include/uapi/drm/drm_mode.h
@@ -33,6 +33,15 @@
 extern "C" {
 #endif
 
+/**
+ * DOC: overview
+ *
+ * DRM exposes many UAPI and structure definition to have a consistent
+ * and standardized interface with user.
+ * Userspace can refer to these structure definitions and UAPI formats
+ * to communicate to driver
+ */
+
 #define DRM_CONNECTOR_NAME_LEN	32
 #define DRM_DISPLAY_MODE_LEN	32
 #define DRM_PROP_NAME_LEN	32
@@ -630,24 +639,87 @@ struct drm_color_lut {
 	__u16 reserved;
 };
 
-/* HDR Metadata Infoframe as per 861.G spec */
+/**
+ * struct hdr_metadata_infoframe - HDR Metadata Infoframe Data.
+ *
+ * HDR Metadata Infoframe as per CTA 861.G spec. This is expected
+ * to match exactly with the spec.
+ *
+ * Userspace is expected to pass the metadata information as per
+ * the format described in this structure.
+ */
 struct hdr_metadata_infoframe {
+	/**
+	 * @eotf: Electro-Optical Transfer Function (EOTF)
+	 * used in the stream.
+	 */
 	__u8 eotf;
+	/**
+	 * @metadata_type: Static_Metadata_Descriptor_ID.
+	 */
 	__u8 metadata_type;
+	/**
+	 * @display_primaries: Color Primaries of the Data.
+	 * These are coded as unsigned 16-bit values in units of
+	 * 0.00002, where 0x0000 represents zero and 0xC350
+	 * represents 1.0000.
+	 * @display_primaries.x: X cordinate of color primary.
+	 * @display_primaries.y: Y cordinate of color primary.
+	 */
 	struct {
 		__u16 x, y;
 		} display_primaries[3];
+	/**
+	 * @white_point: White Point of Colorspace Data.
+	 * These are coded as unsigned 16-bit values in units of
+	 * 0.00002, where 0x0000 represents zero and 0xC350
+	 * represents 1.0000.
+	 * @white_point.x: X cordinate of whitepoint of color primary.
+	 * @white_point.y: Y cordinate of whitepoint of color primary.
+	 */
 	struct {
 		__u16 x, y;
 		} white_point;
+	/**
+	 * @max_display_mastering_luminance: Max Mastering Display Luminance.
+	 * This value is coded as an unsigned 16-bit value in units of 1 cd/m2,
+	 * where 0x0001 represents 1 cd/m2 and 0xFFFF represents 65535 cd/m2.
+	 */
 	__u16 max_display_mastering_luminance;
+	/**
+	 * @min_display_mastering_luminance: Min Mastering Display Luminance.
+	 * This value is coded as an unsigned 16-bit value in units of
+	 * 0.0001 cd/m2, where 0x0001 represents 0.0001 cd/m2 and 0xFFFF
+	 * represents 6.5535 cd/m2.
+	 */
 	__u16 min_display_mastering_luminance;
+	/**
+	 * @max_cll: Max Content Light Level.
+	 * This value is coded as an unsigned 16-bit value in units of 1 cd/m2,
+	 * where 0x0001 represents 1 cd/m2 and 0xFFFF represents 65535 cd/m2.
+	 */
 	__u16 max_cll;
+	/**
+	 * @max_fall: Max Frame Average Light Level.
+	 * This value is coded as an unsigned 16-bit value in units of 1 cd/m2,
+	 * where 0x0001 represents 1 cd/m2 and 0xFFFF represents 65535 cd/m2.
+	 */
 	__u16 max_fall;
 };
 
+/**
+ * struct hdr_output_metadata - HDR output metadata
+ *
+ * Metadata Information to be passed from userspace
+ */
 struct hdr_output_metadata {
+	/**
+	 * @metadata_type: Static_Metadata_Descriptor_ID.
+	 */
 	__u32 metadata_type;
+	/**
+	 * @hdmi_metadata_type1: HDR Metadata Infoframe.
+	 */
 	union {
 		struct hdr_metadata_infoframe hdmi_metadata_type1;
 	};
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [v3 2/3] drm: Fix docbook warnings in hdr metadata helper structures
@ 2019-06-04 11:17       ` Uma Shankar
  0 siblings, 0 replies; 22+ messages in thread
From: Uma Shankar @ 2019-06-04 11:17 UTC (permalink / raw)
  To: intel-gfx, dri-devel
  Cc: linux-fbdev, jonas, Maxime Ripard, Bartlomiej Zolnierkiewicz,
	Hans Verkuil, David Airlie, seanpaul

Fixes the following warnings:
./include/drm/drm_mode_config.h:841: warning: Incorrect use of
kernel-doc format:          * hdr_output_metadata_property: Connector
property containing hdr
./include/drm/drm_mode_config.h:918: warning: Function parameter or member 'hdr_output_metadata_property' not described in 'drm_mode_config'
./include/drm/drm_connector.h:1251: warning: Function parameter or member 'hdr_output_metadata' not described in 'drm_connector'
./include/drm/drm_connector.h:1251: warning: Function parameter or member 'hdr_sink_metadata' not described in 'drm_connector'

Also adds some property documentation for HDR Metadata Connector
Property in connector property create function.

v2: Fixed Sean Paul's review comments.

v3: Fixed Daniel Vetter's review comments, added the UAPI structure
definition section in kernel docs.

v4: Fixed Daniel Vetter's review comments.

v5: Added structure member references as per Daniel's suggestion.

Cc: Shashank Sharma <shashank.sharma@intel.com>
Cc: Ville Syrjä <ville.syrjala@linux.intel.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Maxime Ripard <maxime.ripard@bootlin.com>
Cc: Sean Paul <sean@poorly.run>
Cc: David Airlie <airlied@linux.ie>
Cc: Daniel Vetter <daniel@ffwll.ch>
Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Cc: "Ville Syrjä" <ville.syrjala@linux.intel.com>
Cc: Hans Verkuil <hansverk@cisco.com>
Cc: dri-devel@lists.freedesktop.org
Cc: linux-fbdev@vger.kernel.org
Reviewed-by: Sean Paul <sean@poorly.run>
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
---
 drivers/gpu/drm/drm_connector.c | 39 ++++++++++++++++++++++
 include/drm/drm_connector.h     |  1 +
 include/drm/drm_mode_config.h   |  4 +--
 include/linux/hdmi.h            | 12 +++++++
 include/uapi/drm/drm_mode.h     | 74 ++++++++++++++++++++++++++++++++++++++++-
 5 files changed, 127 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/drm_connector.c b/drivers/gpu/drm/drm_connector.c
index c9ac8b9..d371f5c 100644
--- a/drivers/gpu/drm/drm_connector.c
+++ b/drivers/gpu/drm/drm_connector.c
@@ -956,6 +956,45 @@ int drm_display_info_set_bus_formats(struct drm_display_info *info,
  *	  is no longer protected and userspace should take appropriate action
  *	  (whatever that might be).
  *
+ * HDR_OUTPUT_METADATA:
+ *	Connector property to enable userspace to send HDR Metadata to
+ *	driver. This metadata is based on the composition and blending
+ *	policies decided by user, taking into account the hardware and
+ *	sink capabilities. The driver gets this metadata and creates a
+ *	Dynamic Range and Mastering Infoframe (DRM) in case of HDMI,
+ *	SDP packet (Non-audio INFOFRAME SDP v1.3) for DP. This is then
+ *	sent to sink. This notifies the sink of the upcoming frame's Color
+ *	Encoding and Luminance parameters.
+ *
+ *	Userspace first need to detect the HDR capabilities of sink by
+ *	reading and parsing the EDID. Details of HDR metadata for HDMI
+ *	are added in CTA 861.G spec. For DP , its defined in VESA DP
+ *	Standard v1.4. It needs to then get the metadata information
+ *	of the video/game/app content which are encoded in HDR (basically
+ *	using HDR transfer functions). With this information it needs to
+ *	decide on a blending policy and compose the relevant
+ *	layers/overlays into a common format. Once this blending is done,
+ *	userspace will be aware of the metadata of the composed frame to
+ *	be send to sink. It then uses this property to communicate this
+ *	metadata to driver which then make a Infoframe packet and sends
+ *	to sink based on the type of encoder connected.
+ *
+ *	Userspace will be responsible to do Tone mapping operation in case:
+ *		- Some layers are HDR and others are SDR
+ *		- HDR layers luminance is not same as sink
+ *	It will even need to do colorspace conversion and get all layers
+ *	to one common colorspace for blending. It can use either GL, Media
+ *	or display engine to get this done based on the capabilties of the
+ *	associated hardware.
+ *
+ *	Driver expects metadata to be put in &hdr_output_metadata structure
+ *	from userspace. This is received as blob and stored in
+ *	&drm_connector_state.hdr_output_metadata. It parses EDID and saves the
+ *	sink metadata in &hdr_sink_metadata, as &drm_connector.hdr_sink_metadata.
+ *	Driver uses &drm_hdmi_infoframe_set_hdr_metadata helper to set the HDR
+ *	metadata, &hdmi_drm_infoframe_pack to pack the infoframe as per spec,
+ *	in case of HDMI encoder.
+ *
  * max bpc:
  *	This range property is used by userspace to limit the bit depth. When
  *	used the driver would limit the bpc in accordance with the valid range
diff --git a/include/drm/drm_connector.h b/include/drm/drm_connector.h
index 5476561..47e749b 100644
--- a/include/drm/drm_connector.h
+++ b/include/drm/drm_connector.h
@@ -1244,6 +1244,7 @@ struct drm_connector {
 	 */
 	struct llist_node free_node;
 
+	/** @hdr_sink_metadata: HDR Metadata Information read from sink */
 	struct hdr_sink_metadata hdr_sink_metadata;
 };
 
diff --git a/include/drm/drm_mode_config.h b/include/drm/drm_mode_config.h
index 4f88cc9..759d462 100644
--- a/include/drm/drm_mode_config.h
+++ b/include/drm/drm_mode_config.h
@@ -837,8 +837,8 @@ struct drm_mode_config {
 	struct drm_property *writeback_out_fence_ptr_property;
 
 	/**
-	 * hdr_output_metadata_property: Connector property containing hdr
-	 * metatda. This will be provided by userspace compositors based
+	 * @hdr_output_metadata_property: Connector property containing hdr
+	 * metatada. This will be provided by userspace compositors based
 	 * on HDR content
 	 */
 	struct drm_property *hdr_output_metadata_property;
diff --git a/include/linux/hdmi.h b/include/linux/hdmi.h
index ee55ba5..9918a6c 100644
--- a/include/linux/hdmi.h
+++ b/include/linux/hdmi.h
@@ -367,8 +367,19 @@ struct hdr_static_metadata {
 	__u16 min_cll;
 };
 
+/**
+ * struct hdr_sink_metadata - HDR sink metadata
+ *
+ * Metadata Information read from Sink's EDID
+ */
 struct hdr_sink_metadata {
+	/**
+	 * @metadata_type: Static_Metadata_Descriptor_ID.
+	 */
 	__u32 metadata_type;
+	/**
+	 * @hdmi_type1: HDR Metadata Infoframe.
+	 */
 	union {
 		struct hdr_static_metadata hdmi_type1;
 	};
@@ -398,6 +409,7 @@ ssize_t hdmi_vendor_infoframe_pack_only(const struct hdmi_vendor_infoframe *fram
  * @spd: spd infoframe
  * @vendor: union of all vendor infoframes
  * @audio: audio infoframe
+ * @drm: Dynamic Range and Mastering infoframe
  *
  * This is used by the generic pack function. This works since all infoframes
  * have the same header which also indicates which type of infoframe should be
diff --git a/include/uapi/drm/drm_mode.h b/include/uapi/drm/drm_mode.h
index 19b5cf3..5ab331e 100644
--- a/include/uapi/drm/drm_mode.h
+++ b/include/uapi/drm/drm_mode.h
@@ -33,6 +33,15 @@
 extern "C" {
 #endif
 
+/**
+ * DOC: overview
+ *
+ * DRM exposes many UAPI and structure definition to have a consistent
+ * and standardized interface with user.
+ * Userspace can refer to these structure definitions and UAPI formats
+ * to communicate to driver
+ */
+
 #define DRM_CONNECTOR_NAME_LEN	32
 #define DRM_DISPLAY_MODE_LEN	32
 #define DRM_PROP_NAME_LEN	32
@@ -630,24 +639,87 @@ struct drm_color_lut {
 	__u16 reserved;
 };
 
-/* HDR Metadata Infoframe as per 861.G spec */
+/**
+ * struct hdr_metadata_infoframe - HDR Metadata Infoframe Data.
+ *
+ * HDR Metadata Infoframe as per CTA 861.G spec. This is expected
+ * to match exactly with the spec.
+ *
+ * Userspace is expected to pass the metadata information as per
+ * the format described in this structure.
+ */
 struct hdr_metadata_infoframe {
+	/**
+	 * @eotf: Electro-Optical Transfer Function (EOTF)
+	 * used in the stream.
+	 */
 	__u8 eotf;
+	/**
+	 * @metadata_type: Static_Metadata_Descriptor_ID.
+	 */
 	__u8 metadata_type;
+	/**
+	 * @display_primaries: Color Primaries of the Data.
+	 * These are coded as unsigned 16-bit values in units of
+	 * 0.00002, where 0x0000 represents zero and 0xC350
+	 * represents 1.0000.
+	 * @display_primaries.x: X cordinate of color primary.
+	 * @display_primaries.y: Y cordinate of color primary.
+	 */
 	struct {
 		__u16 x, y;
 		} display_primaries[3];
+	/**
+	 * @white_point: White Point of Colorspace Data.
+	 * These are coded as unsigned 16-bit values in units of
+	 * 0.00002, where 0x0000 represents zero and 0xC350
+	 * represents 1.0000.
+	 * @white_point.x: X cordinate of whitepoint of color primary.
+	 * @white_point.y: Y cordinate of whitepoint of color primary.
+	 */
 	struct {
 		__u16 x, y;
 		} white_point;
+	/**
+	 * @max_display_mastering_luminance: Max Mastering Display Luminance.
+	 * This value is coded as an unsigned 16-bit value in units of 1 cd/m2,
+	 * where 0x0001 represents 1 cd/m2 and 0xFFFF represents 65535 cd/m2.
+	 */
 	__u16 max_display_mastering_luminance;
+	/**
+	 * @min_display_mastering_luminance: Min Mastering Display Luminance.
+	 * This value is coded as an unsigned 16-bit value in units of
+	 * 0.0001 cd/m2, where 0x0001 represents 0.0001 cd/m2 and 0xFFFF
+	 * represents 6.5535 cd/m2.
+	 */
 	__u16 min_display_mastering_luminance;
+	/**
+	 * @max_cll: Max Content Light Level.
+	 * This value is coded as an unsigned 16-bit value in units of 1 cd/m2,
+	 * where 0x0001 represents 1 cd/m2 and 0xFFFF represents 65535 cd/m2.
+	 */
 	__u16 max_cll;
+	/**
+	 * @max_fall: Max Frame Average Light Level.
+	 * This value is coded as an unsigned 16-bit value in units of 1 cd/m2,
+	 * where 0x0001 represents 1 cd/m2 and 0xFFFF represents 65535 cd/m2.
+	 */
 	__u16 max_fall;
 };
 
+/**
+ * struct hdr_output_metadata - HDR output metadata
+ *
+ * Metadata Information to be passed from userspace
+ */
 struct hdr_output_metadata {
+	/**
+	 * @metadata_type: Static_Metadata_Descriptor_ID.
+	 */
 	__u32 metadata_type;
+	/**
+	 * @hdmi_metadata_type1: HDR Metadata Infoframe.
+	 */
 	union {
 		struct hdr_metadata_infoframe hdmi_metadata_type1;
 	};
-- 
1.9.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2019-06-04 11:17 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-05-29 19:59 [PATCH 0/4] Document fixes for DRM UAPI and HDR Uma Shankar
2019-05-29 19:31 ` [PATCH 2/4] drm: Fix docbook warnings in hdr metadata helper structures Uma Shankar
2019-05-29 19:59   ` Uma Shankar
2019-06-03  8:23   ` Daniel Vetter
2019-06-03  8:23     ` Daniel Vetter
2019-06-03 12:01     ` Shankar, Uma
2019-06-03 12:01       ` Shankar, Uma
2019-06-04 10:52     ` [v3 2/3] " Uma Shankar
2019-06-04 11:17       ` Uma Shankar
2019-05-29 19:59 ` [PATCH 1/4] drm: Drop a redundant unused variable Uma Shankar
2019-06-03  8:12   ` Daniel Vetter
2019-06-03 11:52     ` Shankar, Uma
2019-05-29 19:59 ` [PATCH 3/4] drm: Fixed doc warnings in drm uapi header Uma Shankar
2019-06-03  8:26   ` Daniel Vetter
2019-06-03 11:53     ` Shankar, Uma
2019-05-29 19:59 ` [PATCH 4/4] video/hdmi: Dropped static functions from kernel doc Uma Shankar
2019-06-03  8:24   ` Daniel Vetter
2019-06-03 11:54     ` Shankar, Uma
2019-05-29 20:35 ` ✓ Fi.CI.BAT: success for Document fixes for DRM UAPI and HDR Patchwork
2019-05-30  6:46 ` ✓ Fi.CI.IGT: " Patchwork
2019-05-31  8:02 ` ✓ Fi.CI.BAT: " Patchwork
2019-05-31 16:24 ` ✓ 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.