Re: [Dri-devel] Re: Improved DRM support for cant_use_aperture

Michel Dänzer (michel@daenzer.net)
12 May 2003 21:48:31 +0200


On Mon, 2003-05-12 at 20:53, David Mosberger wrote:
> >>>>> On 11 May 2003 23:55:33 +0200, Michel Dänzer <michel@daenzer.net> said:
>
> >> OK, we have a chicken & egg problem then: I could obviously add
> >> Linux kernel version checks where needed, but to do that, the
> >> patch first needs to go into the kernel.
>
> Michel> Mind elaborating on that? I don't see such a problem as you
> Michel> don't need version checks for anything the patch itself
> Michel> adds, only for kernel infrastructure that isn't available in
> Michel> older kernels (down to 2.4).
>
> OK, I'm confused then: earlier on, you reported this error:
>
> asm/agp.h: No such file or directory
>
> My patch adds the following to asm-i386/agp.h:
>
> diff -Nru a/include/asm-i386/agp.h b/include/asm-i386/agp.h
> --- a/include/asm-i386/agp.h Sat May 10 01:47:42 2003
> +++ b/include/asm-i386/agp.h Sat May 10 01:47:42 2003
> @@ -20,4 +20,11 @@
> worth it. Would need a page for it. */
> #define flush_agp_cache() asm volatile("wbinvd":::"memory")
>
> +/*
> + * Page-protection value to be used for AGP memory mapped into kernel space. For
> + * platforms which use coherent AGP DMA, this can be PAGE_KERNEL. For others, it needs to
> + * be an uncached mapping (such as write-combining).
> + */
> +#define PAGE_AGP PAGE_KERNEL_NOCACHE
> +
> #endif
>
> So, either you're using a platform which I don't know supports AGP, or
> the patch didn't apply cleanly (perhaps because you're using an old
> kernel that doesn't have asm/agp.h yet?).

That's it. So we have to check the version before #including
<asm/agp.h>. Then, we can do something like

#ifndef PAGE_AGP
#define PAGE_AGP PAGE_KERNEL_NOCACHE
#endif

Or am I missing something?

This is the easy part though, you probably know better than I what to do
about the functions you use that aren't available in 2.4 yet. :)

-- 
Earthling Michel Dänzer   \  Debian (powerpc), XFree86 and DRI developer
Software libre enthusiast  \     http://svcs.affero.net/rm.php?r=daenzer

- 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/