|
@@ -410,6 +410,15 @@ extern int devres_release_group(struct device *dev, void *id);
|
|
|
extern void *devm_kzalloc(struct device *dev, size_t size, gfp_t gfp);
|
|
|
extern void devm_kfree(struct device *dev, void *p);
|
|
|
|
|
|
+struct device_dma_parameters {
|
|
|
+ /*
|
|
|
+ * a low level driver may set these to teach IOMMU code about
|
|
|
+ * sg limitations.
|
|
|
+ */
|
|
|
+ unsigned int max_segment_size;
|
|
|
+ unsigned long segment_boundary_mask;
|
|
|
+};
|
|
|
+
|
|
|
struct device {
|
|
|
struct klist klist_children;
|
|
|
struct klist_node knode_parent; /* node in sibling list */
|
|
@@ -445,6 +454,8 @@ struct device {
|
|
|
64 bit addresses for consistent
|
|
|
allocations such descriptors. */
|
|
|
|
|
|
+ struct device_dma_parameters *dma_parms;
|
|
|
+
|
|
|
struct list_head dma_pools; /* dma pools (if dma'ble) */
|
|
|
|
|
|
struct dma_coherent_mem *dma_mem; /* internal for coherent mem
|