Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 15 Apr 2009 13:54:30 -0500
From:      Robert Noland <rnoland@FreeBSD.org>
To:        John Nielsen <lists@jnielsen.net>
Cc:        freebsd-x11@freebsd.org
Subject:   Re: r128 dual-head error
Message-ID:  <1239821670.2194.10.camel@balrog.2hip.net>
In-Reply-To: <200904142212.07237.lists@jnielsen.net>
References:  <200904131902.22584.lists@jnielsen.net> <alpine.BSF.2.00.0904132127360.14259@wonkity.com> <200904142212.07237.lists@jnielsen.net>

next in thread | previous in thread | raw e-mail | index | archive | help

--=-bi9Skw377Z9L6VoBuB2c
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

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 CR=
T.
> >
> > Multiple screens aren't done with Xinerama any more.  xrandr is the new
> > way.
>=20
> I don't think r128 is that modern..
>=20
> > > 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.
>=20
> I did but without much luck.
>=20
> > Section "Monitor"
> <snip>
> >  	Option       "PreferredMode" "1920x1200"
> >  	Option       "Position" "1024 0"
>=20
> These options parsed fine but generated warnings about the fact that they=
=20
> were ignored.
>=20
> Running with a single active "Screen" section works fine, but xrandr give=
s=20
> no indication that it's aware of more than one head/display.
>=20
> Looking through the r128_driver.c code it looks like the IsPrimary and=20
> IsSecondary booleans only get set to true if there is more than one scree=
n=20
> defined by the configuration.
>=20
> I did some poor man's debugging of the original issue (by adding some log=
=20
> print statements to the code). The function which is throwing the "invali=
d=20
> argument" error is pci_device_map_range, called from R128MapMMIO. With my=
=20

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.

robert.

> dual-screen xinerama config, R128MapMMIO is called once for each screen=20
> during pre-init. This succeeds for both screens (and is followed by=20
> corresponding UnMap calls). It is called again in ScreenInit. The call fo=
r=20
> the primary screen succeeds, but the call for the secondary screen fails.=
=20
> The arguments from the secondary screen's ScreenInit call are _exactly_ t=
he=20
> same as they are in the pre-init call so it's either a really weird bug o=
r=20
> something is happening to pScrn structure in the interim to make it=20
> "invalid."=20
>=20
> I didn't follow the chain of events any farther than that. Is there a goo=
d=20
> forum on e.g. freedesktop to get some help with this if it's not FreeBSD-
> specific?
>=20
> Thanks,
>=20
> JN
>=20
> _______________________________________________
> 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"
--=20
Robert Noland <rnoland@FreeBSD.org>
FreeBSD

--=-bi9Skw377Z9L6VoBuB2c
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: This is a digitally signed message part

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.11 (FreeBSD)

iEYEABECAAYFAknmLWYACgkQM4TrQ4qfROOsQACdGJ5ZRE10O5+KKjLstkbkl/NF
a/4AnRMBme12cNskAHsqqu6jqXnnQ+Xe
=Tt5R
-----END PGP SIGNATURE-----

--=-bi9Skw377Z9L6VoBuB2c--




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1239821670.2194.10.camel>