Messages in this thread | | | From | Keith Owens <> | Subject | Re: [PATCH] DRM 4.0 support for kernel 2.4.17 | Date | Sun, 23 Dec 2001 10:48:36 +1100 |
| |
On Sat, 22 Dec 2001 20:36:02 +0100, Christoph Hellwig <hch@caldera.de> wrote: >I've placed a patch to allow optional drm 4.0 support in kernel 2.4.17 >at: > >ftp.kernel.org/pub/linux/kernel/people/hch/patches/v2.4/2.4.17/linux-2.4.17-drm40.patch.bz2 > >Please report any fedback to me. It has been submitted to Marcelo for inclusion >into 2.4.18.
Only if the new version cleans up the horrible drm 4.0 Makefile. The separate copy of drmlib in each object and/or the kernel goes against the rest of the kbuild design, needs an ugly makefile and AFAICT nobody needs the separate copy of drmlib. I will not maintain that crud into kbuild 2.5.
drivers/char/drm-4.0/Makefile below uses the standard kbuild design. One copy of drmlib-4.0 which is built into the kernel if any drm 4.0 drivers are built in, otherwise drmlib-4.0 is a module if there are any drm 4.0 modules. Totally untested.
Some of the code in $(drmlib-4.0-objs) will need EXPORT_SYMBOLS to work when drm 4.0 drivers are compiled as modules.
# # Makefile for the drm device driver. This driver provides support for # the Direct Rendering Infrastructure (DRI) in XFree86 4.x. #
O_TARGET := drm.o
export-objs := gamma_drv.o tdfx_drv.o r128_drv.o ffb_drv.o mga_drv.o \ i810_drv.o
list-multi := gamma.o tdfx.o r128.o ffb.o mga.o i810.o drmlib-4.0 gamma-objs := gamma_drv.o gamma_dma.o tdfx-objs := tdfx_drv.o tdfx_context.o r128-objs := r128_drv.o r128_cce.o r128_context.o r128_bufs.o r128_state.o ffb-objs := ffb_drv.o ffb_context.o mga-objs := mga_drv.o mga_dma.o mga_context.o mga_bufs.o mga_state.o i810-objs := i810_drv.o i810_dma.o i810_context.o i810_bufs.o radeon-objs := radeon_drv.o radeon_cp.o radeon_context.o radeon_bufs.o radeon_state.o drmlib-4.0-objs := init.o memory.o proc.o auth.o context.o drawable.o bufs.o \ lists.o lock.o ioctl.o fops.o vm.o dma.o ctxbitmap.o
ifneq ($(subst n,,$(CONFIG_AGP)),) drmlib-4.0-objs += agpsupport.o endif
obj-$(CONFIG_DRM40_GAMMA) += gamma.o drmlib-4.0.o obj-$(CONFIG_DRM40_TDFX) += tdfx.o drmlib-4.0.o obj-$(CONFIG_DRM40_R128) += r128.o drmlib-4.0.o obj-$(CONFIG_DRM40_RADEON)+= radeon.o drmlib-4.0.o obj-$(CONFIG_DRM40_FFB) += ffb.o drmlib-4.0.o obj-$(CONFIG_DRM40_MGA) += mga.o drmlib-4.0.o obj-$(CONFIG_DRM40_I810) += i810.o drmlib-4.0.o
include $(TOPDIR)/Rules.make
drmlib-4.0.o: $(drmlib-4.0-objs) $(LD) -r -o $@ $^
gamma.o: $(gamma-objs) $(LD) -r -o $@ $^
tdfx.o: $(tdfx-objs) $(LD) -r -o $@ $^
mga.o: $(mga-objs) $(LD) -r -o $@ $^
i810.o: $(i810-objs) $(LD) -r -o $@ $^
r128.o: $(r128-objs) $(LD) -r -o $@ $^
radeon.o: $(radeon-objs) $(LD) -r -o $@ $^
ffb.o: $(ffb-objs) $(LD) -r -o $@ $^
- 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/
| |