On Tue, 2008-01-15 at 20:12 +1030, Daniel O'Connor wrote:> I just checked the CVS logs and found that you added G33 support but > left it disconnected due to a lack of testing...Huh, I forgot.> How can I test it? :)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. 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. 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.> email message attachment (forwarded message), ""Daniel O'Connor" > <doconnor@gsoft.com.au>: FreeBSD 6.3 and Intel G33" > > -------- Forwarded Message -------- > > From: Daniel O'Connor <doconnor@gsoft.com.au> > > To: freebsd-stable@freebsd.org > > Cc: Hiroshi Nishida <nishida@asusa.net> > > Subject: FreeBSD 6.3 and Intel G33 > > Date: Tue, 15 Jan 2008 17:01:04 +1030 > > > > Hi, > > I'm trying to get a system with an Intel G33 video chipset in it > > (Supermicro C2SBA) working with the Intel driver but I'm not having much > > luck.. > > > > I took the patch from Hiroshi Nishida and added the G33 PCI ID's for it > > now I get agp/i810 attaching to it.. > > Matched G33 > > Matched for Intel G33 IG SVGA controller > > Matched G33 > > Matched for Intel G33 IG SVGA controller > > agp0: <Intel G33 IG SVGA controller> port 0x1c60-0x1c67 mem 0xd2300000-0xd237ffff,0xc0000000-0xcfffffff,0xd2000000-0xd20fffff irq 16 at device 2.0 on pci0 > > agp_i810_attach() called > > Attaching G33 > > Chip Type: 5, rid:10 > > agp0: detected 7676k stolen memory > > agp0: aperture size is 256M > > > > I tried running X and got this in dmesg.. > > agp0: trying to bind into stolen memory > > > > and this in the X log... > > (==) intel(0): Backing store disabled > > (==) intel(0): Silken mouse enabled > > (II) intel(0): Initializing HW Cursor > > (II) intel(0): xf86BindGARTMemory: bind key 6 at 0x006ff000 (pgoffset 1791) > > (WW) intel(0): xf86BindGARTMemory: binding of gart memory with key 6 > > at offset 0x6ff000 failed (Invalid argument) > > > > Fatal server error: > > Couldn't bind memory for front buffer > > > > I then added the PCI ID (0x8086 / 0x29c2) to /usr/src/sys/dev/drm/drm_pciids.h > > and now I get this in dmesg.. > > drmsub0: <Intel G33>: (child of agp_i810.c) on agp0 > > info: [drm] AGP at 0xd2300000 0MB > > info: [drm] Initialized i915 1.5.0 20060119 > > > > but that does not affect the error from X. > > > > I see a NetBSD patch at > > http://mail-index.netbsd.org/netbsd-bugs/2007/09/05/0015.html but I haven't > > tried shoe horning that in yet.. > >-- Eric Anholt anholt@FreeBSD.org eric@anholt.net eric.anholt@intel.com -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 187 bytes Desc: This is a digitally signed message part Url : http://lists.freebsd.org/pipermail/freebsd-stable/attachments/20080115/54e75303/attachment.pgp
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-0xd237ffff,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.. (==) intel(0): Backing store disabled (==) 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) Fatal 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=CC --mode=compile gcc -DHAVE_CONFIG_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/local/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_driver.c gcc -DHAVE_CONFIG_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/local/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 i810_driver.c -fPIC -DPIC -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.majorversion') 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.minorversion') i810_driver.c:456: error: `PACKAGE_VERSION_PATCHLEVEL' undeclared here (not in a function) ... I modified config.h to add those #defines and the man Makefile (configure is fun!) and installed but now I get.. (==) 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) (==) intel(0): Backing store disabled (==) 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) Fatal 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) -- 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 -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 187 bytes Desc: This is a digitally signed message part. Url : http://lists.freebsd.org/pipermail/freebsd-stable/attachments/20080116/c615df35/attachment.pgp