函数逻辑报告 |
Source Code:kernel\dma\swiotlb.c |
Create Date:2022-07-27 11:36:08 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:swiotlb_tbl_sync_single
函数原型:void swiotlb_tbl_sync_single(struct device *hwdev, phys_addr_t tlb_addr, size_t size, enum dma_data_direction dir, enum dma_sync_target target)
返回类型:void
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct device * | hwdev | |
| phys_addr_t | tlb_addr | |
| size_t | size | |
| enum dma_data_direction | dir | |
| enum dma_sync_target | target |
| 632 | orig_addr等于io_tlb_orig_addr[index] |
| 634 | 如果orig_addr恒等于We need to save away the original address corresponding to a mapped entry* for the sync operations.则返回 |
| 636 | orig_addr加等于tlb_addr按位与1左移log of the size of each IO TLB slab. The number of slabs is command line* controllable.位的值减1 |
| 639 | 当:target恒等于SYNC_FOR_CPU |
| 640 | 如果此条件成立可能性大(为编译器优化)(dir == DMA_FROM_DEVICE || dir == DMA_BIDIRECTIONAL)则Bounce: copy the swiotlb buffer from or back to the original dma location |
| 643 | 否则BUG_ON(dir != DMA_TO_DEVICE) |
| 645 | 退出 |
| 646 | 当:target恒等于SYNC_FOR_DEVICE |
| 647 | 如果此条件成立可能性大(为编译器优化)(dir == DMA_TO_DEVICE || dir == DMA_BIDIRECTIONAL)则Bounce: copy the swiotlb buffer from or back to the original dma location |
| 650 | 否则BUG_ON(dir != DMA_FROM_DEVICE) |
| 652 | 退出 |
| 653 | 默认 |
| 654 | BUG() |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |