On Mon, 2015-07-06 at 23:26 +0200, Daniel Vetter wrote:
On Mon, Jul 06, 2015 at 09:06:28PM +0100, Steven Newbury wrote:
On Mon, 2015-07-06 at 15:42 -0400, Alex Deucher wrote:
On Mon, Jul 6, 2015 at 2:40 PM, Steven Newbury < steve@snewbury.org.uk
wrote: On Mon, 2015-07-06 at 12:25 -0400, Alex Deucher wrote:
On Mon, Jul 6, 2015 at 9:39 AM, Steven Newbury < steve@snewbury.org.uk
wrote: Hi, I've been trying to get DRM/KMS working with the current graphics stack (xf86-video-ati 7.5, xserver-1.17) on a R200 series card. I assumed this should be working since KMS was implemented for it a while back, and it has been working with xf86-video-ati -6.x.
Unfortunately, it doesn't seem to work.
I've narrowed it down to drmSetInterfaceVersion() failing when called from the ATI driver (in radeon_kms.c). This is a bit strange since, /sys/class/drm/version correctly reports 1.1.0 20060810. Presuably it's getting the correct fd for the DRM master otherwise it should bail earlier?
Googling confirms others have had the same issue, and generally the resolution has been to stick with the old driver.
Should this be working? Is it known to be broken?
It should be working. Make sure the kernel driver has kms enabled, firmware available, and that the kernel driver is loaded before starting X. If the kernel driver is not loaded before X starts you can get a version mis-match error.
Yes, using Gentoos 4.1.1 kernel, driver is definitely loaded, with modeset=1, which is working, all sysfs entries are there. gdm manages to fall back to starting up an X session without using DRM swrast -only, not something you want to experience on such a weak CPU!
If the kernel driver loads properly and you get a kms console you should be good to go.
Manually starting X fails with the "[drm] failed to set drm interface version." error.
Maybe the ddx with that old system was build without KMS support?
Everything is freshly compiled. The error itself is coming from radeon_kms.c:651 in the ddx.
Do you have latest libdrm? We might have accidentally broken this for very old versions of libdrm (although surprising this would compile with everything else). -Daniel
It's the latest in portage:
x11-libs/libdrm-2.4.62::gentoo USE="libkms -static-libs -valgrind"VIDEO_CARDS="radeon (-exynos) (-freedreno) -intel -nouveau (-omap) (-tegra) -vmware"
I'll know tomorrow whether downgrading works, if not, I'm suspecting it's a compiler bug. I have wondered though how much testing R200 could be getting with the latest stack.
If it is a mis-compile, I guess it must be either in libdrm or the ddx - hopefully, at least that shouldn't mean too much compiling!
Slightly off topic, I'm curious whether R200 could be used with Wayland. How difficult/possible would it be to get R200 working with gles1? Obviously, gles2 would be a non-starter given it's OpenGL1.3 hardware. Would gles1 be sufficient to run a Wayland compositor, I'm guessing probably not..?