Summary: | [G41]DRI support | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Product: | DRI | Reporter: | liuhaien <haien.liu> | ||||||||||||||||||
Component: | DRM/Intel | Assignee: | Eric Anholt <eric> | ||||||||||||||||||
Status: | CLOSED FIXED | QA Contact: | |||||||||||||||||||
Severity: | major | ||||||||||||||||||||
Priority: | medium | CC: | jdieter, madhu.chinakonda, mnemo, rodd, steve_zhang, zhenyu.z.wang | ||||||||||||||||||
Version: | unspecified | ||||||||||||||||||||
Hardware: | Other | ||||||||||||||||||||
OS: | Linux (All) | ||||||||||||||||||||
Whiteboard: | |||||||||||||||||||||
i915 platform: | i915 features: | ||||||||||||||||||||
Attachments: |
|
Created attachment 24662 [details]
xorg conf file
unimplemented feature. Let's track here. Many, many folks with the G41 chipset are affected by this missing DRI support. The desktop graphic performance is unacceptable without it. Any idea what is involved to provide it? Why does glxinfo report direct rendering anyhow under g41? The i915 kernel driver doesn't appear to have the G41 PCI IDs yet; Zhenyu Wang posted a patch back in September: http://www.mail-archive.com/dri-devel@lists.sourceforge.net/msg36219.html This still isn't in Linus' tree but when applied to 2.6.29.1 does seem to result in working DRI/KMS support. Haien, please attach intel_gtt (a tool under xf86-video-intel) output. Created attachment 24747 [details]
the output of intel_gtt
Thanks, could you paste intel_gtt output when kernel boot with "agp=off" param? Eric, it looks our G41 doesn't have stolen memory issue that you've seen. Do you have any bios setting for stolen size? Created attachment 24781 [details]
intel_gtt with agp=off
(In reply to comment #7) > Thanks, could you paste intel_gtt output when kernel boot with "agp=off" param? > > Eric, it looks our G41 doesn't have stolen memory issue that you've seen. Do > you have any bios setting for stolen size? > intel_gtt output with "agp=off" is attached. Haien, please try below drm patch to see if DRI works: From: Zhenyu Wang <zhenyu.z.wang@intel.com> Date: Mon, 17 Nov 2008 13:58:11 +0800 Subject: [PATCH] [DRM] i915: add support for G41 chipset Signed-off-by: Zhenyu Wang <zhenyu.z.wang@intel.com> --- drivers/gpu/drm/i915/i915_drv.h | 6 ++++-- include/drm/drm_pciids.h | 1 + 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h index ed1edcf..df43bf9 100644 --- a/drivers/gpu/drm/i915/i915_drv.h +++ b/drivers/gpu/drm/i915/i915_drv.h @@ -642,7 +642,8 @@ extern int i915_wait_ring(struct drm_device * dev, int n, const char *caller); (dev)->pci_device == 0x2A42 || \ (dev)->pci_device == 0x2E02 || \ (dev)->pci_device == 0x2E12 || \ - (dev)->pci_device == 0x2E22) + (dev)->pci_device == 0x2E22 || \ + (dev)->pci_device == 0x2E32) #define IS_I965GM(dev) ((dev)->pci_device == 0x2A02) @@ -650,7 +651,8 @@ extern int i915_wait_ring(struct drm_device * dev, int n, const char *caller); #define IS_G4X(dev) ((dev)->pci_device == 0x2E02 || \ (dev)->pci_device == 0x2E12 || \ - (dev)->pci_device == 0x2E22) + (dev)->pci_device == 0x2E22 || \ + (dev)->pci_device == 0x2E32) #define IS_G33(dev) ((dev)->pci_device == 0x29C2 || \ (dev)->pci_device == 0x29B2 || \ diff --git a/include/drm/drm_pciids.h b/include/drm/drm_pciids.h index 5165f24..671fab3 100644 --- a/include/drm/drm_pciids.h +++ b/include/drm/drm_pciids.h @@ -418,4 +418,5 @@ {0x8086, 0x2e02, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8, 0xffff00, 0}, \ {0x8086, 0x2e12, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8, 0xffff00, 0}, \ {0x8086, 0x2e22, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8, 0xffff00, 0}, \ + {0x8086, 0x2e32, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8, 0xffff00, 0}, \ {0, 0, 0} Gordon,the patch dosen't work on my side.dri still can not be enabled. Created attachment 24808 [details]
new xorg.0.log
Created attachment 24809 [details]
dmesg
(In reply to comment #12) > Created an attachment (id=24808) [details] > new xorg.0.log I don't understand why agpgart becomes broken after applying the drm patch. you left agp=off in kernel boot... (In reply to comment #15) > you left agp=off in kernel boot... > sorry,I forgot it. dri works with the patch. Created attachment 24842 [details]
xorg.0.log with dri enabled
Created attachment 24843 [details]
the output of glxinfo
(In reply to comment #10) > Haien, please try below drm patch to see if DRI works: > > From: Zhenyu Wang <zhenyu.z.wang@intel.com> > Date: Mon, 17 Nov 2008 13:58:11 +0800 > Subject: [PATCH] [DRM] i915: add support for G41 chipset > > Signed-off-by: Zhenyu Wang <zhenyu.z.wang@intel.com> > --- > drivers/gpu/drm/i915/i915_drv.h | 6 ++++-- > include/drm/drm_pciids.h | 1 + > 2 files changed, 5 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h > index ed1edcf..df43bf9 100644 > --- a/drivers/gpu/drm/i915/i915_drv.h > +++ b/drivers/gpu/drm/i915/i915_drv.h > @@ -642,7 +642,8 @@ extern int i915_wait_ring(struct drm_device * dev, int n, > const char *caller); > (dev)->pci_device == 0x2A42 || \ > (dev)->pci_device == 0x2E02 || \ > (dev)->pci_device == 0x2E12 || \ > - (dev)->pci_device == 0x2E22) > + (dev)->pci_device == 0x2E22 || \ > + (dev)->pci_device == 0x2E32) > > #define IS_I965GM(dev) ((dev)->pci_device == 0x2A02) > > @@ -650,7 +651,8 @@ extern int i915_wait_ring(struct drm_device * dev, int n, > const char *caller); > > #define IS_G4X(dev) ((dev)->pci_device == 0x2E02 || \ > (dev)->pci_device == 0x2E12 || \ > - (dev)->pci_device == 0x2E22) > + (dev)->pci_device == 0x2E22 || \ > + (dev)->pci_device == 0x2E32) > > #define IS_G33(dev) ((dev)->pci_device == 0x29C2 || \ > (dev)->pci_device == 0x29B2 || \ > diff --git a/include/drm/drm_pciids.h b/include/drm/drm_pciids.h > index 5165f24..671fab3 100644 > --- a/include/drm/drm_pciids.h > +++ b/include/drm/drm_pciids.h > @@ -418,4 +418,5 @@ > {0x8086, 0x2e02, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8, > 0xffff00, 0}, \ > {0x8086, 0x2e12, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8, > 0xffff00, 0}, \ > {0x8086, 0x2e22, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8, > 0xffff00, 0}, \ > + {0x8086, 0x2e32, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8, > 0xffff00, 0}, \ > {0, 0, 0} > Can I know why this patch is not yet pushed into drm-intel git tree. The drm support for G41 is still missing in the kernel. *** Bug 21425 has been marked as a duplicate of this bug. *** I'm running 3 DG41TY Fedora 10 computers with the G41 graphics chipset. I've patched the kernel with https://bugzilla.redhat.com/attachment.cgi?id=337490 and 3D/compiz works fine. However all of the systems hard lock whenever X is restarted after a random delay (i.e. X starts fine the first time (most of the time), but on the first or second logout, the system hangs with no response to pings, etc.). I suspect this is why the patch hasn't made it into the mainline kernel. Is there anything I (or anybody else) can do to help track down the problems so this can get enabled? FYI: Looks like that patch made it, in a more or less identical state, into the 2.6.30-rc4 mainline: http://lkml.org/lkml/2009/4/30/10 Thanks for the effort. BTW this was the patch comment from Zhenyu Wang. "This had been delayed for some time due to failure to work on the one piece of G41 hardware we had, and lack of success reports from anybody else. Current hardware appears to be OK." http://git.kernel.org/?p=linux/kernel/git/anholt/drm-intel.git;a=commitdiff;h=72021788678523047161e97b3dfed695e802a5fd;hp=44ab43155e8071fbf037513e57de9a79044edf56 pushed verified with below commits: Libdrm: (master)f57d7f4b0b14972f92a83f155ae8033478aa7729 Mesa: (mesa_7_5_branch)483e247804db914835173347b7f2a12c0f78d60e Xserver: (server-1.6-branch)a9f85dcefbadfe44d8c58ad08430aaadb8c59d34 Xf86_video_intel: (master)87332a7cc16af82aa47e07fbf90da3635b071dbf Kernel: (for-linus)7c7327d9664280cad833da1f14bad13a3ea8f0bf I've been having ongoing issues with my g41 chipset, so I'm just cc'ing myself in to make it easy to locate this bug. I'll test tomorrow and see what gives as this appears to have been included in f11 I've tested this using a fedora rawhide livecd which I believe has all the correct bits in it, and this doesn't work for me. I can't boot the kernel. I'm not convinced that this bug is fixed. (In reply to comment #27) > I've tested this using a fedora rawhide livecd which I believe has all the > correct bits in it, and this doesn't work for me. > > I can't boot the kernel. > > I'm not convinced that this bug is fixed. > We believe this common bug has been fixed, as multiple people have confirmed this. There are also knowns issues for some specific G41 boards: bug#22518 bug#21574. If your issue is differnt, please file a separate bug according to http://intellinuxgraphics.org/how_to_report_bug.html. Closing old verified. |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.
Created attachment 24661 [details] xorg.0.log System Environment: -------------------------- platform: g41 Libdrm: (master)1faab66cfd1a854925da6ff7109aa614292dea90 Mesa: (mesa_7_4_branch)de197cf991416f0cd65ad2e2d2ca9aa599b52075 Xserver: (server-1.6-branch)60c161545af80eb78eb790a05bde79409dfdf16e Xf86_video_intel: (2.7)3e5586cace98f73a9f8403a6446d380899ecbce9 Kernel: (drm-intel-2.6.29)71d7aec4bbf923eaf43563c03459726a746cd332 Bug detailed description: -------------------------- dri cann't be enabled on g41. Reproduce Steps: ------------------ 1.xinit&