Hi,
I'm trying to use atyfb on 2.6.10-rc3, but I'm getting a kernel oops just at
modprobe time. By tracking the problem, it seems that 'pll_limits.xclk' is
the heart of the problem, as seen in line 2210 from atyfb_base.c:
par->xclk_per = 1000000/par->pll_limits.xclk;
It happens that pll_limits.xclk is zero, because of an attribution made on
line 3246:
par->pll_limits.xclk = pll_block.XCLK_max_freq/100;
pll_block.XCLK_max_freq, in this case, is read from BIOS a few lines above (at
line 3229, to be more precise), and the value being returned from this copy
here is 20. So we have a problem, since the result from 20/100 = 0 will be
used as denominator to set par->xclk_per's value.
Since I didn't know what clock was being expected by the driver, I couldn't go
any longer. If some of you has time and can give a look on it, I'm sending
some information about my card, as well as ksymoops results and .config.
Thanks,
Lucas
02:0d.0 VGA compatible controller: ATI Technologies Inc 3D Rage II+ 215GTB
[Mach64 GTB] (rev 9a) (prog-if 00 [VGA])
Subsystem: ATI Technologies Inc 3D Rage II+ 215GTB [Mach64 GTB]
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping+ SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
Latency: 0 (2000ns min), cache line size 08
Interrupt: pin A routed to IRQ 5
Region 0: Memory at ec000000 (32-bit, non-prefetchable) [size=16M]
Region 1: I/O ports at b800 [size=256]
Region 2: Memory at eb800000 (32-bit, non-prefetchable) [size=4K]
Expansion ROM at ee7c0000 [disabled] [size=128K]