video/hdmi: Derive the bar data valid bit from the bar data fields
authorLespiau, Damien <damien.lespiau@intel.com>
Mon, 19 Aug 2013 15:58:57 +0000 (16:58 +0100)
committerDave Airlie <airlied@gmail.com>
Thu, 29 Aug 2013 22:40:35 +0000 (08:40 +1000)
Just like:

  Author: Damien Lespiau <damien.lespiau@intel.com>
  Date:   Mon Aug 12 11:53:24 2013 +0100

      video/hdmi: Don't let the user of this API create invalid infoframes

But this time for the horizontal/vertical bar data present bits.

Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Dave Airlie <airlied@gmail.com>
drivers/video/hdmi.c
include/linux/hdmi.h

index 7ccc118..1201357 100644 (file)
@@ -103,10 +103,11 @@ ssize_t hdmi_avi_infoframe_pack(struct hdmi_avi_infoframe *frame, void *buffer,
        if (frame->active_aspect & 0xf)
                ptr[0] |= BIT(4);
 
-       if (frame->horizontal_bar_valid)
+       /* Bit 3 and 2 indicate if we transmit horizontal/vertical bar data */
+       if (frame->top_bar || frame->bottom_bar)
                ptr[0] |= BIT(3);
 
-       if (frame->vertical_bar_valid)
+       if (frame->left_bar || frame->right_bar)
                ptr[0] |= BIT(2);
 
        ptr[1] = ((frame->colorimetry & 0x3) << 6) |
index 931474c..b98340b 100644 (file)
@@ -109,8 +109,6 @@ struct hdmi_avi_infoframe {
        unsigned char version;
        unsigned char length;
        enum hdmi_colorspace colorspace;
-       bool horizontal_bar_valid;
-       bool vertical_bar_valid;
        enum hdmi_scan_mode scan_mode;
        enum hdmi_colorimetry colorimetry;
        enum hdmi_picture_aspect picture_aspect;