Messages in this thread | | | Subject | Re: [PATCH] radeonfb: (#2) Implement proper workarounds for PLL accesses | From | Benjamin Herrenschmidt <> | Date | Sun, 10 Apr 2005 09:33:11 +1000 |
| |
On Sat, 2005-04-09 at 18:24 +0200, Andreas Schwab wrote: > Benjamin Herrenschmidt <benh@kernel.crashing.org> writes: > > > Can you redo the counting of the workarounds with the patch ? > > Switching from X to console: > > radeon_write_pll_regs: INPLL > radeon_write_pll_regs: INPLL > radeon_write_mode: OUTPLL > radeonfb_engine_reset: INPLL > radeonfb_engine_reset: OUTPLL > radeonfb_engine_reset: OUTPLL > radeonfb_setcmap: INPLL > radeonfb_setcmap: OUTPLL > radeonfb_setcmap: OUTPLL > radeon_write_pll_regs: INPLL > radeon_write_pll_regs: INPLL > radeon_write_mode: OUTPLL > radeonfb_engine_reset: INPLL > radeonfb_engine_reset: OUTPLL > radeonfb_engine_reset: OUTPLL > radeonfb_setcmap: INPLL > radeonfb_setcmap: OUTPLL > radeonfb_setcmap: OUTPLL > radeonfb_setcmap: INPLL > radeonfb_setcmap: OUTPLL > radeonfb_setcmap: OUTPLL > radeonfb_setcmap: INPLL > radeonfb_setcmap: OUTPLL > radeonfb_setcmap: OUTPLL > radeonfb_setcmap: INPLL > radeonfb_setcmap: OUTPLL
Ok, so the above is interesting, something is callign setcmap way too much here I would say... Besides, it looks like set_par is called twice, which is wrong too.
> Switching from console to X: > > radeonfb_setcmap: OUTPLL > radeon_write_pll_regs: INPLL > radeon_write_pll_regs: INPLL > radeon_write_mode: OUTPLL > radeonfb_engine_reset: INPLL > radeonfb_engine_reset: OUTPLL > radeonfb_engine_reset: OUTPLL > radeonfb_setcmap: INPLL > radeonfb_setcmap: OUTPLL > radeonfb_setcmap: OUTPLL > agpgart: Putting AGP V2 device at 0000:00:0b.0 into 1x mode > agpgart: Putting AGP V2 device at 0000:00:10.0 into 1x mode > radeonfb_setcolreg: INPLL > radeonfb_setcolreg: OUTPLL > radeonfb_setcolreg: OUTPLL > ... last three lines repeated 63 times
Hrm... the last (serie of 64 setcolreg) are probably X beeing extremely dumb, and calling the ioctl 64 times to set each palette entry instead of doing a single call for the whole palette...
Anyway. Except for maybe the double set-par on switch from X to console, there isn't much more we can do here. We might be able to improve X but there is a significant lag between a fix done to X.org HEAD appears in any distro. The fact is, according to ATI, there is a HW bug on M6 taht can cause lockups of the chip, and this 5ms workaround is necessary to avoid it...
Ben.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |