Re: xfree86 4.2.0-0pre1v3 (source,i386) available at the X Strike Force
On Mon, 2002-09-02 at 01:29, Branden Robinson wrote:
> On Sun, Aug 25, 2002 at 02:20:17AM +0900, ISHIKAWA Mutsumi wrote:
> > On m68k, mac64 dynamic loading driver cannot have worked from
> > before. Because xf86WriteMmio32Be is not defined anywhere.
> >
> > Perhaps, we should define xf86WriteMmio32Be function in
> > xc/programs/Xserver/hw/xfree86/common/compiler.h.
>
> I think this is a bug in ati/atimach64.c:
>
> apocalypse:~/packages/xfree86/4.2.0/xfree86-4.2.0/build-tree/xc/programs/Xserver/hw/xfree86> grep -r xf86WriteMmio32Be *
> common/compiler.h:xf86WriteMmio32Be(__volatile__ void *base, const unsigned long offset,
> common/compiler.h:xf86WriteMmio32BeNB(__volatile__ void *base, const unsigned long offset,
> common/compiler.h:xf86WriteMmio32Be(__volatile__ void *base, const unsigned long offset,
> common/compiler.h:xf86WriteMmio32Be(__volatile__ void *base, const unsigned long offset,
> common/compiler.h: xf86WriteMmio32Be(base, offset, (CARD32)(val))
> common/compiler.h: xf86WriteMmio32Be(base, offset, (CARD32)(val))
> common/compiler.h: xf86WriteMmio32Be(base, offset, (CARD32)(val))
> common/compiler.h: xf86WriteMmio32BeNB(base, offset, (CARD32)(val))
> common/compiler.h: xf86WriteMmio32Be(base, offset, (CARD32)(val))
> drivers/ati/atimach64.c: case 0: xf86WriteMmio32Be(pDst + 0, 0, *(pSrc + 0));
> drivers/ati/atimach64.c: case 1: xf86WriteMmio32Be(pDst + 1, 0, *(pSrc + 1));
> drivers/ati/atimach64.c: case 2: xf86WriteMmio32Be(pDst + 2, 0, *(pSrc + 2));
> drivers/ati/atimach64.c: case 3: xf86WriteMmio32Be(pDst + 3, 0, *(pSrc + 3));
> drivers/ati/atimach64.c: case 4: xf86WriteMmio32Be(pDst + 4, 0, *(pSrc + 4));
> drivers/ati/atimach64.c: case 5: xf86WriteMmio32Be(pDst + 5, 0, *(pSrc + 5));
> drivers/ati/atimach64.c: case 6: xf86WriteMmio32Be(pDst + 6, 0, *(pSrc + 6));
> drivers/ati/atimach64.c: case 7: xf86WriteMmio32Be(pDst + 7, 0, *(pSrc + 7));
> drivers/ati/atimach64.c: case 8: xf86WriteMmio32Be(pDst + 8, 0, *(pSrc + 8));
> drivers/ati/atimach64.c: case 9: xf86WriteMmio32Be(pDst + 9, 0, *(pSrc + 9));
> drivers/ati/atimach64.c: case 10: xf86WriteMmio32Be(pDst + 10, 0, *(pSrc + 10));
> drivers/ati/atimach64.c: case 11: xf86WriteMmio32Be(pDst + 11, 0, *(pSrc + 11));
> drivers/ati/atimach64.c: case 12: xf86WriteMmio32Be(pDst + 12, 0, *(pSrc + 12));
> drivers/ati/atimach64.c: case 13: xf86WriteMmio32Be(pDst + 13, 0, *(pSrc + 13));
> drivers/ati/atimach64.c: case 14: xf86WriteMmio32Be(pDst + 14, 0, *(pSrc + 14));
> drivers/ati/atimach64.c: case 15: xf86WriteMmio32Be(pDst + 15, 0, *(pSrc + 15));
>
> This file is the only part of any XFree86 video driver code that ever
> references any of the xf86WriteMmio functions.
>
> The other files that reference them are:
>
> loader/xf86sym.c
> os-support/bsd/bsd_video.c
> os-support/linux/lnx_video.c
>
> Therefore I get the feeling that atimach64.c is doing something wrong.
> compiler.h does go to a lot of trouble to set up macros that expand to
> these various functions.
MMIO_OUT32 would probably be the macro for this.
--
Earthling Michel Dänzer (MrCooper)/ Debian GNU/Linux (powerpc) developer
XFree86 and DRI project member / CS student, Free Software enthusiast
Reply to: