Lines Matching refs:dev
69 struct device *dev; member
176 static bool driver_filter(struct device *dev) in driver_filter() argument
187 if (current_driver && dev && dev->driver == current_driver) in driver_filter()
191 if (!dev) in driver_filter()
198 drv = dev->driver; in driver_filter()
217 #define err_printk(dev, entry, format, arg...) do { \ argument
219 if (driver_filter(dev) && \
222 dev ? dev_driver_string(dev) : "NULL", \
223 dev ? dev_name(dev) : "NULL", ## arg); \
273 (a->dev == b->dev)) ? true : false; in exact_match()
279 if (a->dev != b->dev) in containing_match()
516 void debug_dma_dump_mappings(struct device *dev) in debug_dma_dump_mappings() argument
528 if (!dev || dev == entry->dev) { in debug_dma_dump_mappings()
530 dev_info(entry->dev, in debug_dma_dump_mappings()
563 dev_driver_string(entry->dev), in dump_show()
564 dev_name(entry->dev), in dump_show()
596 err_printk(entry->dev, entry, in add_dma_entry()
823 static int device_dma_allocations(struct device *dev, struct dma_debug_entry **out_entry) in device_dma_allocations() argument
832 if (entry->dev == dev) { in device_dma_allocations()
845 struct device *dev = data; in dma_debug_device_change() local
854 count = device_dma_allocations(dev, &entry); in dma_debug_device_change()
857 err_printk(dev, entry, "device driver has pending " in dma_debug_device_change()
967 if (dma_mapping_error(ref->dev, ref->dev_addr)) { in check_unmap()
968 err_printk(ref->dev, NULL, in check_unmap()
972 err_printk(ref->dev, NULL, in check_unmap()
982 err_printk(ref->dev, entry, "device driver frees " in check_unmap()
990 err_printk(ref->dev, entry, "device driver frees " in check_unmap()
998 err_printk(ref->dev, entry, "device driver frees " in check_unmap()
1010 err_printk(ref->dev, entry, "device driver frees " in check_unmap()
1021 err_printk(ref->dev, entry, "device driver frees " in check_unmap()
1036 err_printk(ref->dev, entry, in check_unmap()
1054 static void check_for_stack(struct device *dev, in check_for_stack() argument
1066 err_printk(dev, NULL, "device driver maps memory from stack [addr=%p]\n", addr); in check_for_stack()
1076 err_printk(dev, NULL, "device driver maps memory from stack [probable addr=%p]\n", addr); in check_for_stack()
1082 static void check_for_illegal_area(struct device *dev, void *addr, unsigned long len) in check_for_illegal_area() argument
1086 …err_printk(dev, NULL, "device driver maps memory from kernel text or rodata [addr=%p] [len=%lu]\n"… in check_for_illegal_area()
1089 static void check_sync(struct device *dev, in check_sync() argument
1102 err_printk(dev, NULL, "device driver tries " in check_sync()
1110 err_printk(dev, entry, "device driver syncs" in check_sync()
1123 err_printk(dev, entry, "device driver syncs " in check_sync()
1134 err_printk(dev, entry, "device driver syncs " in check_sync()
1144 err_printk(dev, entry, "device driver syncs " in check_sync()
1154 err_printk(ref->dev, entry, "device driver syncs " in check_sync()
1164 static void check_sg_segment(struct device *dev, struct scatterlist *sg) in check_sg_segment() argument
1166 unsigned int max_seg = dma_get_max_seg_size(dev); in check_sg_segment()
1167 u64 start, end, boundary = dma_get_seg_boundary(dev); in check_sg_segment()
1174 …err_printk(dev, NULL, "mapping sg segment longer than device claims to support [len=%u] [max=%u]\n… in check_sg_segment()
1184 …err_printk(dev, NULL, "mapping sg segment across boundary [start=0x%016llx] [end=0x%016llx] [bound… in check_sg_segment()
1188 void debug_dma_map_single(struct device *dev, const void *addr, in debug_dma_map_single() argument
1195 err_printk(dev, NULL, "device driver maps memory from invalid area [addr=%p] [len=%lu]\n", in debug_dma_map_single()
1199 err_printk(dev, NULL, "device driver maps memory from vmalloc area [addr=%p] [len=%lu]\n", in debug_dma_map_single()
1204 void debug_dma_map_page(struct device *dev, struct page *page, size_t offset, in debug_dma_map_page() argument
1213 if (dma_mapping_error(dev, dma_addr)) in debug_dma_map_page()
1220 entry->dev = dev; in debug_dma_map_page()
1228 check_for_stack(dev, page, offset); in debug_dma_map_page()
1233 check_for_illegal_area(dev, addr, size); in debug_dma_map_page()
1239 void debug_dma_mapping_error(struct device *dev, dma_addr_t dma_addr) in debug_dma_mapping_error() argument
1249 ref.dev = dev; in debug_dma_mapping_error()
1277 void debug_dma_unmap_page(struct device *dev, dma_addr_t dma_addr, in debug_dma_unmap_page() argument
1282 .dev = dev, in debug_dma_unmap_page()
1293 void debug_dma_map_sg(struct device *dev, struct scatterlist *sg, in debug_dma_map_sg() argument
1305 check_for_stack(dev, sg_page(s), s->offset); in debug_dma_map_sg()
1307 check_for_illegal_area(dev, sg_virt(s), s->length); in debug_dma_map_sg()
1316 entry->dev = dev; in debug_dma_map_sg()
1324 check_sg_segment(dev, s); in debug_dma_map_sg()
1330 static int get_nr_mapped_entries(struct device *dev, in get_nr_mapped_entries() argument
1349 void debug_dma_unmap_sg(struct device *dev, struct scatterlist *sglist, in debug_dma_unmap_sg() argument
1362 .dev = dev, in debug_dma_unmap_sg()
1374 mapped_ents = get_nr_mapped_entries(dev, &ref); in debug_dma_unmap_sg()
1392 void debug_dma_alloc_coherent(struct device *dev, size_t size, in debug_dma_alloc_coherent() argument
1413 entry->dev = dev; in debug_dma_alloc_coherent()
1422 void debug_dma_free_coherent(struct device *dev, size_t size, in debug_dma_free_coherent() argument
1427 .dev = dev, in debug_dma_free_coherent()
1445 void debug_dma_map_resource(struct device *dev, phys_addr_t addr, size_t size, in debug_dma_map_resource() argument
1459 entry->dev = dev; in debug_dma_map_resource()
1469 void debug_dma_unmap_resource(struct device *dev, dma_addr_t dma_addr, in debug_dma_unmap_resource() argument
1474 .dev = dev, in debug_dma_unmap_resource()
1486 void debug_dma_sync_single_for_cpu(struct device *dev, dma_addr_t dma_handle, in debug_dma_sync_single_for_cpu() argument
1495 ref.dev = dev; in debug_dma_sync_single_for_cpu()
1501 check_sync(dev, &ref, true); in debug_dma_sync_single_for_cpu()
1504 void debug_dma_sync_single_for_device(struct device *dev, in debug_dma_sync_single_for_device() argument
1514 ref.dev = dev; in debug_dma_sync_single_for_device()
1520 check_sync(dev, &ref, false); in debug_dma_sync_single_for_device()
1523 void debug_dma_sync_sg_for_cpu(struct device *dev, struct scatterlist *sg, in debug_dma_sync_sg_for_cpu() argument
1536 .dev = dev, in debug_dma_sync_sg_for_cpu()
1545 mapped_ents = get_nr_mapped_entries(dev, &ref); in debug_dma_sync_sg_for_cpu()
1550 check_sync(dev, &ref, true); in debug_dma_sync_sg_for_cpu()
1554 void debug_dma_sync_sg_for_device(struct device *dev, struct scatterlist *sg, in debug_dma_sync_sg_for_device() argument
1567 .dev = dev, in debug_dma_sync_sg_for_device()
1575 mapped_ents = get_nr_mapped_entries(dev, &ref); in debug_dma_sync_sg_for_device()
1580 check_sync(dev, &ref, false); in debug_dma_sync_sg_for_device()