I'm installing Arch on an old machine with a VIA K8M800 chipset, it has integrated S3 Unichrome graphics.
Installation went fine, but i can't get the openchrome driver to work, checked the troubleshooting section in the Wiki but sadly no luck.
Running the LTS kernel (4.14.69-1-lts)
I used this system before with the openchrome driver and didn't have problems then.
When i checked my Xorg log i see that the DRM module is not found?
[ 365.005] (II) CHROME(0): VIAGetRec [ 365.005] (--) CHROME(0): Chipset: K8M800 / K8N800 [ 365.005] (--) CHROME(0): Chipset revision: 0 [ 365.248] (EE) CHROME(0): [drm] Failed to open DRM device for pci:0000:01:00$
Checking the available modules in /lib64/modules/4.14.69-1-lts/kernel/drivers/gpu/drm/ indeed reveals there is no drm module available:
amd/ hisilicon/ ttm/ ast/ i2c/ udl/ bochs/ i915/ vgem/ cirrus/ mgag200/ virtio/ drm_kms_helper.ko.xz nouveau/ vmwgfx/ drm.ko.xz qxl/ gma500/ radeon/
There should be an openchrome module there if i'm not mistaken.
Was the LTS kernel compiled without the openchrome module?
Last edited by jooch (2018-09-13 17:33:24)
Offline
What openchrome driver did you use in the past? You have linked to a full kernel.
Offline
Too long ago to remember, perhaps 2 years? It was definitely running kernel version 4 and the drm module was still named as via.
You have linked to a full kernel.
What exactly do you mean by this?
Offline
The git you linked to contains all the sources to build linux not just a drm module, the tree at inspection is forked from drm-next which is the drm developement tree for linux.
Offline
Ah i see now, i was just trying to figure out where the via drm went and found that page which mentioned the renaming of the drm. I assumed this was a Linux wide change.
In any case how do i get the drm module for the openchrome driver?
Offline
What is the full Xorg.log?
Offline
From the last boot:
[ 16.620] X.Org X Server 1.20.1 X Protocol Version 11, Revision 0 [ 16.620] Build Operating System: Linux Arch Linux [ 16.620] Current Operating System: Linux beethoven 4.14.69-1-lts #1 SMP Mon Sep 10 16:59:09 CEST 2018 x86_64 [ 16.620] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-linux-lts root=UUID=6dfed36f-c6d0-4b1d-80a1-ee88791c1dc4 rw [ 16.620] Build Date: 09 August 2018 06:37:34PM [ 16.620] [ 16.620] Current version of pixman: 0.34.0 [ 16.620] Before reporting problems, check to make sure that you have the latest version. [ 16.620] Markers: (--) probed, (**) from config file, (==) default setting, (++) from command line, (!!) notice, (II) informational, (WW) warning, (EE) error, (NI) not implemented, (??) unknown. [ 16.621] (==) Log file: "/var/log/Xorg.0.log", Time: Thu Sep 13 00:52:30 2018 [ 16.621] (==) Using config directory: "/etc/X11/xorg.conf.d" [ 16.621] (==) Using system config directory "/usr/share/X11/xorg.conf.d" [ 16.621] (==) No Layout section. Using the first Screen section. [ 16.621] (==) No screen section available. Using defaults. [ 16.621] (**) |-->Screen "Default Screen Section" (0) [ 16.621] (**) | |-->Monitor "<default monitor>" [ 16.622] (==) No monitor specified for screen "Default Screen Section". Using a default monitor configuration. [ 16.622] (==) Automatically adding devices [ 16.622] (==) Automatically enabling devices [ 16.622] (==) Automatically adding GPU devices [ 16.622] (==) Automatically binding GPU devices [ 16.622] (==) Max clients allowed: 256, resource mask: 0x1fffff [ 16.622] (WW) The directory "/usr/share/fonts/misc" does not exist. [ 16.622] Entry deleted from font path. [ 16.622] (WW) The directory "/usr/share/fonts/OTF" does not exist. [ 16.622] Entry deleted from font path. [ 16.622] (WW) The directory "/usr/share/fonts/Type1" does not exist. [ 16.622] Entry deleted from font path. [ 16.622] (WW) The directory "/usr/share/fonts/100dpi" does not exist. [ 16.622] Entry deleted from font path. [ 16.622] (WW) The directory "/usr/share/fonts/75dpi" does not exist. [ 16.622] Entry deleted from font path. [ 16.622] (==) FontPath set to: /usr/share/fonts/TTF [ 16.622] (==) ModulePath set to "/usr/lib/xorg/modules" [ 16.622] (II) The server relies on udev to provide the list of input devices. If no devices become available, reconfigure udev or disable AutoAddDevices. [ 16.622] (II) Module ABI versions: [ 16.622] X.Org ANSI C Emulation: 0.4 [ 16.622] X.Org Video Driver: 24.0 [ 16.622] X.Org XInput driver : 24.1 [ 16.622] X.Org Server Extension : 10.0 [ 16.626] (++) using VT number 7 [ 16.626] (II) systemd-logind: logind integration requires -keeptty and -keeptty was not provided, disabling logind integration [ 16.636] (--) PCI:*(1@0:0:0) 1106:3108:1462:7142 rev 1, Mem @ 0xf4000000/67108864, 0xfa000000/16777216, BIOS @ 0x????????/131072 [ 16.636] (WW) Open ACPI failed (/var/run/acpid.socket) (No such file or directory) [ 16.636] (II) LoadModule: "glx" [ 16.636] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so [ 16.648] (II) Module glx: vendor="X.Org Foundation" [ 16.648] compiled for 1.20.1, module version = 1.0.0 [ 16.648] ABI class: X.Org Server Extension, version 10.0 [ 16.648] (==) Matched openchrome as autoconfigured driver 0 [ 16.648] (==) Matched modesetting as autoconfigured driver 1 [ 16.648] (==) Matched fbdev as autoconfigured driver 2 [ 16.648] (==) Matched vesa as autoconfigured driver 3 [ 16.648] (==) Assigned the driver to the xf86ConfigLayout [ 16.648] (II) LoadModule: "openchrome" [ 16.648] (II) Loading /usr/lib/xorg/modules/drivers/openchrome_drv.so [ 16.649] (II) Module openchrome: vendor="" [ 16.649] compiled for 1.20.0, module version = 0.6.0 [ 16.649] Module class: X.Org Video Driver [ 16.649] ABI class: X.Org Video Driver, version 24.0 [ 16.649] (II) LoadModule: "modesetting" [ 16.649] (II) Loading /usr/lib/xorg/modules/drivers/modesetting_drv.so [ 16.650] (II) Module modesetting: vendor="X.Org Foundation" [ 16.650] compiled for 1.20.1, module version = 1.20.1 [ 16.650] Module class: X.Org Video Driver [ 16.650] ABI class: X.Org Video Driver, version 24.0 [ 16.650] (II) LoadModule: "fbdev" [ 16.651] (WW) Warning, couldn't open module fbdev [ 16.651] (EE) Failed to load module "fbdev" (module does not exist, 0) [ 16.651] (II) LoadModule: "vesa" [ 16.651] (II) Loading /usr/lib/xorg/modules/drivers/vesa_drv.so [ 16.651] (II) Module vesa: vendor="X.Org Foundation" [ 16.651] compiled for 1.20.0, module version = 2.4.0 [ 16.651] Module class: X.Org Video Driver [ 16.651] ABI class: X.Org Video Driver, version 24.0 [ 16.651] (II) OPENCHROME: Driver for VIA Chrome chipsets: CLE266, KM400 / KM400A / KN400 / P4M800, K8M800 / K8N800, PM800 / PN800 / PM880 / CN333 / CN400, P4M800 Pro / VN800 / CN700, CX700 / VX700, P4M890 / VN890 / CN800, K8M890 / K8N890, P4M900 / VN896 / CN896, VX800 / VX820, VX855 / VX875, VX900 [ 16.651] (II) modesetting: Driver for Modesetting Kernel Drivers: kms [ 16.651] (II) VESA: driver for VESA chipsets: vesa [ 16.651] (!!) VIA Technologies does not support this driver in any way. [ 16.651] (!!) For support, please refer to. [ 16.651] (!!) (openchrome 0.6.0 release) [ 16.651] (WW) Falling back to old probe method for modesetting [ 16.652] (EE) open /dev/dri/card0: No such file or directory [ 16.652] (II) CHROME(0): viaPreInit [ 16.652] (II) CHROME(0): VIAGetRec [ 16.652] (--) CHROME(0): Chipset: K8M800 / K8N800 [ 16.652] (--) CHROME(0): Chipset revision: 0 [ 17.343] (EE) CHROME(0): [drm] Failed to open DRM device for pci:0000:01:00.0: No such file or directory [ 17.343] (II) Loading sub module "vgahw" [ 17.343] (II) LoadModule: "vgahw" [ 17.343] (II) Loading /usr/lib/xorg/modules/libvgahw.so [ 17.343] (II) Module vgahw: vendor="X.Org Foundation" [ 17.344] compiled for 1.20.1, module version = 0.1.0 [ 17.344] ABI class: X.Org Video Driver, version 24.0 [ 17.344] (--) CHROME(0): Probed amount of VideoRAM = 32768 kB [ 17.344] (II) CHROME(0): Entered viaMapMMIO. [ 17.344] (--) CHROME(0): Mapping MMIO at address 0xFA000000 with size 52 KB. [ 17.344] (--) CHROME(0): Mapping 2D Host BitBLT space at address 0xFA200000 with size 2048 KB. [ 17.344] (--) CHROME(0): Mapping the frame buffer at address 0xF4000000 with size 32768 KB. [ 17.344] (EE) CHROME(0): Unable to map the frame buffer. Error: Invalid argument (22) [ 17.344] (II) CHROME(0): Exiting viaMapMMIO. [ 17.344] (II) CHROME(0): VIAFreeRec [ 17.344] (II) CHROME(0): VIAFreeScreen [ 17.344] (II) CHROME(0): VIAFreeRec [ 17.344] (II) UnloadModule: "openchrome" [ 17.344] (II) UnloadSubModule: "vgahw" [ 17.344] (II) Unloading vgahw [ 17.344] (EE) Screen(s) found, but none have a usable configuration. [ 17.344] (EE) Fatal server error: [ 17.344] (EE) no screens found(EE) [ 17.344] (EE) Please consult the The X.Org Foundation support at for help. [ 17.344] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information. [ 17.344] (EE) [ 17.386] (EE) Server terminated with error (1). Closing log file.
Offline
This started w/ 4.5, about two years ago.
Offline
I remember having some trouble getting the video drivers to work, but they did work. Must have been earlier release than 4.5 then.
Also found this Ubuntu bug report: … ug/1680276
Could it be that the default kernel option for the drm has been turned off since 4.5?
Offline
"zgrep VIA /proc/config.gz" suggests that there's not even an option anymore? Do you have the old kernel package still around?
Last edited by progandy (2018-09-13 14:56:22)
| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |
Offline
Do you have the old kernel package still around?
Nope, but i noticed the downgrade archive went back as far as kernel version 4.1 … s-headers/
I installed kernel version 4.4.10-1 and voila, all good again (except for the little problem i had back then too
)
zgrep VIA /proc/config.gz now outputs:
CONFIG_VIA_FIR=m CONFIG_SATA_VIA=m CONFIG_PATA_VIA=m CONFIG_NET_VENDOR_VIA=y CONFIG_VIA_RHINE=m # CONFIG_VIA_RHINE_MMIO is not set CONFIG_VIA_VELOCITY=m CONFIG_HW_RANDOM_VIA=m CONFIG_I2C_VIA=m CONFIG_I2C_VIAPRO=m CONFIG_SENSORS_VIA_CPUTEMP=m CONFIG_SENSORS_VIA686A=m CONFIG_VIA_WDT=m CONFIG_AGP_VIA=m CONFIG_DRM_VIA=m CONFIG_FB_VIA=m CONFIG_FB_VIA_DIRECT_PROCFS=y CONFIG_FB_VIA_X_COMPATIBILITY=y CONFIG_SND_VIA82XX=m CONFIG_SND_VIA82XX_MODEM=m CONFIG_SND_HDA_CODEC_VIA=m CONFIG_MMC_VIA_SDMMC=m CONFIG_FMC_TRIVIAL=m
Thanks progandy, that is an excellent sum up. I'll use an old kernel for now and switch to the new kernel when support is back for the openchrome driver.
Offline
Why not build a current kernel with CONFIG_DRM_VIA=m ?
Offline
Why not build a current kernel with CONFIG_DRM_VIA=m ?
I don't think i have system that is capable of compiling a modern kernel, it would definitely need to be compiled on a system other than the one with the unichrome chipset, that system only has 512 megs of RAM
Any advice for a setup? My main system is a Phenom X4 9650 with 6GB of RAM.
Offline
@progandy would the only options that need changing be
CONFIG_DRM_LEGACY=Y CONFIG_DRM_VIA=m
Does this mean the xf86-video-openchrome package can not work with any arch supplied kernel?
Offline
I think these options should be enough. There are good reasons to disable it, though. … rm/Kconfig
menuconfig DRM_LEGACY
bool "Enable legacy drivers (DANGEROUS)"
depends on DRM && MMU
select DRM_VM".
if DRM_LEGACY
...
config DRM_VIA
tristate "Via unichrome video cards"
depends on DRM && PCI
Choose this option if you have a Via unichrome or compatible video
chipset. If M is selected the module will be called via.
...
endif # DRM_LEGACY
I don't know if the xf86 module works with the stock kernel, you'd have to ask the maintainer (Andreas Radke).
Last edited by progandy (2018-09-13 21:08:46)
| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |
Offline
There may be additional problems. If the modules were only removed w/ 4.9 but there was no drm device in the 4.5 kernels, the module might simply not work/crash on later kernels.
@jooch, you could try to install a newer kernel (4.5-4.8), check whether the module is there and whether or not it gets you a drm device (or the same error shows up in the Xorg log)
Offline
@jooch, you could try to install a newer kernel (4.5-4.8), check whether the module is there and whether or not it gets you a drm device (or the same error shows up in the Xorg log)
I think i was lucky with choosing the LTS kernel 4.4.10, any higher version i tried or any from a later date (11-5-2016) seems to be missing the module.
Offline
That's actually good, because if the module was dropped w/ 4.5 rather than (only) 4.9 (and causing the missing drm device), building it on the present kernel has a better chance to "solve" the problem.
Offline