Bug 27900 - Xorg config crashes during G72 initialization on PowerPC board (Freescale 8641D)
Summary: Xorg config crashes during G72 initialization on PowerPC board (Freescale 8641D)
Status: RESOLVED INVALID
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/Radeon (show other bugs)
Version: unspecified
Hardware: PowerPC Linux (All)
: medium blocker
Assignee: xf86-video-ati maintainers
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-04-29 09:01 UTC by Régis Odeyé
Modified: 2018-06-12 19:08 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
Xorg -configure log (19.01 KB, patch)
2010-04-29 09:01 UTC, Régis Odeyé
no flags Details | Splinter Review
Xorg log en radeon 6.13.0 (18.30 KB, patch)
2010-05-28 09:11 UTC, Régis Odeyé
no flags Details | Splinter Review

Description Régis Odeyé 2010-04-29 09:01:01 UTC
Created attachment 35335 [details] [review]
Xorg -configure log

We are running a Fedora 9 for PPC on our Freescale 8641D based board.
We are trying an ATI Technologies Inc Radeon E2400 rev 0 on the PCIe.

The Xorg server never completes its initialization and is failing with the following output:

# Xorg -configure
...
Backtrace:
0: X(xf86SigHandler+0x94) [0x10082e34]
1: [0x100364]
2: [0x24000482]
3: /usr/lib/xorg/modules/drivers//radeon_drv.so(RADEONGetConnectorInfoFromBIOS+0x8c) [0xe5f759c]
4: /usr/lib/xorg/modules/drivers//radeon_drv.so(RADEONSetupConnectors+0xbc8) [0xe60aa88]
5: /usr/lib/xorg/modules/drivers//radeon_drv.so [0xe5e6ed0]
6: /usr/lib/xorg/modules/drivers//radeon_drv.so(RADEONPreInit+0xd4c) [0xe5e86ac]
7: X(InitOutput+0xa00) [0x10066140]
8: X(main+0x288) [0x10022178]
9: /lib/libc.so.6 [0xfe1d8f0]
10: /lib/libc.so.6 [0xfe1dab0]

Fatal server error:
Caught signal 11.  Server aborting

See attached the complete log.

Any idea would be very helpful...
Comment 1 Alex Deucher 2010-04-29 09:06:01 UTC
This should be fixed in a newer version of the ddx (xf86-video-ati).  Please try 6.12.x, 6.13.0 or git master.
Comment 2 Régis Odeyé 2010-04-30 04:58:27 UTC
On Fedora, we have xorg-x11-drv-ati-6.8.0-12.fc9.ppc package:
[root@emitest2 ~]# yum info xorg-x11-drv-ati
Loaded plugins: refresh-packagekit
Installed Packages
Name       : xorg-x11-drv-ati
Arch       : ppc
Version    : 6.8.0
Release    : 12.fc9
Size       : 1.0 M
Repo       : installed
Summary    : Xorg X11 ati video driver
URL        : http://www.x.org
License    : MIT
Description: X.Org X11 ati video driver.

My guess is that it is a re-packaging of xf86-video-ati.
Is it right ?

If yes, I will try to upgrade it.
Comment 3 Alex Deucher 2010-04-30 08:23:16 UTC
(In reply to comment #2)
> My guess is that it is a re-packaging of xf86-video-ati.
> Is it right ?
> 
> If yes, I will try to upgrade it.

Yes.
Comment 4 Régis Odeyé 2010-05-28 09:11:06 UTC
Created attachment 35914 [details] [review]
Xorg log en radeon 6.13.0
Comment 5 Régis Odeyé 2010-05-28 09:12:24 UTC
As recommanded, I recompiled the 6.13.0 and test it on my 8641D (ppc freescale)
board.
The server is now looping in an infinite way in the vbios related code of the
radeon driver.
Hereafter, the end of the Xorg log:
(II) RADEON(0): Minimum Pixel ClockPLL Frequency Input: 1000
(II) RADEON(0): Maximum Pixel Clock: 400000
(II) RADEON(0): Reference Clock: 27000
(II) RADEON(0): Default Engine Clock: 450000
(II) RADEON(0): Default Memory Clock: 500000
(II) RADEON(0): Calling ASIC Init
(refer to the complete log attached)

And gdb give me:
0x0e6626a4 in IndirectInputOutput (pParserTempData=0xbfdd5118)
    at AtomBios/CD_Operations.c:237
237             } else
pParserTempData->IndirectIOTablePointer+=IndirectIOParserCommands[*pParserTempData->IndirectIOTablePointer].csize;
(gdb) bt
#0  0x0e6626a4 in IndirectInputOutput (pParserTempData=0xbfdd5118)
    at AtomBios/CD_Operations.c:237
#1  0x0e663210 in PutDataRegister (pParserTempData=0xbfdd5118)
    at AtomBios/CD_Operations.c:257
#2  0x0e66149c in ProcessMove (pParserTempData=0xbfdd5118)
    at AtomBios/CD_Operations.c:503
#3  0x0e663560 in ParseTable (pDeviceData=0xbfdd5198,
    IndexInMasterTable=<value optimized out>) at AtomBios/Decoder.c:235
#4  0x0e669828 in ParseTableWrapper (pspace=<value optimized out>,
    index=<value optimized out>, handle=<value optimized out>,
    BIOSBase=<value optimized out>, msg_return=<value optimized out>)
    at radeon_atomwrapper.c:51
#5  0x0e6664b0 in rhdAtomExec (handle=0x102678c8,
    unused=<value optimized out>, data=<value optimized out>)
    at radeon_atombios.c:2655
#6  0x0e666680 in RHDAtomBiosFunc (scrnIndex=0, handle=<value optimized out>,
    id=<value optimized out>, data=0xbfdd5208) at radeon_atombios.c:2697
#7  0x0e666e08 in rhdAtomASICInit (handle=0x102678c8) at radeon_atombios.c:518
#8  0x0e62f7f8 in RADEONGetBIOSInfo (pScrn=0x10262f40,
    pInt10=<value optimized out>) at radeon_bios.c:474
#9  0x0e61dff4 in RADEONPreInit (pScrn=0x10262f40, flags=<value optimized out>)
    at radeon_driver.c:2787
#10 0x10066140 in InitOutput ()
---Type <return> to continue, or q <return> to quit---
#11 0x10022178 in main ()

Is there a way to emulate or workaround the VBIOS code under PPC ?

I see some comment about Apple G5 with OpenFirmware running some ATI graphics
but here we do not have any OF.
Comment 6 Alex Deucher 2010-05-28 11:13:58 UTC
I suspect there must have been some endian breakage in the atom parser as very few people use the driver on non-x86 platforms.  It did work at one time.  The driver relies on the parser to initialize the asic and set the modes.  I would suggest bisecting between 6.12.0 and 6.13.0
Comment 7 Adam Jackson 2018-06-12 19:08:53 UTC
Mass closure: This bug has been untouched for more than six years, and is not
obviously still valid. Please reopen this bug or file a new report if you continue to experience issues with current releases.


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.