diff mbox

[1/1] Load EDID: Explain better how to write your own EDID firmware

Message ID 20120719155633.471740372@osadl.org (mailing list archive)
State New, archived
Headers show

Commit Message

Carsten Emde July 19, 2012, 3:54 p.m. UTC
A description was lacking how to write an EDID firmware file that
corresponds to a given X11 setting.

Signed-off-by: Carsten Emde <C.Emde@osadl.org>

---
 Documentation/EDID/HOWTO.txt |   27 +++++++++++++++++++++++----
 1 file changed, 23 insertions(+), 4 deletions(-)

Comments

Adam Jackson July 19, 2012, 9:35 p.m. UTC | #1
On 7/19/12 11:54 AM, Carsten Emde wrote:

> A description was lacking how to write an EDID firmware file that
> corresponds to a given X11 setting.
>
> Signed-off-by: Carsten Emde <C.Emde@osadl.org>

Reviewed-by: Adam Jackson <ajax@redhat.com>

- ajax
diff mbox

Patch

Index: linux-3.4.4-rt13/Documentation/EDID/HOWTO.txt
===================================================================
--- linux-3.4.4-rt13.orig/Documentation/EDID/HOWTO.txt
+++ linux-3.4.4-rt13/Documentation/EDID/HOWTO.txt
@@ -28,11 +28,30 @@  Makefile environment are given here.
 To create binary EDID and C source code files from the existing data
 material, simply type "make".
 
-If you want to create your own EDID file, copy the file 1024x768.S and
-replace the settings with your own data. The CRC value in the last line
+If you want to create your own EDID file, copy the file 1024x768.S,
+replace the settings with your own data and add a new target to the
+Makefile. Please note that the EDID data structure expects the timing
+values in a different way as compared to the standard X11 format.
+
+X11:
+HTimings:  hdisp hsyncstart hsyncend htotal
+VTimings:  vdisp vsyncstart vsyncend vtotal
+
+EDID:
+#define XPIX hdisp
+#define XBLANK htotal-hdisp
+#define XOFFSET hsyncstart-hdisp
+#define XPULSE hsyncend-hsyncstart
+
+#define YPIX vdisp
+#define YBLANK vtotal-vdisp
+#define YOFFSET (63+(vsyncstart-vdisp))
+#define YPULSE (63+(vsyncend-vsyncstart))
+
+The CRC value in the last line
   #define CRC 0x55
-is a bit tricky. After a first version of the binary data set is
-created, it must be be checked with the "edid-decode" utility which will
+also is a bit tricky. After a first version of the binary data set is
+created, it must be checked with the "edid-decode" utility which will
 most probably complain about a wrong CRC. Fortunately, the utility also
 displays the correct CRC which must then be inserted into the source
 file. After the make procedure is repeated, the EDID data set is ready