1edid-decode(1)              General Commands Manual             edid-decode(1)
2
3
4

NAME

6       edid-decode - Decode EDID data in human-readable format
7

SYNOPSIS

9       edid-decode <options> [in [out]]
10

DESCRIPTION

12       edid-decode  decodes  EDID  monitor  description data in human-readable
13       format.  If [in] is not given, or [in] is '-', then the  EDID  will  be
14       read from standard input. If [out] is given then the EDID that was read
15       from [in] is written to [out] or to standard output if [out] is '-'. By
16       default  the  output  is written as a hex dump when writing to standard
17       output or a raw EDID if written to a file.
18
19       If [out] is given then edid-decode only does the  conversion,  it  will
20       skip the decoding step.
21
22       Input  files may be raw binaries or ASCII text.  ASCII input is scanned
23       for hex dumps; heuristics are included to search for hexdumps in  edid-
24       decode(1)  output  (as  long  as  the  initial  hex dump was included),
25       xrandr(1) property output and Xorg(1) log file formats,  otherwise  the
26       data  is  treated as a raw hexdump.  EDID blocks for connected monitors
27       can be found in /sys/class/drm/*/edid on modern Linux systems with ker‐
28       nel modesetting support.
29
30       All timings are shown in a short format, for example:
31
32           VIC   16:   1920x1080    60.000  Hz  16:9    67.500 kHz 148.500 MHz
33       (native)
34           VIC   5:  1920x1080i  60.000 Hz  16:9    33.750 kHz  74.250 MHz
35           VIC  39:  1920x1080i  50.000 Hz  16:9    31.250 kHz  72.000 MHz
36
37       Each format starts with a  timings  type  prefix,  the  resolution,  an
38       optional  interlaced  indicator  ('i'),  the frame rate (field rate for
39       interlaced formats), the picture  aspect  ratio,  the  horizontal  fre‐
40       quency,  the  pixelclock  frequency  and  optionally  additional  flags
41       between parenthesis.
42
43       Note that for interlaced formats the frame height  is  given,  not  the
44       field height. So each field in a 1920x1080i format has 540 lines.
45
46       Detailed timings have another 2-3 lines of data:
47
48           VIC   16:   1920x1080    60.000  Hz  16:9    67.500 kHz 148.500 MHz
49       (native)
50                          Hfront   88 Hsync  44 Hback 148 Hpol P
51                          Vfront    4 Vsync   5 Vback  36 Vpol P
52           VIC   5:  1920x1080i  60.000 Hz  16:9    33.750 kHz  74.250 MHz
53                          Hfront   88 Hsync  44 Hback 148 Hpol P
54                          Vfront    2 Vsync   5 Vback  15 Vpol P  Vfront  +0.5
55       Odd Field
56                          Vfront     2  Vsync   5 Vback  15 Vpol P Vback  +0.5
57       Even Field
58           VIC  39:  1920x1080i  50.000 Hz  16:9    31.250 kHz  72.000 MHz
59                          Hfront   32 Hsync 168 Hback 184 Hpol P
60                          Vfront   23 Vsync   5 Vback  57 Vpol N Both Fields
61
62       These describe the horizontal and vertical front porch, sync, backporch
63       and  sync  polarity  values. For interlaced formats there are two lines
64       for the vertical information: one for the Odd Field (aka Field  1)  and
65       one  for  the Even Field (aka Field 2). The vertical front porch of the
66       Odd Field is actually 2.5 (hence the 'Vfront +0.5' at the  end  of  the
67       line), and the back porch of the Even Field is actually 15.5 (hence the
68       'Vback  +0.5' at the end of the line).
69
70       There is a special 'VIC 39' interlaced format where  both  fields  have
71       the  same  vertical  timings,  in  that  case this is marked with 'Both
72       Fields'.
73
74       The following timing types can be shown:
75
76
77              DMT #: Discrete Monitor Timing (see DMT 1.3 standard). The  num‐
78              ber is the DMT ID in hexadecimal.
79
80              CVT: Coordinated Video Timings (formula-based, see CVT 1.2 stan‐
81              dard)
82
83              GTF: Generalized Timing  Formula  (formula-based,  see  GTF  1.1
84              standard)
85
86              IBM: Old IBM Timings
87
88              Apple: Old Apple Timings
89
90              VIC  #:  Video  Identification  Code (see CTA-861 standard). The
91              number is the actual
92                     VIC code.
93
94              HDMI VIC #: HDMI-specific Video Identification  Code  (see  HDMI
95              2.1 standard). The number
96                     is the actual HDMI VIC code.
97
98              DTD  #:  Detailed  Timings  Descriptor (see EDID standard). Also
99              used for
100                     DisplayID Video Timing Modes Types I, II, VI and VII. The
101                     number denotes that this is the Nth DTD in the EDID.
102
103       By  default  DTDs  are  shown  in the long format while others are just
104       shown in the short format. With the option --short-timings all  timings
105       are shown in short format only. With the option --long-timings all tim‐
106       ings are shown in long format.
107
108       Alternate formats for long timings can be chosen via the --xmodeline or
109       --fbmode options.
110
111

STANDARDS

113       The following EDID standards are supported by edid-decode:
114
115              EDID 1.3: VESA Enhanced Extended Display Identication Data Stan‐
116              dard, Release A, Revision 1
117
118              EDID 1.4: VESA Enhanced Extended Display Identication Data Stan‐
119              dard, Release A, Revision 2
120
121              DisplayID  1.3:  VESA  Display  Identification  Data (DisplayID)
122              Standard, Version 1.3
123
124              DisplayID 2.0: VESA DisplayID Standard, Version 2.0
125
126              DI-EXT:  VESA  Display  Information  Extension  Block  Standard,
127              Release A
128
129              LS-EXT:  VESA Enhanced EDID Localized String Extension Standard,
130              Release A
131
132              VTB-EXT:  VESA  Video  Timing  Block  Extension  Data  Standard,
133              Release A
134
135              DTCDB:  VESA  Display  Transfer Characteristics Data Block Stan‐
136              dard, Version 1.0
137
138              DDDB: VESA Display Device Data Block (DDDB) Standard, Version 1
139
140              HDMI 1.4b: High-Definition Multimedia Interface, Version 1.4b
141
142              HDMI 2.1: High-Definition Multimedia Interface, Version 2.1
143
144              HDMI 2.1: Amendment A1 to HDMI Specification Version 2.1
145
146              CTA-861-G: A DTV Profile for  Uncompressed  High  Speed  Digital
147              Interfaces
148
149              SPWG Notebook Panel Specification, Version 3.5
150
151              EPI Embedded Panel Interface, Revision 1.0
152
153
154       The following related standards are also used by edid-decode:
155
156              DMT 1.3: VESA and Industry Standards and Guidelines for Computer
157              Display Monitor Timing (DMT), Version 1.0, Rev. 13
158
159              CVT 1.2: VESA Coordinated Video Timings (CVT) Standard,  Version
160              1.2
161
162              GTF 1.1: VESA Generalized Timing Formula Standard, Version: 1.1
163
164

OPTIONS

166       -h, --help
167              Prints the help message.
168
169       -o, --output-format=<fmt>
170              If [out] is specified, then write the EDID in format <fmt>.
171              The output format can be one of:
172              hex: hex numbers in ascii text (default for stdout)
173              raw: binary data (default unless writing to stdout)
174              carray: c-program struct
175
176       -c, --check
177              Check  if the EDID conforms to the standards. Warnings and fail‐
178              ures are reported at the end.
179
180       -C, --check-inline
181              Check if the EDID conforms to the standards. Warnings and  fail‐
182              ures are reported as they happen.
183
184       -p, --preferred-timing
185              Report the preferred timing at the end.
186
187       -S, --short-timings
188              Report all video timings in a short format.
189
190       -L, --long-timings
191              Report all video timings in a long format.
192
193       -X, --xmodeline
194              Report  all long video timings in the ModeLine format as defined
195              in xorg.conf(5).  This ModeLine can be  used  in  the  xorg.conf
196              file or passed to xrandr(1) with the xrandr --newmode option.
197
198       -F, --fbmode
199              Report  all  long  video  timings  in  the  video mode format as
200              defined in fb.modes(5).
201
202       -V, --v4l2-timings
203              Report all long video  timings  in  the  video  mode  format  as
204              defined  in  the linux header v4l2-dv-timings.h for use with the
205              V4L2 VIDIOC_S_DV_TIMINGS ioctl.
206
207       -s, --skip-hex-dump
208              Skip the initial hex dump of the EDID.
209
210       --skip-sha
211              Don't show the SHA hash. Normally edid-decode will show the SHA,
212              i.e.  the  hash  of  the git commit used to compile edid-decode.
213              This uniquely identifies the version of edid-decode that is used
214              to  generate  the warnings and failures. But it will also change
215              the output of edid-decode for every new commit in the git repos‐
216              itory,  even  if nothing else changed in the edid-decode output.
217              Use this option to avoid including the SHA  in  the  edid-decode
218              output.
219
220       -e, --extract
221              Extract the contents of the first block in hex values.  This was
222              always done in old edid-decode versions. To get the same  behav‐
223              ior add this option.
224
225

NOTES

227       Not all fields are decoded, or decoded completely.  Some fields' decod‐
228       ing may appear to corrupt the output (for example, detailed string sec‐
229       tions have their contents printed literally).  edid-decode does attempt
230       to validate its input against the relevant standards, but its  opinions
231       have  not  been  double-checked  with the relevant standards bodies, so
232       they may be wrong.  Do not rely on the output format, as it will likely
233       change  in  future versions of the tool as additional fields and exten‐
234       sions are added.
235

SEE ALSO

237       Xorg(1), xrandr(1), xorg.conf(5), fb.modes(5)
238

AUTHORS

240       edid-decode was written by Adam Jackson, with contributions  from  Eric
241       Anholt,  Damien Lespiau, Hans Verkuil and others.  For complete history
242       and  the  latest  version,  see   http://git.linuxtv.org/cgit.cgi/edid-
243       decode.git
244
245
246
247                                                                edid-decode(1)
Impressum