While initializing an evergreen adapter on a ppc64 machine (64bit kernel, big endian) I am getting PCI recovery errors (EEH = AER + IOMMU faults). I'm investigating exactly why those happen, but I get them while I'm running evergreen_irq_set on evergreen.c.

Since these kinds of errors are only detected by the kernel during a readl call, I tried instrumenting the offending code with calls to:
RREG32(CRTC_STATUS_FRAME_COUNT + EVERGREEN_CRTC0_REGISTER_OFFSET)
But those seem to interfere with the normal flow of adapter configuration.

What call could I use that would be innocuous? Perhaps a thermal sensor read?



The crash seems to be happening around the time it starts configuring the CRTC registers on evergreen.c:evergreen_irq_set. (Though again, I've had instrumenting issues and that might not be the case).
...
        WREG32(GRBM_INT_CNTL, grbm_int_cntl);

        WREG32(INT_MASK + EVERGREEN_CRTC0_REGISTER_OFFSET, crtc1);
        WREG32(INT_MASK + EVERGREEN_CRTC1_REGISTER_OFFSET, crtc2);
...

Any other suggestions on how to be sure of this? Also, what would already be initialized (registered interrupts) by the time it makes this call? Any suggestions on what else could be causing this?



The system also tries to initialize the intel_hda module upon boot. I take it it's due to the embedded audio adapter for HDMI, I've taken the driver down for now (removed it from initrds and blacklisted it for modprobe). But I wonder how much could fails on the audio initialization interfere with the graphics part on the radeon driver. Does anyone have any estimates on this?



Whew, too many questions together :)

Thanks for any help, guys!

--
Lucas Kannebley Tavares
Software Engineer
IBM Linux Technology Center

_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to