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

« back to all changes in this revision

Viewing changes to include/linux/dma-mapping.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:
97
97
}
98
98
#endif
99
99
 
 
100
/*
 
101
 * Set both the DMA mask and the coherent DMA mask to the same thing.
 
102
 * Note that we don't check the return value from dma_set_coherent_mask()
 
103
 * as the DMA API guarantees that the coherent DMA mask can be set to
 
104
 * the same or smaller than the streaming DMA mask.
 
105
 */
 
106
static inline int dma_set_mask_and_coherent(struct device *dev, u64 mask)
 
107
{
 
108
        int rc = dma_set_mask(dev, mask);
 
109
        if (rc == 0)
 
110
                dma_set_coherent_mask(dev, mask);
 
111
        return rc;
 
112
}
 
113
 
 
114
/*
 
115
 * Similar to the above, except it deals with the case where the device
 
116
 * does not have dev->dma_mask appropriately setup.
 
117
 */
 
118
static inline int dma_coerce_mask_and_coherent(struct device *dev, u64 mask)
 
119
{
 
120
        dev->dma_mask = &dev->coherent_dma_mask;
 
121
        return dma_set_mask_and_coherent(dev, mask);
 
122
}
 
123
 
100
124
extern u64 dma_get_required_mask(struct device *dev);
101
125
 
102
126
static inline unsigned int dma_get_max_seg_size(struct device *dev)
129
153
                return -EIO;
130
154
}
131
155
 
 
156
#ifndef dma_max_pfn
 
157
static inline unsigned long dma_max_pfn(struct device *dev)
 
158
{
 
159
        return *dev->dma_mask >> PAGE_SHIFT;
 
160
}
 
161
#endif
 
162
 
132
163
static inline void *dma_zalloc_coherent(struct device *dev, size_t size,
133
164
                                        dma_addr_t *dma_handle, gfp_t flag)
134
165
{