José Fonseca wrote:

Jan,

I'm a little out of the loop in the DRI scene as of lately as I'm quite
busy with my PhD (I'm still trying to catch the DRI mailing lists posts
sent during the christmas vacations).

I don't recall hearing any success using mach64 with kernel 2.6, and I
don't know exactly what does it takes to make it work. It's
probably not much besides backporting some changes from the trunk into the mach64
branch. But in anycase I don't have the time to find that out right now.

I'm CC'ing to the [EMAIL PROTECTED] . I'm sure someone there can
provide a little more info about this.

Sorry I can't be of more assistance.

Jose Fonseca


I got it to work with the mach64-0-0-6-branch. I had to force the makefile to assume 2.6, change a few declarations. And a few more for 2.6.1. Its not a very clean patch however.

Anthony


Index: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/Makefile.kernel
===================================================================
RCS file: 
/cvsroot/dri/xc/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/Makefile.kernel,v
retrieving revision 1.25.54.4
diff -r1.25.54.4 Makefile.kernel
23c23,24
< BELOW25 := $(shell if [ $(PATCHLEVEL) -lt 5 ]; then echo y; fi)
---
> #BELOW25 := $(shell if [ $(PATCHLEVEL) -lt 5 ]; then echo y; fi)
> BELOW25 := n
26,30c27,32
< ifneq ($(BELOW25),y)
< BELOW2552 := $(shell if [ $(SUBLEVEL) -lt 52 ]; then echo y; fi)
< else
< BELOW2552 := y
< endif
---
> #ifneq ($(BELOW25),y)
> #BELOW2552 := $(shell if [ $(SUBLEVEL) -lt 52 ]; then echo y; fi)
> #else
> #BELOW2552 := y
> #endif
> BELOW2552 := n
Index: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drmP.h
===================================================================
RCS file: 
/cvsroot/dri/xc/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drmP.h,v
retrieving revision 1.56.2.8
diff -r1.56.2.8 drmP.h
474c474
<       agp_memory         *memory;
---
>       struct agp_memory         *memory;
482c482
<       agp_kern_info      agp_info;
---
>       struct agp_kern_info      agp_info;
691,694c691,694
< extern agp_memory    *DRM(alloc_agp)(int pages, u32 type);
< extern int           DRM(free_agp)(agp_memory *handle, int pages);
< extern int           DRM(bind_agp)(agp_memory *handle, unsigned int start);
< extern int           DRM(unbind_agp)(agp_memory *handle);
---
> extern struct agp_memory    *DRM(alloc_agp)(int pages, u32 type);
> extern int           DRM(free_agp)(struct agp_memory *handle, int pages);
> extern int           DRM(bind_agp)(struct agp_memory *handle, unsigned int start);
> extern int           DRM(unbind_agp)(struct agp_memory *handle);
843,846c843,846
< extern agp_memory     *DRM(agp_allocate_memory)(size_t pages, u32 type);
< extern int            DRM(agp_free_memory)(agp_memory *handle);
< extern int            DRM(agp_bind_memory)(agp_memory *handle, off_t start);
< extern int            DRM(agp_unbind_memory)(agp_memory *handle);
---
> extern struct agp_memory     *DRM(agp_allocate_memory)(size_t pages, u32 type);
> extern int            DRM(agp_free_memory)(struct agp_memory *handle);
> extern int            DRM(agp_bind_memory)(struct agp_memory *handle, off_t start);
> extern int            DRM(agp_unbind_memory)(struct agp_memory *handle);
Index: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm_agpsupport.h
===================================================================
RCS file: 
/cvsroot/dri/xc/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm_agpsupport.h,v
retrieving revision 1.10.4.2
diff -r1.10.4.2 drm_agpsupport.h
48c48
<       agp_kern_info    *kern;
---
>       struct agp_kern_info    *kern;
130c130
<       agp_memory       *memory;
---
>       struct agp_memory       *memory;
290c290
< agp_memory *DRM(agp_allocate_memory)(size_t pages, u32 type)
---
> struct agp_memory *DRM(agp_allocate_memory)(size_t pages, u32 type)
296c296
< int DRM(agp_free_memory)(agp_memory *handle)
---
> int DRM(agp_free_memory)(struct agp_memory *handle)
303c303
< int DRM(agp_bind_memory)(agp_memory *handle, off_t start)
---
> int DRM(agp_bind_memory)(struct agp_memory *handle, off_t start)
309c309
< int DRM(agp_unbind_memory)(agp_memory *handle)
---
> int DRM(agp_unbind_memory)(struct agp_memory *handle)
Index: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm_memory.h
===================================================================
RCS file: 
/cvsroot/dri/xc/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm_memory.h,v
retrieving revision 1.7.54.2
diff -r1.7.54.2 drm_memory.h
136c136
< agp_memory *DRM(alloc_agp)(int pages, u32 type)
---
> struct agp_memory *DRM(alloc_agp)(int pages, u32 type)
141c141
< int DRM(free_agp)(agp_memory *handle, int pages)
---
> int DRM(free_agp)(struct agp_memory *handle, int pages)
146c146
< int DRM(bind_agp)(agp_memory *handle, unsigned int start)
---
> int DRM(bind_agp)(struct agp_memory *handle, unsigned int start)
151c151
< int DRM(unbind_agp)(agp_memory *handle)
---
> int DRM(unbind_agp)(struct agp_memory *handle)
Index: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm_memory_debug.h
===================================================================
RCS file: 
/cvsroot/dri/xc/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm_memory_debug.h,v
retrieving revision 1.2.2.1
diff -r1.2.2.1 drm_memory_debug.h
344c344
< agp_memory *DRM(alloc_agp)(int pages, u32 type)
---
> struct agp_memory *DRM(alloc_agp)(int pages, u32 type)
346c346
<       agp_memory *handle;
---
>       struct agp_memory *handle;
367c367
< int DRM(free_agp)(agp_memory *handle, int pages)
---
> int DRM(free_agp)(struct agp_memory *handle, int pages)
396c396
< int DRM(bind_agp)(agp_memory *handle, unsigned int start)
---
> int DRM(bind_agp)(struct agp_memory *handle, unsigned int start)
420c420
< int DRM(unbind_agp)(agp_memory *handle)
---
> int DRM(unbind_agp)(struct agp_memory *handle)
Index: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/Makefile.kernel
===================================================================
RCS file: 
/cvsroot/dri/xc/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/Makefile.kernel,v
retrieving revision 1.25.54.4
diff -r1.25.54.4 Makefile.kernel
23c23,24
< BELOW25 := $(shell if [ $(PATCHLEVEL) -lt 5 ]; then echo y; fi)
---
> #BELOW25 := $(shell if [ $(PATCHLEVEL) -lt 5 ]; then echo y; fi)
> BELOW25 := n
26,30c27,32
< ifneq ($(BELOW25),y)
< BELOW2552 := $(shell if [ $(SUBLEVEL) -lt 52 ]; then echo y; fi)
< else
< BELOW2552 := y
< endif
---
> #ifneq ($(BELOW25),y)
> #BELOW2552 := $(shell if [ $(SUBLEVEL) -lt 52 ]; then echo y; fi)
> #else
> #BELOW2552 := y
> #endif
> BELOW2552 := n
Index: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drmP.h
===================================================================
RCS file: 
/cvsroot/dri/xc/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drmP.h,v
retrieving revision 1.56.2.8
diff -r1.56.2.8 drmP.h
474c474
<       agp_memory         *memory;
---
>       struct agp_memory         *memory;
482c482
<       agp_kern_info      agp_info;
---
>       struct agp_kern_info      agp_info;
656c656
<                                  int write_access);
---
>                                  int *type);
659c659
<                                      int write_access);
---
>                                      int *type);
662c662
<                                      int write_access);
---
>                                      int *type);
665c665
<                                     int write_access);
---
>                                     int *type);
691,694c691,694
< extern agp_memory    *DRM(alloc_agp)(int pages, u32 type);
< extern int           DRM(free_agp)(agp_memory *handle, int pages);
< extern int           DRM(bind_agp)(agp_memory *handle, unsigned int start);
< extern int           DRM(unbind_agp)(agp_memory *handle);
---
> extern struct agp_memory    *DRM(alloc_agp)(int pages, u32 type);
> extern int           DRM(free_agp)(struct agp_memory *handle, int pages);
> extern int           DRM(bind_agp)(struct agp_memory *handle, unsigned int start);
> extern int           DRM(unbind_agp)(struct agp_memory *handle);
843,846c843,846
< extern agp_memory     *DRM(agp_allocate_memory)(size_t pages, u32 type);
< extern int            DRM(agp_free_memory)(agp_memory *handle);
< extern int            DRM(agp_bind_memory)(agp_memory *handle, off_t start);
< extern int            DRM(agp_unbind_memory)(agp_memory *handle);
---
> extern struct agp_memory     *DRM(agp_allocate_memory)(size_t pages, u32 type);
> extern int            DRM(agp_free_memory)(struct agp_memory *handle);
> extern int            DRM(agp_bind_memory)(struct agp_memory *handle, off_t start);
> extern int            DRM(agp_unbind_memory)(struct agp_memory *handle);
Index: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm_agpsupport.h
===================================================================
RCS file: 
/cvsroot/dri/xc/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm_agpsupport.h,v
retrieving revision 1.10.4.2
diff -r1.10.4.2 drm_agpsupport.h
48c48
<       agp_kern_info    *kern;
---
>       struct agp_kern_info    *kern;
130c130
<       agp_memory       *memory;
---
>       struct agp_memory       *memory;
290c290
< agp_memory *DRM(agp_allocate_memory)(size_t pages, u32 type)
---
> struct agp_memory *DRM(agp_allocate_memory)(size_t pages, u32 type)
296c296
< int DRM(agp_free_memory)(agp_memory *handle)
---
> int DRM(agp_free_memory)(struct agp_memory *handle)
303c303
< int DRM(agp_bind_memory)(agp_memory *handle, off_t start)
---
> int DRM(agp_bind_memory)(struct agp_memory *handle, off_t start)
309c309
< int DRM(agp_unbind_memory)(agp_memory *handle)
---
> int DRM(agp_unbind_memory)(struct agp_memory *handle)
Index: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm_memory.h
===================================================================
RCS file: 
/cvsroot/dri/xc/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm_memory.h,v
retrieving revision 1.7.54.2
diff -r1.7.54.2 drm_memory.h
136c136
< agp_memory *DRM(alloc_agp)(int pages, u32 type)
---
> struct agp_memory *DRM(alloc_agp)(int pages, u32 type)
141c141
< int DRM(free_agp)(agp_memory *handle, int pages)
---
> int DRM(free_agp)(struct agp_memory *handle, int pages)
146c146
< int DRM(bind_agp)(agp_memory *handle, unsigned int start)
---
> int DRM(bind_agp)(struct agp_memory *handle, unsigned int start)
151c151
< int DRM(unbind_agp)(agp_memory *handle)
---
> int DRM(unbind_agp)(struct agp_memory *handle)
Index: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm_memory_debug.h
===================================================================
RCS file: 
/cvsroot/dri/xc/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm_memory_debug.h,v
retrieving revision 1.2.2.1
diff -r1.2.2.1 drm_memory_debug.h
344c344
< agp_memory *DRM(alloc_agp)(int pages, u32 type)
---
> struct agp_memory *DRM(alloc_agp)(int pages, u32 type)
346c346
<       agp_memory *handle;
---
>       struct agp_memory *handle;
367c367
< int DRM(free_agp)(agp_memory *handle, int pages)
---
> int DRM(free_agp)(struct agp_memory *handle, int pages)
396c396
< int DRM(bind_agp)(agp_memory *handle, unsigned int start)
---
> int DRM(bind_agp)(struct agp_memory *handle, unsigned int start)
420c420
< int DRM(unbind_agp)(agp_memory *handle)
---
> int DRM(unbind_agp)(struct agp_memory *handle)
Index: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm_vm.h
===================================================================
RCS file: 
/cvsroot/dri/xc/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/drm_vm.h,v
retrieving revision 1.19.12.1
diff -r1.19.12.1 drm_vm.h
61c61
<                           int write_access)
---
>                           int *type)
117a118,121
>               if(type)
>                       *type = VM_FAULT_MINOR;
>               
> 
128c132
<                               int write_access)
---
>                               int *type)
143a148,149
>       if(type)
>               *type = VM_FAULT_MINOR;
227c233
<                               int write_access)
---
>                               int *type)
245a252,253
>       if(type)
>               *type = VM_FAULT_MINOR;
253c261
<                              int write_access)
---
>                              int *type)
273a282,283
>       if(type)
>               *type = VM_FAULT_MINOR;

Reply via email to