<html>
<head>
<base href="https://bugs.freedesktop.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW --- - [Ubuntu 12.04.1 LTS 32-bit] Unity GUI will hang during bootup with ATI Technologies Radeon X600 (RV380) and VIA Technologies PT880 Ultra chipset"
href="https://bugs.freedesktop.org/show_bug.cgi?id=55784#c38">Comment # 38</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW --- - [Ubuntu 12.04.1 LTS 32-bit] Unity GUI will hang during bootup with ATI Technologies Radeon X600 (RV380) and VIA Technologies PT880 Ultra chipset"
href="https://bugs.freedesktop.org/show_bug.cgi?id=55784">bug 55784</a>
from <span class="vcard"><a class="email" href="mailto:mypersonalmailbox1@mail.com" title="mypersonalmailbox1@mail.com">mypersonalmailbox1@mail.com</a>
</span></b>
<pre>(In reply to <a href="show_bug.cgi?id=55784#c37">comment #37</a>)
Hi Alex,
My replies are embedded below.
<span class="quote">> (In reply to <a href="show_bug.cgi?id=55784#c36">comment #36</a>)
> As I understand it, this board is some kind of hybrid AGP and PCIE
> combination. I'm not sure how well this hw was validated by the
> manufacturer, especially with newer asics. The fact that all PCIE cards
> seem to fail seems to indicate some sort of chipset problem.
>
> </span >
Yes, PT880 Ultra is a little weird PCI Express/AGP hybrid chipset.
ULi also had such chipset as well (used HyperTransport to link multiple ULi
ASICs), but with AGP 3.0 and full PCI Express x16 support.
I own one such board (from ASRock), but it doesn't POST probably because the
mainboard got fried by a bad power supply.
I picked up that ASRock board from E-waste collection bin so I shouldn't expect
much, either.
A friend of mine who used to work for Philips Semiconductors once told me
that if a PCI device cannot pass PCI-SIG's compatibility testing, one has
almost no chance of selling the part to mainstream computer/board
manufacturers.
VIA Technologies claims that PT880 Ultra is listed under PCI-SIG's integrator's
list.
<a href="http://www.via.com.tw/en/products/chipsets/p4-series/pt880_ultra/index.jsp">http://www.via.com.tw/en/products/chipsets/p4-series/pt880_ultra/index.jsp</a>
<a href="http://www.pcisig.com/developers/compliance_program/integrators_list/pcie">http://www.pcisig.com/developers/compliance_program/integrators_list/pcie</a>
Just a few hours ago, I added XFX Radeon HD 5450 PCIe graphics card to ASUS
P5VD1-X.
As expected, it couldn't boot Ubuntu 12.04 LTS 32-bit.
It hangs up after displaying Ubuntu 12.04 LTS Unity GUI reddish wallpaper (BTW,
mouse cursor still can move around the screen correctly.), but I was able to
boot Ubuntu 10.04.4 LTS 32-bit from a DVD.
I tested the ACPI S3 State resume, and it resumes reliably.
So I know many developers have negative opinions of VIA Technologies chipset,
but at least with Ubuntu 10.04.4 LTS 32-bit, it works perfectly.
Somebody broke the code in Ubuntu 12.04 LTS.
<span class="quote">> I'm not sure. You could check the maintainers file in the kernel.
>
> I'm not familiar with WinDbg. Since you get the hang when the GUI starts
> up, that would indicate that the problem is related to acceleration,
> probably DMA. You can try adding:
> Option "NoAccel" "True"
> to the device section of your xorg.conf to disable acceleration. If that
> works, then you can further narrow down the problem.
>
> Off hand I would guess that perhaps the chipset has problems with MSIs or
> DMA. You can try booting with:
> pci=nomsi
> on the kernel command line in grub to disable MSIs. If that fixes it,
> you'll need to add a pci quirk to the kernel to disable MSIs on that chipset.
>
> If the board has problems supporting >32 bit DMA mask, you can try forcing
> the DMA mask to 32 in the driver:
> diff --git a/drivers/gpu/drm/radeon/radeon_device.c
> b/drivers/gpu/drm/radeon/radeon_device.c
> index e2f5f88..98945e4 100644
> --- a/drivers/gpu/drm/radeon/radeon_device.c
> +++ b/drivers/gpu/drm/radeon/radeon_device.c
> @@ -1043,6 +1043,7 @@ int radeon_device_init(struct radeon_device *rdev,
> if ((rdev->flags & RADEON_IS_PCI) &&
> (rdev->family <= CHIP_RS740))
> rdev->need_dma32 = true;
> + rdev->need_dma32 = true;
>
> dma_bits = rdev->need_dma32 ? 32 : 40;
> r = pci_set_dma_mask(rdev->pdev, DMA_BIT_MASK(dma_bits));
>
>
> If that works, you'd need to add a PCI quirk for the chipset to limit the
> PCI DMA mask to 32 bits.</span >
Regards,
fpgahardwareengineer</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>