~ubuntu-branches/debian/experimental/linux-tools/experimental

« back to all changes in this revision

Viewing changes to arch/ia64/include/asm/xen/page-coherent.h

  • Committer: Package Import Robot
  • Author(s): Ben Hutchings
  • Date: 2014-02-02 16:57:49 UTC
  • mfrom: (1.1.10) (0.1.21 sid)
  • Revision ID: package-import@ubuntu.com-20140202165749-tw94o9t1t0a8txk6
Tags: 3.13-1~exp2
Merge changes from sid up to 3.12.6-3

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#ifndef _ASM_IA64_XEN_PAGE_COHERENT_H
 
2
#define _ASM_IA64_XEN_PAGE_COHERENT_H
 
3
 
 
4
#include <asm/page.h>
 
5
#include <linux/dma-attrs.h>
 
6
#include <linux/dma-mapping.h>
 
7
 
 
8
static inline void *xen_alloc_coherent_pages(struct device *hwdev, size_t size,
 
9
                dma_addr_t *dma_handle, gfp_t flags,
 
10
                struct dma_attrs *attrs)
 
11
{
 
12
        void *vstart = (void*)__get_free_pages(flags, get_order(size));
 
13
        *dma_handle = virt_to_phys(vstart);
 
14
        return vstart;
 
15
}
 
16
 
 
17
static inline void xen_free_coherent_pages(struct device *hwdev, size_t size,
 
18
                void *cpu_addr, dma_addr_t dma_handle,
 
19
                struct dma_attrs *attrs)
 
20
{
 
21
        free_pages((unsigned long) cpu_addr, get_order(size));
 
22
}
 
23
 
 
24
static inline void xen_dma_map_page(struct device *hwdev, struct page *page,
 
25
             unsigned long offset, size_t size, enum dma_data_direction dir,
 
26
             struct dma_attrs *attrs) { }
 
27
 
 
28
static inline void xen_dma_unmap_page(struct device *hwdev, dma_addr_t handle,
 
29
                size_t size, enum dma_data_direction dir,
 
30
                struct dma_attrs *attrs) { }
 
31
 
 
32
static inline void xen_dma_sync_single_for_cpu(struct device *hwdev,
 
33
                dma_addr_t handle, size_t size, enum dma_data_direction dir) { }
 
34
 
 
35
static inline void xen_dma_sync_single_for_device(struct device *hwdev,
 
36
                dma_addr_t handle, size_t size, enum dma_data_direction dir) { }
 
37
 
 
38
#endif /* _ASM_IA64_XEN_PAGE_COHERENT_H */