On Wed, 2002-04-24 at 12:57, Peter Andersson wrote: > > > >Anyway, MACH64_{READ,WRITE} will likely have to be changed to use > >{in,out}_le32 (in mach64_drv.h) for it to work on PPC. > > You are probably right here because although the driver is loaded it > hangs when i try to use OpenGL applications, so far i have only tried > games prboom (doom clone) and quake. Quake won´t start at all and prboom > makes my X server lock and uses up all cpu. This is not the case when > using "indirect rendering".
Try the attached patch against mach64-0-0-4-branch. -- Earthling Michel Dänzer (MrCooper)/ Debian GNU/Linux (powerpc) developer XFree86 and DRI project member / CS student, Free Software enthusiast
Index: mach64_drv.h =================================================================== RCS file: /cvsroot/dri/xc/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/Attic/mach64_drv.h,v retrieving revision 1.1.6.3.2.5 diff -u -r1.1.6.3.2.5 mach64_drv.h --- mach64_drv.h 23 Apr 2002 23:47:09 -0000 1.1.6.3.2.5 +++ mach64_drv.h 24 Apr 2002 11:55:28 -0000 @@ -345,9 +345,8 @@ #define MACH64_ADDR(reg) (MACH64_BASE(reg) + reg) -#define MACH64_DEREF(reg) *(__volatile__ u32 *)MACH64_ADDR(reg) -#define MACH64_READ(reg) MACH64_DEREF(reg) -#define MACH64_WRITE(reg,val) do { MACH64_DEREF(reg) = val; } while (0) +#define MACH64_READ(reg) in_le32((volatile u32 *)MACH64_ADDR(reg)) +#define MACH64_WRITE(reg,val) out_le32((volatile u32 *)MACH64_ADDR(reg), (val))