Bug 30812 - radeon module fails to initialize with modeset=1 on PPC32 with RV280
Summary: radeon module fails to initialize with modeset=1 on PPC32 with RV280
Status: RESOLVED OBSOLETE
Alias: None
Product: Drivers
Classification: Unclassified
Component: Video(DRI - non Intel) (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: drivers_video-dri
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-03-09 13:58 UTC by Kim Nguyen
Modified: 2012-08-20 14:50 UTC (History)
2 users (show)

See Also:
Kernel Version: 2.6.35 to 2.6.38-rc6
Subsystem:
Regression: No
Bisected commit-id:


Attachments
output of dmesg after boot (radeon as module, modeset=0) and rmmod of radeon (29.23 KB, text/plain)
2011-03-09 13:58 UTC, Kim Nguyen
Details
dmesg of modified module after insmod radeon.ko modeset=1 (65.77 KB, text/plain)
2011-03-09 13:59 UTC, Kim Nguyen
Details
output of radeontool regs '*' (19.76 KB, text/plain)
2011-03-09 13:59 UTC, Kim Nguyen
Details
output of lspci -vvv (8.38 KB, text/plain)
2011-03-09 14:00 UTC, Kim Nguyen
Details
.config used for dmesg (81.10 KB, application/octet-stream)
2011-03-09 14:01 UTC, Kim Nguyen
Details
modified radeon_fence.c with additional DRM_INFO added. (13.15 KB, text/plain)
2011-03-09 14:13 UTC, Kim Nguyen
Details
dmsg after segfault of modprobe radeon modeset=1 on 2.6.35 (38.12 KB, text/plain)
2011-03-09 14:29 UTC, Kim Nguyen
Details

Description Kim Nguyen 2011-03-09 13:58:44 UTC
Created attachment 50462 [details]
output of dmesg after boot (radeon as module, modeset=0) and rmmod of radeon

Hardware: MacMini G4 (ppc-32).
Graphic adaptor: Radeon 9200 (RV280) probably a 'mac' version.
Symptoms:

with modprobe radeon modeset=0, everything works fine. Machine boots normally,
X works, xrandr and Xv too.

with modeset=1, modeprobe never returns and gets stucked durring initialization.
More specifically, the call to radeon_fence_wait in r100_ib_test (r100.c) loops endlessly (or at least for several hours). I'm attaching dmesg of a modified driver with more printk.

I have tried several combination of putting AGPART/FBCON/RADEON in kernel or as modules, tried with and without OFFB and so on, same results. Also attaching output of lspci and .config used for the dmesg trace and output of radeontool regs '*'.
Comment 1 Kim Nguyen 2011-03-09 13:59:27 UTC
Created attachment 50472 [details]
dmesg of modified module after insmod radeon.ko modeset=1
Comment 2 Kim Nguyen 2011-03-09 13:59:54 UTC
Created attachment 50482 [details]
output of radeontool regs '*'
Comment 3 Kim Nguyen 2011-03-09 14:00:22 UTC
Created attachment 50492 [details]
output of lspci -vvv
Comment 4 Kim Nguyen 2011-03-09 14:01:06 UTC
Created attachment 50502 [details]
.config used for dmesg
Comment 5 Kim Nguyen 2011-03-09 14:13:38 UTC
Created attachment 50512 [details]
modified radeon_fence.c with additional DRM_INFO added.
Comment 6 Kim Nguyen 2011-03-09 14:28:03 UTC
Actually after trying again with 2.6.35 I get an oops after modprobe radeon modeset=1 which does is not present in 2.6.36 and after. dmesg attached.
Comment 7 Kim Nguyen 2011-03-09 14:29:08 UTC
Created attachment 50522 [details]
dmsg after segfault of modprobe radeon modeset=1 on 2.6.35
Comment 8 Michel Dänzer 2011-03-09 14:42:27 UTC
Have you tried radeon.agpmode=1 or radeon.agpmode=-1? There's a uninorth AGP driver issue which prevents higher AGP transfer rates from working reliably with KMS.

Actually, I see you mentioned on IRC that you tried radeon.agpmode=-1 but it didn't help. Can you provide the corresponding dmesg output? Maybe for =1 as well.

One thing that seems special about your card is that the PCI aperture is larger than VRAM. Maybe there's a problem related to that, e.g. a mixup or incorrect handling of the various *_vram_size fields.
Comment 9 Kim Nguyen 2011-03-09 15:32:53 UTC
radeon.agpmode=1 works! Seems X is happy too, glxinfo shows direct rendering.
actually agpmode=-1 or agpmode > 1 both trigger the bug.

Would it be easy to default to 1 if uninorth agp is detected ? (maybe not worth
it, there are not so many ppc32 configs out there. So it might just be enough to advertise on the radeon faq/howto page that agpmode=1 is recommended for uninorth agp).

Note You need to log in before you can comment on or make changes to this bug.