Re: [Intel-gfx] [PATCH 08/15] drm: set output colorspace in AVI infoframe

2017-07-09 Thread kbuild test robot
Hi Shashank,

[auto build test WARNING on drm/drm-next]
[also build test WARNING on next-20170707]
[cannot apply to v4.12]
[if your patch is applied to the wrong git tree, please drop us a note to help 
improve the system]

url:
https://github.com/0day-ci/linux/commits/Shashank-Sharma/YCBCR-4-2-0-handling-in-DRM-layer/20170709-152927
base:   git://people.freedesktop.org/~airlied/linux.git drm-next
reproduce: make htmldocs

All warnings (new ones prefixed by >>):

   WARNING: convert(1) not found, for SVG to PDF conversion install ImageMagick 
(https://www.imagemagick.org)
   arch/x86/include/asm/uaccess_32.h:1: warning: no structured comments found
   include/linux/init.h:1: warning: no structured comments found
   include/linux/mod_devicetable.h:687: warning: Excess 
struct/union/enum/typedef member 'ver_major' description in 'fsl_mc_device_id'
   include/linux/mod_devicetable.h:687: warning: Excess 
struct/union/enum/typedef member 'ver_minor' description in 'fsl_mc_device_id'
   kernel/sched/core.c:2088: warning: No description found for parameter 'rf'
   kernel/sched/core.c:2088: warning: Excess function parameter 'cookie' 
description in 'try_to_wake_up_local'
   include/linux/kthread.h:26: warning: Excess function parameter '...' 
description in 'kthread_create'
   kernel/sys.c:1: warning: no structured comments found
   include/linux/device.h:969: warning: No description found for parameter 
'dma_ops'
   drivers/dma-buf/seqno-fence.c:1: warning: no structured comments found
   include/linux/iio/iio.h:597: warning: No description found for parameter 
'trig_readonly'
   include/linux/iio/trigger.h:151: warning: No description found for parameter 
'indio_dev'
   include/linux/iio/trigger.h:151: warning: No description found for parameter 
'trig'
   include/linux/device.h:970: warning: No description found for parameter 
'dma_ops'
   include/linux/usb/gadget.h:230: warning: No description found for parameter 
'claimed'
   include/linux/usb/gadget.h:230: warning: No description found for parameter 
'enabled'
   include/linux/usb/gadget.h:408: warning: No description found for parameter 
'quirk_altset_not_supp'
   include/linux/usb/gadget.h:408: warning: No description found for parameter 
'quirk_stall_not_supp'
   include/linux/usb/gadget.h:408: warning: No description found for parameter 
'quirk_zlp_not_supp'
   include/drm/drm_drv.h:537: warning: No description found for parameter 
'set_busid'
   include/drm/drm_drv.h:537: warning: No description found for parameter 
'debugfs_init'
   include/drm/drm_drv.h:537: warning: No description found for parameter 
'gem_open_object'
   include/drm/drm_drv.h:537: warning: No description found for parameter 
'gem_close_object'
   include/drm/drm_drv.h:537: warning: No description found for parameter 
'prime_handle_to_fd'
   include/drm/drm_drv.h:537: warning: No description found for parameter 
'prime_fd_to_handle'
   include/drm/drm_drv.h:537: warning: No description found for parameter 
'gem_prime_export'
   include/drm/drm_drv.h:537: warning: No description found for parameter 
'gem_prime_import'
   include/drm/drm_drv.h:537: warning: No description found for parameter 
'gem_prime_pin'
   include/drm/drm_drv.h:537: warning: No description found for parameter 
'gem_prime_unpin'
   include/drm/drm_drv.h:537: warning: No description found for parameter 
'gem_prime_res_obj'
   include/drm/drm_drv.h:537: warning: No description found for parameter 
'gem_prime_get_sg_table'
   include/drm/drm_drv.h:537: warning: No description found for parameter 
'gem_prime_import_sg_table'
   include/drm/drm_drv.h:537: warning: No description found for parameter 
'gem_prime_vmap'
   include/drm/drm_drv.h:537: warning: No description found for parameter 
'gem_prime_vunmap'
   include/drm/drm_drv.h:537: warning: No description found for parameter 
'gem_prime_mmap'
   include/drm/drm_drv.h:537: warning: No description found for parameter 
'gem_vm_ops'
   include/drm/drm_drv.h:537: warning: No description found for parameter 
'major'
   include/drm/drm_drv.h:537: warning: No description found for parameter 
'minor'
   include/drm/drm_drv.h:537: warning: No description found for parameter 
'patchlevel'
   include/drm/drm_drv.h:537: warning: No description found for parameter 'name'
   include/drm/drm_drv.h:537: warning: No description found for parameter 'desc'
   include/drm/drm_drv.h:537: warning: No description found for parameter 'date'
   include/drm/drm_drv.h:537: warning: No description found for parameter 
'driver_features'
   include/drm/drm_drv.h:537: warning: No description found for parameter 
'ioctls'
   include/drm/drm_drv.h:537: warning: No description found for parameter 
'num_ioctls'
   include/drm/drm_drv.h:537: warning: No description found for parameter 'fops'
   include/drm/drm_color_mgmt.h:1: warning: no structured comments found
>> drivers/gpu/drm/drm_edid.c:4813: warning: No description found for parameter 
>> 'colorspace'
>> drivers/gpu/drm/drm_edid.c:4813: 

[Intel-gfx] [PATCH 08/15] drm: set output colorspace in AVI infoframe

2017-07-06 Thread Shashank Sharma
A source must set output colorspace information in AVI
infoframes, so that the sink can decode upcoming frames
accordingly.

This patch adds a function to add the output colorspace
information in the AVI infoframes.

V2: Rebase
V3: Rebase
V4: Rebase
V5: Rebase
V6: Made patch independent of HDMI output type.

Cc: Ville Syrjala 
Cc: Jose Abreu 
Signed-off-by: Shashank Sharma 
---
 drivers/gpu/drm/drm_edid.c | 29 +
 include/drm/drm_edid.h |  5 +
 2 files changed, 34 insertions(+)

diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
index 944a28f..cede86e 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
@@ -4796,6 +4796,35 @@ drm_hdmi_avi_infoframe_from_display_mode(struct 
hdmi_avi_infoframe *frame,
 EXPORT_SYMBOL(drm_hdmi_avi_infoframe_from_display_mode);
 
 /**
+ * drm_hdmi_avi_infoframe_set_colorspace - fill an HDMI AVI infoframe with
+ * colorspace data of the output type
+ *
+ * @frame: HDMI AVI infoframe
+ * @mode: DRM display mode
+ * @hdmi_output: HDMI output colorspace
+ *
+ * Return: 0 on success or a negative error code on failure.
+ */
+int
+drm_hdmi_avi_infoframe_set_colorspace(struct hdmi_avi_infoframe *frame,
+ const struct drm_display_mode *mode,
+ enum hdmi_colorspace colorspace)
+{
+   if (colorspace > HDMI_COLORSPACE_YUV420 ||
+   colorspace < HDMI_COLORSPACE_RGB) {
+   DRM_ERROR("Invalid color space type\n");
+   return -EINVAL;
+   }
+
+   frame->colorspace = colorspace;
+   if (colorspace == HDMI_COLORSPACE_YUV420)
+   frame->pixel_repeat = 0;
+
+   return 0;
+}
+EXPORT_SYMBOL(drm_hdmi_avi_infoframe_set_colorspace);
+
+/**
  * drm_hdmi_avi_infoframe_quant_range() - fill the HDMI AVI infoframe
  *quantization range information
  * @frame: HDMI AVI infoframe
diff --git a/include/drm/drm_edid.h b/include/drm/drm_edid.h
index aa58146..b79e0cb 100644
--- a/include/drm/drm_edid.h
+++ b/include/drm/drm_edid.h
@@ -332,6 +332,7 @@ struct cea_sad {
 struct drm_encoder;
 struct drm_connector;
 struct drm_display_mode;
+enum drm_hdmi_output_type;
 
 void drm_edid_to_eld(struct drm_connector *connector, struct edid *edid);
 int drm_edid_to_sad(struct edid *edid, struct cea_sad **sads);
@@ -354,6 +355,10 @@ drm_hdmi_avi_infoframe_from_display_mode(struct 
hdmi_avi_infoframe *frame,
 const struct drm_display_mode *mode,
 bool is_hdmi2_sink);
 int
+drm_hdmi_avi_infoframe_set_colorspace(struct hdmi_avi_infoframe *frame,
+const struct drm_display_mode *mode,
+enum hdmi_colorspace colorspace);
+int
 drm_hdmi_vendor_infoframe_from_display_mode(struct hdmi_vendor_infoframe 
*frame,
const struct drm_display_mode 
*mode);
 void
-- 
2.7.4

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