For many years I have been using an AnBonn "1280 x 1024" digital monitor that lacks the hardware for the Display Data Channel (DDC) protocol set.
Wikipedia describes this as follows:
Quote:
The Display Data Channel, or DDC, is a collection of protocols for digital communication between a computer display and a graphics adapter that enable the display to communicate its supported display modes to the adapter and that enable the computer host to adjust monitor parameters, such as brightness and contrast.
Like modern analog VGA connectors, the DVI and DP connectors include pins for the display data channel (DDC), but DP supports DDC within its optional Dual-Mode DP (DP++) feature in DVI/HDMI mode only.
The standard was created by the Video Electronics Standards Association (VESA).
|
The
Xorg.0.log part showing that DDC fails:
Code:
[ 30.496] (II) Loading sub module "ddc"
[ 30.496] (II) LoadModule: "ddc"
[ 30.496] (II) Module "ddc" already built-in
[ 30.496] (II) Loading sub module "i2c"
[ 30.496] (II) LoadModule: "i2c"
[ 30.496] (II) Module "i2c" already built-in
[ 30.497] (II) MGA(0): MAPPED Framebuffer F9000000 7f0000 to 7534AC53000.
[ 30.497] (II) MGA(0): vgaHWGetIOBase: hwp->IOBase is 0x03d0
[ 30.760] (II) MGA(0): I2C bus "DDC P1" initialized.
[ 30.768] (II) MGA(0): I2C device "DDC P1:ddc2" registered at address 0xA0.
[ 31.558] (--) MGA(0): No DDC signal
Because the DDC hardware is not there, the Xorg MGA (Matrox Graphics Adapter) driver cannot ask the monitor about the Horizontal sync rate (kHz) and the Vertical Refresh rate (Hz) and/or which graphical resolutions it supports.
This results in an abort with a message saying "No suitable screens or Modelines can be found".
To inform the Xorg probing process of this data I wrote the following script that adds a
Monitor and
Screen configuration section to the
/usr/X11R6/share/X11/xorg.conf.d/ directory.
Code:
#!/bin/sh
DEST='/usr/X11R6/share/X11/xorg.conf.d/'
cat <<END >${DEST}MonitorAnbonn.conf
# Anbonn monitor without DDC / I2C bus hardware
Section "Monitor"
Identifier "Monitor0"
VendorName "AnBonn"
ModelName "Monitor Model"
HorizSync 30-80
VertRefresh 58-75
EndSection
Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
SubSection "Display"
Viewport 0 0
Depth 24
Modes "1280x1024" "1024x768"
EndSubSection
EndSection
# --- end of file ---
END
A peek in that directory:
Code:
ls -l /usr/X11R6/share/X11/xorg.conf.d/
total 20
-rw-r--r-- 1 root bin 92 Apr 16 2019 10-amdgpu.conf
-rw-r--r-- 1 root bin 92 Feb 20 2018 10-radeon.conf
-rw-r--r-- 1 root bin 979 Nov 5 2011 50-fpit.conf
-rw-r--r-- 1 root bin 1762 Dec 5 2017 70-synaptics.conf
-rw-r--r-- 1 root wheel 402 Apr 16 05:25 MonitorAnbonn.conf
When that file is there the
Xorg.0.log reports about it:
Code:
[ 20.914] (==) Log file: "/var/log/Xorg.0.log", Time: Wed May 5 23:20:53 2021
[ 20.932] (==) Using system config directory "/usr/X11R6/share/X11/xorg.conf.d"
[ 20.977] (==) No Layout section. Using the first Screen section.
[ 20.977] (**) |-->Screen "Screen0" (0)
[ 20.977] (**) | |-->Monitor "Monitor0"
[snip]
[ 31.637] (II) MGA(0): Monitor0: Using hsync range of 30.00-80.00 kHz
[ 31.637] (II) MGA(0): Monitor0: Using vrefresh range of 58.00-75.00 Hz
[ 31.641] (II) MGA(0): Clock range: 17.75 to 203.40 MHz
[snip]
[ 31.643] (II) MGA(0): Virtual size is 1280x1024 (pitch 1280)
[ 31.643] (**) MGA(0): *Default mode "1280x1024": 135.0 MHz, 80.0 kHz, 75.0 Hz
[ 31.643] (II) MGA(0): Modeline "1280x1024"x75.0 135.00 1280 1296 1440 1688 1024 1025 1028 1066 +hsync +vsync (80.0 kHz zd)
[ 31.643] (**) MGA(0): *Default mode "1024x768": 78.8 MHz, 60.0 kHz, 75.0 Hz
[ 31.643] (II) MGA(0): Modeline "1024x768"x75.0 78.75 1024 1040 1136 1312 768 769 772 800 +hsync +vsync (60.0 kHz zd)
Problem solved