lkml.org 
[lkml]   [2004]   [Mar]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: can device drivers return non-ram via vm_ops->nopage?
    On Sun, Mar 21, 2004 at 07:10:53PM -0500, Jeff Garzik wrote:
    > For the first kind, please read fb_mmap in drivers/video/fbmem.c. Look
    > at the _horror_ of ifdefs in exporting the framebuffer. And that horror
    > is what's often needed when letting userspace mmap(2) PCI memory IO regions.

    Most of this:

    #if defined(__mc68000__)
    ...
    #elif defined(__mips__)
    pgprot_val(vma->vm_page_prot) &= ~_CACHE_MASK;
    pgprot_val(vma->vm_page_prot) |= _CACHE_UNCACHED;
    #elif defined(__sh__)
    pgprot_val(vma->vm_page_prot) &= ~_PAGE_CACHABLE;
    #elif defined(__hppa__)
    pgprot_val(vma->vm_page_prot) |= _PAGE_NO_CACHE;
    #elif defined(__ia64__) || defined(__arm__)
    vma->vm_page_prot = pgprot_writecombine(vma->vm_page_prot);
    #else
    #warning What do we have to do here??
    #endif

    exists because architectures haven't defined their private
    pgprot_writecombine() implementations, preferring instead to add
    to the preprocessor junk instead.

    --
    Russell King
    Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
    maintainer of: 2.6 PCMCIA - http://pcmcia.arm.linux.org.uk/
    2.6 Serial core
    -
    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/

    \
     
     \ /
      Last update: 2005-03-22 14:01    [W:0.031 / U:30.632 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site