lkml.org 
[lkml]   [2008]   [Oct]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [git pull] drm patches for 2.6.27-rc1
    From
    Date
    On Sun, 2008-10-19 at 00:32 +0200, Ingo Molnar wrote:

    > Mind sending patches for this? :-)

    Here's what these functions would look like as wrappers on top of the
    existing APIs:

    /* x86_64 style */
    static inline struct io_reserve *
    iomap_reserve(unsigned long base, unsigned long size)
    {
    return (struct io_reserve *) ioremap_wc(base, size);
    }

    static inline void *
    iomap_atomic(struct io_reserve *reserve, unsigned long offset)
    {
    return ((char *) reserve) + offset;
    }

    static inline void
    iounmap_atomic(void *vaddr)
    {
    }

    static inline void
    iomap_unreserve(struct io_reserve *reserve)
    {
    iounmap(reserve);
    }

    /* HIGHMEM style */
    #if 0
    static inline struct io_reserve *
    iomap_reserve(unsigned long base, unsigned long size)
    {
    return (struct io_reserve *) base;
    }

    static inline void *
    iomap_atomic(struct io_reserve *reserve, unsigned long offset)
    {
    offset += (unsigned long) reserve;
    return kmap_atomic(offset >> PAGE_SHIFT, KM_USER0);
    }

    static inline void
    iounmap_atomic(void *vaddr)
    {
    kunmap_atomic(vaddr, KM_USER0);
    }

    static inline void
    iomap_unreserve(struct io_reserve *reserve)
    {
    }
    #endif

    /* 32-bit non-HIGHMEM style */
    #if 0
    static inline struct io_reserve *
    iomap_reserve(unsigned long base, unsigned long size)
    {
    return NULL;
    }

    static inline void *
    iomap_atomic(struct io_reserve *reserve, unsigned long offset)
    {
    return NULL;
    }

    static inline void
    iounmap_atomic(void *vaddr)
    {
    }

    static inline void
    iomap_unreserve(struct io_reserve *reserve)
    {
    }
    #endif

    >
    > Ingo
    --
    keith.packard@intel.com
    [unhandled content-type:application/pgp-signature]
    \
     
     \ /
      Last update: 2008-10-19 06:17    [W:0.032 / U:29.284 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site