Setting up Ubuntu-Server with intel GPU for custom resolution
Short Version:
How can I disable the DisplayPort and display-cloning completely and only use VGA with a custom resolution of 1920x240 (15KHz) on a CRT. Might involve the creation of a custom xorg.conf
Long Version:
I'm struggeling with a RetroPie installation in Ubuntu Server that I'd like to use on a SONY PVM 15KHz CRT monitor.
As soon as RetroArch kicks in everything is fine, games are displayed via CRTswitchRes-function and look awesome on the screen - just the linux environment gives me a hard time.
I chose to use so called "Super Resolutions" which are super-wide (e.g. 1920x240) and look correct when fed to the CRT. In order to be able to navigate the frontend, the console has to be set to something similar and there are some pitfalls which I'd like to work out.
First things first, this is the hardware I'm using:
HP Compaq Elite 8000 Ultra Small Desktop
E8600@3.3GHz, 8GB DDR3, intel GMA 4500
DisplayPort (to Samsung Monitor), VGA (to CRT with custom cable)
The main problem seems to be, that Xorg cannot do anything, because the CRT doesn't give any infos via EDID. Also I've read that with intel you must not use display-cloning, otherwise the system always uses resolutions that both monitors are capable of.
In short: xrandr output is always:
Can't open display
The Version of Ubuntu doesn't really matter, I tried 14, 16 and 18 LTS with the same results: RetroArch works, console doesn't. I don't want to switch to Ubuntu-Desktop because I'd like this to be as slick as possible.
Right now I'm trying to work with 18.10 LTS.
So, regardless of RetroPie, I tried my best to get the desired resolution:
- created an EDID binary and referenced it in /etc/default/grub
- tried many different parameters in grub file
- patched the kernel with this: https://github.com/TiBeN/15khz-arcade-pkg/blob/master/doc/15khz-package-documentation.md
- installed intel drivers xf86-video-intel and xserver-xorg-video-intel but both gave me performance issues in RetroPie.
- Since auto-creation of a xorg.conf fails I tried to make my own, but the frontend won't even boot because I just don't know what to put in there.
Some system information that I collected:
hwinfo --gfxcard
07: PCI 02.0: 0300 VGA compatible controller (VGA)
[Created at pci.366]
Unique ID: _Znp.QUyWiVSQCGD
SysFS ID: /devices/pci0000:00/0000:00:02.0
SysFS BusID: 0000:00:02.0
Hardware Class: graphics card
Model: "Intel 4 Series Chipset Integrated Graphics Controller"
Vendor: pci 0x8086 "Intel Corporation"
Device: pci 0x2e12 "4 Series Chipset Integrated Graphics Controller"
SubVendor: pci 0x103c "Hewlett-Packard Company"
SubDevice: pci 0x3648
Revision: 0x03
Driver: "i915"
Driver Modules: "drm"
Memory Range: 0xf0000000-0xf03fffff (rw,non-prefetchable)
Memory Range: 0xe0000000-0xefffffff (ro,non-prefetchable)
I/O Ports: 0x1230-0x1237 (rw)
IRQ: 31 (33735 events)
I/O Ports: 0x3c0-0x3df (rw)
Module Alias: "pci:v00008086d00002E12sv0000103Csd00003648bc03sc00i00"
Driver Info #0:
Driver Status: i915 is active
Driver Activation Cmd: "modprobe i915"
Config Status: cfg=new, avail=yes, need=no, active=unknown
08: PCI 02.1: 0380 Display controller
[Created at pci.366]
Unique ID: ruGf.xwJ9cLl4Ut2
SysFS ID: /devices/pci0000:00/0000:00:02.1
SysFS BusID: 0000:00:02.1
Hardware Class: graphics card
Model: "Intel 4 Series Chipset Integrated Graphics Controller"
Vendor: pci 0x8086 "Intel Corporation"
Device: pci 0x2e13 "4 Series Chipset Integrated Graphics Controller"
SubVendor: pci 0x103c "Hewlett-Packard Company"
SubDevice: pci 0x3648
Revision: 0x03
Memory Range: 0xf0400000-0xf04fffff (rw,non-prefetchable,disabled)
Module Alias: "pci:v00008086d00002E13sv0000103Csd00003648bc03sc80i00"
Config Status: cfg=new, avail=yes, need=no, active=unknown
Primary display adapter: #7
++++++++++++++++++++++++++++++++++++++++++++++++++++++
hwinfo --monitor
20: None 00.0: 10002 LCD Monitor
[Created at monitor.125]
Unique ID: rdCR.k6CV94ujG82
Parent ID: _Znp.QUyWiVSQCGD
Hardware Class: monitor
Model: "SAMSUNG SyncMaster"
Vendor: SAM "SAMSUNG"
Device: eisa 0x01ae "SyncMaster"
Serial ID: "HS3P601288"
Resolution: 720x400@70Hz
Resolution: 640x480@60Hz
Resolution: 640x480@67Hz
Resolution: 640x480@72Hz
Resolution: 640x480@75Hz
Resolution: 800x600@56Hz
Resolution: 800x600@60Hz
Resolution: 800x600@72Hz
Resolution: 800x600@75Hz
Resolution: 832x624@75Hz
Resolution: 1024x768@60Hz
Resolution: 1024x768@70Hz
Resolution: 1024x768@75Hz
Resolution: 1280x1024@75Hz
Resolution: 1600x1200@60Hz
Resolution: 1280x1024@60Hz
Resolution: 1280x960@60Hz
Resolution: 1152x864@75Hz
Size: 408x306 mm
Year of Manufacture: 2007
Week of Manufacture: 24
Detailed Timings #0:
Resolution: 1600x1200
Horizontal: 1600 1664 1856 2160 (+64 +256 +560) +hsync
Vertical: 1200 1201 1204 1250 (+1 +4 +50) +vsync
Frequencies: 162.00 MHz, 75.00 kHz, 60.00 Hz
Driver Info #0:
Max. Resolution: 1600x1200
Vert. Sync Range: 56-75 Hz
Hor. Sync Range: 30-81 kHz
Bandwidth: 162 MHz
Config Status: cfg=new, avail=yes, need=no, active=unknown
Attached to: #2 (VGA compatible controller)
++++++++++++++++++++++++++++++++++++++++++++++++++++++
lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation 4 Series Chipset Integrated Graphics Controller (rev 03)
++++++++++++++++++++++++++++++++++++++++++++++++++++++
glxgears -info
Error: couldn't open display (null)
++++++++++++++++++++++++++++++++++++++++++++++++++++++
xrandr
Can't open display
++++++++++++++++++++++++++++++++++++++++++++++++++++++
ls /sys/class/drm/
card0 card0-DP-1 card0-HDMI-A-1 card0-VGA-1 controlD64 renderD128 version
++++++++++++++++++++++++++++++++++++++++++++++++++++++
/etc/default/grub
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true
#GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
#GRUB_CMDLINE_LINUX_DEFAULT="gfxpayload=640x480x16,640x480 video=card0-VGA-1:640x480@60ec"
GRUB_CMDLINE_LINUX_DEFAULT="video=card0-VGA-1:640x240ec drm_kms_helper.edid_firmware=card0-VGA-1:/lib/f$
GRUB_CMDLINE_LINUX="quiet splash consoleblank=0 video=card0-VGA-1:640x240ec drm_kms_helper.edid_firmwar$
# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
GRUB_GFXMODE="640x240x32 ; 640x240x24 ; 640x240x16"
GRUB_GFXPAYLOAD="640x240x32 ; 640x240x24 ; 640x240x16"
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true
# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"
# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"
++++++++++++++++++++++++++++++++++++++++++++++++++++++
Picture of the set
Everything works as soon as RetroArch kicks in
1920x240 looks perfect on the CRT
resolution intel-graphics ubuntu-server xorg.conf crt
add a comment |
Short Version:
How can I disable the DisplayPort and display-cloning completely and only use VGA with a custom resolution of 1920x240 (15KHz) on a CRT. Might involve the creation of a custom xorg.conf
Long Version:
I'm struggeling with a RetroPie installation in Ubuntu Server that I'd like to use on a SONY PVM 15KHz CRT monitor.
As soon as RetroArch kicks in everything is fine, games are displayed via CRTswitchRes-function and look awesome on the screen - just the linux environment gives me a hard time.
I chose to use so called "Super Resolutions" which are super-wide (e.g. 1920x240) and look correct when fed to the CRT. In order to be able to navigate the frontend, the console has to be set to something similar and there are some pitfalls which I'd like to work out.
First things first, this is the hardware I'm using:
HP Compaq Elite 8000 Ultra Small Desktop
E8600@3.3GHz, 8GB DDR3, intel GMA 4500
DisplayPort (to Samsung Monitor), VGA (to CRT with custom cable)
The main problem seems to be, that Xorg cannot do anything, because the CRT doesn't give any infos via EDID. Also I've read that with intel you must not use display-cloning, otherwise the system always uses resolutions that both monitors are capable of.
In short: xrandr output is always:
Can't open display
The Version of Ubuntu doesn't really matter, I tried 14, 16 and 18 LTS with the same results: RetroArch works, console doesn't. I don't want to switch to Ubuntu-Desktop because I'd like this to be as slick as possible.
Right now I'm trying to work with 18.10 LTS.
So, regardless of RetroPie, I tried my best to get the desired resolution:
- created an EDID binary and referenced it in /etc/default/grub
- tried many different parameters in grub file
- patched the kernel with this: https://github.com/TiBeN/15khz-arcade-pkg/blob/master/doc/15khz-package-documentation.md
- installed intel drivers xf86-video-intel and xserver-xorg-video-intel but both gave me performance issues in RetroPie.
- Since auto-creation of a xorg.conf fails I tried to make my own, but the frontend won't even boot because I just don't know what to put in there.
Some system information that I collected:
hwinfo --gfxcard
07: PCI 02.0: 0300 VGA compatible controller (VGA)
[Created at pci.366]
Unique ID: _Znp.QUyWiVSQCGD
SysFS ID: /devices/pci0000:00/0000:00:02.0
SysFS BusID: 0000:00:02.0
Hardware Class: graphics card
Model: "Intel 4 Series Chipset Integrated Graphics Controller"
Vendor: pci 0x8086 "Intel Corporation"
Device: pci 0x2e12 "4 Series Chipset Integrated Graphics Controller"
SubVendor: pci 0x103c "Hewlett-Packard Company"
SubDevice: pci 0x3648
Revision: 0x03
Driver: "i915"
Driver Modules: "drm"
Memory Range: 0xf0000000-0xf03fffff (rw,non-prefetchable)
Memory Range: 0xe0000000-0xefffffff (ro,non-prefetchable)
I/O Ports: 0x1230-0x1237 (rw)
IRQ: 31 (33735 events)
I/O Ports: 0x3c0-0x3df (rw)
Module Alias: "pci:v00008086d00002E12sv0000103Csd00003648bc03sc00i00"
Driver Info #0:
Driver Status: i915 is active
Driver Activation Cmd: "modprobe i915"
Config Status: cfg=new, avail=yes, need=no, active=unknown
08: PCI 02.1: 0380 Display controller
[Created at pci.366]
Unique ID: ruGf.xwJ9cLl4Ut2
SysFS ID: /devices/pci0000:00/0000:00:02.1
SysFS BusID: 0000:00:02.1
Hardware Class: graphics card
Model: "Intel 4 Series Chipset Integrated Graphics Controller"
Vendor: pci 0x8086 "Intel Corporation"
Device: pci 0x2e13 "4 Series Chipset Integrated Graphics Controller"
SubVendor: pci 0x103c "Hewlett-Packard Company"
SubDevice: pci 0x3648
Revision: 0x03
Memory Range: 0xf0400000-0xf04fffff (rw,non-prefetchable,disabled)
Module Alias: "pci:v00008086d00002E13sv0000103Csd00003648bc03sc80i00"
Config Status: cfg=new, avail=yes, need=no, active=unknown
Primary display adapter: #7
++++++++++++++++++++++++++++++++++++++++++++++++++++++
hwinfo --monitor
20: None 00.0: 10002 LCD Monitor
[Created at monitor.125]
Unique ID: rdCR.k6CV94ujG82
Parent ID: _Znp.QUyWiVSQCGD
Hardware Class: monitor
Model: "SAMSUNG SyncMaster"
Vendor: SAM "SAMSUNG"
Device: eisa 0x01ae "SyncMaster"
Serial ID: "HS3P601288"
Resolution: 720x400@70Hz
Resolution: 640x480@60Hz
Resolution: 640x480@67Hz
Resolution: 640x480@72Hz
Resolution: 640x480@75Hz
Resolution: 800x600@56Hz
Resolution: 800x600@60Hz
Resolution: 800x600@72Hz
Resolution: 800x600@75Hz
Resolution: 832x624@75Hz
Resolution: 1024x768@60Hz
Resolution: 1024x768@70Hz
Resolution: 1024x768@75Hz
Resolution: 1280x1024@75Hz
Resolution: 1600x1200@60Hz
Resolution: 1280x1024@60Hz
Resolution: 1280x960@60Hz
Resolution: 1152x864@75Hz
Size: 408x306 mm
Year of Manufacture: 2007
Week of Manufacture: 24
Detailed Timings #0:
Resolution: 1600x1200
Horizontal: 1600 1664 1856 2160 (+64 +256 +560) +hsync
Vertical: 1200 1201 1204 1250 (+1 +4 +50) +vsync
Frequencies: 162.00 MHz, 75.00 kHz, 60.00 Hz
Driver Info #0:
Max. Resolution: 1600x1200
Vert. Sync Range: 56-75 Hz
Hor. Sync Range: 30-81 kHz
Bandwidth: 162 MHz
Config Status: cfg=new, avail=yes, need=no, active=unknown
Attached to: #2 (VGA compatible controller)
++++++++++++++++++++++++++++++++++++++++++++++++++++++
lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation 4 Series Chipset Integrated Graphics Controller (rev 03)
++++++++++++++++++++++++++++++++++++++++++++++++++++++
glxgears -info
Error: couldn't open display (null)
++++++++++++++++++++++++++++++++++++++++++++++++++++++
xrandr
Can't open display
++++++++++++++++++++++++++++++++++++++++++++++++++++++
ls /sys/class/drm/
card0 card0-DP-1 card0-HDMI-A-1 card0-VGA-1 controlD64 renderD128 version
++++++++++++++++++++++++++++++++++++++++++++++++++++++
/etc/default/grub
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true
#GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
#GRUB_CMDLINE_LINUX_DEFAULT="gfxpayload=640x480x16,640x480 video=card0-VGA-1:640x480@60ec"
GRUB_CMDLINE_LINUX_DEFAULT="video=card0-VGA-1:640x240ec drm_kms_helper.edid_firmware=card0-VGA-1:/lib/f$
GRUB_CMDLINE_LINUX="quiet splash consoleblank=0 video=card0-VGA-1:640x240ec drm_kms_helper.edid_firmwar$
# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
GRUB_GFXMODE="640x240x32 ; 640x240x24 ; 640x240x16"
GRUB_GFXPAYLOAD="640x240x32 ; 640x240x24 ; 640x240x16"
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true
# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"
# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"
++++++++++++++++++++++++++++++++++++++++++++++++++++++
Picture of the set
Everything works as soon as RetroArch kicks in
1920x240 looks perfect on the CRT
resolution intel-graphics ubuntu-server xorg.conf crt
add a comment |
Short Version:
How can I disable the DisplayPort and display-cloning completely and only use VGA with a custom resolution of 1920x240 (15KHz) on a CRT. Might involve the creation of a custom xorg.conf
Long Version:
I'm struggeling with a RetroPie installation in Ubuntu Server that I'd like to use on a SONY PVM 15KHz CRT monitor.
As soon as RetroArch kicks in everything is fine, games are displayed via CRTswitchRes-function and look awesome on the screen - just the linux environment gives me a hard time.
I chose to use so called "Super Resolutions" which are super-wide (e.g. 1920x240) and look correct when fed to the CRT. In order to be able to navigate the frontend, the console has to be set to something similar and there are some pitfalls which I'd like to work out.
First things first, this is the hardware I'm using:
HP Compaq Elite 8000 Ultra Small Desktop
E8600@3.3GHz, 8GB DDR3, intel GMA 4500
DisplayPort (to Samsung Monitor), VGA (to CRT with custom cable)
The main problem seems to be, that Xorg cannot do anything, because the CRT doesn't give any infos via EDID. Also I've read that with intel you must not use display-cloning, otherwise the system always uses resolutions that both monitors are capable of.
In short: xrandr output is always:
Can't open display
The Version of Ubuntu doesn't really matter, I tried 14, 16 and 18 LTS with the same results: RetroArch works, console doesn't. I don't want to switch to Ubuntu-Desktop because I'd like this to be as slick as possible.
Right now I'm trying to work with 18.10 LTS.
So, regardless of RetroPie, I tried my best to get the desired resolution:
- created an EDID binary and referenced it in /etc/default/grub
- tried many different parameters in grub file
- patched the kernel with this: https://github.com/TiBeN/15khz-arcade-pkg/blob/master/doc/15khz-package-documentation.md
- installed intel drivers xf86-video-intel and xserver-xorg-video-intel but both gave me performance issues in RetroPie.
- Since auto-creation of a xorg.conf fails I tried to make my own, but the frontend won't even boot because I just don't know what to put in there.
Some system information that I collected:
hwinfo --gfxcard
07: PCI 02.0: 0300 VGA compatible controller (VGA)
[Created at pci.366]
Unique ID: _Znp.QUyWiVSQCGD
SysFS ID: /devices/pci0000:00/0000:00:02.0
SysFS BusID: 0000:00:02.0
Hardware Class: graphics card
Model: "Intel 4 Series Chipset Integrated Graphics Controller"
Vendor: pci 0x8086 "Intel Corporation"
Device: pci 0x2e12 "4 Series Chipset Integrated Graphics Controller"
SubVendor: pci 0x103c "Hewlett-Packard Company"
SubDevice: pci 0x3648
Revision: 0x03
Driver: "i915"
Driver Modules: "drm"
Memory Range: 0xf0000000-0xf03fffff (rw,non-prefetchable)
Memory Range: 0xe0000000-0xefffffff (ro,non-prefetchable)
I/O Ports: 0x1230-0x1237 (rw)
IRQ: 31 (33735 events)
I/O Ports: 0x3c0-0x3df (rw)
Module Alias: "pci:v00008086d00002E12sv0000103Csd00003648bc03sc00i00"
Driver Info #0:
Driver Status: i915 is active
Driver Activation Cmd: "modprobe i915"
Config Status: cfg=new, avail=yes, need=no, active=unknown
08: PCI 02.1: 0380 Display controller
[Created at pci.366]
Unique ID: ruGf.xwJ9cLl4Ut2
SysFS ID: /devices/pci0000:00/0000:00:02.1
SysFS BusID: 0000:00:02.1
Hardware Class: graphics card
Model: "Intel 4 Series Chipset Integrated Graphics Controller"
Vendor: pci 0x8086 "Intel Corporation"
Device: pci 0x2e13 "4 Series Chipset Integrated Graphics Controller"
SubVendor: pci 0x103c "Hewlett-Packard Company"
SubDevice: pci 0x3648
Revision: 0x03
Memory Range: 0xf0400000-0xf04fffff (rw,non-prefetchable,disabled)
Module Alias: "pci:v00008086d00002E13sv0000103Csd00003648bc03sc80i00"
Config Status: cfg=new, avail=yes, need=no, active=unknown
Primary display adapter: #7
++++++++++++++++++++++++++++++++++++++++++++++++++++++
hwinfo --monitor
20: None 00.0: 10002 LCD Monitor
[Created at monitor.125]
Unique ID: rdCR.k6CV94ujG82
Parent ID: _Znp.QUyWiVSQCGD
Hardware Class: monitor
Model: "SAMSUNG SyncMaster"
Vendor: SAM "SAMSUNG"
Device: eisa 0x01ae "SyncMaster"
Serial ID: "HS3P601288"
Resolution: 720x400@70Hz
Resolution: 640x480@60Hz
Resolution: 640x480@67Hz
Resolution: 640x480@72Hz
Resolution: 640x480@75Hz
Resolution: 800x600@56Hz
Resolution: 800x600@60Hz
Resolution: 800x600@72Hz
Resolution: 800x600@75Hz
Resolution: 832x624@75Hz
Resolution: 1024x768@60Hz
Resolution: 1024x768@70Hz
Resolution: 1024x768@75Hz
Resolution: 1280x1024@75Hz
Resolution: 1600x1200@60Hz
Resolution: 1280x1024@60Hz
Resolution: 1280x960@60Hz
Resolution: 1152x864@75Hz
Size: 408x306 mm
Year of Manufacture: 2007
Week of Manufacture: 24
Detailed Timings #0:
Resolution: 1600x1200
Horizontal: 1600 1664 1856 2160 (+64 +256 +560) +hsync
Vertical: 1200 1201 1204 1250 (+1 +4 +50) +vsync
Frequencies: 162.00 MHz, 75.00 kHz, 60.00 Hz
Driver Info #0:
Max. Resolution: 1600x1200
Vert. Sync Range: 56-75 Hz
Hor. Sync Range: 30-81 kHz
Bandwidth: 162 MHz
Config Status: cfg=new, avail=yes, need=no, active=unknown
Attached to: #2 (VGA compatible controller)
++++++++++++++++++++++++++++++++++++++++++++++++++++++
lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation 4 Series Chipset Integrated Graphics Controller (rev 03)
++++++++++++++++++++++++++++++++++++++++++++++++++++++
glxgears -info
Error: couldn't open display (null)
++++++++++++++++++++++++++++++++++++++++++++++++++++++
xrandr
Can't open display
++++++++++++++++++++++++++++++++++++++++++++++++++++++
ls /sys/class/drm/
card0 card0-DP-1 card0-HDMI-A-1 card0-VGA-1 controlD64 renderD128 version
++++++++++++++++++++++++++++++++++++++++++++++++++++++
/etc/default/grub
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true
#GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
#GRUB_CMDLINE_LINUX_DEFAULT="gfxpayload=640x480x16,640x480 video=card0-VGA-1:640x480@60ec"
GRUB_CMDLINE_LINUX_DEFAULT="video=card0-VGA-1:640x240ec drm_kms_helper.edid_firmware=card0-VGA-1:/lib/f$
GRUB_CMDLINE_LINUX="quiet splash consoleblank=0 video=card0-VGA-1:640x240ec drm_kms_helper.edid_firmwar$
# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
GRUB_GFXMODE="640x240x32 ; 640x240x24 ; 640x240x16"
GRUB_GFXPAYLOAD="640x240x32 ; 640x240x24 ; 640x240x16"
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true
# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"
# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"
++++++++++++++++++++++++++++++++++++++++++++++++++++++
Picture of the set
Everything works as soon as RetroArch kicks in
1920x240 looks perfect on the CRT
resolution intel-graphics ubuntu-server xorg.conf crt
Short Version:
How can I disable the DisplayPort and display-cloning completely and only use VGA with a custom resolution of 1920x240 (15KHz) on a CRT. Might involve the creation of a custom xorg.conf
Long Version:
I'm struggeling with a RetroPie installation in Ubuntu Server that I'd like to use on a SONY PVM 15KHz CRT monitor.
As soon as RetroArch kicks in everything is fine, games are displayed via CRTswitchRes-function and look awesome on the screen - just the linux environment gives me a hard time.
I chose to use so called "Super Resolutions" which are super-wide (e.g. 1920x240) and look correct when fed to the CRT. In order to be able to navigate the frontend, the console has to be set to something similar and there are some pitfalls which I'd like to work out.
First things first, this is the hardware I'm using:
HP Compaq Elite 8000 Ultra Small Desktop
E8600@3.3GHz, 8GB DDR3, intel GMA 4500
DisplayPort (to Samsung Monitor), VGA (to CRT with custom cable)
The main problem seems to be, that Xorg cannot do anything, because the CRT doesn't give any infos via EDID. Also I've read that with intel you must not use display-cloning, otherwise the system always uses resolutions that both monitors are capable of.
In short: xrandr output is always:
Can't open display
The Version of Ubuntu doesn't really matter, I tried 14, 16 and 18 LTS with the same results: RetroArch works, console doesn't. I don't want to switch to Ubuntu-Desktop because I'd like this to be as slick as possible.
Right now I'm trying to work with 18.10 LTS.
So, regardless of RetroPie, I tried my best to get the desired resolution:
- created an EDID binary and referenced it in /etc/default/grub
- tried many different parameters in grub file
- patched the kernel with this: https://github.com/TiBeN/15khz-arcade-pkg/blob/master/doc/15khz-package-documentation.md
- installed intel drivers xf86-video-intel and xserver-xorg-video-intel but both gave me performance issues in RetroPie.
- Since auto-creation of a xorg.conf fails I tried to make my own, but the frontend won't even boot because I just don't know what to put in there.
Some system information that I collected:
hwinfo --gfxcard
07: PCI 02.0: 0300 VGA compatible controller (VGA)
[Created at pci.366]
Unique ID: _Znp.QUyWiVSQCGD
SysFS ID: /devices/pci0000:00/0000:00:02.0
SysFS BusID: 0000:00:02.0
Hardware Class: graphics card
Model: "Intel 4 Series Chipset Integrated Graphics Controller"
Vendor: pci 0x8086 "Intel Corporation"
Device: pci 0x2e12 "4 Series Chipset Integrated Graphics Controller"
SubVendor: pci 0x103c "Hewlett-Packard Company"
SubDevice: pci 0x3648
Revision: 0x03
Driver: "i915"
Driver Modules: "drm"
Memory Range: 0xf0000000-0xf03fffff (rw,non-prefetchable)
Memory Range: 0xe0000000-0xefffffff (ro,non-prefetchable)
I/O Ports: 0x1230-0x1237 (rw)
IRQ: 31 (33735 events)
I/O Ports: 0x3c0-0x3df (rw)
Module Alias: "pci:v00008086d00002E12sv0000103Csd00003648bc03sc00i00"
Driver Info #0:
Driver Status: i915 is active
Driver Activation Cmd: "modprobe i915"
Config Status: cfg=new, avail=yes, need=no, active=unknown
08: PCI 02.1: 0380 Display controller
[Created at pci.366]
Unique ID: ruGf.xwJ9cLl4Ut2
SysFS ID: /devices/pci0000:00/0000:00:02.1
SysFS BusID: 0000:00:02.1
Hardware Class: graphics card
Model: "Intel 4 Series Chipset Integrated Graphics Controller"
Vendor: pci 0x8086 "Intel Corporation"
Device: pci 0x2e13 "4 Series Chipset Integrated Graphics Controller"
SubVendor: pci 0x103c "Hewlett-Packard Company"
SubDevice: pci 0x3648
Revision: 0x03
Memory Range: 0xf0400000-0xf04fffff (rw,non-prefetchable,disabled)
Module Alias: "pci:v00008086d00002E13sv0000103Csd00003648bc03sc80i00"
Config Status: cfg=new, avail=yes, need=no, active=unknown
Primary display adapter: #7
++++++++++++++++++++++++++++++++++++++++++++++++++++++
hwinfo --monitor
20: None 00.0: 10002 LCD Monitor
[Created at monitor.125]
Unique ID: rdCR.k6CV94ujG82
Parent ID: _Znp.QUyWiVSQCGD
Hardware Class: monitor
Model: "SAMSUNG SyncMaster"
Vendor: SAM "SAMSUNG"
Device: eisa 0x01ae "SyncMaster"
Serial ID: "HS3P601288"
Resolution: 720x400@70Hz
Resolution: 640x480@60Hz
Resolution: 640x480@67Hz
Resolution: 640x480@72Hz
Resolution: 640x480@75Hz
Resolution: 800x600@56Hz
Resolution: 800x600@60Hz
Resolution: 800x600@72Hz
Resolution: 800x600@75Hz
Resolution: 832x624@75Hz
Resolution: 1024x768@60Hz
Resolution: 1024x768@70Hz
Resolution: 1024x768@75Hz
Resolution: 1280x1024@75Hz
Resolution: 1600x1200@60Hz
Resolution: 1280x1024@60Hz
Resolution: 1280x960@60Hz
Resolution: 1152x864@75Hz
Size: 408x306 mm
Year of Manufacture: 2007
Week of Manufacture: 24
Detailed Timings #0:
Resolution: 1600x1200
Horizontal: 1600 1664 1856 2160 (+64 +256 +560) +hsync
Vertical: 1200 1201 1204 1250 (+1 +4 +50) +vsync
Frequencies: 162.00 MHz, 75.00 kHz, 60.00 Hz
Driver Info #0:
Max. Resolution: 1600x1200
Vert. Sync Range: 56-75 Hz
Hor. Sync Range: 30-81 kHz
Bandwidth: 162 MHz
Config Status: cfg=new, avail=yes, need=no, active=unknown
Attached to: #2 (VGA compatible controller)
++++++++++++++++++++++++++++++++++++++++++++++++++++++
lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation 4 Series Chipset Integrated Graphics Controller (rev 03)
++++++++++++++++++++++++++++++++++++++++++++++++++++++
glxgears -info
Error: couldn't open display (null)
++++++++++++++++++++++++++++++++++++++++++++++++++++++
xrandr
Can't open display
++++++++++++++++++++++++++++++++++++++++++++++++++++++
ls /sys/class/drm/
card0 card0-DP-1 card0-HDMI-A-1 card0-VGA-1 controlD64 renderD128 version
++++++++++++++++++++++++++++++++++++++++++++++++++++++
/etc/default/grub
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true
#GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
#GRUB_CMDLINE_LINUX_DEFAULT="gfxpayload=640x480x16,640x480 video=card0-VGA-1:640x480@60ec"
GRUB_CMDLINE_LINUX_DEFAULT="video=card0-VGA-1:640x240ec drm_kms_helper.edid_firmware=card0-VGA-1:/lib/f$
GRUB_CMDLINE_LINUX="quiet splash consoleblank=0 video=card0-VGA-1:640x240ec drm_kms_helper.edid_firmwar$
# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
GRUB_GFXMODE="640x240x32 ; 640x240x24 ; 640x240x16"
GRUB_GFXPAYLOAD="640x240x32 ; 640x240x24 ; 640x240x16"
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true
# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"
# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"
++++++++++++++++++++++++++++++++++++++++++++++++++++++
Picture of the set
Everything works as soon as RetroArch kicks in
1920x240 looks perfect on the CRT
resolution intel-graphics ubuntu-server xorg.conf crt
resolution intel-graphics ubuntu-server xorg.conf crt
asked Jan 21 at 16:09
AlexAlex
61
61
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
I wasn't aware that if I trigger xrandr over SSH the "Can't open display" message was the expected output. I got it sorted out and was able to create a modeline that works for my needs.
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "3"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1396675%2fsetting-up-ubuntu-server-with-intel-gpu-for-custom-resolution%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
I wasn't aware that if I trigger xrandr over SSH the "Can't open display" message was the expected output. I got it sorted out and was able to create a modeline that works for my needs.
add a comment |
I wasn't aware that if I trigger xrandr over SSH the "Can't open display" message was the expected output. I got it sorted out and was able to create a modeline that works for my needs.
add a comment |
I wasn't aware that if I trigger xrandr over SSH the "Can't open display" message was the expected output. I got it sorted out and was able to create a modeline that works for my needs.
I wasn't aware that if I trigger xrandr over SSH the "Can't open display" message was the expected output. I got it sorted out and was able to create a modeline that works for my needs.
answered Jan 22 at 8:50
AlexAlex
61
61
add a comment |
add a comment |
Thanks for contributing an answer to Super User!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1396675%2fsetting-up-ubuntu-server-with-intel-gpu-for-custom-resolution%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown