The instrumented dmesg had a couple of my local test changes and was bad now that I had ROM. Reverted them exept my readb changes (instead of direct dereferences of iomapped space) and redid logging to be more precise.
[drm] radeon kernel modesetting enabled. PCI: Enabling device: (0000:02:02.0), cmd 82 [drm] initializing kernel modesetting (RV100 0x1002:0x5159 0x1002:0x0908). [drm] register mmio base: 0x10000000 [drm] register mmio size: 32768 [drm:radeon_device_init] *ERROR* Unable to find PCI I/O BAR
This was still the unchanged kernel hanging.
Below is a new debug log to pinpoint the hang. It seems to hang in r100_gfx_get_rptr but not on first try.
It's most likely hanging in readl() in r100_mm_rreg() then.
Yes, it is doing direct readl() there. But what does this hang mean?
I'm not sure if the read can hang because of the GPU, or if indicates a more fundamental PCI issue. Dave?
[...]
Just a short question regarding the test setup. Is the video card a Sun XVR-100 or is it a vanilla ATI RV100 ? (If it is a vanilla RV100 there might be some kind of initialization issue as the video ROM is not executed during boot?)
It,s SUNW,XVR-100 with F-code ROM.