|
@@ -913,6 +913,9 @@ static void check_sync(struct device *dev,
|
|
ref->size);
|
|
ref->size);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ if (entry->direction == DMA_BIDIRECTIONAL)
|
|
|
|
+ goto out;
|
|
|
|
+
|
|
if (ref->direction != entry->direction) {
|
|
if (ref->direction != entry->direction) {
|
|
err_printk(dev, entry, "DMA-API: device driver syncs "
|
|
err_printk(dev, entry, "DMA-API: device driver syncs "
|
|
"DMA memory with different direction "
|
|
"DMA memory with different direction "
|
|
@@ -923,9 +926,6 @@ static void check_sync(struct device *dev,
|
|
dir2name[ref->direction]);
|
|
dir2name[ref->direction]);
|
|
}
|
|
}
|
|
|
|
|
|
- if (entry->direction == DMA_BIDIRECTIONAL)
|
|
|
|
- goto out;
|
|
|
|
-
|
|
|
|
if (to_cpu && !(entry->direction == DMA_FROM_DEVICE) &&
|
|
if (to_cpu && !(entry->direction == DMA_FROM_DEVICE) &&
|
|
!(ref->direction == DMA_TO_DEVICE))
|
|
!(ref->direction == DMA_TO_DEVICE))
|
|
err_printk(dev, entry, "DMA-API: device driver syncs "
|
|
err_printk(dev, entry, "DMA-API: device driver syncs "
|
|
@@ -948,7 +948,6 @@ static void check_sync(struct device *dev,
|
|
|
|
|
|
out:
|
|
out:
|
|
put_hash_bucket(bucket, &flags);
|
|
put_hash_bucket(bucket, &flags);
|
|
-
|
|
|
|
}
|
|
}
|
|
|
|
|
|
void debug_dma_map_page(struct device *dev, struct page *page, size_t offset,
|
|
void debug_dma_map_page(struct device *dev, struct page *page, size_t offset,
|