On Fri, Jun 14, 2002 at 12:15:13AM +0100, George Foot wrote:
> I tried to mail this to Petr Vandrovec <vandrove@vc.cvut.cz> but
> the domain does not resolve.
>
> static int matroxfb_get_vblank(CPMINFO struct fb_vblank *vblank)
> {
> unsigned int sts1;
>
> memset(vblank, 0, sizeof(*vblank));
> vblank->flags = FB_VBLANK_HAVE_VCOUNT | FB_VBLANK_HAVE_VSYNC |
> FB_VBLANK_HAVE_VBLANK | FB_VBLANK_HAVE_HBLANK;
> sts1 = mga_inb(M_INSTS1);
> vblank->vcount = mga_inl(M_VCOUNT);
> /* BTW, on my PIII/450 with G400, reading M_INSTS1
> byte makes this call about 12% slower (1.70 vs. 2.05 us
> per ioctl()) */
> if (sts1 & 1)
> vblank->flags |= FB_VBLANK_HBLANKING;
> if (sts1 & 8)
> vblank->flags |= FB_VBLANK_VSYNCING;
> **** if (vblank->count >= ACCESS_FBINFO(currcon_display)->var.yres)
> vblank->flags |= FB_VBLANK_VBLANKING;
It should be vblank->vcount. It is fixed in mga-2.5.20-tvout.gz
at ftp://platan.vc.cvut.cz/pub/linux/matrox-latest. Obviously
this patch does not apply to 2.4.x.
> The line in question (marked ****) reads from vblank->count
> which is zeroed by the memset and not changed since then. I
> believe it should be reading from vblank->vcount instead.
Yes.
> I'm sorry not to have checked whether this has been fixed; I
> found that some Matrox bugs were fixed since 2.4.18 in the
> 2.4.19 prerelease changelog, but my Internet connection is only
> a 56k modem so I can't afford to download either the prerelease
> patch or the latest development branch.
AFAIK it is not fixed even in latest 2.4.x prepatches.
> I'd also be interested to know if there's any documentation of
> the difference between VSYNC and VBLANK in the context of the
> fbdev code -- I haven't found any references in the kernel
> documentation, perhaps there's some resource online?
linux-fbdev.sourceforge.net maybe have some documentation.
I wrote implementation according to flags names...
Petr Vandrovec
vandrove@vc.cvut.cz
-
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/
This archive was generated by hypermail 2b29 : Sat Jun 15 2002 - 22:00:31 EST