From owner-freebsd-x11@FreeBSD.ORG Wed Apr 15 19:29:09 2009 Return-Path: Delivered-To: freebsd-x11@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C3FFB106564A for ; Wed, 15 Apr 2009 19:29:09 +0000 (UTC) (envelope-from lists@jnielsen.net) Received: from ns1.jnielsen.net (ns1.jnielsen.net [69.55.238.237]) by mx1.freebsd.org (Postfix) with ESMTP id A0E818FC18 for ; Wed, 15 Apr 2009 19:29:09 +0000 (UTC) (envelope-from lists@jnielsen.net) Received: from stilap.local (jn@stealth.jnielsen.net [74.218.226.254]) (authenticated bits=0) by ns1.jnielsen.net (8.12.9p2/8.12.9) with ESMTP id n3FJT8Cx043497 for ; Wed, 15 Apr 2009 15:29:09 -0400 (EDT) (envelope-from lists@jnielsen.net) From: John Nielsen To: freebsd-x11@freebsd.org Date: Wed, 15 Apr 2009 15:29:06 -0400 User-Agent: KMail/1.9.10 References: <200904131902.22584.lists@jnielsen.net> <200904142212.07237.lists@jnielsen.net> <1239821670.2194.10.camel@balrog.2hip.net> In-Reply-To: <1239821670.2194.10.camel@balrog.2hip.net> X-Face: #X5#Y*q>F:]zT!DegL3z5Xo'^MN[$8k\[4^3rN~wm=s=Uw(sW}R?3b^*f1Wu*.<=?utf-8?q?of=5F4NrS=0A=09P*M/9CpxDo!D6?=)IY1w<9B1jB; tBQf[RU-R<,I)e"$q7N7 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200904151529.06871.lists@jnielsen.net> X-Virus-Scanned: ClamAV version 0.88.4, clamav-milter version 0.88.4 on ns1.jnielsen.net X-Virus-Status: Clean Subject: Re: r128 dual-head error X-BeenThere: freebsd-x11@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: X11 on FreeBSD -- maintaining and support List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Apr 2009 19:29:10 -0000 On Wednesday 15 April 2009, Robert Noland wrote: > On Tue, 2009-04-14 at 22:12 -0400, John Nielsen wrote: > > On Monday 13 April 2009, Warren Block wrote: > > > On Mon, 13 Apr 2009, John Nielsen wrote: > > > > I'm trying to get dual-head + Xinerama going on a Dell Inspiron > > > > 4000 laptop so I can use both the integrated flat panel and an > > > > external CRT. > > > > > > Multiple screens aren't done with Xinerama any more. xrandr is the > > > new way. > > > > I don't think r128 is that modern.. > > > > > > From what I can tell I have my xorg.conf configured properly and > > > > it's trying to do the right thing but it's throwing an error when > > > > initializing the secondary screen: > > > > > > > > (EE) R128(1): Unable to map MMIO aperture. Invalid argument (22) > > > > > > Don't know about r128 specifically, but that's an old-style > > > xorg.conf. > > > > > > > How should I go about troubleshooting this? > > > > > > Rework your xorg.conf, example below. > > > > I did but without much luck. > > > > > Section "Monitor" > > > > > > > > > Option "PreferredMode" "1920x1200" > > > Option "Position" "1024 0" > > > > These options parsed fine but generated warnings about the fact that > > they were ignored. > > > > Running with a single active "Screen" section works fine, but xrandr > > gives no indication that it's aware of more than one head/display. > > > > Looking through the r128_driver.c code it looks like the IsPrimary and > > IsSecondary booleans only get set to true if there is more than one > > screen defined by the configuration. > > > > I did some poor man's debugging of the original issue (by adding some > > log print statements to the code). The function which is throwing the > > "invalid argument" error is pci_device_map_range, called from > > R128MapMMIO. With my > > This is in libpciaccess. 22 is EINVAL, the call may be failing on mtrr > or just the attempt to remap the same register space a second time. The > problem is either in libpciaccess or the r128 driver. Thanks. FWIW I did confirm that the space is un-mapped between the two calls. I'll see if I can grok libpciaccess. > > dual-screen xinerama config, R128MapMMIO is called once for each screen > > during pre-init. This succeeds for both screens (and is followed by > > corresponding UnMap calls). It is called again in ScreenInit. The call > > for the primary screen succeeds, but the call for the secondary screen > > fails. The arguments from the secondary screen's ScreenInit call are > > _exactly_ the same as they are in the pre-init call so it's either a > > really weird bug or something is happening to pScrn structure in the > > interim to make it "invalid." > > > > I didn't follow the chain of events any farther than that. Is there a > > good forum on e.g. freedesktop to get some help with this if it's not > > FreeBSD- specific? > > > > Thanks, > > > > JN > > > > _______________________________________________ > > freebsd-x11@freebsd.org mailing list > > http://lists.freebsd.org/mailman/listinfo/freebsd-x11 > > To unsubscribe, send any mail to "freebsd-x11-unsubscribe@freebsd.org"