From: Hans Verkuil <hans.verk...@cisco.com>

Support the Color Point Descriptor Definition (tag 0xfb).

Signed-off-by: Hans Verkuil <hans.verk...@cisco.com>
---
 edid-decode.c | 30 ++++++++++++++++++++++++++++--
 1 file changed, 28 insertions(+), 2 deletions(-)

diff --git a/edid-decode.c b/edid-decode.c
index e4d70e8e..e2041048 100644
--- a/edid-decode.c
+++ b/edid-decode.c
@@ -381,9 +381,35 @@ detailed_block(unsigned char *x, int in_extension)
                print_standard_timing(x[5 + i * 2], x[5 + i * 2 + 1]);
            return 1;
        case 0xFB:
-           /* TODO */
-           printf("Color point\n");
+       {
+           unsigned w_x, w_y;
+           unsigned gamma;
+
+           printf("Color point:\n");
+           w_x = (x[7] << 2) | ((x[6] >> 2) & 3);
+           w_y = (x[8] << 2) | (x[6] & 3);
+           gamma = x[9];
+           printf("  Index: %u White: 0.%04u, 0.%04u", x[5],
+                  (w_x * 10000) / 1024, (w_y * 10000) / 1024);
+           if (gamma == 0xff)
+               printf(" Gamma: is defined in an extension block");
+           else
+               printf(" Gamma: %.2f", ((gamma + 100.0) / 100.0));
+           printf("\n");
+           if (x[10] == 0)
+                   return 1;
+           w_x = (x[12] << 2) | ((x[11] >> 2) & 3);
+           w_y = (x[13] << 2) | (x[11] & 3);
+           gamma = x[14];
+           printf("  Index: %u White: 0.%04u, 0.%04u", x[10],
+                  (w_x * 10000) / 1024, (w_y * 10000) / 1024);
+           if (gamma == 0xff)
+               printf(" Gamma: is defined in an extension block");
+           else
+               printf(" Gamma: %.2f", ((gamma + 100.0) / 100.0));
+           printf("\n");
            return 1;
+       }
        case 0xFC:
            /* XXX should check for spaces after the \n */
            /* XXX check: terminated with 0x0A, padded with 0x20 */
-- 
2.14.1

_______________________________________________
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to