aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2021-09-15edid-decode: linefeed before failjoevt1-1/+1
Always output linefeed before fail message. See example dell-up2715k-dp1-optomedia-cmv535. Signed-off-by: Joe van Tunen <joevt@shaw.ca> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-09-15edid-decode: add VTB-EXT bounds checkingjoevt1-3/+19
Add VTB-EXT bounds checking. Signed-off-by: Joe van Tunen <joevt@shaw.ca> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> [hverkuil: fix typo: DTB -> DTD]
2021-09-15edid-decode: change install directories for macOSjoevt1-2/+13
In macOS, /usr/bin and /usr/share/man belong to root:wheel so install to /usr/local/bin and /usr/local/share/man instead. Signed-off-by: Joe van Tunen <joevt@shaw.ca> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-09-15edid-decode: ignore dSYMjoevt1-0/+1
Building in macOS may create a .dSYM file for debugger symbols. Signed-off-by: Joe van Tunen <joevt@shaw.ca> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-09-15edid-decode: add more example EDIDsjoevt75-0/+0
acer-xb321hk-dp - Acer Predator XB321HK - This is a G-Sync display. Contains an NVIDIA VSDB. acer-xv273k-dp1 acer-xv273k-dp2 - Acer XV273K DisplayPort 1.4 inputs when 4K 144K mode is disabled. acer-xv273k-hdmi1 acer-xv273k-hdmi2 - Acer XV273K HDMI 2.0 inputs. acer-xv273k-corrected_difdb - Contains a corrected Display Interface Features Data Block for the Acer XV273K. acer-xv273k-dp1-corrupted - Sometimes the 3rd block of DisplayPort EDID from XV273K is a copy of the first or second block. - Example of "Unknown Extension Block." acer-xv273k-dp2-corrupted - Sometimes the 3rd block of DisplayPort EDID from XV273K is a copy of the first or second block. - Example of "Only one instance of this Data Block is allowed." aoc-c24g1 - AOC C24G1 apple-17-inch-studio-display-crt-override - macOS override for the 17 inch Studio Display (CRT). apple-applevision-850-override - macOS override for the AppleVision/ColorSync 850 Display apple-applevision-750-override - macOS override for the AppleVision/ColorSync 750 Display apple-cinemahd-23-2008-dvi - Apple Cinema HD Display, 23 inch, aluminum. This 2008 version supports HDCP. apple-cinemahd-23-2006-dvi - Apple Cinema HD Display, 23 inch, aluminum. This 2006 version does not support HDCP. apple-imac-27-inch-mid-2010 - iMac (27-inch, Mid 2010) - Example of "Monitor descriptor block has byte 4 nonzero". apple-imac-retina-5k-27-inch-2017 - iMac (Retina 5K, 27-inch, 2017) - Contains a dual-tile 5K display. - Apple VSDB type 1 appears to be constant between different iMacs (sample size of 2) - Color characteristics for red and blue may vary between different iMacs. Not sure about white and green. apple-macbookpro-16-inch-2019 - MacBook Pro (16-inch, 2019) - The EDID may contain different values for Color Characteristics: blue (0.0488, 0.0527, 0.0537, 0.0546) - Apple VSDB type 3 contains a display panel model number (LP160WT1-SJA1, LP160WT1-SJA2, LP160WT1-SJA3, LP160WT1-SJA4) and some kind of serial number. - Apple VSDB type 2 contains unknown data that varies. apple-xdr-5k-tile0 apple-xdr-5k-tile1 - Apple Pro Display XDR. These EDIDs may be used for 6K single tile mode or 5K tiled mode (Thunderbolt connection). - The Tiled Display Topology has info for 6K tiled but the tiled timings are sized for 5K. Apple uses an mtdd file for tile information. apple-xdr-6k - Apple Pro Display XDR. This EDID may be used for 6K. It contains no tile topology or tile timings. apple-xdr-6k-tile0 apple-xdr-6k-tile1 - These EDIDs may be used for tiled 6K mode (two HBR3 x4 signals over Thunderbolt 3 with no DSC). - Largest EDID ever with 6 extension blocks. - Has one 60Hz mode for 1440p (for DisplayPort 1.1 compatibility) and five refresh rates for each of 4K, 5K, 6K, 5K/2 tiled modes, 6K/2 tiled modes. - The five refresh rates are for 47.95, 48, 50, 59.94, 60Hz. - For each resolution, only the delay between frames (just the vertical front porch) is different between different refresh rates. - Tile topology has info for 6K tiled mode only, not 5K tiled mode even though 5K tile timings are also included. For any of xdr EDIDs above: - The EDIDs may exclude BT2020RGB from the Colorimetry Data Block and/or HDR and SMPTE ST2084 from the Electro optical transfer functions. - If HDR is removed from Electro optical transfer functions, then Desired content max luminance is reduced from 1600 nits to 507.620 nits and Desired content min luminance is increased from value 1 to value 2 (both values are 0 nits). - An alternative SDR mode may have max luminance and max frame-average luminance reduced from 507.620 nits to 161.049 nits while min luminance is increased from value 2 to value 4 (both values are 0 nits). - Perhaps other presets (selectable in macOS via the Displays preferences panel or in Windows by the Boot Camp control panel) will make other changes to the EDIDs. asus-pb287 - ASUS PB287Q Monitor - 28 inch 4K UHD (3840x2160), 1ms, Flicker free asus-pq321 - ASUS PQ321 - 4K MST display. - macOS doesn't support MST for multiple displays but does support MST for old 4K MST displays which use seperate streams for the left half and right half of the display. - Left tile only. EDID for right tile of 4K MST display is not easily accessible in macOS. asus-xg438q - ASUS ROG Strix XG438Q atlona-athd420-hdmi-override - macOS override for the Atlona AT-HD420 HDMI to VGA/Component and Stereo Audio Format Converter chiyakeji-r9a18 - 5K LCD controller driver board R9A18 LCD hd display motherboard HDR Freesync 4K 144Hz DIY For LCD LED screen LM270QQ2 LM270QQ1. - Only EDID for tile 1 is included. chiyakeji-r1811 - 5K universal DIY HD R1811 driver board USB-C HDR Freesync EDP VBO 144Hz DP1.4 LCD driver board for LM270QQ1 LM270QQ2. - A 5K display, not tiled but I think you can get a tiled firmware. - Maybe same board used in Geekon 27-inch 5K display. - Other EDID may have display name "DP 5K3K". - Supports DSC but I have not seen confirmation of 5K 60Hz 10bpc RGB. dell-up2715k-dp1-optomedia-cmv535 - A Dell UP2715K connected to the DisplayPort output of a Optomedia CMV-535 HDMI 2.0 to DisplayPort 1.2 adapter. - Example of "EDID 1.4 block does not set max dotclock.". hisense-h9g-hdmi - 65 inch Hisense H9G HDMI 2.0 kds-vs555 - KDS Visual Sensations VS-555 - CRT monitor - 15 inch lg-31mu97-override - macOS override for the LG 31MU97-B. - Example of "DIRECT DRIVE monitor". lg-34gn850b - LG UltraGear 34GN850-B 34 inch 21:9 Curved UltraGear QHD 1ms Gaming Monitor with 144Hz lg-34wk95uw - LG 34WK95U-W 5K2K display. - Thunderbolt 3 HBR2 tiled mode (dual 2560x2160). - DisplayPort 1.4 HBR3 mode 5120x2160. lg-34wk95uw-overlay - In macOS, a supported dual-tile display usually has a .mtdd file containing an overlay which is an EDID that represents the display as a single tile. - Example of "There are more Native DTDs \(\d+\) than DTDs \(\d+\)\.\n" lg-55sj850v - LG 55SJ850V lg-c8 - LG C8 OLED TV lg-ultrafine-5k-v1 - LG UltraFine 5K v1 - Has some minor differences from v2. microsoft-surfacebook - Microsoft Surface Book optomedia-cmv535 - This converter has two dip switches to select between 4 EDIDs. - Similar models: -- Optomedia CMV-535 HDMI 2.0a to DisplayPort 1.2a Converter -- SIIG HDMI 2.0 to DisplayPort 1.2 Converter - 4Kx2K 60Hz -- gofanco Prophecy HDMI 2.0 to DisplayPort 1.2 Converter/Adapter panasonic-tx65gxr900 - Panasonic TX-65GXR900 philips-ftv - Philips FTV - The HDMI 2.0 version comes from enabling UHD HDMI. - Example of Dolby VSDB items "10 bit", "Standard + Low-Latency + Low-Latency-HDMI". planar-ix2790 - Planar IX2790 - A single tile 5K display samsung-lu28r55 - Samsung 28 inch UHD resolution monitor with IPS panel - Example of "The year %d is more than one year in the future." samsung-q800t - Samsung 75 inch Q800T 2020 8K monitor has some HDMI 2.0 connectors and one HDMI 2.1 connector. The Game mode option enabled VRR. sharp-lc70uq17u - SHARP LC-70UQ17U has four HDMI inputs and a VGA input. Other inputs don’t have EDID. sony-gdmf520 - Sony GDM-F520 sony-snyc901-override sony-snyd301-override - macOS overrides for some unknown Sony TVs. - Examples of "Interlaced audio" and "Interlaced video". sony-x900f - Sony X900F vizio-e65e0-hdmi - Vizio E65-E0 vizio-m60c3-hdmi-onkyo-txnr555 - VIZIO M-Series 60" Class Ultra HD Full-Array LED Smart TV | M60-C3 - Connected to Onkyo TX-NR555 (receiver) Signed-off-by: Joe van Tunen <joevt@shaw.ca> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> [hverkuil: dropped EDIDs from the linuxhw database from this patch]
2021-08-11edid-decode: drop printf for GIT_COMMIT_DATEHans Verkuil1-1/+1
Drop the unnecessary printf '\"' and incorporate the " instead in the --date='format-local:"%F %T"' option. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Reported-by: Idar Tollefsen <itollefs@cisco.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-08-05edid-decode: DTDs 0xf7 and 0xf8 are for >= 1.4 onlyHans Verkuil1-0/+4
The DTDs with tag 0xf7 and 0xf8 are only defined in EDID 1.4 and up, so fail if they are used in older EDID versions. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-08-03edid-decode: Display Range Limits needs another indent levelHans Verkuil1-21/+21
The Display Range Limits block is part of the detailed timings descriptors, so it needs to be intented one more level to the right. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-06-26edid-decode: improve VRRmin/max handlingHans Verkuil1-2/+15
Don't show if 0, and add checks for reserved values. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-06-26edid-decode: fix the CVT vertical backporch calculationHans Verkuil1-3/+7
For CVT without reduced blanking and for CVT with RBv1 the vertical backporch must be 7 lines or more. For RBv2 and RBv3 it is fixed to 6 lines. This follows the text in the CVT specification. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-06-26edid-decode: drop block revision for Type 10 timingsHans Verkuil3-15/+7
The use of block_rev = 1 for Type 10 timings was a mistake in the E8 errata and should be dropped. Only block_rev 0 is to be used. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-05-31edid-decode: add DisplayID 2.0 E8 Type X supportHans Verkuil6-20/+75
Implement the changes for Type X defined in the DisplayID 2.0 E8 errata document. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-05-27edid-decode: fail if sRGB is not signalled, but it shouldHans Verkuil1-10/+14
If the chromaticities match those of sRGB, then fail if the sRGB bit is not set. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-04-20edid-decode: add support for CVT RBv3Hans Verkuil4-15/+38
This new CVT 1.2 reduced blanking formula was published in the CVT 1.2 Errata E1 and is used by CTA-861 and DisplayID 2.0. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-03-25edid-decode: test: update blockmap test filesHans Verkuil2-14/+14
Fixed edid-decode warnings in these test EDIDs. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-03-24edid-decode: give better message when the EDID is emptyHans Verkuil1-1/+7
If the EDID file is 0 bytes, then say so instead of saying 'unknown format'. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-03-24edid-decode: warn if a DTD closely matches a VIC or DMTHans Verkuil4-0/+72
Detailed Timing Descriptors often are identical to a VIC or DMT. But sometimes they are off a little bit, either due to slightly different porches or sync widths, or due to different polarities. Warn if this is the case, since it is probably a bug in the EDID. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-03-20edid-decode: don't report bogus CTA-861 pref/native timingsHans Verkuil1-2/+4
If the CTA-861 block is absent, then edid-decode would still show the preferred and native timings 'if Block 0 and CTA-861 Blocks are parsed'. Fix this. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-03-20edid-decode: add --only-hex-dump optionHans Verkuil2-4/+12
This option only shows the hex dump of the EDID and doesn't do any parsing. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-03-19edid-decode: report the physical address in hexHans Verkuil1-1/+1
Report the physical address in hex, so it will look like f.f.f.f instead of 15.15.15.15. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-03-12edid-decode: add Microsoft HDM standard to the manpageHans Verkuil1-0/+2
Added "Microsoft EDID extension for head-mounted and specialized monitors, Version 3". Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-03-12edid-decode: introduce containerid2s()Hans Verkuil4-7/+16
Format the container IDs consistently. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-03-12edid-decode: support Microsoft extension for HMDs and specialized monitorsPhilipp Zabel1-0/+41
Add support for parsing VSDBs documented in Microsoft's "EDID extension for head-mounted and specialized monitors" [1]. [1] https://docs.microsoft.com/en-us/windows-hardware/drivers/display/specialized-monitors-edid-extension Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-03-05edid-decode: 'Missing VCDB' should be a failHans Verkuil1-1/+1
This is currently a warning, but it should be a failure. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-03-05edid-decode: improve Auto Lipsync checksHans Verkuil2-6/+42
Improve checks for the audio/video latency values in the HDMI H14b VSDB according to the HDMI 2.0b spec. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-02-25edid-decode: introduce RB_NONE, rename RB_FLAG to RB_ALTHans Verkuil4-19/+33
This is consistent with the other code. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-02-25edid-decode: improve pref timing warning, downgrade fail() to warn()Hans Verkuil1-3/+8
The 'VIC 97 is the preferred timing, overriding the first detailed timings. Is this intended?' message is confusing if the VIC and the first DTD have matching timings. In that case change the message to 'For improved preferred timing interoperability, set 'Native detailed modes' to 1.'. Also downgrade the 'Set Selectable YCbCr Quantization to avoid interop issues.' message to a warn(). Too many EDIDs do not set this, and the interop risks are a lot lower compared to RGB Quantization. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-02-16edid-decode: show byte/bit of established timingsHans Verkuil1-2/+4
This makes it a bit easier to map an established timing to a specific bit. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-02-15edid-decode: fix DTD and non-zero bordersHans Verkuil1-4/+26
EDID 1.3 and 1.4 have conflicting definitions about how to interpret borders and blanking in a DTD. And actual EDIDs interpret different from both specs. Follow what EDIDs do, and add a warning that non-zero borders in a DTD is not recommended. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-02-15edid-decode: show or calculate timingsHans Verkuil9-432/+916
Add new options to show all Established Timings, DMTs, VICs and HDMI VICs. Add new options to show the timings for specific Standard Timing codes, or DMT, VIC and HDMI VIC codes. Add new options to calculate GTF and CVT timings, fully implementing the GTF and CVT standards, including interlaced, overscan, reduced blanking and support for the GTF Secondary Curve. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-02-14edid-decode: the borders are not part of the front/back porchesHans Verkuil2-13/+25
Update DMT 4 and 5 accordingly, and add the borders to the horizontal and vertical blanking calculations. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-02-14edid-decode: fix 32 bit overflowHans Verkuil1-2/+2
The calculation of the min/max pixelclock had a 32 bit overflow. Cast the factor 1000 to unsigned long long (1000ULL). Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-02-13edid-decode: improve GTF Secondary Curve handlingHans Verkuil1-10/+10
1) Add units where applicable for the sec. curve params. 2) Show only one decimal for C and J 3) Remove check if x[13] or x[17] > 127: this is wrong since x[13] is C / 2, not C. 4) Add check if the sec curve block is all 0, even though support for the sec curve is signaled in the EDID. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-02-13edid-decode: move up do_checks checkHans Verkuil1-2/+3
The print_timings() function skips the validation checks if !do_checks. But it should also skip the setting of min/max state variables used to determine whether any timings are out of range. I.e., if do_checks is false, just show the timings without any side-effects. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-02-09edid-decode: improve GTF/CVT checksHans Verkuil2-23/+47
1) Warn if a 1.4 EDID supports GTF instead of CVT (GTF is deprecated) 2) If a 1.4 EDID only supports GTF, then do not report Standard Timings as CVT. 3) Drop the check that GTF and/or CVT support must be present if an explicit GTF or CVT timing is supported: GTF/CVT support indicates that any GTF/CVT timings within the Display Range Limits is accepted, but explicitly indicated GTF/CVT timings are always assumed to be supported as discrete timings. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-02-03edid-decode: improve fail messageHans Verkuil1-1/+1
Explicitly state that all DTD image sizes fit inside 255x255cm. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-02-03edid-decode: improve image/display size checksHans Verkuil3-28/+47
1) when print_timings is called to show preferred and/or native timings, skip any checks. Those have been done already when these timings were first parsed, and doing it again results in duplicate messages. 2) if the display size is 0x0 and the max image size > 2559x2559mm, then do not fail since the display size can only report sizes smaller than that. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-02-02edid-decode: improve VCDB checksHans Verkuil1-14/+21
Selectable RGB/YCbCr Quantization is now required as per CTA-861-H, so make it a fail if it is 0. Also add an S_PT check: should be 0 if it is equal to S_IT and S_CE. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-01-28edid-decode: improve DisplayID native format handlingHans Verkuil3-4/+27
The DisplayID 1.3 reporting of the native format was off by 1. Also check if the resolution is either all 0 (no native format specified) or all non-0. Finally check for consistency with the reported native resolution by the CTA block. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-01-19edid-decode: use 4 decimals for color characteristicsHans Verkuil1-2/+2
The precision is only 4 decimals, so change %.6f to %.4f. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Reported-by: val.zapod.vz@gmail.com
2021-01-19edid-decode: fix Video Timing Range Limits pixelclockHans Verkuil1-2/+2
The pixelclock min/max values were off by one. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Reported-by: val.zapod.vz@gmail.com
2021-01-19edid-decode: improve Transfer CharacteristicsHans Verkuil1-3/+17
Show actual luminance values instead of just the bytes. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-01-19edid-decode: Clarify Power SequencingHans Verkuil1-6/+6
T4-T6 are Min values only, not ranges. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Reported-by: val.zapod.vz@gmail.com
2021-01-15edid-decode: check for duplicate CTA data blocksHans Verkuil3-9/+56
CTA-861-H explicitly stated which Data Blocks are allowed to have multiple instances. Fail if duplicate Data Blocks are found where only a single instance is allowed. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-01-15edid-decode: improve RCDB/SLDB checksHans Verkuil5-36/+100
CTA-861-H more clearly described the relationship between the RCDB and SLDB Data Blocks, so implement new checks that verify the correctness of these DBs. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-01-14edid-decode: add support for AMD FreeSync VSDBHans Verkuil1-0/+55
This is all based on educated guesses since no freely available specification for this is available. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2021-01-11edid-decode: incorporated DisplayID v2.0 Errata E7 changesHans Verkuil3-6/+18
Added support for Display Device Theme Preference. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2020-12-30edid-decode: use DTD or T10VTDB for a T7VTDB if possibleHans Verkuil4-0/+57
Check if a T7VTDB can also be represented by a DTD or a T10VTDB. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2020-12-30edid-decode: add support for CVT RBv2 and RBv3Hans Verkuil3-20/+42
CVT Reduced Blanking version 2 was never implemented, do this now. Also add support for the new version 3. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2020-12-30edid-decode.1: update CTA-861 standard versionHans Verkuil1-1/+1
It's now up to date for CTA-861-H. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>

Privacy Policy