Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 16 Jan 2008 11:47:11 +1030
From:      "Daniel O'Connor" <doconnor@gsoft.com.au>
To:        eric@anholt.net
Cc:        freebsd-stable@freebsd.org
Subject:   Re: Fwd: FreeBSD 6.3 and Intel G33
Message-ID:  <200801161147.19807.doconnor@gsoft.com.au>
In-Reply-To: <1200426794.2916.17.camel@localhost>
References:  <200801152012.56683.doconnor@gsoft.com.au> <1200426794.2916.17.camel@localhost>

next in thread | previous in thread | raw e-mail | index | archive | help
--nextPart3056167.rykduAYgBz
Content-Type: text/plain;
  charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

On Wed, 16 Jan 2008, Eric Anholt wrote:
> I took a quick review of the docs again and I think it's almost
> complete.  The gtt_size detection is broken, though.  We should have
> gtt_size (the amount of graphics stolen memory used for storing the
> GTT data) equal to zero on this hardware, instead of using the G965
> path. However, this also requires current xf86-video-intel, which
> fixes the mistaken assumption we originally had for xf86-video-intel
> and linux agp that the gtt stolen memory was stolen out of graphics
> stolen memory.

OK.. Not sure what GTT is though :)

> Updating just the AGP driver for fixing the bad stolen memory
> assumption means that the 2d driver tries to bind memory lower than
> the AGP driver will let you, and your server won't start.  The
> "proper" fix would be for us to remember the stolen memory address in
> the GTT and let you bind over them, but restore them on unbind.  Some
> day we would love to release this memory to the general page
> allocator and get rid of this stolen memory disaster.
>
> To test, install xf86-video-intel from ports, uncomment those PCI
> IDs, and start X.  If things are working, then it probably means
> you're good to go and we can enable it by default.  If you're getting
> the "agp0: trying to bind into stolen memory" complaint, you need
> current 2D from
> git://anongit.freedesktop.org/git/xorg/driver/xf86-video-intel and we
> should cherry-pick the relevant patch into our ports.

I've back ported the AGP driver (and vgapci) and I get..
vgapci0: <VGA-compatible display> port 0x1c60-0x1c67 mem 0xd2300000-0xd237f=
fff,0xc0000000-0xcfffffff,0xd2000000-0xd20fffff irq 16 at device 2.0 on pci0
Looking at devid 0x29c28086
Matched Intel G33 SVGA controller
agp_i810_probe called
Looking at devid 0x29c28086
Matched Intel G33 SVGA controller
Looking at devid 0x29c28086
Matched Intel G33 SVGA controller
agp_i810_probe called
Looking at devid 0x29c28086
Matched Intel G33 SVGA controller
Looking at devid 0x29c28086
Matched Intel G33 SVGA controller
agp0: <Intel G33 SVGA controller> on vgapci0
Looking at devid 0x29c28086
Matched Intel G33 SVGA controller
Looking at devid 0x29c28086
Matched Intel G33 SVGA controller
agp0: detected 7676k stolen memory
agp0: aperture size is 256M

(excuse the spam - I kept adding stuff to it trying to work out why it wasn=
't
doing anything then realised the new AGP needed vgapci)

With the ports xf86-video-intel I get..
(=3D=3D) intel(0): Backing store disabled
(=3D=3D) intel(0): Silken mouse enabled
(II) intel(0): Initializing HW Cursor
(II) intel(0): xf86BindGARTMemory: bind key 1 at 0x006ff000 (pgoffset 1791)
(WW) intel(0): xf86BindGARTMemory: binding of gart memory with key 1
        at offset 0x6ff000 failed (Invalid argument)

=46atal server error:
Couldn't bind memory for front buffer

I tried to build your git repo of the driver but I am getting..
gmake[3]: Entering directory `/local0/tmp/xf86-video-intel/src'
/usr/local/bin/bash ../libtool --tag=3DCC   --mode=3Dcompile gcc -DHAVE_CON=
=46IG_H -I. -I..    -Wall -Wpointer-arith -Wstrict-prototypes    -Wmissing-=
prototypes -Wmissing-declarations     -Wnested-externs -fno-strict-aliasing=
 -D_THREAD_SAFE -I/usr/local/include/xorg -I/usr/local/include/pixman-1 -I/=
usr/local/include   -I/usr/local/include -I/usr/local/include/drm -I/usr/lo=
cal/include/X11/dri -DI830_XV -DI830_USE_XAA -DI830_USE_EXA -g -O2 -MT i810=
_driver.lo -MD -MP -MF .deps/i810_driver.Tpo -c -o i810_driver.lo i810_driv=
er.c
 gcc -DHAVE_CONFIG_H -I. -I.. -Wall -Wpointer-arith -Wstrict-prototypes -Wm=
issing-prototypes -Wmissing-declarations -Wnested-externs -fno-strict-alias=
ing -D_THREAD_SAFE -I/usr/local/include/xorg -I/usr/local/include/pixman-1 =
=2DI/usr/local/include -I/usr/local/include -I/usr/local/include/drm -I/usr=
/local/include/X11/dri -DI830_XV -DI830_USE_XAA -DI830_USE_EXA -g -O2 -MT i=
810_driver.lo -MD -MP -MF .deps/i810_driver.Tpo -c i810_driver.c  -fPIC -DP=
IC -o .libs/i810_driver.o
i810_driver.c:456: error: `PACKAGE_VERSION_MAJOR' undeclared here (not in a=
 function)
i810_driver.c:456: error: initializer element is not constant
i810_driver.c:456: error: (near initialization for `intelVersRec.majorversi=
on')
i810_driver.c:456: error: `PACKAGE_VERSION_MINOR' undeclared here (not in a=
 function)
i810_driver.c:456: error: initializer element is not constant
i810_driver.c:456: error: (near initialization for `intelVersRec.minorversi=
on')
i810_driver.c:456: error: `PACKAGE_VERSION_PATCHLEVEL' undeclared here (not=
 in a function)
=2E..

I modified config.h to add those #defines and the man Makefile (configure is
fun!) and installed but now I get..
(=3D=3D) intel(0): Write-combining range (0xa0000,0x10000) was already clear
(II) EXA(0): Offscreen pixmap area of 30720000 bytes
(II) EXA(0): Driver registered support for the following operations:
(II)         Solid
(II)         Copy
(II)         Composite (RENDER acceleration)
(=3D=3D) intel(0): Backing store disabled
(=3D=3D) intel(0): Silken mouse enabled
(II) intel(0): Initializing HW Cursor
(II) intel(0): xf86BindGARTMemory: bind key 8 at 0x006ff000 (pgoffset 1791)
(WW) intel(0): xf86BindGARTMemory: binding of gart memory with key 8
        at offset 0x6ff000 failed (Invalid argument)

=46atal server error:
Couldn't bind memory for front buffer

> To be sure that everything's working, also enable DRI by installing
> updated DRM from git://anongit.freedesktop.org/git/mesa/drm (bsd-core
> directory, make all install).  It may complain if you have witness
> enabled, since I haven't brought over the witness fix from -current
> yet.

OK.
I really only want the 2D driver so DPMS works and the screen saver can
turn the monitor off (although faster 2D would be good as well)

=2D-=20
Daniel O'Connor software and network engineer
for Genesis Software - http://www.gsoft.com.au
"The nice thing about standards is that there
are so many of them to choose from."
  -- Andrew Tanenbaum
GPG Fingerprint - 5596 B766 97C0 0E94 4347 295E E593 DC20 7B3F CE8C

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

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

iD8DBQBHjVsf5ZPcIHs/zowRAg2DAJwNCJG4mzsh/H4FkN5Xt39wc6+RagCfdD7/
Pas4OT9K/40cetTA2NUZv/M=
=2yyw
-----END PGP SIGNATURE-----

--nextPart3056167.rykduAYgBz--



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